summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2004-09-17Allow WIN1250 as server encoding.Peter Eisentraut
2004-09-17Hashed LEFT JOIN would miss outer tuples with no inner match if the joinTom Lane
was large enough to be batched and the tuples fell into a batch where there were no inner tuples at all. Thanks to Xiaoyu Wang for finding a test case that exposed this long-standing bug.
2004-09-17Now that xmax and cmin are distinct fields again, we should zero xmax whenTom Lane
creating a new tuple. This is just for debugging sanity, though, since nothing should be paying any attention to xmax when the HEAP_XMAX_INVALID bit is set.
2004-09-16Fix oversight: there's no reason for PG_TRY to use sigsetjmp(buf,1)Tom Lane
since we don't change the signal mask during normal backend operations. Use sigsetjmp(buf,0) to avoid many unnecessary kernel calls.
2004-09-16Remove erroneous Assert, per example from Kris Jurka.Tom Lane
2004-09-16Add some marginal tweaks to eliminate memory leakages associated withTom Lane
subtransactions. Trivial subxacts (such as a plpgsql exception block containing no database access) now demonstrably leak zero bytes.
2004-09-16RecentXmin is too recent to use as the cutoff point for accessingTom Lane
pg_subtrans --- what we need is the oldest xmin of any snapshot in use in the current top transaction. Introduce a new variable TransactionXmin to play this role. Fixes intermittent regression failure reported by Neil Conway.
2004-09-16Restructure subtransaction handling to reduce resource consumption,Tom Lane
as per recent discussions. Invent SubTransactionIds that are managed like CommandIds (ie, counter is reset at start of each top transaction), and use these instead of TransactionIds to keep track of subtransaction status in those modules that need it. This means that a subtransaction does not need an XID unless it actually inserts/modifies rows in the database. Accordingly, don't assign it an XID nor take a lock on the XID until it tries to do that. This saves a lot of overhead for subtransactions that are only used for error recovery (eg plpgsql exceptions). Also, arrange to release a subtransaction's XID lock as soon as the subtransaction exits, in both the commit and abort cases. This avoids holding many unique locks after a long series of subtransactions. The price is some additional overhead in XactLockTableWait, but that seems acceptable. Finally, restructure the state machine in xact.c to have a more orthogonal set of states for subtransactions.
2004-09-16Fix a read of uninitialized memory in array_out(). Perform some minorNeil Conway
cosmetic code cleanup at the same time.
2004-09-14Cosmetic PL/PgSQL fix: declare the second parameter plpgsql_dstring_appendNeil Conway
as a const char *, so that we don't need to cast away a const in gram.y
2004-09-14New translationPeter Eisentraut
2004-09-14Translation updatePeter Eisentraut
2004-09-14Win32 compile fix for misc_utils.Tom Lane
Claudio Natoli
2004-09-14Make pltcl work on Win32. Magnus HaganderTom Lane
2004-09-13Fix small memory leak in psql.Neil Conway
2004-09-13Translation updatePeter Eisentraut
2004-09-13Redesign query-snapshot timing so that volatile functions in READ COMMITTEDTom Lane
mode see a fresh snapshot for each command in the function, rather than using the latest interactive command's snapshot. Also, suppress fresh snapshots as well as CommandCounterIncrement inside STABLE and IMMUTABLE functions, instead using the snapshot taken for the most closely nested regular query. (This behavior is only sane for read-only functions, so the patch also enforces that such functions contain only SELECT commands.) As per my proposal of 6-Sep-2004; I note that I floated essentially the same proposal on 19-Jun-2002, but that discussion tailed off without any action. Since 8.0 seems like the right place to be taking possibly nontrivial backwards compatibility hits, let's get it done now.
2004-09-13Translation updatesPeter Eisentraut
2004-09-13Translation updatesPeter Eisentraut
2004-09-13New translationsPeter Eisentraut
2004-09-13New translationPeter Eisentraut
2004-09-13Translation updatesPeter Eisentraut
2004-09-13Fix two typos in comments.Neil Conway
2004-09-12Re-add brace removal code but comment it out so we know why we removedBruce Momjian
it and have it in case we need it for some special case.
2004-09-12Remove code that delete braces around single statements.Bruce Momjian
2004-09-12When LockAcquire fails at the stage of creating a proclock object, beTom Lane
sure to clean up the already-created lock object, if it has no other references. Avoids possibly-permanent leak of shared memory.
2004-09-11Renumber SnapshotNow and the other special snapshot codes so thatTom Lane
((Snapshot) NULL) can no longer be confused with a valid snapshot, as per my recent suggestion. Define a macro InvalidSnapshot for 0. Use InvalidSnapshot instead of SnapshotAny as the do-nothing special case for heap_update and heap_delete crosschecks; this seems a little cleaner even though the behavior is really the same.
2004-09-11Ensure that pg_largeobject references opened by lo_import() or lo_export()Tom Lane
will be cleaned up at end of transaction, even when there is no other LO operation in the transaction. Per bug report from Daniel Schuchardt.
2004-09-10Fix some problems with restoring databases owned by non-superusers,Tom Lane
as per bug #1249; and remove the last vestiges of using \connect to change authorization.
2004-09-10Fire non-deferred AFTER triggers immediately upon query completion,Tom Lane
rather than when returning to the idle loop. This makes no particular difference for interactively-issued queries, but it makes a big difference for queries issued within functions: trigger execution now occurs before the calling function is allowed to proceed. This responds to numerous complaints about nonintuitive behavior of foreign key checking, such as http://archives.postgresql.org/pgsql-bugs/2004-09/msg00020.php, and appears to be required by the SQL99 spec. Also take the opportunity to simplify the data structures used for the pending-trigger list, rename them for more clarity, and squeeze out a bit of space.
2004-09-10Fix #if defineBruce Momjian
2004-09-10Fix palloc call from /port for Cygwin.Bruce Momjian
2004-09-10Properly include port file for Cygwin.Bruce Momjian
2004-09-10Minor cleanup.Bruce Momjian
2004-09-10More cleanup.Bruce Momjian
2004-09-10Add mention loops over unlink/rename might not be needed.Bruce Momjian
2004-09-10Move undef of rename/unlink so system declarations are unmodified.Bruce Momjian
2004-09-10Adjust quotes for win32 build of psql.Bruce Momjian
2004-09-10psql consistency fixes from Greg Sabino Mullane: have \df show schema andNeil Conway
name first, make sure \di+ shows description last, and make \dl SQL look a little more standard.
2004-09-10Create pg_config_paths in port/ for win32 builds of psql.Bruce Momjian
2004-09-10Clean up Cygwin test.Bruce Momjian
2004-09-09Move TIMEZONE_GLOBAL out into the proper place.Bruce Momjian
2004-09-09We don't use java in our compiles anymore so remove the filter test fromBruce Momjian
pgtest.
2004-09-09Added a call to gettext() to fix broken translated error messages.Dennis Bjorklund
2004-09-09Translation updatesDennis Bjorklund
2004-09-09Some source files was not scanned for translatable strings.Dennis Bjorklund
2004-09-09Translation updatesDennis Bjorklund
2004-09-09Fix Cygwin defines to be consistent.Bruce Momjian
2004-09-09Make TZNAME_GLOBAL for reference to tzname global variable.Bruce Momjian
2004-09-08Minor efficiency improvements in keeping track of trigger deferredTom Lane
status. In particular, I see no reason for deferredTriggerCheckState to make an explicit entry to note that a particular trigger has its default state --- that just clutters a list that should normally be empty or very short. I have plans to revise this module much more heavily, but this is a simple separable improvement.