1. 11 7月, 2000 3 次提交
    • B
      Here is the patch with memory leak checker. This checker allow detect · 46fb9c29
      Bruce Momjian 提交于
      in-chunk leaks, overwrite-next-chunk leaks and overwrite block-freeptr leaks.
      
      A in-chunk leak --- if something overwrite space after wanted (via palloc()
      size, but it is still inside chunk. For example
      
              x = palloc(12);         /* create 16b chunk */
              memset(x, '#', 13);
      
      this leak is in the current source total invisible, because chunk is 16b and
      leak is in the "align space".
      
       For this feature I add data_size to StandardChunk, and all memory which go
      from AllocSetAlloc() is marked as 0x7F.
      
       The MemoryContextCheck() is compiled '#ifdef USE_ASSERT_CHECKING'.
      
      I add this checking to 'tcop/postgres.c' and is active after each backend
      query, but it is probably not sufficient, because some MemoryContext exist
      only during memory processing --- will good if someone who known where
      it is needful (Tom:-) add it for others contexts;
       A problem in the current source is that we have still some malloc()
      allocation that is not needful and this allocation is total invisible for
      all context routines. For example Dllist in backend (pretty dirty it is in
      catcache where values in Dllist are palloc-ed, but list is malloc-ed).
      --- and BTW. this Dllist design stand in the way for query cache :-)
      
       Tom, if you agree I start replace some mallocs.
      
       BTW. --- Tom, have you idea for across transaction presistent allocation for
                SQL functions? (like regex - now it is via malloc)
      
      
       I almost forget. I add one if() to AllocSetAlloc(), for 'size' that are
      greater than ALLOC_BIGCHUNK_LIMIT is not needful check AllocSetFreeIndex(),
      because 'fidx' is always 'ALLOCSET_NUM_FREELISTS - 1'. It a little brisk up
      allocation for very large chunks. Right?
      
                                                      Karel
      46fb9c29
    • B
      Done. In backend/commands/define.c unused field is set to '-' for the · 0d32cdc3
      Bruce Momjian 提交于
      moment.
      
      A patch for CVS is attached, and I have amended my BLOB dumping version
      appropriately.
      
      Philip Warner
      0d32cdc3
    • J
      Some security checks that we've found an external value completely · 793704d7
      Jan Wieck 提交于
      when fetching toasted values.
      
      Jan
      793704d7
  2. 10 7月, 2000 2 次提交
  3. 09 7月, 2000 7 次提交
  4. 08 7月, 2000 8 次提交
  5. 07 7月, 2000 10 次提交
  6. 06 7月, 2000 9 次提交
  7. 05 7月, 2000 1 次提交