aboutsummaryrefslogtreecommitdiff
path: root/src/backend/tcop/postgres.c
Commit message (Collapse)AuthorAge
...
* Prevent multiple queries in a single string into a single transactionBruce Momjian2003-03-24
| | | | when autocommit is off, and document grouping when autocommit is on.
* Fix comment-only query to return Null result set, rather than nothing.Bruce Momjian2003-03-22
| | | | Cleans up blank query handling to be more consistent.
* Todo items:Bruce Momjian2003-03-20
| | | | | | | | | | | | | | | | | | | Add ALTER SEQUENCE to modify min/max/increment/cache/cycle values Also updated create sequence docs to mention NO MINVALUE, & NO MAXVALUE. New Files: doc/src/sgml/ref/alter_sequence.sgml src/test/regress/expected/sequence.out src/test/regress/sql/sequence.sql ALTER SEQUENCE is NOT transactional. It behaves similarly to setval(). It matches the proposed SQL200N spec, as well as Oracle in most ways -- Oracle lacks RESTART WITH for some strange reason. -- Rod Taylor <rbt@rbt.ca>
* Restructure parsetree representation of DECLARE CURSOR: now it's aTom Lane2003-03-10
| | | | | | | | | | | | utility statement (DeclareCursorStmt) with a SELECT query dangling from it, rather than a SELECT query with a few unusual fields in it. Add code to determine whether a planned query can safely be run backwards. If DECLARE CURSOR specifies SCROLL, ensure that the plan can be run backwards by adding a Materialize plan node if it can't. Without SCROLL, you get an error if you try to fetch backwards from a cursor that can't handle it. (There is still some discussion about what the exact behavior should be, but this is necessary infrastructure in any case.) Along the way, make EXPLAIN DECLARE CURSOR work.
* Add code to dump contents of free space map into $PGDATA/global/pg_fsm.cacheTom Lane2003-03-06
| | | | | | at database shutdown, and then load it again at database startup. This preserves our hard-won knowledge of free space across restarts (given an orderly shutdown, that is).
* Get rid of last few vestiges of parsetree dependency on grammar tokenTom Lane2003-02-10
| | | | | | codes, per discussion from last March. parse.h should now be included *only* by gram.y, scan.l, keywords.c, parser.c. This prevents surprising misbehavior after seemingly-trivial grammar adjustments.
* fastpath code neglected to check whether user has privileges to call theTom Lane2003-01-01
| | | | | target function. Also, move SetQuerySnapshot() call to avoid assert failure when a fastpath call is attempted in an aborted transaction.
* Re-addd Rod's ALTER DOMAIN patch.Bruce Momjian2002-12-06
|
* Back out ALTER DOMAIN patch until missing file appears.Bruce Momjian2002-12-06
|
* ALTER DOMAIN .. SET / DROP NOT NULLBruce Momjian2002-12-06
| | | | | | | | | | ALTER DOMAIN .. SET / DROP DEFAULT ALTER DOMAIN .. ADD / DROP CONSTRAINT New files: - doc/src/sgml/ref/alter_domain.sgml Rod Taylor
* Most of the code follows the American spelling of the word, which isBruce Momjian2002-11-19
| | | | | | | | "canceled", so I changed the one remaining usage of the British spelling ("cancelled") over to the former, and updated the translation files appropriately. Neil Conway
* Rename:Bruce Momjian2002-11-15
| | | | | | | | | | | | | | ! #show_parser_stats = false ! #show_planner_stats = false ! #show_executor_stats = false ! #show_statement_stats = false TO: ! #log_parser_stats = false ! #log_planner_stats = false ! #log_executor_stats = false ! #log_statement_stats = false
* Rename server_min_messages to log_min_messages. Part of consolidationBruce Momjian2002-11-14
| | | | of log_ settings.
* Code review for statement_timeout patch. Fix some race conditionsTom Lane2002-10-31
| | | | | | between signal handler and enable/disable code, avoid accumulation of timing error due to trying to maintain remaining-time instead of absolute-end-time, disable timeout before commit not after.
* Fix some places that were unportably assuming struct timeval's tv_secTom Lane2002-10-24
| | | | field is signed. Clean up casting.
* Invert logic in pg_exec_query_string() so that we set a snapshot forTom Lane2002-10-19
| | | | | | | all utility statement types *except* a short list, per discussion a few days ago. Add missing SetQuerySnapshot calls in VACUUM and REINDEX, and guard against calling REINDEX DATABASE from a function (has same problem as VACUUM).
* Improve formatting of --help output.Peter Eisentraut2002-10-18
|
* Make SPI's execution of querystrings follow the rules agreed to forTom Lane2002-10-14
| | | | | | | command status at the interactive level. SPI_processed, etc are set in the same way as the returned command status would have been set if the same querystring were issued interactively. Per gripe from Michael Paesold 25-Sep-02.
* Adjust handling of command status strings in the presence of rules,Tom Lane2002-10-14
| | | | | as per recent pghackers discussions. initdb forced due to change in fields of stored Query nodes.
* Make SET really not start a transaction.Tom Lane2002-10-13
|
* Have SET not start transaction when autocommit off, with doc updates.Bruce Momjian2002-10-09
|
* Move responsibility for setting QuerySnapshot for utility statementsTom Lane2002-10-08
| | | | | | into postgres.c; make sure it happens for all cases that seem to need it. Perhaps it would be better to explicitly exclude just a few utility statement types from setting a snapshot?
* Clarify comment.Bruce Momjian2002-10-06
|
* Have -d5 -d0 not affect the extra variables set with -d5.Bruce Momjian2002-09-27
|
* Make postgres -d0 set server_min_messages to notice. Reset doesn't workBruce Momjian2002-09-27
| | | | at this area in the code.
* Pass postmaster -d down to the postgres backend to trigger special -dBruce Momjian2002-09-26
| | | | handling in the backend.
* Remove ShutdownBufferPoolAccess exit callback, and do the work inTom Lane2002-09-25
| | | | | | | | | ProcKill instead, where we still have a PGPROC with which to wait on LWLocks. This fixes 'can't wait without a PROC structure' failures occasionally seen during backend shutdown (I'm surprised they weren't more frequent, actually). Add an Assert() to LWLockAcquire to help catch any similar mistakes in future. Fix failure to update MyProcPid for standalone backends and pgstat processes.
* > I'm not sure why NDirectFileRead/NDirectFileWrite are unused at theBruce Momjian2002-09-20
| | | | | | | | | | | | | | | > moment, but they used to be used; I think the correct response is to > put back the missing counter increments, not rip out the counters. Ok, fair enough. It's worth noting that they've been broken for a while -- for example, the HashJoin counter increments were broken when you comitted r1.20 of executor/nodeHashJoin.c in May of '99. I've attached a revised patch that doesn't remove the counters (but doesn't increment them either: I'm not sure of all the places where the counter should be incremented). Neil Conway
* Fix for rare race-condition-like failure: if a backend receives SIGUSR2Tom Lane2002-09-16
| | | | | | | | | | (notify/SI-overrun interrupt) while it is in process of doing proc_exit, it is possible for Async_NotifyHandler() to try to start a transaction when one is already running. This leads to Asserts() or worse. I think it may only be possible to occur when frontend synchronization is lost (ie, the elog(FATAL) in SocketBackend() fires), but that is a standard occurrence after error during COPY. In any case, I have seen this failure occur during regression tests, so it is definitely possible.
* pgindent run.Bruce Momjian2002-09-04
|
* Remove documentation that says debug_query_string is only used byBruce Momjian2002-09-02
| | | | | | pgmonitor. Now log_min_error_statement uses it.
* Remove sys/types.h in files that include postgres.h, and hence c.h,Bruce Momjian2002-09-02
| | | | because c.h has sys/types.h.
* Add log_duration to GUC/postgresql.conf.Bruce Momjian2002-09-01
| | | | | Rename debug_print_query to log_statement and rename show_query_stats to show_statement_stats.
* AUTOCOMMIT mode is now an available backend GUC variable; setting itTom Lane2002-08-30
| | | | | | | | | to false provides more SQL-spec-compliant behavior than we had before. I am not sure that setting it false is actually a good idea yet; there is a lot of client-side code that will probably be broken by turning autocommit off. But it's a start. Loosely based on a patch by David Van Wie.
* Fix a bug introduced in 7.2.Hiroshi Inoue2002-08-29
|
* Remove #ifdef MULTIBYTE per hackers list discussion.Tatsuo Ishii2002-08-29
|
* PREPARE/EXECUTE statements. Patch by Neil Conway, some kibitzingTom Lane2002-08-27
| | | | from Tom Lane.
* Reverse out XLogDir/-X write-ahead log handling, per discussion.Bruce Momjian2002-08-17
| | | | Original patch from Thomas.
* Tom Lane wrote:Bruce Momjian2002-08-15
| | | | | | | | | | | | | | | | | > There's no longer a separate call to heap_storage_create in that routine > --- the right place to make the test is now in the storage_create > boolean parameter being passed to heap_create. A simple change, but > it passeth patch's understanding ... Thanks. Attached is a patch against cvs tip as of 8:30 PM PST or so. Turned out that even after fixing the failed hunks, there was a new spot in bufmgr.c which needed to be fixed (related to temp relations; RelationUpdateNumberOfBlocks). But thankfully the regression test code caught it :-) Joe Conway
* This patch removes a lot of unused code related to assertions andBruce Momjian2002-08-10
| | | | | | | | | | | | error handling, and simplifies the code that remains. Apparently, the code that left Berkeley had a whole "error handling subsystem", which exceptions and whatnot. Since we don't use that anymore, there's no reason to keep it around. The regression tests pass with the patch applied. Unless anyone sees a problem, please apply. Neil Conway
* This patch changes the behavior of PostgreSQL so that if any queries areBruce Momjian2002-08-06
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | executed in an implicitely aborted transaction (e.g. after an occur occurs), we return an error (and not just a warning). For example: nconway=# begin; BEGIN nconway=# insert; -- syntax error ERROR: parser: parse error at or near ";" nconway=# select * from a; ERROR: current transaction is aborted, queries ignored until end of transaction block The old behavior was: nconway=# begin; BEGIN nconway=# insert; ERROR: parser: parse error at or near ";" nconway=# select * from a; WARNING: current transaction is aborted, queries ignored until end of transaction block *ABORT STATE* Which can be confusing: if the client isn't paying careful attention, they will conclude that the query has executed (because no error is returned). Neil Conway
* Temporary solution for XLogDir breakage.Tom Lane2002-08-04
|
* Implement WAL log location control using "-X" or PGXLOG.Thomas G. Lockhart2002-08-04
|
* The attached patch implements START TRANSACTION, per SQL99. TheBruce Momjian2002-08-04
| | | | | | | | | | | functionality of the command is basically identical to that of BEGIN; it just accepts a few extra options (only one of which PostgreSQL currently implements), and is standards-compliant. The patch includes a simple regression test and documentation. [ Regression tests removed, per Peter.] Neil Conway
* The attached patch removes the last remnants of support forBruce Momjian2002-07-30
| | | | | | | | 'tioga recipes', whatever those are -- Peter E. killed most of it a couple days ago, but this patch removes the rest. Most of it was #ifdef'ed out anyway. Neil Conway
* Move alarm timers to proper location.Bruce Momjian2002-07-30
|
* Make statement_timeout apply to entire query string, not per statement.Bruce Momjian2002-07-30
|
* Implement CREATE/DROP OPERATOR CLASS. Work still remains: need moreTom Lane2002-07-29
| | | | | | | documentation (xindex.sgml should be rewritten), need to teach pg_dump about it, need to update contrib modules that currently build pg_opclass entries by hand. Original patch by Bill Studenmund, grammar adjustments and general update for 7.3 by Tom Lane.
* pg_cast table, and standards-compliant CREATE/DROP CAST commands, plusPeter Eisentraut2002-07-18
| | | | | | | | | | | extension to create binary compatible casts. Includes dependency tracking as well. pg_proc.proimplicit is now defunct, but will be removed in a separate commit. pg_dump provides a migration path from the previous scheme to declare casts. Dumping binary compatible casts is currently impossible, though.
* Implement DROP SCHEMA. It lacks support for dropping conversions andTom Lane2002-07-18
| | | | | operator classes, both of which are schema-local and so should really be droppable.