1. 06 1月, 2016 1 次提交
  2. 20 12月, 2015 1 次提交
    • R
      Fix issue #74, make cluster in gpdemo failed(initdb failed on a 32-bit VM) · 94eacb66
      Robert Mu 提交于
      Heikki suggested that we backport atomic operation from PostgreSQL 9.5 to
      fix this
      
          commit b64d92f1
          Author: Andres Freund <andres@anarazel.de>
          Date:   Thu Sep 25 23:49:05 2014 +0200
      
          Add a basic atomic ops API abstracting away platform/architecture details.
      
          Several upcoming performance/scalability improvements require atomic
          operations. This new API avoids the need to splatter compiler and
          architecture dependent code over all the locations employing atomic
          ops.
      
          For several of the potential usages it'd be problematic to maintain
          both, a atomics using implementation and one using spinlocks or
          similar. In all likelihood one of the implementations would not get
          tested regularly under concurrency. To avoid that scenario the new API
          provides a automatic fallback of atomic operations to spinlocks. All
          properties of atomic operations are maintained. This fallback -
          obviously - isn't as fast as just using atomic ops, but it's not bad
          either. For one of the future users the atomics ontop spinlocks
          implementation was actually slightly faster than the old purely
          spinlock using implementation. That's important because it reduces the
          fear of regressing older platforms when improving the scalability for
          new ones.
      
          The API, loosely modeled after the C11 atomics support, currently
          provides 'atomic flags' and 32 bit unsigned integers. If the platform
          efficiently supports atomic 64 bit unsigned integers those are also
          provided.
      
          To implement atomics support for a platform/architecture/compiler for
          a type of atomics 32bit compare and exchange needs to be
          implemented. If available and more efficient native support for flags,
          32 bit atomic addition, and corresponding 64 bit operations may also
          be provided. Additional useful atomic operations are implemented
          generically ontop of these.
      
          The implementation for various versions of gcc, msvc and sun studio have
          been tested. Additional existing stub implementations for
          * Intel icc
          * HUPX acc
          * IBM xlc
          are included but have never been tested. These will likely require
          fixes based on buildfarm and user feedback.
      
          As atomic operations also require barriers for some operations the
          existing barrier support has been moved into the atomics code.
      
          Author: Andres Freund with contributions from Oskari Saarenmaa
          Reviewed-By: Amit Kapila, Robert Haas, Heikki Linnakangas and Álvaro Herrera
          Discussion: CA+TgmoYBW+ux5-8Ja=Mcyuy8=VXAnVRHp3Kess6Pn3DMXAPAEA@mail.gmail.com,
              20131015123303.GH5300@awork2.anarazel.de,
              20131028205522.GI20248@awork2.anarazel.de
      94eacb66
  3. 28 10月, 2015 1 次提交
  4. 16 3月, 2007 1 次提交
    • T
      Make use of plancache module for SPI plans. In particular, since plpgsql · 95f6d2d2
      Tom Lane 提交于
      uses SPI plans, this finally fixes the ancient gotcha that you can't
      drop and recreate a temp table used by a plpgsql function.
      
      Along the way, clean up SPI's API a little bit by declaring SPI plan
      pointers as "SPIPlanPtr" instead of "void *".  This is cosmetic but
      helps to forestall simple programming mistakes.  (I have changed some
      but not all of the callers to match; there are still some "void *"'s
      in contrib and the PL's.  This is intentional so that we can see if
      anyone's compiler complains about it.)
      95f6d2d2
  5. 02 2月, 2007 1 次提交
    • B
      Wording cleanup for error messages. Also change can't -> cannot. · 8b4ff8b6
      Bruce Momjian 提交于
      Standard English uses "may", "can", and "might" in different ways:
      
              may - permission, "You may borrow my rake."
      
              can - ability, "I can lift that log."
      
              might - possibility, "It might rain today."
      
      Unfortunately, in conversational English, their use is often mixed, as
      in, "You may use this variable to do X", when in fact, "can" is a better
      choice.  Similarly, "It may crash" is better stated, "It might crash".
      8b4ff8b6
  6. 14 7月, 2006 1 次提交
  7. 31 5月, 2006 1 次提交
    • T
      Code review for magic-block patch. Remove separate header file pgmagic.h, · e60cb3a3
      Tom Lane 提交于
      as this seems only likely to create headaches for module developers.  Put
      the macro in the pre-existing fmgr.h file instead.  Avoid being too cute
      about how many fields we can cram into a word, and avoid trying to fetch
      from a library we've already unlinked.
      Along the way, it occurred to me that the magic block really ought to be
      'const' so it can be stored in the program text area.  Do the same for
      the existing data blocks for PG_FUNCTION_INFO_V1 functions.
      e60cb3a3
  8. 30 5月, 2006 1 次提交
    • B
      Add pgmagic header block to store compile-time constants: · 01b2168c
      Bruce Momjian 提交于
      It now only checks four things:
      
      Major version number (7.4 or 8.1 for example)
      NAMEDATALEN
      FUNC_MAX_ARGS
      INDEX_MAX_KEYS
      
      The three constants were chosen because:
      
      1. We document them in the config page in the docs
      2. We mark them as changable in pg_config_manual.h
      3. Changing any of these will break some of the more popular modules:
      
      FUNC_MAX_ARGS changes fmgr interface, every module uses this NAMEDATALEN
      changes syscache interface, every PL as well as tsearch uses this
      INDEX_MAX_KEYS breaks tsearch and anything using GiST.
      
      Martijn van Oosterhout
      01b2168c
  9. 12 1月, 2006 1 次提交
  10. 15 10月, 2005 1 次提交
  11. 23 7月, 2005 1 次提交
  12. 22 10月, 2004 1 次提交
  13. 07 10月, 2004 1 次提交
  14. 02 4月, 2004 1 次提交
    • T
      Replace TupleTableSlot convention for whole-row variables and function · 375369ac
      Tom Lane 提交于
      results with tuples as ordinary varlena Datums.  This commit does not
      in itself do much for us, except eliminate the horrid memory leak
      associated with evaluation of whole-row variables.  However, it lays the
      groundwork for allowing composite types as table columns, and perhaps
      some other useful features as well.  Per my proposal of a few days ago.
      375369ac
  15. 30 11月, 2003 1 次提交
    • P
      · 969685ad
      PostgreSQL Daemon 提交于
      $Header: -> $PostgreSQL Changes ...
      969685ad
  16. 04 8月, 2003 1 次提交
  17. 28 7月, 2003 1 次提交
  18. 28 5月, 2003 1 次提交
  19. 20 3月, 2003 1 次提交
  20. 13 11月, 2002 1 次提交
  21. 11 11月, 2002 1 次提交
  22. 10 11月, 2002 1 次提交
  23. 22 8月, 2002 1 次提交
  24. 06 3月, 2002 1 次提交
    • B
      Change made to elog: · 92288a1c
      Bruce Momjian 提交于
      o  Change all current CVS messages of NOTICE to WARNING.  We were going
      to do this just before 7.3 beta but it has to be done now, as you will
      see below.
      
      o Change current INFO messages that should be controlled by
      client_min_messages to NOTICE.
      
      o Force remaining INFO messages, like from EXPLAIN, VACUUM VERBOSE, etc.
      to always go to the client.
      
      o Remove INFO from the client_min_messages options and add NOTICE.
      
      Seems we do need three non-ERROR elog levels to handle the various
      behaviors we need for these messages.
      
      Regression passed.
      92288a1c
  25. 06 11月, 2001 1 次提交
  26. 17 8月, 2001 1 次提交
    • T
      Sequences are now based on int8, not int4, arithmetic. SERIAL pseudo-type · d4f4b971
      Tom Lane 提交于
      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
  27. 22 3月, 2001 1 次提交
  28. 10 2月, 2001 1 次提交
    • T
      Restructure the key include files per recent pghackers discussion: there · d08741ea
      Tom Lane 提交于
      are now separate files "postgres.h" and "postgres_fe.h", which are meant
      to be the primary include files for backend .c files and frontend .c files
      respectively.  By default, only include files meant for frontend use are
      installed into the installation include directory.  There is a new make
      target 'make install-all-headers' that adds the whole content of the
      src/include tree to the installed fileset, for use by people who want to
      develop server-side code without keeping the complete source tree on hand.
      Cleaned up a whole lot of crufty and inconsistent header inclusions.
      d08741ea
  29. 21 11月, 2000 1 次提交
    • T
      Revise handling of oldstyle/newstyle functions per recent discussions · 5bb2300b
      Tom Lane 提交于
      in pghackers list.  Support for oldstyle internal functions is gone
      (no longer needed, since conversion is complete) and pg_language entry
      'internal' now implies newstyle call convention.  pg_language entry
      'newC' is gone; both old and newstyle dynamically loaded C functions
      are now called language 'C'.  A newstyle function must be identified
      by an associated info routine.  See src/backend/utils/fmgr/README.
      5bb2300b
  30. 25 8月, 2000 1 次提交
  31. 31 7月, 2000 1 次提交
    • T
      Convert all remaining geometric operators to new fmgr style. This · 3a9a74a0
      Tom Lane 提交于
      allows fixing problems with operators that expected to be able to
      return a NULL, such as the '#' line-segment-intersection operator
      that tried to return NULL when the two segments don't intersect.
      (See, eg, bug report from 1-Nov-99 on pghackers.)  Fix some other
      bugs in passing, such as backwards comparison in path_distance().
      3a9a74a0
  32. 30 7月, 2000 1 次提交
  33. 06 7月, 2000 1 次提交
  34. 13 6月, 2000 1 次提交
  35. 12 6月, 2000 1 次提交
    • T
      Update sequence-related functions to new fmgr style. Remove downcasing, · 3477957b
      Tom Lane 提交于
      quote-stripping, and acl-checking tasks for these functions from the
      parser, and do them at function execution time instead.  This fixes
      the failure of pg_dump to produce correct output for nextval(Foo)
      used in a rule, and also eliminates the restriction that the argument
      of these functions must be a parse-time constant.
      3477957b
  36. 05 6月, 2000 1 次提交
  37. 29 5月, 2000 1 次提交
  38. 13 4月, 2000 1 次提交
  39. 17 12月, 1999 1 次提交
  40. 22 10月, 1999 1 次提交