1. 07 Sep, 1999 2 commits
    • Tom Lane's avatar
      Performance improvements in cnfify(): get rid of exponential · 8759f175
      Tom Lane authored
      space consumption in pull_args, and avoid doing the full CNF transform on
      operands of operator clauses, where it's really not particularly helpful.
      This answers the TODO item about large numbers of OR clauses, at least
      partially.  I was able to do a ten-thousand-OR-clause query with about
      20Mb memory consumption ... it took an obscenely long time, but it worked...
      8759f175
    • Tom Lane's avatar
      Mike Ansley's fixes for long queries. This change just · 85712da9
      Tom Lane authored
      corrects flex myinput() routine so that it doesn't assume there is only
      one bufferload of data.  We still have the issue of getting rid of
      YY_USES_REJECT so that the scanner can cope with tokens larger than its
      initial buffer size.
      85712da9
  2. 06 Sep, 1999 6 commits
  3. 05 Sep, 1999 3 commits
  4. 04 Sep, 1999 8 commits
  5. 03 Sep, 1999 3 commits
  6. 02 Sep, 1999 2 commits
    • Tom Lane's avatar
      51f62ea4
    • Tom Lane's avatar
      Repair a bunch of problems in md.c. This builds on Hiroshi's · 68c32348
      Tom Lane authored
      insight that RelationFlushRelation ought to invoke smgrclose, and that the
      way to make that work is to ensure that mdclose doesn't fail if the relation
      is already closed (or unlinked, if we are looking at a DROP TABLE).  While
      I was testing that, I was able to identify several problems that we had
      with multiple-segment relations.  The system is now able to do initdb and
      pass the regression tests with a very small segment size (I had it set to
      64Kb per segment for testing).  I don't believe that ever worked before.
      File descriptor leaks seem to be gone too.
      I have partially addressed the concerns we had about mdtruncate(), too.
      On a Win32 or NFS filesystem it is not possible to unlink a file that
      another backend is holding open, so what md.c now does is to truncate
      unwanted files to zero length before trying to unlink them.  The other
      backends will be forced to close their open files by relation cache
      invalidation --- but I think it would take considerable work to make
      that happen before vacuum truncates the relation rather than after.
      Leaving zero-length files lying around seems a usable compromise.
      68c32348
  7. 01 Sep, 1999 2 commits
  8. 31 Aug, 1999 3 commits
  9. 29 Aug, 1999 2 commits
  10. 28 Aug, 1999 2 commits
  11. 26 Aug, 1999 2 commits
  12. 25 Aug, 1999 3 commits
  13. 24 Aug, 1999 2 commits
    • Tom Lane's avatar
      Alter AllocSet routines so that requests larger than · 2b67dc53
      Tom Lane authored
      ALLOC_BIGCHUNK_LIMIT are always allocated as separate malloc() blocks,
      and are free()d immediately upon pfree().  Also, if such a chunk is enlarged
      with repalloc(), translate the operation into a realloc() so as to
      minimize memory usage.  Of course, these large chunks still get freed
      automatically if the alloc set is reset.
      I have set ALLOC_BIGCHUNK_LIMIT at 64K for now, but perhaps another
      size would be better?
      2b67dc53
    • Tom Lane's avatar
      coerce_type() failed to guard against trying to convert a NULL · 1b81fd77
      Tom Lane authored
      constant to a different type.  Not sure that this could happen in ordinary
      parser usage, but it can in some new code I'm working on...
      1b81fd77