Commit Graph

  • 754da88e19 Repair problems with the result of lookup_rowtype_tupdesc() possibly being discarded by cache flush while still in use. This is a minimal patch that just copies the tupdesc anywhere it could be needed across a flush. Applied to back branches only; Neil Conway is working on a better long-term solution for HEAD. Tom Lane 2006-01-17 17:33:37 +00:00
  • 7b3d9367b4 Repair problems with the result of lookup_rowtype_tupdesc() possibly being discarded by cache flush while still in use. This is a minimal patch that just copies the tupdesc anywhere it could be needed across a flush. Applied to back branches only; Neil Conway is working on a better long-term solution for HEAD. Tom Lane 2006-01-17 17:33:23 +00:00
  • 73e3566078 Improve comments about btree's use of ScanKey data structures: there are two basically different kinds of scankeys, and we ought to try harder to indicate which is used in each place in the code. I've chosen the names "search scankey" and "insertion scankey", though you could make about as good an argument for "operator scankey" and "comparison function scankey". Tom Lane 2006-01-17 00:09:01 +00:00
  • e38217d1ec Improve constraint_name wording. Bruce Momjian 2006-01-16 20:48:49 +00:00
  • a0ae3dbacb Add markup for new constraint_name mention. Bruce Momjian 2006-01-16 19:53:12 +00:00
  • 9200318972 Add documentaiotn mention that constraint names can be sentences that can convey information to clients on constraint violation. Bruce Momjian 2006-01-16 19:50:03 +00:00
  • b06e6f1a9a Change the parameter_types column of the pg_prepared_statements to be an array of regtype, rather than an array of OIDs. This is likely to be more useful to user, and the type OID can easily be obtained by casting a regtype value to OID. Per suggestion from Tom. Neil Conway 2006-01-16 18:15:31 +00:00
  • 8372956243 When using GCC on AMD64 and PPC, ECPGget_variable() takes a va_list *, not a va_list. Christof Petig's previous patch made this change, but neglected to update ecpglib/descriptor.c, resulting in a compiler warning (and a likely runtime crash) on AMD64 and PPC. Neil Conway 2006-01-15 22:47:21 +00:00
  • afe91cae6c When using GCC on AMD64 and PPC, ECPGget_variable() takes a va_list *, not a va_list. Christof Petig's previous patch made this change, but neglected to update ecpglib/descriptor.c, resulting in a compiler warning (and a likely runtime crash) on AMD64 and PPC. Neil Conway 2006-01-15 22:47:10 +00:00
  • 1ce4c9e9b4 When using GCC on AMD64 and PPC, ECPGget_variable() takes a va_list *, not a va_list. Christof Petig's previous patch made this change, but neglected to update ecpglib/descriptor.c, resulting in a compiler warning (and a likely runtime crash) on AMD64 and PPC. Neil Conway 2006-01-15 22:46:53 +00:00
  • 4dcc82ac7e Add regression tests to verify that domain constraints on parameters to prepared statements with unknown type are correctly enforced, per recent bug report. Neil Conway 2006-01-15 22:34:49 +00:00
  • 106a3695f5 Allow the types of parameters to PREPARE to be inferred. If a parameter's data type is unspecified or is declared to be "unknown", the type will be inferred from the context in which the parameter is used. This was already possible for protocol-level prepared statements. Neil Conway 2006-01-15 22:18:47 +00:00
  • f7ea931287 Some minor code cleanup, falling out from the removal of rtree. SK_NEGATE isn't being used anywhere anymore, and there seems no point in a generic index_keytest() routine when two out of three remaining access methods aren't using it. Also, add a comment documenting a convention for letting access methods define private flag bits in ScanKey sk_flags. There are no such flags at the moment but I'm thinking about changing btree's handling of "required keys" to use flag bits in the keys rather than a count of required key positions. Also, if some AM did still want SK_NEGATE then it would be reasonable to treat it as a private flag bit. Tom Lane 2006-01-14 22:03:35 +00:00
  • 9d570f7e21 Fix pg_ctl crash on "unregister" when a data directory is not specified. by Magnus Hagander Peter Eisentraut 2006-01-14 16:18:30 +00:00
  • 5032245807 Fix pg_ctl crash on "unregister" when a data directory is not specified. by Magnus Hagander Peter Eisentraut 2006-01-14 16:16:08 +00:00
  • 7930e627d8 Fix pg_ctl crash on "unregister" when a data directory is not specified. by Magnus Hagander Peter Eisentraut 2006-01-14 15:41:28 +00:00
  • 34f8ee9737 Add selectivity-calculation code for RowCompareExpr nodes. Simplistic, but a lot better than nothing at all ... Tom Lane 2006-01-14 00:14:12 +00:00
  • 39fc1fb07a Remove logic in XactLockTableWait() that attempted to mark a crashed transaction as aborted. Since we only call XactLockTableWait on XIDs that we believe to be currently running, the odds of this code ever actually firing are minimal. It's certainly unnecessary, since a transaction that's not either running or committed will be presumed aborted anyway. What's more, it's not hard to imagine scenarios where this could result in corrupting pg_clog: for instance, if a bogus XID somehow got passed to XactLockTableWait. I think the code probably dates from the ancient era when we didn't have TransactionIdIsInProgress; back then it may have been necessary, but now I think it's a waste of cycles and potentially dangerous. Per discussion with Qingqing Zhou and Karsten Hilbert. Tom Lane 2006-01-13 21:32:12 +00:00
  • 7d6d02b640 Document that CREATE OPERATOR CLASS amounts to granting public execute permissions on the functions and operators contained in the opclass. Since we already require superuser privilege to create an operator class, there's no expansion-of-privilege hazard here, but if someone were to get the idea of building an opclass containing functions that need security restrictions, we'd better warn them off. Also, change the permission checks from have-execute-privilege to have-ownership, and then comment them all out since they're dead code anyway under the superuser restriction. Tom Lane 2006-01-13 18:10:25 +00:00
  • 1564e92cea Require the issuer of CREATE TYPE to own the functions mentioned in the type definition. Because use of a type's I/O conversion functions isn't access-checked, CREATE TYPE amounts to granting public execute permissions on the functions, and so allowing it to anybody means that someone could theoretically gain access to a function he's not supposed to be able to execute. The parameter-type restrictions already enforced by CREATE TYPE make it fairly unlikely that this oversight is meaningful in practice, but still it seems like a good idea to plug the hole going forward. Also, document the implicit grant just in case anybody gets the idea of building I/O functions that might need security restrictions. Tom Lane 2006-01-13 18:06:45 +00:00
  • e05a95bc00 We neglected to apply domain constraints on UNKNOWN parameters to prepared statements, per report from David Wheeler. Neil Conway 2006-01-12 22:29:31 +00:00
  • b0b8bab575 We neglected to apply domain constraints on UNKNOWN parameters to prepared statements, per report from David Wheeler. Neil Conway 2006-01-12 22:29:22 +00:00
  • 5dc3d1b0be We neglected to apply domain constraints on UNKNOWN parameters to prepared statements, per report from David Wheeler. Neil Conway 2006-01-12 22:29:11 +00:00
  • 4b3252c4b8 We neglected to apply domain constraints on UNKNOWN parameters to prepared statements, per report from David Wheeler. Neil Conway 2006-01-12 22:28:35 +00:00
  • ea73a78b08 Clear up remaining compile warning for plperl on Windows. Andrew Dunstan 2006-01-12 22:15:56 +00:00
  • d3a4d63387 mbutils was previously doing some allocations, including invoking fmgr_info(), in the TopMemoryContext. I couldn't see that the code actually leaked, but in general I think it's fragile to assume that pfree'ing an FmgrInfo along with its fn_extra field is enough to reclaim all the resources allocated by fmgr_info(). I changed the code to do its allocations in a new child context of TopMemoryContext, MbProcContext. When we want to release the allocations we can just reset the context, which is cleaner. Neil Conway 2006-01-12 22:04:02 +00:00
  • a6cc7db9a6 Repair "Halloween problem" in EvalPlanQual: a tuple that's been inserted by our own command (or more generally, xmin = our xact and cmin >= current command ID) should not be seen as good. Else we may try to update rows we already updated. This error was inserted last August while fixing the even bigger problem that the old coding wouldn't see *any* tuples inserted by our own transaction as good. Per report from Euler Taveira de Oliveira. Tom Lane 2006-01-12 21:49:41 +00:00
  • e76bb5cfec Repair "Halloween problem" in EvalPlanQual: a tuple that's been inserted by our own command (or more generally, xmin = our xact and cmin >= current command ID) should not be seen as good. Else we may try to update rows we already updated. This error was inserted last August while fixing the even bigger problem that the old coding wouldn't see *any* tuples inserted by our own transaction as good. Per report from Euler Taveira de Oliveira. Tom Lane 2006-01-12 21:49:32 +00:00
  • e26b09618b Repair "Halloween problem" in EvalPlanQual: a tuple that's been inserted by our own command (or more generally, xmin = our xact and cmin >= current command ID) should not be seen as good. Else we may try to update rows we already updated. This error was inserted last August while fixing the even bigger problem that the old coding wouldn't see *any* tuples inserted by our own transaction as good. Per report from Euler Taveira de Oliveira. Tom Lane 2006-01-12 21:49:19 +00:00
  • a933c4e59e Repair "Halloween problem" in EvalPlanQual: a tuple that's been inserted by our own command (or more generally, xmin = our xact and cmin >= current command ID) should not be seen as good. Else we may try to update rows we already updated. This error was inserted last August while fixing the even bigger problem that the old coding wouldn't see *any* tuples inserted by our own transaction as good. Per report from Euler Taveira de Oliveira. Tom Lane 2006-01-12 21:49:07 +00:00
  • 25b9b1b042 Repair "Halloween problem" in EvalPlanQual: a tuple that's been inserted by our own command (or more generally, xmin = our xact and cmin >= current command ID) should not be seen as good. Else we may try to update rows we already updated. This error was inserted last August while fixing the even bigger problem that the old coding wouldn't see *any* tuples inserted by our own transaction as good. Per report from Euler Taveira de Oliveira. Tom Lane 2006-01-12 21:48:53 +00:00
  • 158c7f32b4 Use a more bulletproof test for whether finite() and isinf() are present. It seems that recent gcc versions can optimize away calls to these functions even when the functions do not exist on the platform, resulting in a bogus positive result. Avoid this by using a non-constant argument and ensuring that the function result is not simply discarded. Per report from François Laupretre. Tom Lane 2006-01-12 19:24:48 +00:00
  • 1937d8d9ef Use a more bulletproof test for whether finite() and isinf() are present. It seems that recent gcc versions can optimize away calls to these functions even when the functions do not exist on the platform, resulting in a bogus positive result. Avoid this by using a non-constant argument and ensuring that the function result is not simply discarded. Per report from François Laupretre. Tom Lane 2006-01-12 19:24:27 +00:00
  • 01e2a15ada Use a more bulletproof test for whether finite() and isinf() are present. It seems that recent gcc versions can optimize away calls to these functions even when the functions do not exist on the platform, resulting in a bogus positive result. Avoid this by using a non-constant argument and ensuring that the function result is not simply discarded. Per report from François Laupretre. Tom Lane 2006-01-12 19:24:02 +00:00
  • e2c60a2cfe Use a more bulletproof test for whether finite() and isinf() are present. It seems that recent gcc versions can optimize away calls to these functions even when the functions do not exist on the platform, resulting in a bogus positive result. Avoid this by using a non-constant argument and ensuring that the function result is not simply discarded. Per report from François Laupretre. Tom Lane 2006-01-12 19:23:41 +00:00
  • db0558c113 Use a more bulletproof test for whether finite() and isinf() are present. It seems that recent gcc versions can optimize away calls to these functions even when the functions do not exist on the platform, resulting in a bogus positive result. Avoid this by using a non-constant argument and ensuring that the function result is not simply discarded. Per report from François Laupretre. Tom Lane 2006-01-12 19:23:22 +00:00
  • 34b0ac6ada Remove extraneous backslash from 'fixseq.sql' example --- mea culpa certainly. Per report from George Woodring. Tom Lane 2006-01-12 18:09:42 +00:00
  • 9484e14c5c Remove extraneous backslash from 'fixseq.sql' example --- mea culpa certainly. Per report from George Woodring. Tom Lane 2006-01-12 18:09:24 +00:00
  • 445144b8c2 Update comment about outer joins in description of geqo_threshold. Tom Lane 2006-01-11 23:14:29 +00:00
  • 416689c866 Documentation tweak: add spaces around the brackets in the description of the CREATE CONVERSION syntax, for consistency with the other SQL reference pages. Neil Conway 2006-01-11 22:16:39 +00:00
  • 2583663623 Brace cleanup. Bruce Momjian 2006-01-11 21:24:30 +00:00
  • 9545d66a97 Done: Bruce Momjian 2006-01-11 20:28:21 +00:00
  • 782eefc580 Create a standard function pg_sleep() to sleep for a specified amount of time. Replace the former ad-hoc implementation used in the regression tests. Joachim Wieland Tom Lane 2006-01-11 20:12:43 +00:00
  • fb627b76cc Cosmetic code cleanup: fix a bunch of places that used "return (expr);" rather than "return expr;" -- the latter style is used in most of the tree. I kept the parentheses when they were necessary or useful because the return expression was complex. Neil Conway 2006-01-11 08:43:13 +00:00
  • 762bcbdba2 Remove a confusing pair of parentheses. Neil Conway 2006-01-11 06:59:22 +00:00
  • db55a807de Improve error messages for missing-FROM-entry cases, as per recent discussion. Tom Lane 2006-01-10 22:00:07 +00:00
  • 399437acec Improve error messages for missing-FROM-entry cases, as per recent discussion. Tom Lane 2006-01-10 21:59:59 +00:00
  • 2946ccf35f Fix pg_tzset() to ensure that 'lclmem' (the static variable holding the localtime timezone data) is not overwritten until we know the data is good. tzload() is capable of failing after having begun modifying the struct it's pointed at, and in such cases the static data was left in a corrupt state. Bug does not exist pre-8.0 (since we didn't have this code then) nor post-8.0 (since we already changed the code to tzload into local variables initially). Per report from Nick Martens. Tom Lane 2006-01-10 20:16:25 +00:00
  • 8ea91ba18e Minor code clarity improvement: AFAICS, estate.eval_econtext must be non-NULL during the guts of plpgsql_exec_trigger() and plpgsql_exec_function(). Therefore, we can remove the NULL check, per discussion on -patches. Neil Conway 2006-01-10 18:50:43 +00:00
  • ce8fd39e15 Improve patternsel() by applying the operator itself to each value listed in the column's most-common-values statistics entry. This gives us an exact selectivity result for the portion of the column population represented by the MCV list, which can be a big leg up in accuracy if that's a large fraction of the population. The heuristics involving pattern contents and prefix are applied only to the part of the population not included in the MCV list. Tom Lane 2006-01-10 17:35:52 +00:00
  • ad24b8e6ee remove unneeded defines for uid_t and gid_t, which conflict with perl's typedefs. Andrew Dunstan 2006-01-10 01:01:03 +00:00
  • 95f88ddf49 In PLy_function_build_args(), the code loops repeatedly, constructing one argument at a time and then inserting the argument into a Python list via PyList_SetItem(). This "steals" the reference to the argument: that is, the reference to the new list member is now held by the Python list itself. This works fine, except if an elog occurs. This causes the function's PG_CATCH() block to be invoked, which decrements the reference counts on both the current argument and the list of arguments. If the elog happens to occur during the second or subsequent iteration of the loop, the reference count on the current argument will be decremented twice. Neil Conway 2006-01-10 00:33:48 +00:00
  • e838df6ff8 In PLy_function_build_args(), the code loops repeatedly, constructing one argument at a time and then inserting the argument into a Python list via PyList_SetItem(). This "steals" the reference to the argument: that is, the reference to the new list member is now held by the Python list itself. This works fine, except if an elog occurs. This causes the function's PG_CATCH() block to be invoked, which decrements the reference counts on both the current argument and the list of arguments. If the elog happens to occur during the second or subsequent iteration of the loop, the reference count on the current argument will be decremented twice. Neil Conway 2006-01-10 00:33:30 +00:00
  • c08c8529e7 In PLy_function_build_args(), the code loops repeatedly, constructing one argument at a time and then inserting the argument into a Python list via PyList_SetItem(). This "steals" the reference to the argument: that is, the reference to the new list member is now held by the Python list itself. This works fine, except if an elog occurs. This causes the function's PG_CATCH() block to be invoked, which decrements the reference counts on both the current argument and the list of arguments. If the elog happens to occur during the second or subsequent iteration of the loop, the reference count on the current argument will be decremented twice. Neil Conway 2006-01-10 00:33:12 +00:00
  • 42ff6a04d8 Done: Bruce Momjian 2006-01-09 22:43:23 +00:00
  • b4feb29e0d Fix pg_dump to add the required OPERATOR() decoration to schema-qualified operator names. This is needed when dumping operator definitions that have COMMUTATOR (or similar) links to operators in other schemas. Apparently Daniel Whitter is the first person ever to try this :-( Tom Lane 2006-01-09 21:16:57 +00:00
  • 1fc010cc96 Fix pg_dump to add the required OPERATOR() decoration to schema-qualified operator names. This is needed when dumping operator definitions that have COMMUTATOR (or similar) links to operators in other schemas. Apparently Daniel Whitter is the first person ever to try this :-( Tom Lane 2006-01-09 21:16:46 +00:00
  • 59327401cc Fix pg_dump to add the required OPERATOR() decoration to schema-qualified operator names. This is needed when dumping operator definitions that have COMMUTATOR (or similar) links to operators in other schemas. Apparently Daniel Whitter is the first person ever to try this :-( Tom Lane 2006-01-09 21:16:37 +00:00
  • d3934a3f38 Fix pg_dump to add the required OPERATOR() decoration to schema-qualified operator names. This is needed when dumping operator definitions that have COMMUTATOR (or similar) links to operators in other schemas. Apparently Daniel Whitter is the first person ever to try this :-( Tom Lane 2006-01-09 21:16:25 +00:00
  • e4a6bd224c Fix pg_dump to add the required OPERATOR() decoration to schema-qualified operator names. This is needed when dumping operator definitions that have COMMUTATOR (or similar) links to operators in other schemas. Apparently Daniel Whitter is the first person ever to try this :-( Tom Lane 2006-01-09 21:16:17 +00:00
  • 894829a32c Change allow_system_table_mods to PGC_POSTMASTER, restoring previous behavior. Peter Eisentraut 2006-01-09 10:05:31 +00:00
  • 6c8d838079 Minor code cleanup for PL/Python: fixup some strangely formatted comments, and change two elogs into ereports because they could actually occur in practice. Neil Conway 2006-01-09 02:47:09 +00:00
  • 9bb76d0b3f Rationalise perl header inclusions via a common include file, which also declares routines in plperl.c and spi_internal.c used in other files. Andrew Dunstan 2006-01-08 22:27:52 +00:00
  • 2645cb54cb Fix the assert_enabled issue properly. This eliminates the former ABI difference between USE_ASSERT_CHECKING and not: the assert_enabled variable is always there. Tom Lane 2006-01-08 21:24:37 +00:00
  • cbf39930d6 Recent patch broke guc.c for non-USE_ASSERT_CHECKING case. Per Stefan Kaltenbrunner. Tom Lane 2006-01-08 20:13:33 +00:00
  • edfbd0744a Avoid leaking memory while reading toasted entries from pg_rewrite, and nail a couple more system indexes into cache. This doesn't make any difference in normal system operation, but when forcing constant cache resets it's difficult to get through the rules regression test without these changes. Tom Lane 2006-01-08 20:04:41 +00:00
  • d984548ac9 Stop perl from hijacking stdio and other stuff on Windows. Andrew Dunstan 2006-01-08 15:51:19 +00:00
  • ed47146f1e Stop perl from hijacking stdio and other stuff on Windows. Andrew Dunstan 2006-01-08 15:50:00 +00:00
  • 44b928e876 Add a new system view, pg_prepared_statements, that can be used to access information about the prepared statements that are available in the current session. Original patch from Joachim Wieland, various improvements by Neil Conway. Neil Conway 2006-01-08 07:00:27 +00:00
  • b443043d18 Add RelationOpenSmgr() calls to ensure rd_smgr is valid when we try to use it. While it normally has been opened earlier during btree index build, testing shows that it's possible for the link to be closed again if an sinval reset occurs while the index is being built. Tom Lane 2006-01-07 22:46:07 +00:00
  • e1926aa91e Add RelationOpenSmgr() calls to ensure rd_smgr is valid when we try to use it. While it normally has been opened earlier during btree index build, testing shows that it's possible for the link to be closed again if an sinval reset occurs while the index is being built. Tom Lane 2006-01-07 22:45:53 +00:00
  • afa8f1971a Add RelationOpenSmgr() calls to ensure rd_smgr is valid when we try to use it. While it normally has been opened earlier during btree index build, testing shows that it's possible for the link to be closed again if an sinval reset occurs while the index is being built. Tom Lane 2006-01-07 22:45:41 +00:00
  • e58a944700 Add comment explaining why RelationOpenSmgr() call is not needed. Tom Lane 2006-01-07 22:30:43 +00:00
  • c66f4ec569 During CatCacheRemoveCList, we must now remove any members that are dead and have become unreferenced. Before 8.1, such members were left for AtEOXact_CatCache() to clean up, but now AtEOXact_CatCache isn't supposed to have anything to do. In an assert-enabled build this bug leads to an assertion failure at transaction end, but in a non-assert build the dead member is effectively just a small memory leak. Per report from Jeremy Drake. Tom Lane 2006-01-07 21:16:44 +00:00
  • 7eb5428199 During CatCacheRemoveCList, we must now remove any members that are dead and have become unreferenced. Before 8.1, such members were left for AtEOXact_CatCache() to clean up, but now AtEOXact_CatCache isn't supposed to have anything to do. In an assert-enabled build this bug leads to an assertion failure at transaction end, but in a non-assert build the dead member is effectively just a small memory leak. Per report from Jeremy Drake. Tom Lane 2006-01-07 21:16:10 +00:00
  • 88f2145326 Fix failure to apply domain constraints to a NULL constant that's added to an INSERT target list during rule rewriting. Per report from John Supplee. Tom Lane 2006-01-06 20:11:36 +00:00
  • 2942023a2a Fix failure to apply domain constraints to a NULL constant that's added to an INSERT target list during rule rewriting. Per report from John Supplee. Tom Lane 2006-01-06 20:11:31 +00:00
  • 2aee785469 Fix failure to apply domain constraints to a NULL constant that's added to an INSERT target list during rule rewriting. Per report from John Supplee. Tom Lane 2006-01-06 20:11:24 +00:00
  • 4b1f09d5bd Fix failure to apply domain constraints to a NULL constant that's added to an INSERT target list during rule rewriting. Per report from John Supplee. Tom Lane 2006-01-06 20:11:18 +00:00
  • 0a8510e0f8 Fix failure to apply domain constraints to a NULL constant that's added to an INSERT target list during rule rewriting. Per report from John Supplee. Tom Lane 2006-01-06 20:11:12 +00:00
  • 38e75d9275 Use RELKIND_COMPOSITE_TYPE rather than hardcoded 'c'. Bruce Momjian 2006-01-06 19:08:33 +00:00
  • 751c4818bf Release-note updates and copy editing. REL7_3_13 Tom Lane 2006-01-06 03:00:46 +00:00
  • e9b0c2d4bd Release-note updates and copy editing. REL7_4_11 Tom Lane 2006-01-06 03:00:34 +00:00
  • e82858f013 Release-note updates and copy editing. REL8_0_6 Tom Lane 2006-01-06 03:00:20 +00:00
  • 68f4ed462a Release-note updates and copy editing. REL8_1_2 Tom Lane 2006-01-06 03:00:06 +00:00
  • 615d99feb4 Release-note updates and copy editing. Tom Lane 2006-01-06 02:59:57 +00:00
  • 5d0def8d52 Fix Windows-only postmaster code to reject a connection request and continue, rather than elog(FATAL), when there is no more room in ShmemBackendArray. This is a security issue since too many connection requests arriving close together could cause the postmaster to shut down, resulting in denial of service. Reported by Yoshiyuki Asaba, fixed by Magnus Hagander. Tom Lane 2006-01-06 02:58:40 +00:00
  • c628930966 Fix Windows-only postmaster code to reject a connection request and continue, rather than elog(FATAL), when there is no more room in ShmemBackendArray. This is a security issue since too many connection requests arriving close together could cause the postmaster to shut down, resulting in denial of service. Reported by Yoshiyuki Asaba, fixed by Magnus Hagander. Tom Lane 2006-01-06 02:58:32 +00:00
  • a7812eb4be Fix Windows-only postmaster code to reject a connection request and continue, rather than elog(FATAL), when there is no more room in ShmemBackendArray. This is a security issue since too many connection requests arriving close together could cause the postmaster to shut down, resulting in denial of service. Reported by Yoshiyuki Asaba, fixed by Magnus Hagander. Tom Lane 2006-01-06 02:58:25 +00:00
  • d3e91bd475 Generate back-branch configure scripts with the appropriate version of autoconf. Tom Lane 2006-01-06 02:31:25 +00:00
  • 7de3bec056 Generate back-branch configure scripts with the appropriate version of autoconf. Tom Lane 2006-01-06 02:31:08 +00:00
  • 240112222c Generate back-branch configure scripts with the appropriate version of autoconf. Tom Lane 2006-01-06 02:30:52 +00:00
  • bf7faa7c8f Fix broken markup. Tom Lane 2006-01-06 01:35:09 +00:00
  • a2dca8e9e3 Convert Assert checking for empty page into a regular test and elog. The consequences of overwriting a non-empty page are bad enough that we should not omit this test in production builds. Tom Lane 2006-01-06 00:16:09 +00:00
  • 9395f4911a Convert Assert checking for empty page into a regular test and elog. The consequences of overwriting a non-empty page are bad enough that we should not omit this test in production builds. Tom Lane 2006-01-06 00:15:58 +00:00
  • 2d0475e480 Convert Assert checking for empty page into a regular test and elog. The consequences of overwriting a non-empty page are bad enough that we should not omit this test in production builds. Tom Lane 2006-01-06 00:15:50 +00:00
  • 718d3232af Fix ReadBuffer() to correctly handle the case where it's trying to extend the relation but it finds a pre-existing valid buffer. The buffer does not correspond to any page known to the kernel, so we *must* do smgrextend to ensure that the space becomes allocated. The 7.x branches all do this correctly, but the corner case got lost somewhere during 8.0 bufmgr rewrites. (My fault no doubt :-( ... I think I assumed that such a buffer must be not-BM_VALID, which is not so.) Tom Lane 2006-01-06 00:04:33 +00:00
  • cf3c9c14c3 Fix ReadBuffer() to correctly handle the case where it's trying to extend the relation but it finds a pre-existing valid buffer. The buffer does not correspond to any page known to the kernel, so we *must* do smgrextend to ensure that the space becomes allocated. The 7.x branches all do this correctly, but the corner case got lost somewhere during 8.0 bufmgr rewrites. (My fault no doubt :-( ... I think I assumed that such a buffer must be not-BM_VALID, which is not so.) Tom Lane 2006-01-06 00:04:26 +00:00
  • 304160c3e2 Fix ReadBuffer() to correctly handle the case where it's trying to extend the relation but it finds a pre-existing valid buffer. The buffer does not correspond to any page known to the kernel, so we *must* do smgrextend to ensure that the space becomes allocated. The 7.x branches all do this correctly, but the corner case got lost somewhere during 8.0 bufmgr rewrites. (My fault no doubt :-( ... I think I assumed that such a buffer must be not-BM_VALID, which is not so.) Tom Lane 2006-01-06 00:04:20 +00:00
  • 6d41b144e9 Add: Bruce Momjian 2006-01-05 17:47:53 +00:00