1. 03 Oct, 2001 1 commit
    • Thomas G. Lockhart's avatar
      Implement precision support for timestamp and time, both with and without · 3e1beda2
      Thomas G. Lockhart authored
       time zones.
      SQL99 spec requires a default of zero (round to seconds) which is set
       in gram.y as typmod is set in the parse tree. We *could* change to a
       default of either 6 (for internal compatibility with previous versions)
       or 2 (for external compatibility with previous versions).
      Evaluate entries in pg_proc wrt the iscachable attribute for timestamp and
       other date/time types. Try to recognize cases where side effects like the
       current time zone setting may have an effect on results to decide whether
       something is cachable or not.
      3e1beda2
  2. 02 Oct, 2001 1 commit
  3. 01 Oct, 2001 1 commit
  4. 28 Sep, 2001 1 commit
    • Thomas G. Lockhart's avatar
      Measure the current transaction time to milliseconds. · 6f58115d
      Thomas G. Lockhart authored
      Define a new function, GetCurrentTransactionStartTimeUsec() to get the time
       to this precision.
      Allow now() and timestamp 'now' to use this higher precision result so
       we now have fractional seconds in this "constant".
      Add timestamp without time zone type.
      Move previous timestamp type to timestamp with time zone.
      Accept another ISO variant for date/time values: yyyy-mm-ddThh:mm:ss
       (note the "T" separating the day from hours information).
      Remove 'current' from date/time types; convert to 'now' in input.
      Separate time and timetz regression tests.
      Separate timestamp and timestamptz regression test.
      6f58115d
  5. 23 Sep, 2001 1 commit
  6. 20 Sep, 2001 1 commit
  7. 18 Sep, 2001 1 commit
  8. 06 Sep, 2001 1 commit
    • Tatsuo Ishii's avatar
      Commit Karel's patch. · 22776711
      Tatsuo Ishii authored
      -------------------------------------------------------------------
      Subject: Re: [PATCHES] encoding names
      From: Karel Zak <zakkr@zf.jcu.cz>
      To: Peter Eisentraut <peter_e@gmx.net>
      Cc: pgsql-patches <pgsql-patches@postgresql.org>
      Date: Fri, 31 Aug 2001 17:24:38 +0200
      
      On Thu, Aug 30, 2001 at 01:30:40AM +0200, Peter Eisentraut wrote:
      > > 		- convert encoding 'name' to 'id'
      >
      > I thought we decided not to add functions returning "new" names until we
      > know exactly what the new names should be, and pending schema
      
       Ok, the patch not to add functions.
      
      > better
      >
      >     ...(): encoding name too long
      
       Fixed.
      
       I found new bug in command/variable.c in parse_client_encoding(), nobody
      probably never see this error:
      
      if (pg_set_client_encoding(encoding))
      {
      	elog(ERROR, "Conversion between %s and %s is not supported",
                           value, GetDatabaseEncodingName());
      }
      
      because pg_set_client_encoding() returns -1 for error and 0 as true.
      It's fixed too.
      
       IMHO it can be apply.
      
      		Karel
      PS:
      
          * following files are renamed:
      
      src/utils/mb/Unicode/KOI8_to_utf8.map  -->
              src/utils/mb/Unicode/koi8r_to_utf8.map
      
      src/utils/mb/Unicode/WIN_to_utf8.map  -->
              src/utils/mb/Unicode/win1251_to_utf8.map
      
      src/utils/mb/Unicode/utf8_to_KOI8.map -->
              src/utils/mb/Unicode/utf8_to_koi8r.map
      
      src/utils/mb/Unicode/utf8_to_WIN.map -->
              src/utils/mb/Unicode/utf8_to_win1251.map
      
         * new file:
      
      src/utils/mb/encname.c
      
         * removed file:
      
      src/utils/mb/common.c
      
      --
       Karel Zak  <zakkr@zf.jcu.cz>
       http://home.zf.jcu.cz/~zakkr/
      
       C, PostgreSQL, PHP, WWW, http://docs.linux.cz, http://mape.jcu.cz
      22776711
  9. 26 Aug, 2001 1 commit
  10. 25 Aug, 2001 1 commit
    • Tom Lane's avatar
      Replace implementation of pg_log as a relation accessed through the · 2589735d
      Tom Lane authored
      buffer manager with 'pg_clog', a specialized access method modeled
      on pg_xlog.  This simplifies startup (don't need to play games to
      open pg_log; among other things, OverrideTransactionSystem goes away),
      should improve performance a little, and opens the door to recycling
      commit log space by removing no-longer-needed segments of the commit
      log.  Actual recycling is not there yet, but I felt I should commit
      this part separately since it'd still be useful if we chose not to
      do transaction ID wraparound.
      2589735d
  11. 21 Aug, 2001 1 commit
    • Tom Lane's avatar
      Restructure pg_opclass, pg_amop, and pg_amproc per previous discussions in · f933766b
      Tom Lane authored
      pgsql-hackers.  pg_opclass now has a row for each opclass supported by each
      index AM, not a row for each opclass name.  This allows pg_opclass to show
      directly whether an AM supports an opclass, and furthermore makes it possible
      to store additional information about an opclass that might be AM-dependent.
      pg_opclass and pg_amop now store "lossy" and "haskeytype" information that we
      previously expected the user to remember to provide in CREATE INDEX commands.
      Lossiness is no longer an index-level property, but is associated with the
      use of a particular operator in a particular index opclass.
      
      Along the way, IndexSupportInitialize now uses the syscaches to retrieve
      pg_amop and pg_amproc entries.  I find this reduces backend launch time by
      about ten percent, at the cost of a couple more special cases in catcache.c's
      IndexScanOK.
      
      Initial work by Oleg Bartunov and Teodor Sigaev, further hacking by Tom Lane.
      
      initdb forced.
      f933766b
  12. 16 Aug, 2001 1 commit
    • Tom Lane's avatar
      Sequences are now based on int8, not int4, arithmetic. SERIAL pseudo-type · d4f4b971
      Tom Lane authored
      has an alias SERIAL4 and a sister SERIAL8.  SERIAL8 is just the same
      except the created column is type int8 not int4.
      initdb forced.  Note this also breaks any chance of pg_upgrade from 7.1,
      unless we hack up pg_upgrade to drop and recreate sequences.  (Which is
      not out of the question, but I don't wanna do it.)
      d4f4b971
  13. 15 Aug, 2001 1 commit
  14. 13 Aug, 2001 1 commit
    • Peter Eisentraut's avatar
      Make LANCOMPILER clause in CREATE LANGUAGE optional. Allow "identifier" · ee8ed85d
      Peter Eisentraut authored
      syntax for language names (instead of 'string').
      
      createlang now handles the case where a second language uses the same call
      handler as an already installed language (e.g., plperl/plperlu).
      
      droplang now handles the reverse case, i.e., dropping a language where
      the call handler is still used by another language.  Moreover, droplang
      can now be used to drop any user-defined language, not just the supplied
      ones.
      ee8ed85d
  15. 10 Aug, 2001 2 commits
  16. 06 Aug, 2001 1 commit
  17. 04 Aug, 2001 2 commits
  18. 16 Jul, 2001 2 commits
  19. 12 Jul, 2001 1 commit
  20. 10 Jul, 2001 1 commit
    • Tom Lane's avatar
      Changes from Vince Vielhaber to allow the optional clauses of CREATE · 320b6db0
      Tom Lane authored
      USER and ALTER USER to appear in any order, not only the fixed order
      they used to be required to appear in.
      Also, some changes from Tom Lane to create a FULL option for VACUUM;
      it doesn't do anything yet, but I needed to change many of the same
      files to make that happen, so now seemed like a good time.
      320b6db0
  21. 09 Jul, 2001 1 commit
  22. 30 Jun, 2001 1 commit
  23. 23 Jun, 2001 1 commit
  24. 19 Jun, 2001 1 commit
  25. 09 Jun, 2001 1 commit
  26. 07 Jun, 2001 1 commit
  27. 04 Jun, 2001 1 commit
  28. 27 May, 2001 1 commit
  29. 14 May, 2001 1 commit
  30. 09 May, 2001 1 commit
  31. 08 May, 2001 1 commit
  32. 07 May, 2001 1 commit
    • Tom Lane's avatar
      Rewrite of planner statistics-gathering code. ANALYZE is now available as · f905d65e
      Tom Lane authored
      a separate statement (though it can still be invoked as part of VACUUM, too).
      pg_statistic redesigned to be more flexible about what statistics are
      stored.  ANALYZE now collects a list of several of the most common values,
      not just one, plus a histogram (not just the min and max values).  Random
      sampling is used to make the process reasonably fast even on very large
      tables.  The number of values and histogram bins collected is now
      user-settable via an ALTER TABLE command.
      
      There is more still to do; the new stats are not being used everywhere
      they could be in the planner.  But the remaining changes for this project
      should be localized, and the behavior is already better than before.
      
      A not-very-related change is that sorting now makes use of btree comparison
      routines if it can find one, rather than invoking '<' twice.
      f905d65e
  33. 01 May, 2001 1 commit
  34. 18 Feb, 2001 1 commit
  35. 09 Feb, 2001 1 commit
  36. 24 Jan, 2001 1 commit
  37. 23 Jan, 2001 1 commit
    • Tom Lane's avatar
      Give 'a_expr ::= a_expr Op' production a slightly lower precedence than · f69ff0c4
      Tom Lane authored
      Op, so that the sequence 'a_expr Op Op a_expr' will be parsed as
      a_expr Op (Op a_expr) not (a_expr Op) Op a_expr as formerly.  In other
      words, prefer treating user-defined operators as prefix operators to
      treating them as postfix operators, when there is an ambiguity.
      Also clean up a couple of other infelicities in production priority
      assignment --- for example, BETWEEN wasn't being given the intended
      priority, but that of AND.
      f69ff0c4