| Commit message (Collapse) | Author | Age |
... | |
| |
|
| |
|
|
|
|
|
| |
Also, make :alnum: character class directly dependent on isalnum()
rather than guessing.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
to be less dangerous, and often faster as well. ExprState trees are
not kept across transaction boundaries; this eliminates problems with
resource leakage in failed transactions. But by keeping them in a
per-transaction EState, we can safely arrange for a single ExprState
to be shared by all the expression evaluations done in a given plpgsql
function call. (Formerly it seemed necessary to create and destroy an
ExprState for each exec_eval_simple_expr() call.) This saves time in
any scenario where a plpgsql function executes more than one expression.
Seems to be about as fast as 7.3 for simple cases, and significantly
faster for functions that do a lot of calculations.
|
|
|
|
|
|
| |
post-abort cleanup hooks. I'm surprised that we have not needed this
already, but I need it now to fix a plpgsql problem, and the usefulness
for other dynamically loaded modules seems obvious.
|
|
|
|
|
|
| |
in the RI triggers for ON DELETE/UPDATE SET DEFAULT. The code depended
way too much on knowledge of plan structure, and yet still would fail
if the generated query got rewritten by rules.
|
|
|
|
| |
Nigel J. Andrews
|
| |
|
| |
|
|
|
|
| |
sequence for dumping.
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
method. Fix a number of places where shared libraries were linked without
mentioning all the libraries they depend on; the Darwin and AIX ports
are known to require this, and it doesn't seem to hurt any other supported
platforms. (Hence, remove code in pl/tcl makefile that tried to avoid
mentioning other libs if not needed.)
|
| |
|
| |
|
|
|
|
| |
pass COPY's EOL tests.
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
on pgsql-hackers.
A cast is included in the dump output if any of the objects does
not belong to a system namespace and all of the non-system namespace
objects belong to dumped namespaces. System namespace is defined
as nspname begins with "pg_".
Jan
|
|
|
|
| |
and improve tests.
|
|
|
|
|
|
|
| |
every string, especially if some of the output should be fixed-format
machine-readable. This needs to be more carefully sorted out. Also, make
the help message generated by --help-config -h be more similar in style to
the others.
|
|
|
|
|
|
| |
are not longer than 8 characters. But sometimes they are, and that made
the display quite ugly. So just format them vertically so that everyone
can read them.
|
|
|
|
|
| |
configure's tests see the same compilation environment as the code.
Per discussion with Stephan Szabo.
|
| |
|
| |
|
| |
|
|
|
|
| |
during ExecInitTidScan, because the rest of the executor isn't ready.
|
| |
|
| |
|
|
|
|
|
|
| |
to allow es_snapshot to be set to SnapshotNow rather than a query snapshot.
This solves a bug reported by Wade Klaver, wherein triggers fired as a
result of RI cascade updates could misbehave.
|
| |
|
| |
|
|
|
|
| |
message editing.
|
|
|
|
|
| |
terms, add some clarifications, fix some untranslatable attempts at dynamic
message building.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
now able to cope with assigning new relfilenode values to nailed-in-cache
indexes, so they can be reindexed using the fully crash-safe method. This
leaves only shared system indexes as special cases. Remove the 'index
deactivation' code, since it provides no useful protection in the shared-
index case. Require reindexing of shared indexes to be done in standalone
mode, but remove other restrictions on REINDEX. -P (IgnoreSystemIndexes)
now prevents using indexes for lookups, but does not disable index updates.
It is therefore safe to allow from PGOPTIONS. Upshot: reindexing system catalogs
can be done without a standalone backend for all cases except
shared catalogs.
|
|
|
|
|
|
|
|
| |
AUTHORIZATION clause to specify the desired owner. This allows a
superuser to restore schemas owned by users without CREATE-SCHEMA
permissions (ie, schemas originally created by a superuser using
AUTHORIZATION). --no-owner can be specified to suppress the
AUTHORIZATION clause if need be.
|
|
|
|
|
|
|
| |
to control object ownership. The use-set-session-authorization and
no-reconnect switches are obsolete (still accepted on the command line,
but they don't do anything). This is a precursor to fixing handling
of CREATE SCHEMA, which will be a separate commit.
|
|
|
|
|
|
|
|
| |
since 7.3: 'select array_dims(histogram_bounds) from pg_stats' used to
work and still should. Problem was that code wouldn't take input of
declared type anyarray as matching an anyarray argument. Allow this
case as long as we don't need to determine an element type (which in
practice means as long as anyelement isn't used in the function signature).
|
|
|
|
| |
_SPI_begin_call. Per gripe from Tomasz Myrta.
|
| |
|
|
|
|
|
|
|
|
| |
was a partial hour and less than gmt (i.e. -02:30) the code would corrupt the
minutes part.
Modified Files:
jdbc/org/postgresql/jdbc1/AbstractJdbc1Statement.java
|
|
|
|
|
| |
Modified Files:
ResultSetTest.java
|
|
|
|
|
| |
ALso put back a #ifndef ENABLE_REINDEX_NAILED_RELATIONS
which was removed about a year ago.
|
|
|
|
|
| |
- Fixed some minor things in test cases.
- Use defines for Informix error codes.
|
|
|
|
|
|
|
|
|
|
| |
currently commented out, pending fixes for the bugs these tests uncovered.
Modified Files:
jdbc/org/postgresql/test/jdbc2/Jdbc2TestSuite.java
jdbc/org/postgresql/test/jdbc2/ServerPreparedStmtTest.java
Added Files:
jdbc/org/postgresql/test/jdbc2/CursorFetchTest.java
|
|
|
|
|
|
|
|
|
|
|
| |
as some additional regression tests for this an other recent changes.
Modified Files:
jdbc/org/postgresql/jdbc1/AbstractJdbc1ResultSet.java
jdbc/org/postgresql/test/jdbc2/DateTest.java
jdbc/org/postgresql/test/jdbc2/ResultSetTest.java
jdbc/org/postgresql/test/jdbc2/TimeTest.java
jdbc/org/postgresql/test/jdbc2/TimestampTest.java
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
difference between INSERT_IN_PROGRESS and DELETE_IN_PROGRESS for
tuples inserted and then deleted by a concurrent transaction.
Example of bug:
regression=# create table foo (f1 int);
CREATE TABLE
regression=# begin;
BEGIN
regression=# insert into foo values(1);
INSERT 195531 1
regression=# delete from foo;
DELETE 1
regression=# insert into foo values(1);
INSERT 195532 1
regression=# create unique index fooi on foo(f1);
ERROR: could not create unique index
DETAIL: Table contains duplicated values.
|