Commit Graph

  • a935e36ae9 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. Neil Conway 2005-04-30 08:36:18 +00:00
  • 757956ec47 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. Neil Conway 2005-04-30 08:19:44 +00:00
  • 47458f8c2f 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. Neil Conway 2005-04-30 08:08:51 +00:00
  • 6dce59ced9 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. Neil Conway 2005-04-30 08:01:58 +00:00
  • 8f54b05551 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. Neil Conway 2005-04-30 08:01:29 +00:00
  • 15ea6d5a2f 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. Neil Conway 2005-04-30 08:00:55 +00:00
  • 7ce01797bd 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. Neil Conway 2005-04-30 08:00:14 +00:00
  • 16d4418bf5 Fix BCC to not define compiler location. Bruce Momjian 2005-04-30 04:00:07 +00:00
  • 23cf3986cf Update FAQ. Bruce Momjian 2005-04-30 03:53:17 +00:00
  • ef1b4fbb56 Update replication FAQ. Bruce Momjian 2005-04-30 03:52:23 +00:00
  • 3a694bb0a1 Restructure LOCKTAG as per discussions of a couple months ago. Essentially, we shoehorn in a lockable-object-type field by taking a byte away from the lockmethodid, which can surely fit in one byte instead of two. This allows less artificial definitions of all the other fields of LOCKTAG; we can get rid of the special pg_xactlock pseudo-relation, and also support locks on individual tuples and general database objects (including shared objects). None of those possibilities are actually exploited just yet, however. Tom Lane 2005-04-29 22:28:24 +00:00
  • 32d3b47e6f Remove extern from optreset that was just added. Bruce Momjian 2005-04-29 14:30:11 +00:00
  • f22b3b2760 Improve cleanup from win32 client-only build. Bruce Momjian 2005-04-29 14:07:34 +00:00
  • 930dd70992 Improve cleanup from win32 client-only build. Bruce Momjian 2005-04-29 14:07:27 +00:00
  • 5f9d19cc23 Backpatch BCC compile changes to 8.0.X for psql. Bruce Momjian 2005-04-29 13:42:24 +00:00
  • 7cebfdf211 Backpatch BCC compile changes to 8.0.X for psql. Bruce Momjian 2005-04-29 13:42:21 +00:00
  • 18b5ef5a76 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. Neil Conway 2005-04-29 07:08:06 +00:00
  • daec16d0ba Done: Bruce Momjian 2005-04-29 05:03:02 +00:00
  • 95cb42b968 Fix Borland makefile for libpq and improve it for psql. Bruce Momjian 2005-04-29 04:21:39 +00:00
  • bedb78d386 Implement sharable row-level locks, and use them for foreign key references to eliminate unnecessary deadlocks. This commit adds SELECT ... FOR SHARE paralleling SELECT ... FOR UPDATE. The implementation uses a new SLRU data structure (managed much like pg_subtrans) to represent multiple- transaction-ID sets. When more than one transaction is holding a shared lock on a particular row, we create a MultiXactId representing that set of transactions and store its ID in the row's XMAX. This scheme allows an effectively unlimited number of row locks, just as we did before, while not costing any extra overhead except when a shared lock actually has to be shared. Still TODO: use the regular lock manager to control the grant order when multiple backends are waiting for a row lock. Tom Lane 2005-04-28 21:47:18 +00:00
  • d902e7d63b Fix a whitespace problem. From Alvaro Herrera. Dennis Bjorklund 2005-04-28 15:51:57 +00:00
  • 5de947624a Add WAL compression item to TODO.detail. Bruce Momjian 2005-04-28 13:25:40 +00:00
  • a65b1b738c Add psql \set ON_ERROR_ROLLBACK to allow statements in a transaction to error without affecting the entire transaction. Valid values are "on|interactive|off". Bruce Momjian 2005-04-28 13:09:59 +00:00
  • 115119e179 Wording improvement. Bruce Momjian 2005-04-27 20:11:11 +00:00
  • 989b55c550 Wording improvement. Bruce Momjian 2005-04-27 20:11:07 +00:00
  • 5e46908a48 Update PAM documentation, per Alvaro. Bruce Momjian 2005-04-27 20:09:58 +00:00
  • d3ee0279d6 Update PAM documentation, per Alvaro. Bruce Momjian 2005-04-27 20:09:50 +00:00
  • 46edb8efad workaround for bug in utils/date.h (timetz) Teodor Sigaev 2005-04-27 13:01:27 +00:00
  • 575d7d0330 Mention that PAM requires the user already exist in the database, per Dick Davies. Bruce Momjian 2005-04-26 03:01:22 +00:00
  • eceb05b0b9 Mention that PAM requires the user already exist in the database, per Dick Davies. Bruce Momjian 2005-04-26 03:01:09 +00:00
  • c20fb65780 On further experimentation, there were still a couple of bugs in ExpandIndirectionStar() ... and in markTargetListOrigin() too. Tom Lane 2005-04-25 22:02:30 +00:00
  • dfc5c72961 Fix ExpandIndirectionStar to handle cases where the expression to be expanded is of RECORD type, eg 'select (foo).* from (select foo(f1) from t1) ss' where foo() is a function declared with multiple OUT parameters. Tom Lane 2005-04-25 21:03:25 +00:00
  • ea19c8772e get_expr_result_type probably needs to be able to handle OpExpr as well as FuncExpr, to cover cases where a function returning tuple is invoked via an operator. Tom Lane 2005-04-25 20:59:44 +00:00
  • 73c195c607 Fix btree_gist to handle timetz zone correctly per recent changes. Tom Lane 2005-04-25 16:58:18 +00:00
  • 238fb0342e Update description: Bruce Momjian 2005-04-25 15:35:32 +00:00
  • 61cf53516e Re-add item with better description: Bruce Momjian 2005-04-25 13:03:37 +00:00
  • c5b08d3b7d Fix btree_gist to handle timetz zone correctly per recent changes. Tom Lane 2005-04-25 07:00:32 +00:00
  • a0ea71333a Avoid rechecking lossy operators twice in a bitmap scan plan. Tom Lane 2005-04-25 04:27:12 +00:00
  • 1fcd4b7a07 While determining the filter clauses for an index scan (either plain or bitmap), use pred_test to be a little smarter about cases where a filter clause is logically unnecessary. This may be overkill for the plain indexscan case, but it's definitely useful for OR'd bitmap scans. Tom Lane 2005-04-25 03:58:30 +00:00
  • 79a1b00226 Replace slightly klugy create_bitmap_restriction() function with a more efficient routine in restrictinfo.c (which can make use of make_restrictinfo_internal). Tom Lane 2005-04-25 02:14:48 +00:00
  • 7a4c34c97c Add description for concurrent sequential scans: Bruce Momjian 2005-04-25 01:42:41 +00:00
  • 5b05185262 Remove support for OR'd indexscans internal to a single IndexScan plan node, as this behavior is now better done as a bitmap OR indexscan. This allows considerable simplification in nodeIndexscan.c itself as well as several planner modules concerned with indexscan plan generation. Also we can improve the sharing of code between regular and bitmap indexscans, since they are now working with nigh-identical Plan nodes. Tom Lane 2005-04-25 01:30:14 +00:00
  • 186655e9a5 Adjust nodeBitmapIndexscan.c to not keep the index open across calls, but just to open and close it during MultiExecBitmapIndexScan. This avoids acquiring duplicate resources (eg, multiple locks on the same relation) in a tree with many bitmap scans. Also, don't bother to lock the parent heap at all here, since we must be underneath a BitmapHeapScan node that will be holding a suitable lock. Tom Lane 2005-04-24 18:16:38 +00:00
  • 8403741796 Actually, nodeBitmapIndexscan.c doesn't need to create a standard ExprContext at all, since it never evaluates any qual or tlist expressions. Tom Lane 2005-04-24 17:32:46 +00:00
  • 24475a7618 Put back example of using Result node to execute an INSERT. Tom Lane 2005-04-24 15:32:07 +00:00
  • cdf39c7b61 Update wording: Bruce Momjian 2005-04-24 12:39:07 +00:00
  • 5131b5bc7a Update wording. Bruce Momjian 2005-04-24 12:01:32 +00:00
  • c1cc62f614 Clean up HTML. Bruce Momjian 2005-04-24 11:57:19 +00:00
  • 7a35c637bc Add replication FAQ item. Bruce Momjian 2005-04-24 11:48:52 +00:00
  • 947eb97560 Update some comments to use SQL examples rather than QUEL. From Simon Riggs. Neil Conway 2005-04-24 11:46:21 +00:00
  • a7f2a788ee Add line break. Bruce Momjian 2005-04-24 11:27:51 +00:00
  • 6f8f0a9d7a Update book items. Bruce Momjian 2005-04-24 11:22:44 +00:00
  • 3b0a5e50d7 Update VACUUM VERBOSE FSM message, per Tom. Bruce Momjian 2005-04-24 03:51:49 +00:00
  • 9524c6b8ae 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). Tom Lane 2005-04-23 22:54:23 +00:00
  • 2cfb3b6d4d 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). Tom Lane 2005-04-23 22:54:03 +00:00
  • 3b15457092 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). Tom Lane 2005-04-23 22:53:44 +00:00
  • 582dcae7e8 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). Tom Lane 2005-04-23 22:53:26 +00:00
  • 35f9b461f1 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). Tom Lane 2005-04-23 22:53:05 +00:00
  • 0e99be1c25 Remove useless argtype_inherit() code, and make consequent simplifications. As I pointed out a few days ago, this code has failed to do anything useful for some time ... and if we did want to revive the capability to select functions by nearness of inheritance ancestry, this is the wrong place and way to do it anyway. The knowledge would need to go into func_select_candidate() instead. Perhaps someday someone will be motivated to do that, but I am not today. Tom Lane 2005-04-23 22:09:58 +00:00
  • ac8998f2e6 Turns out our existing page size is already optimal in most cases: Bruce Momjian 2005-04-23 21:45:28 +00:00
  • f4dcb52efe Item already added to existing 'thread' item: Bruce Momjian 2005-04-23 21:44:52 +00:00
  • 6869683147 Remove item, not sure what it refers to: Bruce Momjian 2005-04-23 21:43:24 +00:00
  • 1207d5b64e New item: Bruce Momjian 2005-04-23 21:41:01 +00:00
  • e847558031 Update threading item: Bruce Momjian 2005-04-23 21:39:27 +00:00
  • bb62899db5 Done: Bruce Momjian 2005-04-23 21:38:42 +00:00
  • 9b5b9616f4 Remove explicit FreeExprContext calls during plan node shutdown. The ExprContexts will be freed anyway when FreeExecutorState() is reached, and letting that routine do the work is more efficient because it will automatically free the ExprContexts in reverse creation order. The existing coding was effectively freeing them in exactly the worst possible order, resulting in O(N^2) behavior inside list_delete_ptr, which becomes highly visible in cases with a few thousand plan nodes. Tom Lane 2005-04-23 21:32:34 +00:00
  • 95c7bff47c Done: Bruce Momjian 2005-04-23 21:25:49 +00:00
  • 9ff49665ce Fix typo: Bruce Momjian 2005-04-23 21:22:55 +00:00
  • 714d5a4c37 Update VACUUM VERBOSE update, per Alvaro. Bruce Momjian 2005-04-23 21:16:34 +00:00
  • 9ba6587f8b Update working of VACUUM VERBOSE. Bruce Momjian 2005-04-23 21:10:20 +00:00
  • 52e08c35f7 Make VACUUM VERBOSE FSM output all output in a single INFO output statement. Bruce Momjian 2005-04-23 20:56:01 +00:00
  • e8ad6d9666 Move info about lack of depencency checking in Makefiles to developer's faq.q Bruce Momjian 2005-04-23 20:52:32 +00:00
  • f7e514d010 Update FAQ by eliminating non-frequent items like large objects and extending questions. Update wording of various entries. Bruce Momjian 2005-04-23 20:51:44 +00:00
  • 48e7a196ea Done: Bruce Momjian 2005-04-23 19:13:40 +00:00
  • 97a4dad35f Update H4 tag to H3 to be consistent with heading levels. Bruce Momjian 2005-04-23 18:59:17 +00:00
  • 9f1e864d02 Add item about server-side debugging. Bruce Momjian 2005-04-23 18:57:46 +00:00
  • c34ea747a6 Update FAQ items to point to existing web pages rather than duplication such information. Remove MySQL mention. Move server-side debug item to developer's FAQ. Update URLs. Bruce Momjian 2005-04-23 18:57:25 +00:00
  • 19d127548c Add comment about checkpoint panic behavior during shutdown, per suggestion from Qingqing Zhou. Tom Lane 2005-04-23 18:49:54 +00:00
  • b1faf3624b Allow -2147483648 to be treated as an INT4 rather than INT8 constant. Per discussion with Paul Edwards. Tom Lane 2005-04-23 18:35:12 +00:00
  • d79eeef38b Treat a zero-D array as empty in int_enum(), per Andrew@supernews. Tom Lane 2005-04-23 17:55:50 +00:00
  • 3842892492 Recent changes got the sense of the notnull bit backwards in the 2.0 protocol output routines. Mea culpa :-(. Per report from Kris Jurka. Tom Lane 2005-04-23 17:45:35 +00:00
  • c114e166e5 Define the right-hand input of AT TIME ZONE as a full a_expr instead of c_expr. Perhaps the restriction was once needed to avoid bison errors, but it seems to work just fine now --- and even generates a slightly smaller state machine. This change allows examples like SELECT '13:45'::timetz AT TIME ZONE '-07:00'::interval; to work without parentheses around the right-hand input. Tom Lane 2005-04-23 17:22:16 +00:00
  • 0975b95bc3 Update FAQ release number to 8.0.2. Bruce Momjian 2005-04-23 15:22:56 +00:00
  • e947e1153a Modify output of VACUUM VERBOSE to be clearer. Bruce Momjian 2005-04-23 15:20:39 +00:00
  • ca1e578d62 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. Tom Lane 2005-04-23 05:39:19 +00:00
  • c7b94bbad9 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. Tom Lane 2005-04-23 05:39:01 +00:00
  • 58d0214ed8 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. Tom Lane 2005-04-23 05:38:43 +00:00
  • 0548497cc5 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. Tom Lane 2005-04-23 05:38:22 +00:00
  • 56c8877291 Turns out that my recent elimination of the 'redundant' flatten_andors() code in prepqual.c had a small drawback: the flatten_andors code was able to cope with deeply nested AND/OR structures (like 10000 ORs in a row), whereas eval_const_expressions tends to recurse until it overruns the stack. Revise eval_const_expressions so that it doesn't choke on deeply nested ANDs or ORs. Tom Lane 2005-04-23 04:42:53 +00:00
  • 25434e32cb Add documentation stating how to determine if FSM settings are too low --- look at a database-wide VACUUM VERBOSE. Bruce Momjian 2005-04-23 03:27:40 +00:00
  • e092828241 Teach choose_bitmap_and() to actually be choosy --- that is, try to make some estimate of which available indexes to AND together, rather than blindly taking 'em all. This could probably stand further improvement, but it seems to do OK in simple tests. Tom Lane 2005-04-23 01:57:34 +00:00
  • 4b89126ccc Fix bogus EXPLAIN display of rowcount estimates for BitmapAnd and BitmapOr nodes. Tom Lane 2005-04-23 01:29:15 +00:00
  • bc843d3960 First cut at planner support for bitmap index scans. Lots to do yet, but the code is basically working. Along the way, rewrite the entire approach to processing OR index conditions, and make it work in join cases for the first time ever. orindxpath.c is now basically obsolete, but I left it in for the time being to allow easy comparison testing against the old implementation. Tom Lane 2005-04-22 21:58:32 +00:00
  • 8e4b89ccf2 Backpatch of LIMIT / FOR UPDATE behavior, but keep pre-7.3 mention in 8.0.X. Bruce Momjian 2005-04-22 15:53:27 +00:00
  • ccbb07d922 Fix typo: Bruce Momjian 2005-04-22 15:40:16 +00:00
  • 6f61ddd40d Typo fix. Alvaro. Bruce Momjian 2005-04-22 15:32:58 +00:00
  • 5eed8ce382 Release build 216. Kris Jurka 2005-04-22 15:10:52 +00:00
  • a44f99024c 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. Kris Jurka 2005-04-22 14:48:18 +00:00
  • f5517ddbda 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. Kris Jurka 2005-04-22 14:36:48 +00:00
  • 8f4a1b3e84 Update URL for TODO list. Bruce Momjian 2005-04-22 13:38:19 +00:00