1. 19 Jun, 2005 1 commit
  2. 18 Jun, 2005 6 commits
  3. 17 Jun, 2005 6 commits
  4. 16 Jun, 2005 3 commits
  5. 15 Jun, 2005 13 commits
    • Bruce Momjian's avatar
    • Bruce Momjian's avatar
      Improve comment wording. · 07b80eb3
      Bruce Momjian authored
      07b80eb3
    • Tom Lane's avatar
      Improve hash method for bitmapsets: some examination of actual outputs · e5a11a88
      Tom Lane authored
      shows that adding a circular shift between words greatly improves the
      distribution of hash outputs.
      e5a11a88
    • Bruce Momjian's avatar
      Fix display of database name during autovacuum. · 1f01d59e
      Bruce Momjian authored
       Cosimo Streppone
      1f01d59e
    • Bruce Momjian's avatar
      2becf484
    • Neil Conway's avatar
      Change the implementation of hash join to attempt to avoid unnecessary · c119c5bd
      Neil Conway authored
      work if either of the join relations are empty. The logic is:
      
      (1) if the inner relation's startup cost is less than the outer
          relation's startup cost and this is not an outer join, read
          a single tuple from the inner relation via ExecHash()
            - if NULL, we're done
      
      (2) read a single tuple from the outer relation
            - if NULL, we're done
      
      (3) build the hash table on the inner relation
            - if hash table is empty and this is not an outer join,
              we're done
      
      (4) otherwise, do hash join as usual
      
      The implementation uses the new MultiExecProcNode API, per a
      suggestion from Tom: invoking ExecHash() now produces the first
      tuple from the Hash node's child node, whereas MultiExecHash()
      builds the hash table.
      
      I had to put in a bit of a kludge to get the row count returned
      for EXPLAIN ANALYZE to be correct: since ExecHash() is invoked to
      return a tuple, and then MultiExecHash() is invoked, we would
      return one too many tuples to EXPLAIN ANALYZE. I hacked around
      this by just manually detecting this situation and subtracting 1
      from the EXPLAIN ANALYZE row count.
      c119c5bd
    • Neil Conway's avatar
      Minor SGML markup cleanup. · 4aaff553
      Neil Conway authored
      4aaff553
    • Bruce Momjian's avatar
      Remove old *.backup files when we do pg_stop_backup(). This · f4d907ca
      Bruce Momjian authored
      prevents a large number of *.backup files from existing in pg_xlog/
      f4d907ca
    • Bruce Momjian's avatar
      Mention we now support BETWEEN SYMMETRIC. · 713507b0
      Bruce Momjian authored
      Christopher Kings-Lynne
      713507b0
    • Bruce Momjian's avatar
      > Here's a patch I added against plperl, originally against beta5, now · d0925244
      Bruce Momjian authored
      > against rc1. It simply checks with GetDatabaseEncoding() if the current
      > database is in UTF-8, and if so, sets the UTF-8 flag on the arguments
      > that are passed to perl. This means that it isn't necessary to
      > utf8::upgrade() every string, as perl has no way of knowing offhand
      > that a string is UTF-8 -- but postgres does, because the database
      > encoding is specified, so it makes sense to turn the flag on. You
      > should also be able to properly manipulate UTF-8 strings now from
      > plperl as opposed to plperlu, because otherwise you'd have to use
      > encoding 'utf8' which was not allowed. It could also eliminate some
      > unexpected bugs if you assume that perl knows the string is unicode.
      It
      > is enabled only for perl 5.6 and higher, so earlier versions will not
      > be affected.
      >
      > I have been assured by crab that the patch is quite harmless and will
      > not break anything. It would be great to see it in 8 final! :-)
      
      David Kamholz
      d0925244
    • Bruce Momjian's avatar
      This patch makes it possible to use the full set of timezones when doing · 0851a6fb
      Bruce Momjian authored
      "AT TIME ZONE", and not just the shorlist previously available. For
      example:
      
      SELECT CURRENT_TIMESTAMP AT TIME ZONE 'Europe/London';
      
      works fine now. It will also obey whatever DST rules were in effect at
      just that date, which the previous implementation did not.
      
      It also supports the AT TIME ZONE on the timetz datatype. The whole
      handling of DST is a bit bogus there, so I chose to make it use whatever
      DST rules are in effect at the time of executig the query. not sure if
      anybody is actuallyi *using* timetz though, it seems pretty
      unpredictable just because of this...
      
      Magnus Hagander
      0851a6fb
    • Bruce Momjian's avatar
      Support 3 and 4-byte unicode characters. · 59559458
      Bruce Momjian authored
      John Hansen
      59559458
    • Bruce Momjian's avatar
      >> Do you agree that using a hashtable for it in general is a good idea · f4c4f1ce
      Bruce Momjian authored
      >> assuming this sideeffect is removed, though?
      >
      >I have no problem with the hashtable, only with preloading it with
      >everything.  What I'd like to see is that the table inherited at fork()
      >contains just the data for the default timezone.  (At least in the
      >normal case where that setting hasn't been changed since postmaster
      >start.)
      
      Here's a patch doing this. Changes score_timezone not to use pg_tzset(),
      and thus not loading all the zones in the cache. The actual timezone
      being picked will be set using set_global_timezone() which in turn calls
      pg_tzset() and loads it in the cache.
      
      Magnus Hagander
      f4c4f1ce
  6. 14 Jun, 2005 11 commits
    • Bruce Momjian's avatar
      Now \d show tablespace of indices per discussion. · b4132fd0
      Bruce Momjian authored
      test=# \d e
             Table "public.e"
       Column |  Type   | Modifiers
      --------+---------+-----------
       i      | integer | not null
       j      | integer | not null
       k      | integer |
      Indexes:
          "e_pkey" PRIMARY KEY, btree (i, j), tablespace "haha"
          "ei" btree (i)
          "ej" btree (j), tablespace "haha"
          "ek" btree (k)
      Tablespace: "haha"
      
      Qingqing Zhou
      b4132fd0
    • Bruce Momjian's avatar
      Add BETWEEN SYMMETRIC. · 8b84aebd
      Bruce Momjian authored
      Pavel Stehule
      8b84aebd
    • Bruce Momjian's avatar
      reorder: · 495f9aa0
      Bruce Momjian authored
      < * -Add BETWEEN ASYMMETRIC/SYMMETRIC
      > * -Add BETWEEN SYMMETRIC/ASYMMETRIC
      495f9aa0
    • Bruce Momjian's avatar
      Done: · 853e8b14
      Bruce Momjian authored
      > * -Add BETWEEN ASYMMETRIC/SYMMETRIC
      853e8b14
    • Bruce Momjian's avatar
      Use '&nbsp;' escapes for leading spaces in table values, for use in · 921de09e
      Bruce Momjian authored
      EXPLAIN output.
      
      Jean-Paul Argudo
      921de09e
    • Tom Lane's avatar
      Simplify shared-memory lock data structures as per recent discussion: · 8563ccae
      Tom Lane authored
      it is sufficient to track whether a backend holds a lock or not, and
      store information about transaction vs. session locks only in the
      inside-the-backend LocalLockTable.  Since there can now be but one
      PROCLOCK per lock per backend, LockCountMyLocks() is no longer needed,
      thus eliminating some O(N^2) behavior when a backend holds many locks.
      Also simplify the LockAcquire/LockRelease API by passing just a
      'sessionLock' boolean instead of a transaction ID.  The previous API
      was designed with the idea that per-transaction lock holding would be
      important for subtransactions, but now that we have subtransactions we
      know that this is unwanted.  While at it, add an 'isTempObject' parameter
      to LockAcquire to indicate whether the lock is being taken on a temp
      table.  This is not used just yet, but will be needed shortly for
      two-phase commit.
      8563ccae
    • Bruce Momjian's avatar
      Add pg_postmaster_start_time() function. · f5835b4b
      Bruce Momjian authored
      Euler Taveira de Oliveira
      Matthias Schmidt
      f5835b4b
    • Bruce Momjian's avatar
      Done: · b5e65c83
      Bruce Momjian authored
      > 	o -Have SHOW ALL show descriptions for server-side variables
      b5e65c83
    • Bruce Momjian's avatar
      Have SHOW ALL include variable descriptions. · 61e2c00e
      Bruce Momjian authored
      Matthias Schmidt
      61e2c00e
    • Bruce Momjian's avatar
      Update: · cf48d8b3
      Bruce Momjian authored
      < 	o Have SHOW ALL and pg_settings show descriptions for server-side variables
      > 	o Have SHOW ALL show descriptions for server-side variables
      cf48d8b3
    • Bruce Momjian's avatar
      Move item into proper section: · d2c313bc
      Bruce Momjian authored
              o Have SHOW ALL and pg_settings show descriptions for server-side variables
      d2c313bc