1. 04 3月, 2007 1 次提交
  2. 06 1月, 2007 1 次提交
  3. 23 9月, 2006 1 次提交
  4. 19 9月, 2006 1 次提交
    • T
      Add built-in userlock manipulation functions to replace the former · 9b4cda0d
      Tom Lane 提交于
      contrib functionality.  Along the way, remove the USER_LOCKS configuration
      symbol, since it no longer makes any sense to try to compile that out.
      No user documentation yet ... mmoncure has promised to write some.
      Thanks to Abhijit Menon-Sen for creating a first draft to work from.
      9b4cda0d
  5. 24 7月, 2006 1 次提交
  6. 14 7月, 2006 1 次提交
  7. 05 3月, 2006 1 次提交
  8. 12 12月, 2005 1 次提交
    • T
      Divide the lock manager's shared state into 'partitions', so as to · ec0baf94
      Tom Lane 提交于
      reduce contention for the former single LockMgrLock.  Per my recent
      proposal.  I set it up for 16 partitions, but on a pgbench test this
      gives only a marginal further improvement over 4 partitions --- we need
      to test more scenarios to choose the number of partitions.
      ec0baf94
  9. 09 12月, 2005 1 次提交
    • T
      Simplify lock manager data structures by making a clear separation between · c599a247
      Tom Lane 提交于
      the data defining the semantics of a lock method (ie, conflict resolution
      table and ancillary data, which is all constant) and the hash tables
      storing the current state.  The only thing we give up by this is the
      ability to use separate hashtables for different lock methods, but there
      is no need for that anyway.  Put some extra fields into the LockMethod
      definition structs to clean up some other uglinesses, like hard-wired
      tests for DEFAULT_LOCKMETHOD and USER_LOCKMETHOD.  This commit doesn't
      do anything about the performance issues we were discussing, but it clears
      away some of the underbrush that's in the way of fixing that.
      c599a247
  10. 29 10月, 2005 1 次提交
  11. 15 10月, 2005 1 次提交
  12. 30 4月, 2005 1 次提交
    • T
      Restructure LOCKTAG as per discussions of a couple months ago. · 3a694bb0
      Tom Lane 提交于
      Essentially, we shoehorn in a lockable-object-type field by taking
      a byte away from the lockmethodid, which can surely fit in one byte
      instead of two.  This allows less artificial definitions of all the
      other fields of LOCKTAG; we can get rid of the special pg_xactlock
      pseudo-relation, and also support locks on individual tuples and
      general database objects (including shared objects).  None of those
      possibilities are actually exploited just yet, however.
      
      I removed pg_xactlock from pg_class, but did not force initdb for
      that change.  At this point, relkind 's' (SPECIAL) is unused and
      could be removed entirely.
      3a694bb0
  13. 22 2月, 2005 1 次提交
  14. 01 1月, 2005 1 次提交
    • P
      · 2ff50159
      PostgreSQL Daemon 提交于
      Tag appropriate files for rc3
      
      Also performed an initial run through of upgrading our Copyright date to
      extend to 2005 ... first run here was very simple ... change everything
      where: grep 1996-2004 && the word 'Copyright' ... scanned through the
      generated list with 'less' first, and after, to make sure that I only
      picked up the right entries ...
      2ff50159
  15. 29 8月, 2004 1 次提交
  16. 28 8月, 2004 1 次提交
    • T
      Introduce local hash table for lock state, as per recent proposal. · 1785aceb
      Tom Lane 提交于
      PROCLOCK structs in shared memory now have only a bitmask for held
      locks, rather than counts (making them 40 bytes smaller, which is a
      good thing).  Multiple locks within a transaction are counted in the
      local hash table instead, and we have provision for tracking which
      ResourceOwner each count belongs to.  Solves recently reported problem
      with memory leakage within long transactions.
      1785aceb
  17. 22 7月, 2004 1 次提交
    • T
      Invent WAL timelines, as per recent discussion, to make point-in-time · 2042b342
      Tom Lane 提交于
      recovery more manageable.  Also, undo recent change to add FILE_HEADER
      and WASTED_SPACE records to XLOG; instead make the XLOG page header
      variable-size with extra fields in the first page of an XLOG file.
      This should fix the boundary-case bugs observed by Mark Kirkwood.
      initdb forced due to change of XLOG representation.
      2042b342
  18. 06 6月, 2004 1 次提交
  19. 02 12月, 2003 1 次提交
    • B
      Try to reduce confusion about what is a lock method identifier, a lock · e7ca8674
      Bruce Momjian 提交于
      method control structure, or a table of control structures.
      
      . Use type LOCKMASK where an int is not a counter.
      
      . Get rid of INVALID_TABLEID, use INVALID_LOCKMETHOD instead.
      
      . Use INVALID_LOCKMETHOD instead of (LOCKMETHOD) NULL, because
        LOCKMETHOD is not a pointer.
      
      . Define and use macro LockMethodIsValid.
      
      . Rename LOCKMETHOD to LOCKMETHODID.
      
      . Remove global variable LongTermTableId in lmgr.c, because it is
        never used.
      
      . Make LockTableId static in lmgr.c, because it is used nowhere else.
        Why not remove it and use DEFAULT_LOCKMETHOD?
      
      . Rename the lock method control structure from LOCKMETHODTABLE to
        LockMethodData.  Introduce a pointer type named LockMethod.
      
      . Remove elog(FATAL) after InitLockTable() call in
        CreateSharedMemoryAndSemaphores(), because if something goes wrong,
        there is elog(FATAL) in LockMethodTableInit(), and if this doesn't
        help, an elog(ERROR) in InitLockTable() is promoted to FATAL.
      
      . Make InitLockTable() void, because its only caller does not use its
        return value any more.
      
      . Rename variables in lock.c to avoid statements like
              LockMethodTable[NumLockMethods] = lockMethodTable;
              lockMethodTable = LockMethodTable[lockmethod];
      
      . Change LOCKMETHODID type to uint16 to fit into struct LOCKTAG.
      
      . Remove static variables BITS_OFF and BITS_ON from lock.c, because
        I agree to this doubt:
       * XXX is a fetch from a static array really faster than a shift?
      
      . Define and use macros LOCKBIT_ON/OFF.
      
      
      Manfred Koizar
      e7ca8674
  20. 30 11月, 2003 1 次提交
    • P
      · 969685ad
      PostgreSQL Daemon 提交于
      $Header: -> $PostgreSQL Changes ...
      969685ad
  21. 25 9月, 2003 1 次提交
  22. 09 8月, 2003 1 次提交
  23. 04 8月, 2003 2 次提交
  24. 25 7月, 2003 1 次提交
  25. 01 4月, 2003 1 次提交
    • T
      TestConfiguration returns int, not bool. This mistake is relatively · 7cd30e15
      Tom Lane 提交于
      harmless on signed-char machines but would lead to core dump in the
      deadlock detection code if char is unsigned.  Amazingly, this bug has
      been here since 7.1 and yet wasn't reported till now.  Thanks to Robert
      Bruccoleri for providing the opportunity to track it down.
      7cd30e15
  26. 20 2月, 2003 1 次提交
  27. 19 2月, 2003 1 次提交
    • B
      - Modifies LOCKTAG to include a 'classId'. Relation receive a classId of · d0f3a7e9
      Bruce Momjian 提交于
      RelOid_pg_class, and transaction locks XactLockTableId. RelId is renamed
      to objId.
      
      - LockObject() and UnlockObject() functions created, and their use
      sprinkled throughout the code to do descent locking for domains and
      types. They accept lock modes AccessShare and AccessExclusive, as we
      only really need a 'read' and 'write' lock at the moment.  Most locking
      cases are held until the end of the transaction.
      
      This fixes the cases Tom mentioned earlier in regards to locking with
      Domains.  If the patch is good, I'll work on cleaning up issues with
      other database objects that have this problem (most of them).
      
      Rod Taylor
      d0f3a7e9
  28. 18 2月, 2003 1 次提交
  29. 17 1月, 2003 1 次提交
  30. 01 11月, 2002 1 次提交
  31. 04 10月, 2002 1 次提交
  32. 05 9月, 2002 1 次提交
  33. 19 7月, 2002 2 次提交
  34. 21 6月, 2002 1 次提交
  35. 11 6月, 2002 1 次提交
    • J
      Katherine Ward wrote: · 469cb65a
      Jan Wieck 提交于
      > Changes to avoid collisions with WIN32 & MFC names...
      > 1.  Renamed:
      >       a.  PROC => PGPROC
      >       b.  GetUserName() => GetUserNameFromId()
      >       c.  GetCurrentTime() => GetCurrentDateTime()
      >       d.  IGNORE => IGNORE_DTF in include/utils/datetime.h & utils/adt/datetim
      >
      > 2.  Added _P to some lex/yacc tokens:
      >       CONST, CHAR, DELETE, FLOAT, GROUP, IN, OUT
      
      Jan
      469cb65a
  36. 28 10月, 2001 1 次提交
  37. 25 10月, 2001 1 次提交
  38. 30 9月, 2001 1 次提交