Skip to content
Snippets Groups Projects
  1. Feb 17, 2008
    • Tom Lane's avatar
      Replace time_t with pg_time_t (same values, but always int64) in on-disk · cd004067
      Tom Lane authored
      data structures and backend internal APIs.  This solves problems we've seen
      recently with inconsistent layout of pg_control between machines that have
      32-bit time_t and those that have already migrated to 64-bit time_t.  Also,
      we can get out from under the problem that Windows' Unix-API emulation is not
      consistent about the width of time_t.
      
      There are a few remaining places where local time_t variables are used to hold
      the current or recent result of time(NULL).  I didn't bother changing these
      since they do not affect any cross-module APIs and surely all platforms will
      have 64-bit time_t before overflow becomes an actual risk.  time_t should
      be avoided for anything visible to extension modules, however.
      cd004067
  2. Jan 16, 2008
  3. Jan 14, 2008
  4. Jan 03, 2008
    • Tom Lane's avatar
      The original patch to disallow non-passworded connections to non-superusers · 919c9f6c
      Tom Lane authored
      failed to cover all the ways in which a connection can be initiated in dblink.
      Plug the remaining holes.  Also, disallow transient connections in functions
      for which that feature makes no sense (because they are only sensible as
      part of a sequence of operations on the same connection).  Joe Conway
      
      Security: CVE-2007-6601
      919c9f6c
  5. Jan 01, 2008
  6. Dec 31, 2007
  7. Dec 11, 2007
  8. Dec 09, 2007
  9. Dec 07, 2007
    • Tom Lane's avatar
      Clean up a couple of problems in crosstab_hash's use of a hash table. · aaff0a55
      Tom Lane authored
      The original coding leaked memory (at least 8K per crosstab_hash call)
      because it allowed the hash table to be allocated as a child of
      TopMemoryContext and then never freed it.  Fix that by putting the
      hash table under per_query_ctx, instead.  Also get rid of use
      of a static variable to point to the hash table.  Aside from being
      ugly, that would actively do the wrong thing in the case of re-entrant
      calls to crosstab_hash, which are at least theoretically possible
      since it was expecting the static variable to stay valid across
      a SPI_execute call.
      aaff0a55
  10. Dec 05, 2007
  11. Dec 03, 2007
  12. Dec 02, 2007
  13. Nov 30, 2007
    • Tom Lane's avatar
      Avoid incrementing the CommandCounter when CommandCounterIncrement is called · 895a94de
      Tom Lane authored
      but no database changes have been made since the last CommandCounterIncrement.
      This should result in a significant improvement in the number of "commands"
      that can typically be performed within a transaction before hitting the 2^32
      CommandId size limit.  In particular this buys back (and more) the possible
      adverse consequences of my previous patch to fix plan caching behavior.
      
      The implementation requires tracking whether the current CommandCounter
      value has been "used" to mark any tuples.  CommandCounter values stored into
      snapshots are presumed not to be used for this purpose.  This requires some
      small executor changes, since the executor used to conflate the curcid of
      the snapshot it was using with the command ID to mark output tuples with.
      Separating these concepts allows some small simplifications in executor APIs.
      
      Something for the TODO list: look into having CommandCounterIncrement not do
      AcceptInvalidationMessages.  It seems fairly bogus to be doing it there,
      but exactly where to do it instead isn't clear, and I'm disinclined to mess
      with asynchronous behavior during late beta.
      895a94de
  14. Nov 28, 2007
  15. Nov 20, 2007
  16. Nov 16, 2007
  17. Nov 15, 2007
  18. Nov 13, 2007
  19. Nov 11, 2007
Loading