sort by:
Revision Author Date Message Commit Date
4082f5e Stamp release 7.4.9. 03 October 2005, 17:14:24 UTC
fd366be Update release notes for pending back-branch releases. 03 October 2005, 16:05:09 UTC
196c9d2 Repair planning bug introduced in 7.4: outer-join ON clauses that referenced only the inner-side relation would be considered as potential equijoin clauses, which is wrong because the condition doesn't necessarily hold above the point of the outer join. Per test case from Kevin Grittner (bug#1916). 28 September 2005, 21:17:50 UTC
6a2c659 [ Patch to 7.4.X.] In several places PL/Python was calling PyObject_Str() and then PyString_AsString() without checking if the former had returned NULL to indicate an error. PyString_AsString() doesn't expect a NULL argument, so passing one causes a segmentation fault. This patch adds checks for NULL and raises errors via PLy_elog(), which prints details of the underlying Python exception. The patch also adds regression tests for these checks. All tests pass on my Solaris 9 box running HEAD and Python 2.4.1. 25 September 2005, 03:18:16 UTC
8fb4451 Update Snowball. I have to update it because of old version doesn't available on Snowball's site and new version of stemmers can't be compiled with old interface. 15 September 2005, 12:41:52 UTC
e3523f5 Fix a mistake in the documentation for SPI_getbinval(), per Michael Fuhr. 12 September 2005, 18:51:29 UTC
752b861 Translation update 03 September 2005, 07:41:11 UTC
d4235f9 Fix missing rows in query update a=.. where a... with GiST index on column 'a' Backpatch from 8.0 branch 30 August 2005, 08:36:52 UTC
2ba0540 Back-patch fixes for problems with VACUUM destroying t_ctid chains too soon, and with insufficient paranoia in code that follows t_ctid links. This patch covers the 7.4 branch. 25 August 2005, 22:07:21 UTC
c9e69d7 Back-patch fix to correctly quote schema names in --no-owner mode. Per gripe from Dick Kniep. 25 August 2005, 00:11:36 UTC
d00f6b2 - Check for NULL before checking whether argument is an array. - Removed stray character from string quoting. - Fixed check to report missing varchar pointer implementation. 24 August 2005, 10:35:54 UTC
e2e2e15 Reject operator names >= NAMEDATALEN characters. These will not work anyway, and in assert-enabled builds you are likely to get an assertion failure. Backpatch as far as 7.3; 7.2 seems not to have the problem. 16 August 2005, 00:48:43 UTC
ec70ca7 array_in() and array_recv() need to be more paranoid about validating their OID parameter. It was possible to crash the backend with select array_in('{123}',0,0); because that would bypass the needed step of initializing the workspace. These seem to be the only two places with a problem, though (record_in and record_recv don't have the issue, and the other array functions aren't depending on user-supplied input). Back-patch as far as 7.4; 7.3 does not have the bug. 15 August 2005, 19:41:06 UTC
6f0da95 int_array_enum function should be using fcinfo->flinfo->fn_extra for working state, not fcinfo->context. Silly oversight on my part in last go-round of fixes. 15 August 2005, 19:05:43 UTC
c98a606 Fix count_usable_fds() to stop trying to open files once it reaches max_files_per_process. Going further than that is just a waste of cycles, and it seems that current Cygwin does not cope gracefully with deliberately running the system out of FDs. Per Andrew Dunstan. 07 August 2005, 18:48:00 UTC
c76de7d MemSet() must not cast its pointer argument to int32* until after it has checked that the pointer is actually word-aligned. Casting a non-aligned pointer to int32* is technically illegal per the C spec, and some recent versions of gcc actually generate bad code for the memset() when given such a pointer. Per report from Andrew Morrow. 18 July 2005, 15:54:11 UTC
027b623 Make pg_regress accept a command-line option for the temporary installation's port number, and use a default value for it that is dependent on the configuration-time DEF_PGPORT. Should make the world safe for running parallel 'make check' in different branches. Back-patch as far as 7.4 so that this actually is useful. 17 July 2005, 18:29:37 UTC
86494de Back-patch recent changes to alter the order of -L flags inserted from LDFLAGS versus those built into the Makefiles. This looks like it will fix several buildfarm failures in the back branches. 17 July 2005, 04:06:04 UTC
6ec28d8 ecpglib depends on last_path_separator from src/port/path.c, so we'd better include that in the library build. This was fixed in 8.0 and later, backport to 7.4 to fix buildfarm failure. 16 July 2005, 20:39:24 UTC
bf84d6e Back-patch 8.0's tightening of ORDER BY clauses in join regression test, in hopes of eliminating buildfarm regression failure. (Not clear if we will need a join_1.out variant in this branch.) 16 July 2005, 20:20:49 UTC
dc59b47 cube_1 variant is needed in 7.4 branch, per results from buildfarm machine 'kudu'. 16 July 2005, 20:11:12 UTC
d96e046 The geometry_2 variant appears to be needed in 7.4 branch as well as later, per results from buildfarm member 'wallaroo'. 16 July 2005, 18:39:26 UTC
0a719d8 Fix bogus "extern int errno;" in back branches, per Andrew Dunstan. 16 July 2005, 15:23:29 UTC
ecafa82 Fix mis-backport of libpq memory leak fix. Per Michael Fuhr. 14 July 2005, 14:07:41 UTC
57bdab7 Fix libpq memory leak during PQreset() --- closePGconn() was not freeing all transient state of the PGconn object. 13 July 2005, 15:26:16 UTC
a5d10d6 Make libpq_gettext save and restore errno in a Windows-compatible way. Also, back-patch fix into back branches. 08 July 2005, 15:25:19 UTC
4677334 Fix ancient memory leak in index_create(): RelationInitIndexAccessInfo was being called twice in normal operation, leading to a leak of one set of relcache subsidiary info. Per report from Jeff Gold. 25 June 2005, 16:54:12 UTC
0592a1e Correct some code in pg_restore when reading the header of a tar archive: (1) The code doesn't initialize `sum', so the initial "does the checksum match?" test is wrong. (2) The loop that is intended to check for a "null block" just checks the first byte of the tar block 512 times, rather than each of the 512 bytes one time (!), which I'm guessing was the intent. It was only through sheer luck that this worked in the first place. Per Coverity static analysis performed by EnterpriseDB. 22 June 2005, 02:12:19 UTC
a6f0dee plpgsql's exec_assign_value() freed the old value of a variable before copying/converting the new value, which meant that it failed badly on "var := var" if var is of pass-by-reference type. Fix this and a similar hazard in exec_move_row(); not sure that the latter can manifest before 8.0, but patch it all the way back anyway. Per report from Dave Chapeskie. 20 June 2005, 20:44:57 UTC
41d2849 When using C-string lookup keys in a dynahash.c hash table, use strncpy() not memcpy() to copy the offered key into the hash table during HASH_ENTER. This avoids possible core dump if the passed key is located very near the end of memory. Per report from Stefan Kaltenbrunner. 18 June 2005, 20:51:59 UTC
2b6dd51 Translation updates 17 June 2005, 11:30:57 UTC
a1f08fc The random selection in function linear() could deliver a value equal to max if geqo_rand() returns exactly 1.0, resulting in failure due to indexing off the end of the pool array. Also, since this is using inexact float math, it seems wise to guard against roundoff error producing values slightly outside the expected range. Per report from bug@zedware.org. 14 June 2005, 14:21:31 UTC
4f3ae01 Fix bug in MIC -> EUC_JP conversion. Per Atsushi Ogawa. 11 June 2005, 02:50:07 UTC
fe88b20 Repair error in description of nonblocking usage of PQgetCopyData(). Per Volkan Yazici. 09 June 2005, 19:08:47 UTC
39c9398 Code for SET/SHOW TIME ZONE with a fixed-interval timezone was not prepared for HAVE_INT64_TIMESTAMP. Per report from Guillaume Beaudoin. 05 June 2005, 01:48:55 UTC
b38bcb2 Push enable/disable of notify and catchup interrupts all the way down to just around the bare recv() call that gets a command from the client. The former placement in PostgresMain was unsafe because the intermediate processing layers (especially SSL) use facilities such as malloc that are not necessarily re-entrant. Per report from counterstorm.com. 02 June 2005, 21:04:08 UTC
e063240 Fixed memory leak in ecpglib by adding some missing free() commands. 02 June 2005, 12:50:30 UTC
1891938 Prevent to divide by zero and range out of 0..1 01 June 2005, 11:46:09 UTC
5205024 Add test to WAL replay to verify that xl_prev points back to the previous WAL record; this is necessary to be sure we recognize stale WAL records when a WAL page was only partially written during a system crash. 31 May 2005, 19:10:57 UTC
3c6bba3 expandRTE and get_rte_attribute_type mistakenly always imputed typmod -1 to columns of an RTE that was a function returning RECORD with a column definition list. Apparently no one has tried to use non-default typmod with a function returning RECORD before. 29 May 2005, 17:10:52 UTC
ab82f60 Adjust datetime parsing to be more robust. We now pass the length of the working buffer into ParseDateTime() and reject too-long input there, rather than checking the length of the input string before calling ParseDateTime(). The old method was bogus because ParseDateTime() can use a variable amount of working space, depending on the content of the input string (e.g. how many fields need to be NUL terminated). This fixes a minor stack overrun -- I don't _think_ it's exploitable, although I won't claim to be an expert. Along the way, fix a bug reported by Mark Dilger: the working buffer allocated by interval_in() was too short, which resulted in rejecting some perfectly valid interval input values. I added a regression test for this fix. 26 May 2005, 02:14:32 UTC
d1d5c0f Translation updates 25 May 2005, 08:32:14 UTC
05a07af Fix previous patch to exprTypmod. 25 May 2005, 02:13:48 UTC
de212f4 Inserting 5 characters into char(10) does not produce 5 padding spaces if they are two-byte multibyte characters. Same thing can be happen if octet_length(multibyte_chars) == n where n is char(n). Long standing bug since 7.3 days. Per report and fix from Yoshiyuki Asaba. 24 May 2005, 23:15:05 UTC
0a7b3a3 Previous fix for "x FULL JOIN y ON true" failed to handle the case where there was also a WHERE-clause restriction that applied to the join. The check on restrictlist == NIL is really unnecessary anyway, because select_mergejoin_clauses already checked for and complained about any unmergejoinable join clauses. So just take it out. 24 May 2005, 18:03:24 UTC
88c59ae Guard against duplicate IDs in input file in SortTocFromFile(). Per report from Brian Hackett. 17 May 2005, 17:30:53 UTC
103376e Update release notes for upcoming re-releases. 09 May 2005, 00:10:22 UTC
775fec1 Update release checklist to reflect that HISTORY and INSTALL don't need to be created by hand anymore. 08 May 2005, 23:34:32 UTC
43418e8 In Blob.getBytes(long position, int length) position is an offset starting at 1, not zero as the driver was previously doing. Thanks to Emmanuel Bernard for the report. 08 May 2005, 23:16:58 UTC
0053e29 Repair very-low-probability race condition between relation extension and VACUUM: in the interval between adding a new page to the relation and formatting it, it was possible for VACUUM to come along and decide it should format the page too. Though not harmful in itself, this would cause data loss if a third transaction were able to insert tuples into the vacuumed page before the original extender got control back. 07 May 2005, 21:33:21 UTC
501ec7b Adjust time qual checking code so that we always check TransactionIdIsInProgress before we check commit/abort status. Formerly this was done in some paths but not all, with the result that a transaction might be considered committed for some purposes before it became committed for others. Per example found by Jan Wieck. 07 May 2005, 21:23:02 UTC
26f64e4 Stamp release 7.4.8. 05 May 2005, 20:08:35 UTC
d9088d3 Make standalone backends ignore pg_database.datallowconn, so that there is a way to recover from disabling connections to all databases at once. 05 May 2005, 19:53:49 UTC
6067403 Add WSACleanup() for Win32 socket cleanup. Backpatch to 7.4.X. Jason Erickson 05 May 2005, 16:37:04 UTC
cff25fa Alter the signature for encoding conversion functions to declare the output area as INTERNAL not CSTRING. This is to prevent people from calling the functions by hand. This is a permanent solution for the back branches but I hope it is just a stopgap for HEAD. 03 May 2005, 19:18:31 UTC
308f01c Change tsearch2 to not use the unsafe practice of creating functions that return INTERNAL without also having INTERNAL arguments. Since the functions in question aren't meant to be called by hand anyway, I just redeclared them to take 'internal' instead of 'text'. Also add code to ProcedureCreate() to enforce the restriction, as I should have done to start with :-( 03 May 2005, 16:51:45 UTC
a935e36 GCC 4.0 includes a new warning option, -Wformat-literal, that emits a warning when a variable is used as a format string for printf() and similar functions (if the variable is derived from untrusted data, it could include unexpected formatting sequences). This emits too many warnings to be enabled by default, but it does flag a few dubious constructs in the Postgres tree. This patch fixes up the obvious variants: functions that are passed a variable format string but no additional arguments. Most of these are harmless (e.g. the ruleutils stuff), but there is at least one actual bug here: if you create a trigger named "%sfoo", pg_dump will read uninitialized memory and fail to dump the trigger correctly. 30 April 2005, 08:36:18 UTC
15ea6d5 This patch fixes a bug in the error message emitted by pg_restore on an incorrect -F argument: write_msg() expects its first parameter to be a "module name", not the format string. 30 April 2005, 08:00:55 UTC
3b15457 Repair two TIME WITH TIME ZONE bugs found by Dennis Vshivkov. Comparison of timetz values misbehaved in --enable-integer-datetime cases, and EXTRACT(EPOCH) subtracted the zone instead of adding it in all cases. Backpatch to all supported releases (except --enable-integer-datetime code does not exist in 7.2). 23 April 2005, 22:53:44 UTC
c7b94bb int_aggregate's int_enum() doesn't work correctly with arrays that aren't 1-D, so give an error message instead of failing. Per report from Ron Mayer. 23 April 2005, 05:39:01 UTC
5eed8ce Release build 216. 22 April 2005, 15:10:52 UTC
a44f990 Updatable ResultSets need to check for an empty ResultSet because isBeforeFirst and isAfterLast both return false for an empty result so the checking to make sure the user is on a valid row wasn't working. Also don't allow an insert without specifying at least one column value because INSERT INTO tab() values() is a syntax error. 22 April 2005, 14:48:18 UTC
f5517dd When moveToCurrentRow is called and the current row is off the end of the ResultSet we can't try to load that row because it doesn't exist and will throw an Exception. Reported by Prasanth. 22 April 2005, 14:36:48 UTC
08008de Don't try to run clauseless index scans on index types that don't support it. Per report from Marinos Yannikos. 20 April 2005, 21:48:22 UTC
387c398 Fix mis-display of negative fractional seconds in interval values for --enable-integer-datetimes case. Per report from Oliver Siegmar. 20 April 2005, 17:15:09 UTC
6091d62 Add comment about permissions on pg_ts* tables 19 April 2005, 13:59:06 UTC
e1d55f7 When positioned before the start of a ResultSet issuing relative(0) results in an exception being thrown when it really should be a no-op. 18 April 2005, 18:25:11 UTC
2a35291 Don't try to constant-fold functions returning RECORD, since the optimizer isn't presently set up to pass them an expected tuple descriptor. Bug has been there since 7.3 but was just recently reported by Thomas Hallgren. 14 April 2005, 21:44:35 UTC
2902876 Make constant-folding produce sane output for COALESCE(NULL,NULL), that is a plain NULL and not a COALESCE with no inputs. Fixes crash reported by Michael Williamson. 10 April 2005, 20:58:03 UTC
5c5c797 In cost_mergejoin, the early-exit effect should not apply to the outer side of an outer join. Per andrew@supernews. 04 April 2005, 01:43:33 UTC
3ea32d7 Flush any remaining statistics counts out to the collector at process exit. Without this, operations triggered during backend exit (such as temp table deletions) won't be counted ... which given heavy usage of temp tables can lead to pg_autovacuum falling way behind on the need to vacuum pg_class and pg_attribute. Per reports from Steve Crawford and others. 31 March 2005, 23:21:32 UTC
7d19650 Fix various comparing functions 31 March 2005, 15:12:08 UTC
12fa5c5 Prevent to_char(interval) from dumping core on month-related formats when a zero-month interval is given. Per discussion with Karel. 26 March 2005, 00:42:21 UTC
3e65431 array_map can't use the fn_extra field of the provided fcinfo struct as its private storage, because that belongs to the function that it is supposed to call. Per report from Ezequiel Tolnay. 24 March 2005, 21:51:04 UTC
b4fd104 Previous "64-bit fix" for intagg didn't actually work. This is already fixed properly in CVS tip, but we need a band-aid for back branches. Per report from Ron Mayer. 23 March 2005, 19:07:03 UTC
80fba0f Fix ALTER DATABASE RENAME to allow the operation if user is a superuser who for some reason isn't marked usecreatedb. Per report from Alexander Pravking. Also fix sloppy coding in have_createdb_privilege(). 12 March 2005, 21:12:18 UTC
2450224 Some builds (depends on crypto engine support?) of OpenSSL 0.9.7x have EVP_DigestFinal function which which clears all of EVP_MD_CTX. This makes pgcrypto crash in functions which re-use one digest context several times: hmac() and crypt() with md5 algorithm. Following patch fixes it by carring the digest info around EVP_DigestFinal and re-initializing cipher. Marko Kreen. 12 March 2005, 06:55:14 UTC
989a17a Prevent rank change in case of duplicate search terms 05 March 2005, 16:19:33 UTC
89dcff5 Release proclock immediately in RemoveFromWaitQueue() if it represents no held locks. This maintains the invariant that proclocks are present only for procs that are holding or awaiting a lock; when this is not true, LockRelease will fail. Per report from Stephen Clouse. 01 March 2005, 21:15:26 UTC
510f058 Document that only a table's owner may TRUNCATE it. Per Keith Worthington. 22 February 2005, 19:06:49 UTC
2df2c3d Ensure that the resolved datatype of any unknown Param is propagated into the sub-SELECT targetlist when it appears in the context INSERT INTO foo SELECT $1 ... Per report from Abhijit Menon-Sen. 19 February 2005, 19:33:42 UTC
42e386f ALTER LANGUAGE RENAME has never worked. Per Sergey Yatskevich. 14 February 2005, 06:18:09 UTC
6d28a8f Back-patch fix for a typo that unintentionally disabled backward scans for all SPI-created cursors. 10 February 2005, 20:37:15 UTC
d60b1f5 If we're gonna check for array overrun, we really should do so before overrunning the array, not after. 08 February 2005, 18:22:11 UTC
5c057d4 Prevent 4 more buffer overruns in the PL/PgSQL parser. This is just a minimally-invasive fix for stable branches; a cleaner fix will be committed to HEAD soon. 07 February 2005, 03:55:28 UTC
3f8235b Repair CLUSTER failure after ALTER TABLE SET WITHOUT OIDS. Turns out there are corner cases involving dropping toasted columns in which the previous coding would fail, too: the new version of the table might not have any TOAST table, but we'd still propagate possibly-wide values of dropped columns forward. 06 February 2005, 20:19:42 UTC
5bb3845 Back-port heap_deformtuple() into 7.4 branch; needed for planned fix for CLUSTER failure after ALTER TABLE SET WITHOUT OIDS. 06 February 2005, 20:15:32 UTC
6508888 Recommend security@postgresql.org as the contact point for security-related bugs. 30 January 2005, 21:32:10 UTC
9c1bb68 Stamp release 7.4.7. 30 January 2005, 19:32:22 UTC
f361057 We haven't had a fixed limit on rule recursion depth since 7.3 ... but the documentation still said so. 29 January 2005, 23:46:16 UTC
ae8db9a Make sure contrib C functions are marked strict where needed. Kris Jurka 29 January 2005, 22:35:30 UTC
2fd184b Check that aggregate creator has the right to execute the transition functions of the aggregate, at both aggregate creation and execution times. 27 January 2005, 23:43:16 UTC
b9fccbb Now that I look at it, int_array_enum() didn't work either. 27 January 2005, 21:50:15 UTC
3393e65 Fix security and 64-bit issues in contrib/intagg. This code could stand to be rewritten altogether, but for now just stick a finger in the dike. 27 January 2005, 21:35:56 UTC
03a7dd0 Back-patch 8.0 version of plperl_hash_from_tuple() into prior releases to fix failure to cope with quote marks in field values; not to mention that it is shorter and faster. Per report from Charles Haron. 26 January 2005, 17:09:21 UTC
db78e53 Mark the text_soundex() function as "strict", to avoid crashing on NULL input. Also, may as well mark it "cacheable" as well. From Kris Jurka. 26 January 2005, 08:10:08 UTC
6508bf5 Disallow LOAD to non-superusers. Per report from John Heasman. 24 January 2005, 17:46:41 UTC
bb4b504 Fix memory leak in rtdosplit, per report from Clive Page. 24 January 2005, 02:48:15 UTC
dddc2af The result of a FULL or RIGHT join can't be assumed to be sorted by the left input's sorting, because null rows may be inserted at various points. Per report from Ferenc Lutischá¸n. 23 January 2005, 02:23:30 UTC
3b01217 Prevent overrunning a heap-allocated buffer if more than 1024 parameters to a refcursor declaration are specified. This is a minimally-invasive fix for the buffer overrun -- a more thorough cleanup will be checked into HEAD. 21 January 2005, 00:31:21 UTC
back to top