- 21 Apr, 2004 4 commits
-
-
Tom Lane authored
the next are handled by ReleaseAndReadBuffer rather than separate ReleaseBuffer and ReadBuffer calls. This cuts the number of acquisitions of the BufMgrLock by a factor of 2 (possibly more, if an indexscan happens to pull successive rows from the same heap page). Unfortunately this doesn't seem enough to get us out of the recently discussed context-switch storm problem, but it's surely worth doing anyway.
-
Tom Lane authored
of whether we have successfully read data into a buffer; this makes the error behavior a bit more transparent (IMHO anyway), and also makes it work correctly for local buffers which don't use Start/TerminateBufferIO. Collapse three separate functions for writing a shared buffer into one. This overlaps a bit with cleanups that Neil proposed awhile back, but seems not to have committed yet.
-
Peter Eisentraut authored
-
Bruce Momjian authored
FORCE QUOTE to force quotes FORCE NOT NULL to quote null input values
-
- 20 Apr, 2004 12 commits
-
-
Bruce Momjian authored
< * Add NO WAIT option to various SQL commands > * -Add NO WAIT LOCKs
-
Bruce Momjian authored
process directly. Some parameters can only be set at server start; any changes to their entries in the configuration file will be ignored until the server is restarted.
-
Bruce Momjian authored
-
Bruce Momjian authored
> * Allow AFTER triggers on system tables
-
Bruce Momjian authored
-
Bruce Momjian authored
> * -Exit postmaster if postgresql.conf can not be opened
-
Bruce Momjian authored
-
Bruce Momjian authored
-
Bruce Momjian authored
-
Bruce Momjian authored
> >> have to accept a full table scan when locating records. > > > > It indexes them, but "is null" is not an indexable operator, so you > > can't directly solve the above with a 3-column index. What you can do > > instead is use a partial index, for instance > > > > create index i on CUSTOMER.WCCustOrderStatusLog (WCOrderStatusID) > > where Acknowledged is null and Processing is null; > > That's a very nifty trick and exactly the sort of answer I was after! Add CREATE INDEX doc mention of using partial indexes for IS NULL indexing; idea from Tom.
-
Bruce Momjian authored
-
PostgreSQL Daemon authored
Remove all of the libpgtcl and pgtclsh files, including all references to them within the various makefiles with_tcl is still required for the src/pl/tcl language
-
- 19 Apr, 2004 13 commits
-
-
Bruce Momjian authored
reference DEALLOCATE in any way. It points to EXECUTE, but not to DEALLOCATE. Suggested fix: ... This also means that a single prepared statement cannot be used by multiple simultaneous database clients; however, each client can create their own prepared statement to use. The prepared statement can be manually cleaned up using the DEALLOCATE command. James Robinson
-
Tom Lane authored
of VACUUM cases so that VACUUM requests don't affect the ARC state at all, avoid corner case where BufferSync would uselessly rewrite a buffer that no longer contains the page that was to be flushed. Make some minor other cleanups in and around the bufmgr as well, such as moving PinBuffer and UnpinBuffer into bufmgr.c where they really belong.
-
Bruce Momjian authored
-
Bruce Momjian authored
Create diff of custom changes Tom made to the utility for CREATE FUNCTION. This will make moving this utility out of CVS easier.
-
-
Bruce Momjian authored
-
Bruce Momjian authored
one apparent error and makes a minor stylistic change that makes it more consistent and makes clear something that confused me :-) Andrew Dunstan
-
Bruce Momjian authored
-
Bruce Momjian authored
Fix for code originally added for 7.5.
-
Bruce Momjian authored
* removed a few redundant defines * get_user_name safe under win32 * rationalized pipe read EOF for win32 (UPDATED PATCH USED) * changed all backend instances of sleep() to pg_usleep - except for the SLEEP_ON_ASSERT in assert.c, as it would exceed a 32-bit long [Note to patcher: If a SLEEP_ON_ASSERT of 2000 seconds is acceptable, please replace with pg_usleep(2000000000L)] I added a comment to that part of the code: /* * It would be nice to use pg_usleep() here, but only does 2000 sec * or 33 minutes, which seems too short. */ sleep(1000000); Claudio Natoli
-
Bruce Momjian authored
o -Allow dump/load of CSV format This adds new keywords to COPY and \copy: CSV - enable CSV mode (comma separated variable) QUOTE - specify quote character ESCAPE - specify escape character FORCE - force quoting of specified column LITERAL - suppress null comparison for columns Doc changes included. Regression updates coming from Andrew.
-
Bruce Momjian authored
> o -Allow dump/load of CSV format
-
Bruce Momjian authored
< * -Allow psql \du to show groups, and add \dg for groups > * -Allow psql \du to show users, and add \dg for groups
-
- 18 Apr, 2004 1 commit
-
-
Tom Lane authored
are sought first as local FROM columns, then as local SELECT-list aliases, and finally as outer FROM columns; the former behavior made outer FROM columns take precedence over aliases. This does not change spec conformance because SQL99 allows only the first case anyway, and it seems more useful and self-consistent. Per gripe from Dennis Bjorklund 2004-04-05.
-
- 16 Apr, 2004 1 commit
-
-
Bruce Momjian authored
-
- 15 Apr, 2004 5 commits
-
-
Bruce Momjian authored
-
Tom Lane authored
RETURN NEXT.
-
Peter Eisentraut authored
-
Peter Eisentraut authored
-
Bruce Momjian authored
-
- 14 Apr, 2004 2 commits
-
-
Bruce Momjian authored
< * Alvaro Herrera <alvherre@dcc.uchile.cl> > * Alvaro is Alvaro Herrera <alvherre@dcc.uchile.cl>
-
Bruce Momjian authored
< * Add the concept of dataspaces/tablespaces [tablespaces] > * Add the concept of dataspaces/tablespaces [tablespaces] (Gavin) 167c167 < * Allow savepoints / nested transactions [transactions] (Bruce) > * Allow savepoints / nested transactions [transactions] (Alvaro) 240c240 < o Allow Java server-side programming [java] > o Allow Java server-side programming [java] (Dave) 496a497 > * Alvaro Herrera <alvherre@dcc.uchile.cl>
-
- 12 Apr, 2004 2 commits
-
-
Bruce Momjian authored
It works on the principle of turning sockets into non-blocking, and then emulate blocking behaviour on top of that, while allowing signals to run. Signals are now implemented using an event instead of APCs, thus getting rid of the issue of APCs not being compatible with "old style" sockets functions. It also moves the win32 specific code away from pqsignal.h/c into port/win32, and also removes the "thread style workaround" of the APC issue previously in place. In order to make things work, a few things are also changed in pgstat.c: 1) There is now a separate pipe to the collector and the bufferer. This is required because the pipe will otherwise only be signalled in one of the processes when the postmaster goes down. The MS winsock code for select() must have some kind of workaround for this behaviour, but I have found no stable way of doing that. You really are not supposed to use the same socket from more than one process (unless you use WSADuplicateSocket(), in which case the docs specifically say that only one will be flagged). 2) The check for "postmaster death" is moved into a separate select() call after the main loop. The previous behaviour select():ed on the postmaster pipe, while later explicitly saying "we do NOT check for postmaster exit inside the loop". The issue was that the code relies on the same select() call seeing both the postmaster pipe *and* the pgstat pipe go away. This does not always happen, and it appears that useing WSAEventSelect() makes it even more common that it does not. Since it's only called when the process exits, I don't think using a separate select() call will have any significant impact on how the stats collector works. Magnus Hagander
-
Bruce Momjian authored
Add pstdin/pstdout to read from psql's stdin/stdout. BACKWARD INCOMPATIBLE CHANGE
-