1. 18 7月, 2002 1 次提交
    • T
      I have committed many support files for CREATE CONVERSION. Default · eb335a03
      Tatsuo Ishii 提交于
      conversion procs and conversions are added in initdb. Currently
      supported conversions are:
      
      UTF-8(UNICODE) <--> SQL_ASCII, ISO-8859-1 to 16, EUC_JP, EUC_KR,
      		    EUC_CN, EUC_TW, SJIS, BIG5, GBK, GB18030, UHC,
      		    JOHAB, TCVN
      
      EUC_JP <--> SJIS
      EUC_TW <--> BIG5
      MULE_INTERNAL <--> EUC_JP, SJIS, EUC_TW, BIG5
      
      Note that initial contents of pg_conversion system catalog are created
      in the initdb process. So doing initdb required is ideal, it's
      possible to add them to your databases by hand, however. To accomplish
      this:
      
      psql -f your_postgresql_install_path/share/conversion_create.sql your_database
      
      So I did not bump up the version in cataversion.h.
      
      TODO:
      Add more conversion procs
      Add [CASCADE|RESTRICT] to DROP CONVERSION
      Add tuples to pg_depend
      Add regression tests
      Write docs
      Add SQL99 CONVERT command?
      --
      Tatsuo Ishii
      eb335a03
  2. 17 7月, 2002 3 次提交
  3. 16 7月, 2002 9 次提交
  4. 15 7月, 2002 3 次提交
  5. 14 7月, 2002 1 次提交
  6. 13 7月, 2002 2 次提交
    • B
      Add SET statement_timeout capability. Timeout is in ms. A value of · 4db8718e
      Bruce Momjian 提交于
      zero turns off the timer.
      4db8718e
    • T
      Second phase of committing Rod Taylor's pg_depend/pg_constraint patch. · 7c6df91d
      Tom Lane 提交于
      pg_relcheck is gone; CHECK, UNIQUE, PRIMARY KEY, and FOREIGN KEY
      constraints all have real live entries in pg_constraint.  pg_depend
      exists, and RESTRICT/CASCADE options work on most kinds of DROP;
      however, pg_depend is not yet very well populated with dependencies.
      (Most of the ones that are present at this point just replace formerly
      hardwired associations, such as the implicit drop of a relation's pg_type
      entry when the relation is dropped.)  Need to add more logic to create
      dependency entries, improve pg_dump to dump constraints in place of
      indexes and triggers, and add some regression tests.
      7c6df91d
  7. 12 7月, 2002 1 次提交
  8. 11 7月, 2002 1 次提交
    • T
      Add new CREATE CONVERSION/DROP CONVERSION command. · fcc96256
      Tatsuo Ishii 提交于
      This is the first cut toward CREATE CONVERSION/DROP CONVERSION implementaion.
      The commands can now add/remove tuples to the new pg_conversion system
      catalog, but that's all. Still need work to make them actually working.
      Documentations, regression tests also need work.
      fcc96256
  9. 09 7月, 2002 2 次提交
  10. 07 7月, 2002 1 次提交
  11. 05 7月, 2002 1 次提交
  12. 04 7月, 2002 1 次提交
    • T
      Implement the IS DISTINCT FROM operator per SQL99. · 68d9fbeb
      Thomas G. Lockhart 提交于
      Reused the Expr node to hold DISTINCT which strongly resembles
       the existing OP info. Define DISTINCT_EXPR which strongly resembles
       the existing OPER_EXPR opType, but with handling for NULLs required
       by SQL99.
      We have explicit support for single-element DISTINCT comparisons
       all the way through to the executor. But, multi-element DISTINCTs
       are handled by expanding into a comparison tree in gram.y as is done for
       other row comparisons. Per discussions, it might be desirable to move
       this into one or more purpose-built nodes to be handled in the backend.
      Define the optional ROW keyword and token per SQL99.
       This allows single-element row constructs, which were formerly disallowed
       due to shift/reduce conflicts with parenthesized a_expr clauses.
      Define the SQL99 TREAT() function. Currently, use as a synonym for CAST().
      68d9fbeb
  13. 02 7月, 2002 4 次提交
    • B
      >the extra level of struct naming for pd_opaque has no obvious · c9a73452
      Bruce Momjian 提交于
      >usefulness.
      >
      >> [...] should I post a patch that puts pagesize directly into
      >> PageHeaderData?
      >
      >If you're so inclined.  Given that pd_opaque is hidden in those macros,
      >there wouldn't be much of any gain in readability either, so I haven't
      >worried about changing the declaration.
      
      Thanks for the clarification.  Here is the patch.  Not much gain, but at
      least it saves the next junior hacker from scratching his head ...
      
      
      Manfred Koizar
      c9a73452
    • B
      There already was a macro PageGetItemId; this is now used in (almost) · 33f16878
      Bruce Momjian 提交于
      all places, where pd_linp is accessed.  Also introduce new macros
      SizeOfPageHeaderData and BTMaxItemSize. This is just source code
      cosmetic, no behaviour changed.
      
      Manfred Koizar
      33f16878
    • B
      Minor code cleanup in bufmgr.c and bufmgr.h, mainly by moving repeated · 8864603f
      Bruce Momjian 提交于
      lines of code into internal routines (drop_relfilenode_buffers,
      release_buffer) and by hiding unused routines (PrintBufferDescs,
      PrintPinnedBufs) behind #ifdef NOT_USED. Remove AbortBufferIO()
      declaration from bufmgr.c (already declared in bufmgr.h)
      
      Manfred Koizar
      8864603f
    • B
      This patch, which is built upon the "HeapTupleHeader accessor macros" · 97bfffe5
      Bruce Momjian 提交于
      patch from 2002-06-10, is supposed to reduce the heap tuple header size
      by four bytes on most architectures.  Of course it changes the on-disk
      tuple format and therefore requires initdb.
      
      This overlays cmin/cmax/xmax fields into only two fields.
      
      Manfred Koizar
      97bfffe5
  14. 01 7月, 2002 1 次提交
    • T
      First phase of applying Rod Taylor's pg_depend patch. This just adds · 131f801d
      Tom Lane 提交于
      RESTRICT/CASCADE syntax to the DROP commands that need it, and propagates
      the behavioral option through the parser to the routines that execute
      drops.  Doesn't do anything useful yet, but I figured I'd commit these
      changes so I could get out of the parser area while working on the rest.
      131f801d
  15. 27 6月, 2002 2 次提交
  16. 26 6月, 2002 4 次提交
  17. 24 6月, 2002 1 次提交
    • B
      It seems that ExecInit/EndIndexScan is leaking some memory... · 5a151497
      Bruce Momjian 提交于
      For example, if I run a query, that uses an index scan, and call
      MemoryContextSt ats (CurrentMemoryContext) before ExecutorStart() and
      after ExecutorEnd() in ProcessQuery(), I am consistently see ing that
      the 'after' call shows 256 bytes more used, then 'before'...
      
      The problem seems to be in ExecEndIndexScan - it does not release
      scanstate, ind exstate, indexstate->iss_RelationDescs and indexstate ->
      iss_ScanDescs...
      
      Dmitry Tkach
      5a151497
  18. 22 6月, 2002 1 次提交
    • T
      Implement SQL99 CREATE CAST and DROP CAST statements. · 90edb265
      Thomas G. Lockhart 提交于
       Also implement alternative forms to expose the PostgreSQL CREATE FUNCTION
       features.
      Implement syntax for READ ONLY and READ WRITE clauses in SET TRANSACTION.
       READ WRITE is already implemented (of course).
      Implement syntax for "LIKE table" clause in CREATE TABLE. Should be fairly
       easy to complete since it resembles SELECT INTO.
      Implement MATCH SIMPLE clause for foreign key definitions. This is explicit
       SQL99 syntax for the default behavior, so we now support it :)
      Start implementation of shorthand for national character literals in
       scanner. For now, just swallow the leading "N", but sometime soon let's
       figure out how to pass leading type info from the scanner to the parser.
       We should use the same technique for binary and hex bit string literals,
       though it might be unusual to have two apparently independent literal
       types fold into the same storage type.
      90edb265
  19. 21 6月, 2002 1 次提交