aboutsummaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAge
* Remove error files.Bruce Momjian2002-08-10
|
* > create view pg_locks as select l.relation, l.database, l.backendpid,Bruce Momjian2002-08-10
| | | | | | | | | | | | | > l.mode, l.isgranted from pg_lock_info() as l(relation oid, database oid, > backendpid int4, mode text, isgranted bool); > ERROR: badly formatted planstring "COLUMNDEF "... > Reported by Neil Conway -- I never implemented readfuncs.c support for ColumnDef or TypeName, which is needed so that views can be created on functions returning type RECORD. Here's a patch. Joe Conway
* Major improvement in CLUSTER which preserves table characteristics usingBruce Momjian2002-08-10
| | | | | | | | | | | | relfilenode. I sent the CLUSTER patch a few days ago and I think it was missed. I append it again, this time including the regression test files. For the committer, please note that you have to cvs add the files as they don't exist. Maybe add to the parallel and serial schedules also, but I don't know such stuff. Alvaro Herrera (<alvherre[a]atentus.com>)
* 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
* psql prints its version number in its startup message, per recentTom Lane2002-08-10
| | | | | discussion. Also, cause the \timing command to display time in a format consistent with the backend's EXPLAIN ANALYZE output.
* Allow schema-qualified operator names to be used in the optionalTom Lane2002-08-10
| | | | arguments of CREATE OPERATOR.
* Fix failure to relink postmaster executable in the first make run if only aPeter Eisentraut2002-08-10
| | | | single source file a few directories deep in the backend tree has changed.
* Make sure all clients have the same understanding of default user namePeter Eisentraut2002-08-10
| | | | | and database. In particular, make script wrappers understand the PGDATABASE environment variable.
* Get rid of double PQclear(res) in error path.Tom Lane2002-08-10
|
* Add a sanity check to make sure that all system catalogs that have OIDsTom Lane2002-08-10
| | | | also have a unique index on OID.
* psql backslash commands are schema-aware. Pattern matching behaviorTom Lane2002-08-10
| | | | | follows recent pghackers discussion. This commit includes all the relevant fixes from Greg Mullane's patch of 24-June.
* Make sure monetary, numeric, and time locale categories are set to C andPeter Eisentraut2002-08-09
| | | | are only activated temporarily to read out formatting information.
* Column ordering in \d output should agree with sort ordering;Tom Lane2002-08-09
| | | | per Joe Conway's patch of 20-July.
* has_table_privilege spawns scions has_database_privilege, ↵Tom Lane2002-08-09
| | | | | | | | | | | has_function_privilege, has_language_privilege, has_schema_privilege to let SQL queries test all the new privilege types in 7.3. Also, add functions pg_table_is_visible, pg_type_is_visible, pg_function_is_visible, pg_operator_is_visible, pg_opclass_is_visible to test whether objects contained in schemas are visible in the current search path. Do some minor cleanup to centralize accesses to pg_database, as well.
* Change LOCK statements to start new transactionHiroshi Inoue2002-08-09
| | | | in auto-commit off mode.
* Make the standard system views schema-aware.Tom Lane2002-08-08
| | | | | I did not force an initdb via catversion ... but the rules regression test will fail until you do an initdb.
* Arrange to collect statistics on a few more system catalog columns.Tom Lane2002-08-08
|
* Cause view/rule display to work as expected after rename of an underlyingTom Lane2002-08-08
| | | | table or column, or of an output column of the view itself.
* Address build problems on cygwin and (hopefully) AIX.Tatsuo Ishii2002-08-08
|
* Load and keep conversion function info when SET CLIENT_ENCODING TO isTatsuo Ishii2002-08-08
| | | | | executed to prevent database access while performing encoding conversion.
* Remove #ifdef MULTIBYTETatsuo Ishii2002-08-08
|
* Cause schema-qualified FROM items and schema-qualified variable referencesTom Lane2002-08-08
| | | | | | to behave according to SQL92 (or according to my current understanding of same, anyway). Per pghackers discussion way back in March 2002: thread 'Do FROM items of different schemas conflict?'
* Clean up plpgsql identifier handling: process quoted identifiersTom Lane2002-08-08
| | | | | | | | | correctly, truncate to NAMEDATALEN where needed, allow whitespace around dots in qualified identifiers. Get rid of T_RECFIELD and T_TGARGV token categories, which weren't accomplishing anything except to create room for sins of omission in the grammar, ie, places that should have allowed them and didn't. Fix a few other bugs en passant.
* parseTypeString wasn't quite paranoid enough.Tom Lane2002-08-08
|
* Fix permission checking for temp-table namespace.Tom Lane2002-08-07
|
* Improve 'failed to initialize' messages.Tom Lane2002-08-07
|
* Updated translation from Dennis Bjorklund <db@zigo.dhs.org>Peter Eisentraut2002-08-06
|
* Still more paranoia in PageAddItem: disallow specification of an itemTom Lane2002-08-06
| | | | | | | | | offset past the last-used-item-plus-one, since that would result in leaving uninitialized holes in the item pointer array. AFAICT the only place that was depending on this was btree index build, which was being cavalier about when to fill in the P_HIKEY pointer; easily fixed. Also a small performance improvement: shuffle itemid's by means of memmove, not a one-at-a-time loop.
* Remove no-longer-used PageManagerMode enum.Tom Lane2002-08-06
|
* Move pg_convert3 declaration to suppress compile warning. ReallyTom Lane2002-08-06
| | | | | pg_convert3 does not belong in a backend/catalog file at all, IMHO; it should be in utils/adt.
* Add SQL99 CONVERT() function.Tatsuo Ishii2002-08-06
|
* Of course, the simple change has ripple effects! Here's a patch for theBruce Momjian2002-08-06
| | | | | | rangefunc regression test for the new behavior. Joe Conway
* >> Hm. I'd sort of expect the "z" to become both the table and columnBruce Momjian2002-08-06
| | | | | | | | | | | | | | | | | | | | | >> alias in this case. What do you think? > > I guess that would make sense. I'll make a separate patch just for that > change if that's OK. > Simple change -- patch attached. test=# select * from myfoo1() as z; z ---- 1 2 3 (3 rows) Joe Conway
* The attached patch disallows the use of coldeflists for functions thatBruce Momjian2002-08-06
| | | | | | | | | don't return type RECORD. It also catches a core dump condition when a function returning RECORD had an alias list instead of a coldeflist. Now both conditions throw an ERROR. Joe 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
* Restructure local-buffer handling per recent pghackers discussion.Tom Lane2002-08-06
| | | | | | | | | | | | | | The local buffer manager is no longer used for newly-created relations (unless they are TEMP); a new non-TEMP relation goes through the shared bufmgr and thus will participate normally in checkpoints. But TEMP relations use the local buffer manager throughout their lifespan. Also, operations in TEMP relations are not logged in WAL, thus improving performance. Since it's no longer necessary to fsync relations as they move out of the local buffers into shared buffers, quite a lot of smgr.c/md.c/fd.c code is no longer needed and has been removed: there's no concept of a dirty relation anymore in md.c/fd.c, and we never fsync anything but WAL. Still TODO: improve local buffer management algorithms so that it would be reasonable to increase NLocBuffer.
* Restructure system-catalog index updating logic. Instead of havingTom Lane2002-08-05
| | | | | | | | | hardwired lists of index names for each catalog, use the relcache's mechanism for caching lists of OIDs of indexes of any table. This reduces the common case of updating system catalog indexes to a single line, makes it much easier to add a new system index (in fact, you can now do so on-the-fly if you want to), and as a nice side benefit improves performance a little. Per recent pghackers discussion.
* Preliminary code review for anonymous-composite-types patch: fix breakageTom Lane2002-08-05
| | | | | | | | of functions returning domain types, update documentation for typtype, move get_typtype to lsyscache.c (actually, resurrect the old version), add defense against creating pseudo-typed table columns, fix some bogus list-parsing in grammar. Issues remain with respect to alias handling and type checking; Joe is on those.
* Fix compilation problem with assert checking enabled for recent xlogThomas G. Lockhart2002-08-05
| | | | location feature.
* Code review for anonymous-functions patch --- clean up some confusionTom Lane2002-08-05
| | | | in checkretval about which paths are for base or complex return type.
* Temporary solution for XLogDir breakage.Tom Lane2002-08-04
|
* Fix merge failures for anonymous-type patch. From Joe Conway.Tom Lane2002-08-04
|
* Fix broken pg_backend_pid reference, per Joe Conway.Tom Lane2002-08-04
|
* Another backend_pid rename.Bruce Momjian2002-08-04
|
* Fix compile failures for FRS composite tyhpe patch until Joe can fix it.Bruce Momjian2002-08-04
|
* Rename backend_pid to pg_backend_pid, move docs to monitoring section.Bruce Momjian2002-08-04
|
* Attached are two patches to implement and document anonymous compositeBruce Momjian2002-08-04
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | types for Table Functions, as previously proposed on HACKERS. Here is a brief explanation: 1. Creates a new pg_type typtype: 'p' for pseudo type (currently either 'b' for base or 'c' for catalog, i.e. a class). 2. Creates new builtin type of typtype='p' named RECORD. This is the first of potentially several pseudo types. 3. Modify FROM clause grammer to accept: SELECT * FROM my_func() AS m(colname1 type1, colname2 type1, ...) where m is the table alias, colname1, etc are the column names, and type1, etc are the column types. 4. When typtype == 'p' and the function return type is RECORD, a list of column defs is required, and when typtype != 'p', it is disallowed. 5. A check was added to ensure that the tupdesc provide via the parser and the actual return tupdesc match in number and type of attributes. When creating a function you can do: CREATE FUNCTION foo(text) RETURNS setof RECORD ... When using it you can do: SELECT * from foo(sqlstmt) AS (f1 int, f2 text, f3 timestamp) or SELECT * from foo(sqlstmt) AS f(f1 int, f2 text, f3 timestamp) or SELECT * from foo(sqlstmt) f(f1 int, f2 text, f3 timestamp) Included in the patches are adjustments to the regression test sql and expected files, and documentation. p.s. This potentially solves (or at least improves) the issue of builtin Table Functions. They can be bootstrapped as returning RECORD, and we can wrap system views around them with properly specified column defs. For example: CREATE VIEW pg_settings AS SELECT s.name, s.setting FROM show_all_settings()AS s(name text, setting text); Then we can also add the UPDATE RULE that I previously posted to pg_settings, and have pg_settings act like a virtual table, allowing settings to be queried and set. Joe Conway
* Fix obsolete comment.Tom Lane2002-08-04
|
* Minor clarification or fix of typos.Thomas G. Lockhart2002-08-04
|
* Implement WAL log location control using "-X" or PGXLOG.Thomas G. Lockhart2002-08-04
|