1. 03 Apr, 1997 2 commits
    • Marc G. Fournier's avatar
      From: "D'Arcy J.M. Cain" <darcy@druid.net> · 4bc578eb
      Marc G. Fournier authored
      Subject: [HACKERS] timestamp.c changes
      
      I sent in changes previously and they were rejected because they didn't
      follow ANSI spec.  Here is the input part of the changes again.  Even
      though it allows more flexibility for inputting different formats, it
      is also backwards compatible with the standard version.  I have also
      not changed the output format so it will still output the ANSI forms.
      Is this acceptable to everyone?
      4bc578eb
    • Marc G. Fournier's avatar
      From: Thomas Lockhart <Thomas.G.Lockhart@jpl.nasa.gov> · 9d5c0af5
      Marc G. Fournier authored
      Subject: [HACKERS] Aggregate function patches
      
      Here are the aggregate function patches I originally sent in last December.
      They fix sum() and avg() behavior for ints and floats when NULL values are
      involved.
      
      I was waiting to resubmit these until I had a chance to write a v6.0->v6.1
      database upgrade script to ensure that existing v6.0 databases which have
      not been reloaded for v6.1 do no break with the new aggregate behavior.
      These scripts are included below. It's OK with me if someone wants to do
      something different with the upgrade strategy, but something like this
      was discussed a few weeks ago.
      
      Also, there were a couple of small items which cropped up in doing a clean
      install of 970403 (actually 970402 + 970403 changes since the full 970403
      tar file appears to be damaged or at least suspect). They are the first
      two patches below and can be omitted if desired (although I think they
      aren't dangerous :).
      9d5c0af5
  2. 02 Apr, 1997 22 commits
  3. 01 Apr, 1997 1 commit
  4. 28 Mar, 1997 7 commits
    • Marc G. Fournier's avatar
    • Marc G. Fournier's avatar
      From: Thomas Lockhart <Thomas.G.Lockhart@jpl.nasa.gov> · 632a707f
      Marc G. Fournier authored
      Subject: [HACKERS] Small date patches (resubmitted)
      
      Here a some small patches for the date/time code. They set the default
      output format for the datetime type to the traditional Postgres
      style, and fix a date debugging declaration. I submitted these
      a couple of days ago, but they might have gotten lost...
      
      
      NOTE: the second patch to dt.c is what I believe D'Arcy submitted as well,
            that I claimed was taken out...sorry D'Arcy, my fault :(
      632a707f
    • Marc G. Fournier's avatar
      From: Thomas Lockhart <Thomas.G.Lockhart@jpl.nasa.gov> · 28454c21
      Marc G. Fournier authored
      Subject: Re: [HACKERS] abstime "now" broken
      
      Yes, I broke 'now' :( with an attempt at a bug fix involving
      servers running in the UTC/GMT timezone. These patches fix
      the problem, and have been tested in GMT (+00 hours),
      PST (-08), and NZT (+12) timezones which exercized the code for
      various cases including across day boundaries.  btw, this code
      fixes the same type of problem for 'today', 'yesterday', 'tomorrow',
      for DATETIME, ABSTIME, DATE and TIME types.
      
      The bugfix itself is quite small, but I have accumulated other
      changes in the datetime data type and include them here also.
      One set of changes involves printing ISO-formatted dates and
      is in response to the helpful information from Kurt Lidl regarding
      ANSI SQL dates. I'll send another e-mail sometime soon discussing
      more issues he has raised...
      28454c21
    • Marc G. Fournier's avatar
      From: Dan McGuirk <mcguirk@indirect.com> · 159f8c63
      Marc G. Fournier authored
      Reply-To: hackers@hub.org, Dan McGuirk <mcguirk@indirect.com>
      To: hackers@hub.org
      Subject: [HACKERS] tmin writeback optimization
      
      I was doing some profiling of the backend, and noticed that during a certain
      benchmark I was running somewhere between 30% and 75% of the backend's CPU
      time was being spent in calls to TransactionIdDidCommit() from
      HeapTupleSatisfiesNow() or HeapTupleSatisfiesItself() to determine that
      changed rows' transactions had in fact been committed even though the rows'
      tmin values had not yet been set.
      
      When a query looks at a given row, it needs to figure out whether the
      transaction that changed the row has been committed and hence it should pay
      attention to the row, or whether on the other hand the transaction is still
      in progress or has been aborted and hence the row should be ignored.  If
      a tmin value is set, it is known definitively that the row's transaction
      has been committed.  However, if tmin is not set, the transaction
      referred to in xmin must be looked up in pg_log, and this is what the
      backend was spending a lot of time doing during my benchmark.
      
      So, implementing a method suggested by Vadim, I created the following
      patch that, the first time a query finds a committed row whose tmin value
      is not set, sets it, and marks the buffer where the row is stored as
      dirty.  (It works for tmax, too.)  This doesn't result in the boost in
      real time performance I was hoping for, however it does decrease backend
      CPU usage by up to two-thirds in certain situations, so it could be
      rather beneficial in high-concurrency settings.
      159f8c63
    • Marc G. Fournier's avatar
      From: "D'Arcy J.M. Cain" <darcy@druid.net> · d98f72e2
      Marc G. Fournier authored
      #ifdef is looking for the wrong value.
      d98f72e2
    • Marc G. Fournier's avatar
      From: "D'Arcy J.M. Cain" <darcy@druid.net> · 038e56c4
      Marc G. Fournier authored
      Some systems require limits.h to define DBL_MIN.
      038e56c4
    • Marc G. Fournier's avatar
      On some systems limits.h is needed to define DBL_MIN. · 70a0237b
      Marc G. Fournier authored
      From: "D'Arcy J.M. Cain" <darcy@druid.net>
      70a0237b
  5. 27 Mar, 1997 2 commits
  6. 26 Mar, 1997 6 commits