aboutsummaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAge
* Distinguish between MaxHeapAttributeNumber and MaxTupleAttributeNumber,Tom Lane2002-05-27
| | | | | | | | | | | where the latter is made slightly larger to allow for in-memory tuples containing resjunk attributes. Responds to today's complaint that one cannot UPDATE a table containing the allegedly-legal maximum number of columns. Also, apply Manfred Koizar's recent patch to avoid extra alignment padding when there is a null bitmap. This saves bytes in some cases while not creating any backward-compatibility problem AFAICS.
* Remove AMI_OVERRIDE tests from tqual.c routines; they aren't necessaryTom Lane2002-05-25
| | | | | and just slow down normal operations (only fractionally, but a cycle saved is a cycle earned). Improve documentation of AMI_OVERRIDE behavior.
* AlterDatabaseSet() forgot to update the indexes on pg_database.Tom Lane2002-05-25
|
* Fix coding error in UTF conversion.Tom Lane2002-05-24
|
* Add 'volatile' to suppress gcc warning. Not sure why this warningTom Lane2002-05-24
| | | | wasn't seen before, maybe the Tcl compiler flags were less strict.
* Wups, managed to break ANALYZE with one aspect of that heap_fetch change.Tom Lane2002-05-24
|
* Mark index entries "killed" when they are no longer visible to anyTom Lane2002-05-24
| | | | | | | | | | | | | | | transaction, so as to avoid returning them out of the index AM. Saves repeated heap_fetch operations on frequently-updated rows. Also detect queries on unique keys (equality to all columns of a unique index), and don't bother continuing scan once we have found first match. Killing is implemented in the btree and hash AMs, but not yet in rtree or gist, because there isn't an equally convenient place to do it in those AMs (the outer amgetnext routine can't do it without re-pinning the index page). Did some small cleanup on APIs of HeapTupleSatisfies, heap_fetch, and index_insert to make this a little easier.
* Change PL/Tcl build to use configured compiler and Makefile.shlibPeter Eisentraut2002-05-24
| | | | | | | | | | system, not Tcl-provided one. Make sure export file, if any, is cleaned. Tcl configuration is now read directly in configure and recorded in Makefile.global. This eliminates some duplicate efforts and allows for easier hand-editing of the results, if necessary.
* Add $(LDFLAGS) to Windows make rule for postgres executable. NeededTom Lane2002-05-22
| | | | to do profiling on Cygwin, per report from Dave Page.
* Modify sequence state storage to eliminate dangling-pointer problemTom Lane2002-05-22
| | | | | | | | exemplified by bug #671. Moving the storage to relcache turned out to be a bad idea because relcache might decide to discard the info. Instead, open and close the relcache entry on each sequence operation, and use a record of the current XID to discover whether we already hold AccessShareLock on the sequence.
* Minor kibitzing.Tom Lane2002-05-22
|
* Add optional "validator" function to languages that can validate thePeter Eisentraut2002-05-22
| | | | | | | | | | | | function body (and other properties) as a function in the language is created. This generalizes ad hoc code that already existed for the built-in languages. The validation now happens after the pg_proc tuple of the new function is created, so it is possible to define recursive SQL functions. Add some regression test cases that cover bogus function definition attempts.
* Make RelationForgetRelation error out if the relcache entry has nonzeroTom Lane2002-05-22
| | | | | reference count. This avoids leaving dangling pointers around, as in recent bug report against sequences (bug# 671).
* Un-break table creation.Tom Lane2002-05-22
|
* AllowHiroshi Inoue2002-05-22
| | | | | CREATE VIEW as SELECT CTID, .... SELECT currtid( a view, ..).
* 1) Support Keyset Driven driver cursors.Hiroshi Inoue2002-05-22
| | | | | | | | | | 2) Supprt ARD precision/scale and SQL_C_NUEMRIC. 3) Minimal implementation of SQLGetDiagField(). 4) SQLRowCount() reports the result of SQLSetPos and SQLBulkOperation. 5) int8 -> SQL_NUMERIC for Microsoft Jet. 6) Support isolation level change. 7) ODBC3.0 SQLSTATE code. 8) Append mode log files.
* Since COPY fires triggers, it seems like a good idea for it to useTom Lane2002-05-21
| | | | | a frozen (copied) snapshot too. Move execMain's snapshot copying code out into a subroutine in case we find other places that need it.
* Remove SetQuerySnapshot() from FETCH processing. No longer necessaryTom Lane2002-05-21
| | | | | or appropriate, since the snapshot that will be used by the cursor was frozen when ExecutorStart was run for it.
* Remove global variable scanCommandId in favor of storing a command IDTom Lane2002-05-21
| | | | | | | | | | | in snapshots, per my proposal of a few days ago. Also, tweak heapam.c routines (heap_insert, heap_update, heap_delete, heap_mark4update) to be passed the command ID to use, instead of doing GetCurrentCommandID. For catalog updates they'll still get passed current command ID, but for updates generated from the main executor they'll get passed the command ID saved in the snapshot the query is using. This should fix some corner cases associated with functions and triggers that advance current command ID while an outer query is still in progress.
* Spell long option with -c not --, for compatibility's sake.Tom Lane2002-05-21
|
* Repair OPEN cursor(args), which I broke on 11/29/01 with a change toTom Lane2002-05-21
| | | | be smarter about parentheses in read_sql_construct(). Sigh.
* Restructure indexscan API (index_beginscan, index_getnext) perTom Lane2002-05-20
| | | | | | | yesterday's proposal to pghackers. Also remove unnecessary parameters to heap_beginscan, heap_rescan. I modified pg_proc.h to reflect the new numbers of parameters for the AM interface routines, but did not force an initdb because nothing actually looks at those fields.
* - Fixed some parser bugs.Michael Meskes2002-05-20
| | | | | - Removed some simple rules to work arounf bison limit for now. - Update c_keywords.c to reflect changes in keywords.c.
* - Fixed reduce/reduce conflict in parser.Michael Meskes2002-05-19
| | | | | | - Synced preproc.y with gram.y. - Synced pgc.l with scan.l. - Synced keywords.c.
* Reorder keyword token declarations alphabetically. Status of the keywordsPeter Eisentraut2002-05-19
| | | | in the various standards can be found in the documentation these days.
* Remove bitrotten view_perms test. Add some similar test cases toPeter Eisentraut2002-05-19
| | | | privileges test.
* Dump privileges on functions, aggregates, languages.Peter Eisentraut2002-05-19
|
* Add display of sort keys to the default EXPLAIN output.Tom Lane2002-05-18
|
* Teach query_tree_walker, query_tree_mutator, and SS_finalize_plan toTom Lane2002-05-18
| | | | | | | | process function RTE expressions, which they were previously missing. This allows outer-Var references and subselects to work correctly in the arguments of a function RTE. Install check to prevent function RTEs from cross-referencing Vars of sibling FROM-items, which doesn't make any sense (if you want to join, write a JOIN or WHERE clause).
* Revise command completion tags as per hackers message on 20 March.Peter Eisentraut2002-05-18
|
* Allow functions to be executed with the privileges of the function owner.Peter Eisentraut2002-05-18
| | | | I took the opportunity to remove the pg_proc.proistrusted field.
* Change set_plan_references and join_references to take an rtable ListTom Lane2002-05-18
| | | | | | | | rather than a Query node; this allows set_plan_references to recurse into subplans correctly. Fixes core dump on full outer joins in subplans. Also, invoke preprocess_expression on function RTEs' function expressions. This seems to fix the planner's problems with outer-level Vars in function RTEs.
* Add missing fix_expr_references() step for the funcexpr of aTom Lane2002-05-18
| | | | FunctionScan plan node.
* Get rid of the last few uses of typeidTypeName() rather thanTom Lane2002-05-17
| | | | format_type_be() in error messages.
* Support temporary setting of search path during CREATE SCHEMA; thisTom Lane2002-05-17
| | | | | | | allows the example in the CREATE SCHEMA ref page to actually work now. Also, clean up when the transaction that initially creates a temp-table namespace is later aborted. Simplify internal representation of search path by folding special cases into the main list.
* Dept. of second thoughts: interaction between DoIt and makeDependTom Lane2002-05-17
| | | | | in set_config_option wasn't quite right. Also clean up a couple other things that could have been done better.
* Extend syntax of CREATE FUNCTION to resemble SQL99.Peter Eisentraut2002-05-17
|
* Guard against empty-string results from pg_getlocale.Tom Lane2002-05-17
|
* Merge the last few variable.c configuration variables into the genericTom Lane2002-05-17
| | | | | | | | | GUC support. It's now possible to set datestyle, timezone, and client_encoding from postgresql.conf and per-database or per-user settings. Also, implement rollback of SET commands that occur in a transaction that later fails. Create a SET LOCAL var = value syntax that sets the variable only for the duration of the current transaction. All per previous discussions in pghackers.
* Remove unnecessary pfree's in geometric operators. At least one of theseTom Lane2002-05-14
| | | | | | | is actively dangerous, per bug report from Ewald Geschwinde 14-May-02, and several of the rest look suspicious to me. Since there is no longer any significant value in retail pfree's in these functions, just get rid of all of them for safety's sake.
* Fix lookup tables used for rounding interval data values when not usingThomas G. Lockhart2002-05-14
| | | | integer datetimes. Thanks to Tom Lane for spotting the problem.
* Make regression tests locale-proof by setting some locale categoriesPeter Eisentraut2002-05-14
| | | | | to C at run-time, and providing alternative output files for different sort orders.
* Fix bug in psql.Tatsuo Ishii2002-05-14
| | | | | | | | | | per report from sugita@sra.co.jp on Thu, 09 May 2002 11:57:51 +0900 (JST) at pgsql-patches list. Illegal long options to pg_dump makes core on some systems, since it lacks the last null sentinel of struct option array. Attached is a patch made by Mr. Ishida Akio <iakio@pjam.jpweb.net>.
* fixed problem connecting to server with client_min_messages set to debug. ↵Barry Lind2002-05-14
| | | | The code was not expecting to receive notice messages during the connection handshake.
* Fix typo in _copyAlterUserSetStmt.Tom Lane2002-05-13
|
* Make operators have their own comments separate from those of theTom Lane2002-05-13
| | | | | | | underlying function; but cause psql's \do to show the underlying function's comment if the operator has no comment of its own, to preserve the useful functionality of the original behavior. Also, implement COMMENT ON SCHEMA. Patch from Rod Taylor.
* Get rid of long-since-vestigial Iter node type, in favor of adding aTom Lane2002-05-12
| | | | | | | returns-set boolean field in Func and Oper nodes. This allows cleaner, more reliable tests for expressions returning sets in the planner and parser. For example, a WHERE clause returning a set is now detected and complained of in the parser, not only at runtime.
* First pass at set-returning-functions in FROM, by Joe Conway withTom Lane2002-05-12
| | | | | | some kibitzing from Tom Lane. Not everything works yet, and there's no documentation or regression test, but let's commit this so Joe doesn't need to cope with tracking changes in so many files ...
* Forgot to handle 'opaque' function arguments in regprocedurein/out.Tom Lane2002-05-11
|
* First pass at schema-fying pg_dump/pg_restore. Much to do still,Tom Lane2002-05-10
| | | | but the basic capability seems to work.