Commit Graph

  • 82eed4dba2 Arrange to put TOAST tables belonging to temporary tables into special schemas named pg_toast_temp_nnn, alongside the pg_temp_nnn schemas used for the temp tables themselves. This allows low-level code such as the relcache to recognize that these tables are indeed temporary, which enables various optimizations such as not WAL-logging changes and using local rather than shared buffers for access. Aside from obvious performance benefits, this provides a solution to bug #3483, in which other backends unexpectedly held open file references to temporary tables. The scheme preserves the property that TOAST tables are not in any schema that's normally in the search path, so they don't conflict with user table names. Tom Lane 2007-07-25 22:16:18 +00:00
  • fdb5b69e9c Suppress warning when compiling with -DPROFILE_PID_DIR: sys/stat.h is supposed to be included when using mkdir(). Tom Lane 2007-07-25 19:58:56 +00:00
  • 3eb98fd165 Adjust horology test to avoid join-plan-dependent result ordering in a few queries. Should fix buildfarm failures arising from new, more aggressive autovac settings. Tom Lane 2007-07-25 17:22:37 +00:00
  • a1b336679c Synced parser Michael Meskes 2007-07-25 16:10:41 +00:00
  • 906b2e1b37 Rename DLLIMPORT macro to PGDLLIMPORT to avoid conflict with third party includes (like tcl) that define DLLIMPORT. Magnus Hagander 2007-07-25 12:22:54 +00:00
  • 5cbb11928e Fix standalone win32 makefile (MSVC6) for SSPI and GSSAPI. Magnus Hagander 2007-07-25 11:37:25 +00:00
  • dff6797ce5 Disable warning 4090 = different const qualifiers on msvc since it warns about things that aren't wrong. Magnus Hagander 2007-07-25 10:51:03 +00:00
  • 430d0829ae Silence compiler warnings on mingw Magnus Hagander 2007-07-25 10:17:46 +00:00
  • b2b9b4d59c Implement RETURN QUERY for PL/PgSQL. This provides some convenient syntax sugar for PL/PgSQL set-returning functions that want to return the result of evaluating a query; it should also be more efficient than repeated RETURN NEXT statements. Based on an earlier patch from Pavel Stehule. Neil Conway 2007-07-25 04:19:09 +00:00
  • eda73a5df9 Fix predicate-proving logic to cope with binary-compatibility cases when checking whether an IS NULL/IS NOT NULL clause is implied or refuted by a strict function. Per example from Dawid Kuroczko. Backpatch to 8.2 since this is arguably a performance bug. Tom Lane 2007-07-24 17:22:13 +00:00
  • 507b53c833 Fix predicate-proving logic to cope with binary-compatibility cases when checking whether an IS NULL/IS NOT NULL clause is implied or refuted by a strict function. Per example from Dawid Kuroczko. Backpatch to 8.2 since this is arguably a performance bug. Tom Lane 2007-07-24 17:22:07 +00:00
  • f903278e2d Silence compiler warning on mingw Magnus Hagander 2007-07-24 11:16:36 +00:00
  • d602592494 Make it possible, and default, for MingW to build with SSPI support by dynamically loading the function that's missing from the MingW headers and library. Magnus Hagander 2007-07-24 09:00:27 +00:00
  • ad4295728e Create a new dedicated Postgres process, "wal writer", which exists to write and fsync WAL at convenient intervals. For the moment it just tries to offload this work from backends, but soon it will be responsible for guaranteeing a maximum delay before asynchronously-committed transactions will be flushed to disk. Tom Lane 2007-07-24 04:54:09 +00:00
  • 53d2951be7 Set a default autovacuum vacuum_cost_delay value of 20ms, to avoid excessive I/O utilization, per discussion. Alvaro Herrera 2007-07-24 01:53:56 +00:00
  • ab7d2b6a73 Just noticed that libpq thinks the maximum command tag length is 40, whereas in the backend it's been 64 for some time. Hasn't mattered because no actual tags exceed 40 bytes, but for consistency they should be alike. Tom Lane 2007-07-23 18:59:50 +00:00
  • de507ed565 The correct min buffer size is INITIAL_EXPBUFFER_SIZE, not PQERRORMSG_LENGTH. Magnus Hagander 2007-07-23 18:13:10 +00:00
  • b25d3e4db0 The correct min buffer size is INITIAL_EXPBUFFER_SIZE, not PQERRORMSG_LENGTH. Magnus Hagander 2007-07-23 18:13:02 +00:00
  • 5fd6d0fd19 The correct min buffer size is INITIAL_EXPBUFFER_SIZE, not PQERRORMSG_LENGTH. Magnus Hagander 2007-07-23 18:12:56 +00:00
  • ff392ec8db The proper guaranteed buffer size for errors is INITIAL_EXPBUFFER_SIZE, not PQERRORMSG_LENGTH. Magnus Hagander 2007-07-23 18:10:13 +00:00
  • 29ac718f47 Use PQExpBuffer for error message in fe-auth.c. In passing, change functions that passedin both PGconn and parts of it to just pass in the PGconn. Magnus Hagander 2007-07-23 17:52:06 +00:00
  • aa81c558ee Reword paragraph about the autovacuum_max_workers setting. Patch from Jim Nasby. Alvaro Herrera 2007-07-23 17:22:00 +00:00
  • b9ab88243e Stupid typo. Magnus Hagander 2007-07-23 10:57:36 +00:00
  • f70866fb23 SSPI authentication on Windows. GSSAPI compatible client when doing Kerberos against a Unix server, and Windows-specific server-side authentication using SSPI "negotiate" method (Kerberos or NTLM). Magnus Hagander 2007-07-23 10:16:54 +00:00
  • 681690f4e3 Fix elog.c to avoid infinite recursion (leading to backend crash) when log_min_error_statement is active and there is some problem in logging the current query string; for example, that it's too long to include in the log message without running out of memory. This problem has existed since the log_min_error_statement feature was introduced. No doubt the reason it wasn't detected long ago is that 8.2 is the first release that defaults log_min_error_statement to less than PANIC level. Per report from Bill Moran. Tom Lane 2007-07-21 22:12:38 +00:00
  • 83630c88b9 Fix elog.c to avoid infinite recursion (leading to backend crash) when log_min_error_statement is active and there is some problem in logging the current query string; for example, that it's too long to include in the log message without running out of memory. This problem has existed since the log_min_error_statement feature was introduced. No doubt the reason it wasn't detected long ago is that 8.2 is the first release that defaults log_min_error_statement to less than PANIC level. Per report from Bill Moran. Tom Lane 2007-07-21 22:12:32 +00:00
  • 680a261529 Fix elog.c to avoid infinite recursion (leading to backend crash) when log_min_error_statement is active and there is some problem in logging the current query string; for example, that it's too long to include in the log message without running out of memory. This problem has existed since the log_min_error_statement feature was introduced. No doubt the reason it wasn't detected long ago is that 8.2 is the first release that defaults log_min_error_statement to less than PANIC level. Per report from Bill Moran. Tom Lane 2007-07-21 22:12:24 +00:00
  • 987b0664fb Fix elog.c to avoid infinite recursion (leading to backend crash) when log_min_error_statement is active and there is some problem in logging the current query string; for example, that it's too long to include in the log message without running out of memory. This problem has existed since the log_min_error_statement feature was introduced. No doubt the reason it wasn't detected long ago is that 8.2 is the first release that defaults log_min_error_statement to less than PANIC level. Per report from Bill Moran. Tom Lane 2007-07-21 22:12:17 +00:00
  • 6537d9ce6a Fix elog.c to avoid infinite recursion (leading to backend crash) when log_min_error_statement is active and there is some problem in logging the current query string; for example, that it's too long to include in the log message without running out of memory. This problem has existed since the log_min_error_statement feature was introduced. No doubt the reason it wasn't detected long ago is that 8.2 is the first release that defaults log_min_error_statement to less than PANIC level. Per report from Bill Moran. Tom Lane 2007-07-21 22:12:11 +00:00
  • a0dab332a2 Fix elog.c to avoid infinite recursion (leading to backend crash) when log_min_error_statement is active and there is some problem in logging the current query string; for example, that it's too long to include in the log message without running out of memory. This problem has existed since the log_min_error_statement feature was introduced. No doubt the reason it wasn't detected long ago is that 8.2 is the first release that defaults log_min_error_statement to less than PANIC level. Per report from Bill Moran. Tom Lane 2007-07-21 22:12:04 +00:00
  • ddb93cac24 Provide a bit more high-level documentation for the GEQO planner. Per request from Luca Ferrari. Tom Lane 2007-07-21 04:02:41 +00:00
  • 7abe764f17 Fix regression tests for PL/pgSQL error message changes Peter Eisentraut 2007-07-20 16:38:38 +00:00
  • c216584b09 Fix WAL replay of truncate operations to cope with the possibility that the truncated relation was deleted later in the WAL sequence. Since replay normally auto-creates a relation upon its first reference by a WAL log entry, failure is seen only if the truncate entry happens to be the first reference after the checkpoint we're restarting from; which is a pretty unusual case but of course not impossible. Fix by making truncate entries auto-create like the other ones do. Per report and test case from Dharmendra Goyal. Tom Lane 2007-07-20 16:30:12 +00:00
  • 6d8afdee00 Fix WAL replay of truncate operations to cope with the possibility that the truncated relation was deleted later in the WAL sequence. Since replay normally auto-creates a relation upon its first reference by a WAL log entry, failure is seen only if the truncate entry happens to be the first reference after the checkpoint we're restarting from; which is a pretty unusual case but of course not impossible. Fix by making truncate entries auto-create like the other ones do. Per report and test case from Dharmendra Goyal. Tom Lane 2007-07-20 16:30:05 +00:00
  • 85506ffbd5 Fix WAL replay of truncate operations to cope with the possibility that the truncated relation was deleted later in the WAL sequence. Since replay normally auto-creates a relation upon its first reference by a WAL log entry, failure is seen only if the truncate entry happens to be the first reference after the checkpoint we're restarting from; which is a pretty unusual case but of course not impossible. Fix by making truncate entries auto-create like the other ones do. Per report and test case from Dharmendra Goyal. Tom Lane 2007-07-20 16:29:59 +00:00
  • 04fbe29a83 Fix WAL replay of truncate operations to cope with the possibility that the truncated relation was deleted later in the WAL sequence. Since replay normally auto-creates a relation upon its first reference by a WAL log entry, failure is seen only if the truncate entry happens to be the first reference after the checkpoint we're restarting from; which is a pretty unusual case but of course not impossible. Fix by making truncate entries auto-create like the other ones do. Per report and test case from Dharmendra Goyal. Tom Lane 2007-07-20 16:29:53 +00:00
  • ebb5436d70 Capitalize language key words in error messages Peter Eisentraut 2007-07-20 16:23:34 +00:00
  • f812dd91fe On second thought, the tests for what to do with stderr output are a lot more sensible if we check the chunk-output case first. Not back-patched since it's just a cosmetic improvement. Tom Lane 2007-07-19 21:58:12 +00:00
  • c556447c70 Make replace(), split_part(), and string_to_array() behave somewhat sanely when handed an invalidly-encoded pattern. The previous coding could get into an infinite loop if pg_mb2wchar_with_len() returned a zero-length string after we'd tested for nonempty pattern; which is exactly what it will do if the string consists only of an incomplete multibyte character. This led to either an out-of-memory error or a backend crash depending on platform. Per report from Wiktor Wodecki. Tom Lane 2007-07-19 20:34:54 +00:00
  • 6e606074e1 Make replace(), split_part(), and string_to_array() behave somewhat sanely when handed an invalidly-encoded pattern. The previous coding could get into an infinite loop if pg_mb2wchar_with_len() returned a zero-length string after we'd tested for nonempty pattern; which is exactly what it will do if the string consists only of an incomplete multibyte character. This led to either an out-of-memory error or a backend crash depending on platform. Per report from Wiktor Wodecki. Tom Lane 2007-07-19 20:34:48 +00:00
  • a741047fdb Make replace(), split_part(), and string_to_array() behave somewhat sanely when handed an invalidly-encoded pattern. The previous coding could get into an infinite loop if pg_mb2wchar_with_len() returned a zero-length string after we'd tested for nonempty pattern; which is exactly what it will do if the string consists only of an incomplete multibyte character. This led to either an out-of-memory error or a backend crash depending on platform. Per report from Wiktor Wodecki. Tom Lane 2007-07-19 20:34:41 +00:00
  • a0b2bb8ced Make replace(), split_part(), and string_to_array() behave somewhat sanely when handed an invalidly-encoded pattern. The previous coding could get into an infinite loop if pg_mb2wchar_with_len() returned a zero-length string after we'd tested for nonempty pattern; which is exactly what it will do if the string consists only of an incomplete multibyte character. This led to either an out-of-memory error or a backend crash depending on platform. Per report from Wiktor Wodecki. Tom Lane 2007-07-19 20:34:34 +00:00
  • 8208fb4b63 Make replace(), split_part(), and string_to_array() behave somewhat sanely when handed an invalidly-encoded pattern. The previous coding could get into an infinite loop if pg_mb2wchar_with_len() returned a zero-length string after we'd tested for nonempty pattern; which is exactly what it will do if the string consists only of an incomplete multibyte character. This led to either an out-of-memory error or a backend crash depending on platform. Per report from Wiktor Wodecki. Tom Lane 2007-07-19 20:34:27 +00:00
  • 4ca7a2dacb Make replace(), split_part(), and string_to_array() behave somewhat sanely when handed an invalidly-encoded pattern. The previous coding could get into an infinite loop if pg_mb2wchar_with_len() returned a zero-length string after we'd tested for nonempty pattern; which is exactly what it will do if the string consists only of an incomplete multibyte character. This led to either an out-of-memory error or a backend crash depending on platform. Per report from Wiktor Wodecki. Tom Lane 2007-07-19 20:34:20 +00:00
  • 19c9660ca8 Only use the pipe chunking protocol if we know the syslogger should be catching stderr output, and we are not ourselves the syslogger. Otherwise, go directly to stderr. Bug noticed by Tom Lane. Backpatch as far as 8.0. Andrew Dunstan 2007-07-19 19:15:25 +00:00
  • fbbc0f05f1 Only use the pipe chunking protocol if we know the syslogger should be catching stderr output, and we are not ourselves the syslogger. Otherwise, go directly to stderr. Bug noticed by Tom Lane. Backpatch as far as 8.0. Andrew Dunstan 2007-07-19 19:14:54 +00:00
  • 5a7d6179f6 Only use the pipe chunking protocol if we know the syslogger should be catching stderr output, and we are not ourselves the syslogger. Otherwise, go directly to stderr. Bug noticed by Tom Lane. Backpatch as far as 8.0. Andrew Dunstan 2007-07-19 19:14:25 +00:00
  • 0e5b4f0e23 Only use the pipe chunking protocol if we know the syslogger should be catching stderr output, and we are not ourselves the syslogger. Otherwise, go directly to stderr. Bug noticed by Tom Lane. Backpatch as far as 8.0. Andrew Dunstan 2007-07-19 19:13:43 +00:00
  • 177be3f9bb Adjust configure script to print the bison and flex versions in use. Minor rearrangements to make a few tests in a more logical order. Tom Lane 2007-07-19 17:15:30 +00:00
  • 429870e33e Fix an old thinko in SS_make_initplan_from_plan, which is used when optimizing a MIN or MAX aggregate call into an indexscan: the initplan is being made at the current query nesting level and so we shouldn't increment query_level. Though usually harmless, this mistake could lead to bogus "plan should not reference subplan's variable" failures on complex queries. Per bug report from David Sanchez i Gregori. Tom Lane 2007-07-18 21:41:22 +00:00
  • 6869810637 Fix an old thinko in SS_make_initplan_from_plan, which is used when optimizing a MIN or MAX aggregate call into an indexscan: the initplan is being made at the current query nesting level and so we shouldn't increment query_level. Though usually harmless, this mistake could lead to bogus "plan should not reference subplan's variable" failures on complex queries. Per bug report from David Sanchez i Gregori. Tom Lane 2007-07-18 21:41:14 +00:00
  • d514ea3fda Fix an old thinko in SS_make_initplan_from_plan, which is used when optimizing a MIN or MAX aggregate call into an indexscan: the initplan is being made at the current query nesting level and so we shouldn't increment query_level. Though usually harmless, this mistake could lead to bogus "plan should not reference subplan's variable" failures on complex queries. Per bug report from David Sanchez i Gregori. Tom Lane 2007-07-18 21:40:57 +00:00
  • cdedfe6af1 Cast NULL to a pointer type in the execl() call, to avoid a compiler warning on some platforms and possibly a bug. Per report from Stefan and subsequent discussion. Alvaro Herrera 2007-07-18 21:19:17 +00:00
  • dc32d2cefa GSSAPI documentation Magnus Hagander 2007-07-18 12:00:47 +00:00
  • 9e19063abc Document that 'deleted' is also tracked by autovacuum. Bruce Momjian 2007-07-18 03:39:01 +00:00
  • b6ed78b2bd Properly adjust age() seconds to match the sign of the larger units. Patch from Tom. Bruce Momjian 2007-07-18 03:13:13 +00:00
  • df7128bd34 Document that age() adds days, then full months. Bruce Momjian 2007-07-18 03:12:42 +00:00
  • 27d074923d Add: Bruce Momjian 2007-07-18 00:16:21 +00:00
  • a41c4b218f Fix incorrect optimization of foreign-key checks. When an UPDATE on the referencing table does not change the tuple's FK column(s), we don't bother to check the PK table since the constraint was presumably already valid. However, the check is still necessary if the tuple was inserted by our own transaction, since in that case the INSERT trigger will conclude it need not make the check (since its version of the tuple has been deleted). We got this right for simple cases, but not when the insert and update are in different subtransactions of the current top-level transaction; in such cases the FK check would never be made at all. (Hence, problem dates back to 8.0 when subtransactions were added --- it's actually the subtransaction version of a bug fixed in 7.3.5.) Fix, and add regression test cases. Report and fix by Affan Salman. Tom Lane 2007-07-17 17:45:57 +00:00
  • b1def736b0 Fix incorrect optimization of foreign-key checks. When an UPDATE on the referencing table does not change the tuple's FK column(s), we don't bother to check the PK table since the constraint was presumably already valid. However, the check is still necessary if the tuple was inserted by our own transaction, since in that case the INSERT trigger will conclude it need not make the check (since its version of the tuple has been deleted). We got this right for simple cases, but not when the insert and update are in different subtransactions of the current top-level transaction; in such cases the FK check would never be made at all. (Hence, problem dates back to 8.0 when subtransactions were added --- it's actually the subtransaction version of a bug fixed in 7.3.5.) Fix, and add regression test cases. Report and fix by Affan Salman. Tom Lane 2007-07-17 17:45:48 +00:00
  • ab04f4de7a Fix incorrect optimization of foreign-key checks. When an UPDATE on the referencing table does not change the tuple's FK column(s), we don't bother to check the PK table since the constraint was presumably already valid. However, the check is still necessary if the tuple was inserted by our own transaction, since in that case the INSERT trigger will conclude it need not make the check (since its version of the tuple has been deleted). We got this right for simple cases, but not when the insert and update are in different subtransactions of the current top-level transaction; in such cases the FK check would never be made at all. (Hence, problem dates back to 8.0 when subtransactions were added --- it's actually the subtransaction version of a bug fixed in 7.3.5.) Fix, and add regression test cases. Report and fix by Affan Salman. Tom Lane 2007-07-17 17:45:40 +00:00
  • 2c535bfe81 Fix incorrect optimization of foreign-key checks. When an UPDATE on the referencing table does not change the tuple's FK column(s), we don't bother to check the PK table since the constraint was presumably already valid. However, the check is still necessary if the tuple was inserted by our own transaction, since in that case the INSERT trigger will conclude it need not make the check (since its version of the tuple has been deleted). We got this right for simple cases, but not when the insert and update are in different subtransactions of the current top-level transaction; in such cases the FK check would never be made at all. (Hence, problem dates back to 8.0 when subtransactions were added --- it's actually the subtransaction version of a bug fixed in 7.3.5.) Fix, and add regression test cases. Report and fix by Affan Salman. Tom Lane 2007-07-17 17:45:28 +00:00
  • a5ca334a21 Remove http://www.benchmarkresources.com, no longer resolves to a meaningful site. Bruce Momjian 2007-07-17 05:03:55 +00:00
  • 474774918b Implement CREATE TABLE LIKE ... INCLUDING INDEXES. Patch from NikhilS, based in part on an earlier patch from Trevor Hardcastle, and reviewed by myself. Neil Conway 2007-07-17 05:02:03 +00:00
  • 77d27e43e5 Add CVS Wiki URL to docs. Bruce Momjian 2007-07-17 01:52:34 +00:00
  • f1dda4c54e Fix outfuncs.c to dump A_Const nodes representing NULLs correctly. This has been broken since forever, but was not noticed because people seldom look at raw parse trees. AFAIK, no impact on users except that debug_print_parse might fail; but patch it all the way back anyway. Per report from Jeff Ross. Tom Lane 2007-07-17 01:22:25 +00:00
  • da15b2852e Fix outfuncs.c to dump A_Const nodes representing NULLs correctly. This has been broken since forever, but was not noticed because people seldom look at raw parse trees. AFAIK, no impact on users except that debug_print_parse might fail; but patch it all the way back anyway. Per report from Jeff Ross. Tom Lane 2007-07-17 01:22:18 +00:00
  • ba56b484ea Fix outfuncs.c to dump A_Const nodes representing NULLs correctly. This has been broken since forever, but was not noticed because people seldom look at raw parse trees. AFAIK, no impact on users except that debug_print_parse might fail; but patch it all the way back anyway. Per report from Jeff Ross. Tom Lane 2007-07-17 01:22:11 +00:00
  • 0f254ea39c Fix outfuncs.c to dump A_Const nodes representing NULLs correctly. This has been broken since forever, but was not noticed because people seldom look at raw parse trees. AFAIK, no impact on users except that debug_print_parse might fail; but patch it all the way back anyway. Per report from Jeff Ross. Tom Lane 2007-07-17 01:22:03 +00:00
  • 6fa6347080 Fix outfuncs.c to dump A_Const nodes representing NULLs correctly. This has been broken since forever, but was not noticed because people seldom look at raw parse trees. AFAIK, no impact on users except that debug_print_parse might fail; but patch it all the way back anyway. Per report from Jeff Ross. Tom Lane 2007-07-17 01:21:55 +00:00
  • 804f016fb5 Fix outfuncs.c to dump A_Const nodes representing NULLs correctly. This has been broken since forever, but was not noticed because people seldom look at raw parse trees. AFAIK, no impact on users except that debug_print_parse might fail; but patch it all the way back anyway. Per report from Jeff Ross. Tom Lane 2007-07-17 01:21:43 +00:00
  • 74fbe9ccd1 Add: Bruce Momjian 2007-07-17 00:07:54 +00:00
  • 5fb01d829a Update docs that GNU tar versions >=1.16 exit with 1 on files changed, 2 on other errors. Bruce Momjian 2007-07-16 22:20:51 +00:00
  • 2a275e6d3c Fix pg_buffercache to release buffer partition locks in reverse order, and add a note about why. This is not tremendously important right now, probably, but it will get more urgent if NUM_BUFFER_PARTITIONS is increased as much as proposed. Tom Lane 2007-07-16 21:20:36 +00:00
  • 82b3684672 Add comments spelling out why it's a good idea to release multiple partition locks in reverse order. Tom Lane 2007-07-16 21:09:50 +00:00
  • e9e97500c9 With the native compiler on Unixware, disable optimization if --enable-debug is used, to avoid complaints about debugging and optimization being mutually exclusive. Patch from Stefan Kaltenbrunner. Neil Conway 2007-07-16 17:38:48 +00:00
  • ae1b7e298c Allow plpgsql function parameter names to be qualified with the function's name. With this patch, it is always possible for the user to qualify a plpgsql variable name if needed to avoid ambiguity. While there is much more work to be done in this area, this simple change removes one unnecessary incompatibility with Oracle. Per discussion. Tom Lane 2007-07-16 17:01:11 +00:00
  • 9f6f51d5d4 Hmm, so evidently _check_lock and _clear_lock take an argument of type int not unsigned int. Third try to get grebe building without warnings... Tom Lane 2007-07-16 14:02:22 +00:00
  • bbef913250 Quote pathnames so pg_standby works with paths that have spaces in them. Magnus Hagander 2007-07-16 08:40:52 +00:00
  • 5aaf09ac46 So our reward for including <sys/atomic_op.h> seems to be a bunch of nattering about casting away volatile. Losers. Tom Lane 2007-07-16 04:57:57 +00:00
  • 057d5c421f On AIX, include <sys/atomic_op.h> so that the functions we use for TAS support are properly declared. Tom Lane 2007-07-16 02:03:14 +00:00
  • 37e347a7e0 Get rid of overly cute, unportable, probably not very efficient substitute for 'bool'. Per buildfarm warnings. Tom Lane 2007-07-15 23:57:13 +00:00
  • 45839ffd28 Fix CHECK_RELATION_BLOCK_RANGE macro, which was not merely producing a warning but was outright wrong. Tom Lane 2007-07-15 23:47:13 +00:00
  • 93624bcda0 Fix CHECK_RELATION_BLOCK_RANGE macro, which was not merely producing a warning but was outright wrong. Tom Lane 2007-07-15 23:46:20 +00:00
  • 4608f359a6 Fix a passel of signed vs unsigned char warnings. Tom Lane 2007-07-15 23:30:19 +00:00
  • cfd6c89b04 Silence a rather odd compiler warning. In passing, make this file's error messages look at least a little bit like the message style guidelines say. Tom Lane 2007-07-15 23:09:26 +00:00
  • a190eb3d7d Avoid possibly-unportable initializer, per buildfarm warning. Tom Lane 2007-07-15 22:57:48 +00:00
  • 84a0445c4d Change a couple of exit(0) to return 0 to suppress complaints from not-too-bright compilers. Per buildfarm results. Tom Lane 2007-07-15 22:54:21 +00:00
  • 7176e60bc8 Silence Solaris compiler warnings, per buildfarm. Tom Lane 2007-07-15 22:49:36 +00:00
  • 10a91e0add Silence Solaris compiler warning, per buildfarm. Tom Lane 2007-07-15 22:43:40 +00:00
  • af18d3d05c Fix compile warning on Solaris, per buildfarm. (Why have we got three slightly different copies of this file?) Tom Lane 2007-07-15 22:40:28 +00:00
  • cd54eb2b5b Fix possible portability problem, per buildfarm warnings. Tom Lane 2007-07-15 22:34:26 +00:00
  • c11b8dcdbb Fix unportable use of isspace(), per buildfarm results. Tom Lane 2007-07-15 22:32:53 +00:00
  • 78c84ad49e Because plpgsql's scanner uses %option case-insensitive, flex's results could theoretically vary depending on what the compile-time locale setting is. Hence, force it to see LC_CTYPE=C to ensure consistent build results. (It's likely that this makes no difference in practice, since our specification for "identifier" surely includes both ends of any possible uppercase/lowercase pair anyway. But it should silence warnings about ambiguous character classes that are reported by some buildfarm members.) Tom Lane 2007-07-15 22:18:24 +00:00
  • 816ff27f60 Reject zero or negative BY step in plpgsql integer FOR-loops, and behave sanely if the loop value overflows int32 on the way to the end value. Avoid useless computation of "SELECT 1" when BY is omitted. Avoid some type-punning between Datum and int4 that dates from the original coding. Tom Lane 2007-07-15 02:15:04 +00:00
  • a69f9028b5 Note incompatibility with Oracle's version of FOR ... REVERSE, per Andrew Dunstan. Minor other improvements in documentation of integer FOR loops. Tom Lane 2007-07-15 00:45:16 +00:00
  • d849c5d182 Editorial overhaul of plpgsql documentation. Provide detailed documentation of variable substitution and plan caching behavior in dedicated sections. (A lot of this material existed already, but was scattered in various places in the chapter.) Reorganize material a little bit, mostly to try to avoid diving into deep details in the first introductory sections. Document some fine points that had escaped treatment before, notably the ability to qualify plpgsql variable names with block labels. Some minor wordsmithing here and there. Tom Lane 2007-07-14 23:02:25 +00:00
  • 3787797f72 Support for finding gssapi functions in the library "gss", as required by Solaris 10 and possibly others. Magnus Hagander 2007-07-14 11:13:28 +00:00
  • 2789b7278c Volatile-qualify a dozen variables in plpython.c to eliminate warnings from old versions of gcc. It's not clear to me that this is really necessary for correctness, but less warnings are always good. Per buildfarm results and local testing. Tom Lane 2007-07-13 04:57:59 +00:00
  • 39f06dcad6 Fix map_sql_typecoll_to_xmlschema_types() to not fail on dropped columns, per my gripe earlier today. Make it look a bit less like someone's first effort at backend coding. Tom Lane 2007-07-13 03:43:23 +00:00