| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
| |
that the inner one is completely empty. Per recent discussion. Also some
cosmetic cleanups in nearby code.
|
| |
|
|
|
|
|
| |
this, it's hard to debug core-dump test failures, because WAL replay will
enthusiastically remove the core file (along with the rest of the
regression database directory). Per recent discussion, not to mention
bitter experience.
|
| |
|
|
|
|
|
|
| |
when a function that returns a single tuple (not a setof tuple) returns
NULL. This seems to be the most consistent behavior. It would have
taken a bit less code to make it return an empty table (zero rows) but
ISTM a non-SETOF function ought always return exactly one row. Per
bug report from Ivan-Sun1.
|
| |
|
|
| |
or two.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
address all of the items in the todo list and adds some new
things as well. Specifically:
* Add support for ALTER SEQUENCE ...
* Add "RENAME TO" for ALTER TRIGGER xx ON yy
* Pick proper table for ALTER TRIGGER xx ON ...
* Support for ALTER USER xxx ...
* Fix ALTER GROUP xxx DROP ...
* Fix ALTER DOMAIN xxx DROP ...
* Remove "OWNER TO" from ALTER DOMAIN xx DROP ...
* Fix ALTER DOMAIN xx SET DEFAULT ..
* Prevent ALTER INDEX xxx SET TABLESPACE from using "TO"
* Support for ALTER LANGUAGE xxx (RENAME TO)
* More support for ALTER TABLE xxx ALTER COLUMN xxx ...
* More support for COPY
Greg Sabino Mullane
|
| |
|
|
|
|
| |
log_line_prefix escapes. The escape sequence used for this is %x.
%x previously meant "postmaster et al. stop here" -- this has been
renamed to %q.
|
| |
|
|
|
| |
SQL92 (the former defines a much more ambitious subset of views that
need to be updatable).
|
| |
|
|
|
| |
Also, avoid truncating the file we just wrote into, which might otherwise
easily happen at DST boundaries. Ed L. and Tom Lane.
|
| |
|
|
|
| |
exercise dollar quoting and named function parameters. AFAICS we had
no tests of either feature before.
|
| |
|
|
|
| |
grammar, don't drop discussions into the middle of unrelated discussions,
etc.
|
| |
|
|
|
|
|
| |
of commands for which a transaction block should not be forced. Recognize
VACUUM and other PreventTransactionChain commands; handle nested /* .. */
comments correctly; handle multibyte encodings correctly.
Michael Paesold with some kibitzing from Tom Lane.
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
| |
If we're going to put brackets around optional precision specs in some
entries, we'd better do it in all.
|
| | |
|
| |
|
|
|
| |
pseudotypes. Not sure why I neglected to add these checks at the same
time I added them to the other PLs, but it seems I did.
|
| |
|
|
| |
when there is an expressional index matching a GROUP BY item.
|
| |
|
|
| |
Spotted by Josh Purinton.
|
| |
|
|
| |
become part of the make variable value.
|
| | |
|
| | |
|
| |
|
|
| |
like Linux; we just need to recognize the system types.
|
| | |
|
| | |
|
| |
|
|
| |
Alvaro Herrera
|
| |
|
|
|
|
| |
was large enough to be batched and the tuples fell into a batch where
there were no inner tuples at all. Thanks to Xiaoyu Wang for finding a
test case that exposed this long-standing bug.
|
| |
|
|
|
|
| |
creating a new tuple. This is just for debugging sanity, though, since
nothing should be paying any attention to xmax when the HEAP_XMAX_INVALID
bit is set.
|
| | |
|
| |
|
|
| |
from James William Pye.
|
| |
|
|
|
| |
since we don't change the signal mask during normal backend operations.
Use sigsetjmp(buf,0) to avoid many unnecessary kernel calls.
|
| | |
|
| | |
|
| |
|
|
|
| |
subtransactions. Trivial subxacts (such as a plpgsql exception block
containing no database access) now demonstrably leak zero bytes.
|
| |
|
|
|
|
|
| |
pg_subtrans --- what we need is the oldest xmin of any snapshot in use
in the current top transaction. Introduce a new variable TransactionXmin
to play this role. Fixes intermittent regression failure reported by
Neil Conway.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
as per recent discussions. Invent SubTransactionIds that are managed like
CommandIds (ie, counter is reset at start of each top transaction), and
use these instead of TransactionIds to keep track of subtransaction status
in those modules that need it. This means that a subtransaction does not
need an XID unless it actually inserts/modifies rows in the database.
Accordingly, don't assign it an XID nor take a lock on the XID until it
tries to do that. This saves a lot of overhead for subtransactions that
are only used for error recovery (eg plpgsql exceptions). Also, arrange
to release a subtransaction's XID lock as soon as the subtransaction
exits, in both the commit and abort cases. This avoids holding many
unique locks after a long series of subtransactions. The price is some
additional overhead in XactLockTableWait, but that seems acceptable.
Finally, restructure the state machine in xact.c to have a more orthogonal
set of states for subtransactions.
|
| |
|
|
| |
qualified.
|
| |
|
|
| |
cosmetic code cleanup at the same time.
|
| |
|
|
| |
as a const char *, so that we don't need to cast away a const in gram.y
|
| |
|
|
|
|
|
|
|
|
| |
< * Point-in-time data recovery using backup and write-ahead log,
< * Create native Win32 port, http://momjian.postgresql.org/main/writings/pgsql/project/win32.html
> * -Point-in-time data recovery using backup and write-ahead log
> * -Create native Win32 port
470c470
< o Fix PL/pgSQL RENAME to work on variables other than OLD/NEW
> o Fix PL/pgSQL RENAME to work on variables other than OLD/NEW
|
| | |
|
| | |
|
| |
|
|
| |
Andreas Pflug
|
| |
|
|
| |
and add documentation. Dave Page
|
| |
|
|
| |
simplify life for the Win32 installer. Per Dave Page.
|
| |
|
|
| |
Claudio Natoli
|
| |
|
|
| |
Claudio Natoli
|
| | |
|