git.postgresql.org Git - postgresql.git/log
Update Darwin as thread-safe.
> >>1. change the type of "log_statement" option from boolean to string,
> >>with allowed values of "all, mod, ddl, none" with default "none".
OK, here is a patch that implements #1. Here is sample output:
test=> set client_min_messages = 'log';
SET
test=> set log_statement = 'mod';
SET
test=> select 1;
?column?
----------
1
(1 row)
test=> update test set x=1;
LOG: statement: update test set x=1;
ERROR: relation "test" does not exist
test=> update test set x=1;
LOG: statement: update test set x=1;
ERROR: relation "test" does not exist
test=> copy test from '/tmp/x';
LOG: statement: copy test from '/tmp/x';
ERROR: relation "test" does not exist
test=> copy test to '/tmp/x';
ERROR: relation "test" does not exist
test=> prepare xx as select 1;
PREPARE
test=> prepare xx as update x set y=1;
LOG: statement: prepare xx as update x set y=1;
ERROR: relation "x" does not exist
test=> explain analyze select 1;;
QUERY PLAN
------------------------------------------------------------------------------------
Result (cost=0.00..0.01 rows=1 width=0) (actual time=0.006..0.007 rows=1 loops=1)
Total runtime: 0.046 ms
(2 rows)
test=> explain analyze update test set x=1;
LOG: statement: explain analyze update test set x=1;
ERROR: relation "test" does not exist
test=> explain update test set x=1;
ERROR: relation "test" does not exist
It checks PREPARE and EXECUTE ANALYZE too. The log_statement values are
'none', 'mod', 'ddl', and 'all'. For 'all', it prints before the query
is parsed, and for ddl/mod, it does it right after parsing using the
node tag (or command tag for CREATE/ALTER/DROP), so any non-parse errors
will print after the log line.
Tom Lane [Tue, 6 Apr 2004 18:46:03 +0000 (18:46 +0000)]
Support FULL JOIN with no join clauses, such as X FULL JOIN Y ON TRUE.
That particular corner case is not exactly compelling, but given 7.4's
ability to discard redundant join clauses, it is possible for the situation
to arise from queries that are not so obviously silly. Per bug report
of 6-Apr-04.
Tom Lane [Tue, 6 Apr 2004 16:39:30 +0000 (16:39 +0000)]
ALTER SEQUENCE RESTART did the wrong thing if sequence last_value was
equal to the desired restart value (must clear is_called, did not).
Per bug report #1127 from Piotr Konieczny.
Add thread program mention of errno thread-safety.
The attached applied patch throws an error if the delimiter appears in
the COPY NULL string:
test=> copy pg_language to '/tmp/x' with delimiter '|';
COPY
test=> copy pg_language to '/tmp/x' with delimiter '|' null '|x';
ERROR: COPY delimiter must not appear in the NULL specification
test=> copy pg_language from '/tmp/x' with delimiter '|' null '|x';
ERROR: COPY delimiter must not appear in the NULL specification
It also throws an error if it conflicts with the default NULL string:
test=> copy pg_language to '/tmp/x' with delimiter '\\';
ERROR: COPY delimiter must not appear in the NULL specification
test=> copy pg_language to '/tmp/x' with delimiter '\\' NULL 'x';
COPY
Add CLUSTER tag to psql \d display.
Add comment that sched_yield might be a portability problem.
Change getpid() while loop to use sched_yield(), greatly speeds up test.
sched_yield is a requirement for the test but not for our PostgreSQL
code, so if it causes a portability problem, we will remove it.
New translation
Translation updates
Have threads wait for parent to test thread-specific pointers before
exiting.
Corrects issues recently posted by Dann Corbit, allowing libpq/psql to
be built under VC++. Moves a pgstat win32 #def to port.h
Claudio Natoli
This is a cleanup patch for access/transam/xact.c. It only removes some
#ifdef NOT_USED code, and adds a new TBLOCK state which signals the fact
that StartTransaction() has been executed.
Alvaro Herrera
Allow LIKE/ILIKE to appear in more places in a query.
Fabien COELHO
Remove 'syslog' GUC variable, and add more logical 'log_destination'
variable to control logoutput location on Unix and Win32.
Magnus Hagander
Improve handling of GUC USERLIMIT variables by reorganizing code. Also,
handle new postgresql.conf values with SIGHUP better by better enforcing
USERLIMIT settings on existing non-super-user backends.
Add volatile to thread-specific thread variables.
Update thread test to only test for 'localhost' and local machine name.
Update thread test to do getpid() in while loop, also use weather.com
rather than slashdot.org for testing.
Tom Lane [Fri, 2 Apr 2004 23:14:08 +0000 (23:14 +0000)]
check_sql_fn_retval has always thought that we supported doing
'SELECT foo()' in a SQL function returning a rowtype, to simply pass
back the results of another function returning the same rowtype.
However, that hasn't actually worked in many years. Now it works again.
Tom Lane [Fri, 2 Apr 2004 21:30:44 +0000 (21:30 +0000)]
Fix poor choice of error message in corner cases.
Tom Lane [Fri, 2 Apr 2004 21:05:32 +0000 (21:05 +0000)]
Clean up some code that had gotten a bit ugly through repeated revisions.
Tom Lane [Fri, 2 Apr 2004 19:07:02 +0000 (19:07 +0000)]
Get rid of crocky use of RangeVar nodes in parser to represent partially
transformed whole-row variables. Cleaner to use regular whole-row Vars.
Translation updates
Translation updates
Tom Lane [Fri, 2 Apr 2004 00:41:18 +0000 (00:41 +0000)]
Fix some more compatibility issues (ctype.h macros must never be passed
signed chars...)
Tom Lane [Thu, 1 Apr 2004 23:52:18 +0000 (23:52 +0000)]
Fix some portability issues with new float input code (didn't work on
HPUX 11 ...)
Tom Lane [Thu, 1 Apr 2004 23:44:38 +0000 (23:44 +0000)]
Fix some portability issues (reliance on gcc-isms).
Tom Lane [Thu, 1 Apr 2004 23:35:35 +0000 (23:35 +0000)]
Fix portability issues with functions that don't match their declaration.
Tom Lane [Thu, 1 Apr 2004 22:51:31 +0000 (22:51 +0000)]
Add missing casts to unsigned char in recently-added isspace() calls.
Tom Lane [Thu, 1 Apr 2004 21:59:45 +0000 (21:59 +0000)]
Adjust expected regression outputs for plan changes caused by recent
'fuzzy cost comparison' patch. Mea culpa for not having noticed this
when I committed the patch.
Tom Lane [Thu, 1 Apr 2004 21:28:47 +0000 (21:28 +0000)]
Replace TupleTableSlot convention for whole-row variables and function
results with tuples as ordinary varlena Datums. This commit does not
in itself do much for us, except eliminate the horrid memory leak
associated with evaluation of whole-row variables. However, it lays the
groundwork for allowing composite types as table columns, and perhaps
some other useful features as well. Per my proposal of a few days ago.
Improve comments on USERLIMIT GUC processing.
Add description of log_statement_stats's function (total statement stats
rather than per-stage stats).
Back out tutorial changes:
---------------------------------------------------------------------------
1. In keeping with the recent discussion that there should be more
said about views, stored procedures, and triggers, in the tutorial, I
have added a bit of verbiage to that end.
2. Some formatting changes to the datetime discussion, as well as
addition of a citation of a relevant book on calendars.
Christopher Browne
Add psql backslash command discussion.
Add:
* Move psql backslash database information into the backend, use
nmumonic commands? [psql]
Remove:
* Prevent unneeded quoting in psql \d output using fmtId()
Fix markup errors from recent patch.
1. In keeping with the recent discussion that there should be more
said about views, stored procedures, and triggers, in the tutorial, I
have added a bit of verbiage to that end.
2. Some formatting changes to the datetime discussion, as well as
addition of a citation of a relevant book on calendars.
Christopher Browne
Add:
> * Add GUC variable to allow output of interval values in ISO8601 format
Add mention of how to use \df to find functions using/returning specific
data types.
Fix to_char for 1 BC. Previously it returned 1 AD.
Fix to_char(year) for BC dates. Previously it returned one less than
the current year.
Add documentation mentioning that there is no 0 AD.
Cleanup vectors of GISTENTRY and eliminate problem with 64-bit strict-aligned
boxes. Change interface to user-defined GiST support methods union and
picksplit. Now instead of bytea struct it used special GistEntryVector
structure.
Tom Lane [2004年3月29日 19:58:04 +0000 (19:58 +0000)]
Use fuzzy comparison of path costs in add_path(), so that paths with the
same path keys and nearly equivalent costs will be considered redundant.
The exact nature of the fuzziness may get adjusted later based on current
discussions, but no one has shot a hole in the basic idea yet ...
Fixed possible segfault in type.c (by Juergen Cappel)
Update FAQ from Robert Treat
Tom Lane [2004年3月28日 06:09:08 +0000 (06:09 +0000)]
Some further editorializing on README.CVS.
Clean up thread test program.
Add test for thread-safe errno to thread test program.
Add comment about psql \s (history display):
/* This scrolls off the screen when using /dev/tty */
Clean up function call arg appearance.
Change small 'if/else' test to use Max().
Tom Lane [2004年3月27日 03:08:42 +0000 (03:08 +0000)]
Fix brain-dead placement of global variable declaration.
Tom Lane [2004年3月27日 00:24:28 +0000 (00:24 +0000)]
Now that we are allowing index opclasses to contain operators that are
only stable and not immutable, pred_test_simple_clause has to guard
against making invalid deductions. Add a test for immutability of
the selected test_op.
Add -D_REENTRANT for Solaris threading.
More cross-reference work, other minor SGML fixes and improvements.
Update gcc solaris flags.
Fix for SSL compile.
Tom Lane [2004年3月25日 18:57:57 +0000 (18:57 +0000)]
Convert some GUC variable references to links.
1 Minimize memory allocation for void (but not null) value.
2 Add silly ordering for ts_vector to aim grouping, union, except etc. Don't use BTree opclass (tsvector_ops).
Tom Lane [2004年3月24日 23:38:49 +0000 (23:38 +0000)]
Add a more useful error message for the case where someone tries to pass
a whole row or record variable into a SQL function. Eventually this case
should be made to actually work, but for now this is better than what it
did before.
Tom Lane [2004年3月24日 22:40:29 +0000 (22:40 +0000)]
Replace max_expr_depth parameter with a max_stack_depth parameter that
is measured in kilobytes and checked against actual physical execution
stack depth, as per my proposal of 30-Dec. This gives us a fairly
bulletproof defense against crashing due to runaway recursive functions.
Add:
* Have pg_dump use multi-statement transactions for INSERT dumps
Tom Lane [2004年3月24日 15:20:54 +0000 (15:20 +0000)]
Adjust error message wording per Andrew Dunstan's advice.
Make a cross-reference in the ALTER TABLE ref page into a <xref>.
Update description error text:
(errmsg("no socket configured for listening")));
Here's a patch implementing the "thread method" to workaround the bug
with socket calls in signal handlers (APC) on Win32. See details in mail
to pgsql-hackers-win32 a couple of minutes ago.
Magnus Hagander
Allow unlink/rename of files open by another process on Win32, using a
special Win32 open flag FILE_SHARE_DELETE.
Claudio Natoli
Fix a minor typo in the log_line_prefix docs and make a couple other
tiny improvements.
Add thread locking to SSL and Kerberos connections.
I have removed the docs mentioning that SSL and Kerberos are not
thread-safe.
Manfred Spraul
Document fallback to tcp/ip localhost connection from psql on ports
without unix domain sockets (win32).
Fix some whitespace formatting, and remove an overly-verbose
parameter description: postgresql.conf is not the place for
documentating the functionality of a GUC var.
>>Also, what is the default connection mode of psql? It should probably be
>>equivalent to "-h localhost", shouldn't it?
>>
>>
>
>Now that is something I had not thought of. Seems we can assume a Win32
>psql can never use unix domain sockets, so defaulting that to localhost
>is a good solution too.
Andrew Dunstan
Use the new GUC variable default_with_oids in pg_dump, rather than using
WITH/WITHOUT OIDS in dump files. This makes dump files more portable.
I have updated the pg_dump version so old binary dumps will load fine.
Pre-7.5 dumps use WITHOUT OIDS in SQL were needed, so they should be
fine.
Update the float8 regression tests: they should now pass on FreeBSD 4.x
and (in theory) QNX. Thanks to Chris KL for the report.
Tom Lane [2004年3月23日 23:37:17 +0000 (23:37 +0000)]
PQresult should be PGresult.
Tom Lane [2004年3月23日 22:57:09 +0000 (22:57 +0000)]
Fix small typo.
Tom Lane [2004年3月23日 22:39:22 +0000 (22:39 +0000)]
Repair misleading description of MOVE's command tag result.
Tom Lane [2004年3月23日 22:06:08 +0000 (22:06 +0000)]
Use dollar-quoting for function bodies, unless disabled with
--disable-dollar-quoting.
Andrew Dunstan
When changing select() calls for delays into pg_usleep(), two comments
in s_lock.c were not updated, and still refers to select. Made my grep
hit the wrong files, so I figured a simple patch was in order.. (other
refs in the same comment block was changed..)
Magnus Hagander
Tom Lane [2004年3月23日 19:35:17 +0000 (19:35 +0000)]
Upgrade ALTER TABLE DROP COLUMN so that it can drop an OID column, and
remove separate implementation of ALTER TABLE SET WITHOUT OIDS in favor
of doing a regular DROP. Also, cause CREATE TABLE to account completely
correctly for the inheritance status of the OID column. This fixes
problems with dropping OID columns that have dependencies, as noted by
Christopher Kings-Lynne, as well as making sure that you can't drop an
OID column that was inherited from a parent.
Minor SGML improvements.
Fix typo in postmaster reference page: from Tom.
fflush() FILE buffer to descriptor so stat call gets proper size in fseeko.c.
Fixed problem with pg_dump tar backups. Only happens on platforms that
use our port/fseeko.c, which is currently BSD/OS and NetBSD.
Improve the locale and character set docs, add some <xref>s pointing
to the character set docs where appropriate, and improve the postmaster
reference page. Character set cross-refs suggested by Gavin Kistner.
Fix getpwuid_r call:
*result = getpwuid_r(uid, resultbuf, buffer, buflen);
Tom Lane [2004年3月23日 01:23:48 +0000 (01:23 +0000)]
Replace the virtual_host and tcpip_socket parameters with a unified
listen_addresses parameter, as per recent discussion. The default behavior
is now to listen on localhost, which eliminates the need for the -i
postmaster switch in many scenarios.
Andrew Dunstan
Tom Lane [2004年3月22日 23:55:29 +0000 (23:55 +0000)]
Before deciding we can use a socket for statistics collection, test to
ensure that it actually passes data. This catches cases such as a kernel
packet filter rule that makes the socket useless.
Andrew Dunstan
Tom Lane [2004年3月22日 16:46:28 +0000 (16:46 +0000)]
Add missing extern for optind.
Tom Lane [2004年3月22日 16:18:50 +0000 (16:18 +0000)]
Clean up rather poor description of the difference between INHERITS and
LIKE. Per gripe from Patrick Samson.
Tom Lane [2004年3月22日 15:34:22 +0000 (15:34 +0000)]
Standardize output buffer size and display format for strftime;
followup to complaint from Korean User's Group.
Disasble threads on unixware until other platforms report a problem.
Increase xlog str_time() static string variable, per Korean User's Group.
In working through a pg_autovacuum problem with Joe Conway (which turned
out to be the same problem reported by Cott Lang which the previous
patch resolved) a new bug was uncovered when running with a debug level
of greater than 1.
This patch resolves this new found bug and fixes some of the other
debugging output to be more consistent.
Please apply to both HEAD and the 7.4 branch.
Matthew T. O'Connor
I just noticed that \dp outputs "Table" to indicate relations (tables,
sequences and views). This patch allows it to handle views and
sequences.
Euler Taveira de Oliveira
Adds DLLIMPORT modifier to check_function_bodies
Claudio Natoli
Add mention of "-D_POSIX_PTHREAD_SEMANTICS" enabling 5-arg getpwuid_r().
Tom Lane [2004年3月22日 01:38:18 +0000 (01:38 +0000)]
Add timestamp-versus-timestamptz cross-type comparison functions,
flesh out the index operator classes to include these. In passing,
fix erroneous volatility marking of ACL functions.
This is the main PostgreSQL git repository.
RSS
Atom