- 05 Aug, 2002 2 commits
-
-
Tom Lane authored
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.
-
Tom Lane authored
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.
-
- 02 Aug, 2002 2 commits
-
-
Tom Lane authored
relation being modified. In most paths of control we'd already have such a lock, but if we were dropping the default due to a cascaded delete of some function it depended on, maybe not.
-
Tom Lane authored
code review by Tom Lane. Remaining issues: functions that take or return tuple types are likely to break if one drops (or adds!) a column in the table defining the type. Need to think about what to do here. Along the way: some code review for recent COPY changes; mark system columns attnotnull = true where appropriate, per discussion a month ago.
-
- 31 Jul, 2002 1 commit
-
-
Tom Lane authored
attstattarget to indicate 'use the default'. The default is now a GUC variable default_statistics_target, and so may be changed on the fly. Along the way we gain the ability to have pg_dump dump the per-column statistics target when it's not the default. Patch by Neil Conway, with some kibitzing from Tom Lane.
-
- 24 Jul, 2002 1 commit
-
-
Peter Eisentraut authored
pg_language.lancompiler pg_operator.oprprec pg_operator.oprisleft pg_proc.proimplicit pg_proc.probyte_pct pg_proc.properbyte_cpu pg_proc.propercall_cpu pg_proc.prooutin_ratio pg_shadow.usetrace pg_type.typprtlen pg_type.typreceive pg_type.typsend Attempts to use the obsoleted attributes of pg_operator or pg_proc in the CREATE commands will be greeted by a warning. For pg_type, there is no warning (yet) because pg_dump scripts still contain these attributes. Also remove new but already obsolete spellings isVolatile, isStable, isImmutable in WITH clause. (Use new syntax instead.)
-
- 20 Jul, 2002 1 commit
-
-
Bruce Momjian authored
bitmap, if present). Per Tom Lane's suggestion the information whether a tuple has an oid or not is carried in the tuple descriptor. For debugging reasons tdhasoid is of type char, not bool. There are predefined values for WITHOID, WITHOUTOID and UNDEFOID. This patch has been generated against a cvs snapshot from last week and I don't expect it to apply cleanly to current sources. While I post it here for public review, I'm working on a new version against a current snapshot. (There's been heavy activity recently; hope to catch up some day ...) This is a long patch; if it is too hard to swallow, I can provide it in smaller pieces: Part 1: Accessor macros Part 2: tdhasoid in TupDesc Part 3: Regression test Part 4: Parameter withoid to heap_addheader Part 5: Eliminate t_oid from HeapTupleHeader Part 2 is the most hairy part because of changes in the executor and even in the parser; the other parts are straightforward. Up to part 4 the patched postmaster stays binary compatible to databases created with an unpatched version. Part 5 is small (100 lines) and finally breaks compatibility. Manfred Koizar
-
- 19 Jul, 2002 1 commit
-
-
Tom Lane authored
pg_statistic rows to delete while dropping a relation.
-
- 18 Jul, 2002 1 commit
-
-
Tom Lane authored
operator classes, both of which are schema-local and so should really be droppable.
-
- 16 Jul, 2002 2 commits
-
-
Tom Lane authored
functionality. Of note: dropping a table that has a SERIAL column defined now drops the associated sequence automatically.
-
Tom Lane authored
to build dependencies for rules, constraint expressions, and default expressions. Repair some problems in the original design of recursiveDeletion() exposed by more complex dependency sets. Fix regression tests that were deleting things in illegal sequences.
-
- 15 Jul, 2002 1 commit
-
-
Tom Lane authored
so that dependencies in default expressions (on operators, functions, etc) can be expressed properly.
-
- 14 Jul, 2002 1 commit
-
-
Tom Lane authored
scans that will most likely be caused by SearchSysCache probes. Also, share some code between index deletion and table deletion.
-
- 12 Jul, 2002 1 commit
-
-
Tom Lane authored
pg_relcheck is gone; CHECK, UNIQUE, PRIMARY KEY, and FOREIGN KEY constraints all have real live entries in pg_constraint. pg_depend exists, and RESTRICT/CASCADE options work on most kinds of DROP; however, pg_depend is not yet very well populated with dependencies. (Most of the ones that are present at this point just replace formerly hardwired associations, such as the implicit drop of a relation's pg_type entry when the relation is dropped.) Need to add more logic to create dependency entries, improve pg_dump to dump constraints in place of indexes and triggers, and add some regression tests.
-
- 20 Jun, 2002 1 commit
-
-
Bruce Momjian authored
-
- 22 May, 2002 2 commits
-
-
Tom Lane authored
-
Hiroshi Inoue authored
CREATE VIEW as SELECT CTID, .... SELECT currtid( a view, ..).
-
- 21 May, 2002 1 commit
-
-
Tom Lane authored
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.
-
- 20 May, 2002 1 commit
-
-
Tom Lane authored
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.
-
- 12 May, 2002 1 commit
-
-
Tom Lane authored
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.
-
- 03 May, 2002 1 commit
-
-
Tom Lane authored
-
- 27 Apr, 2002 1 commit
-
-
Tom Lane authored
pg_database, pg_shadow, pg_group, all of which now have potentially-long fields. Along the way, get rid of SharedSystemRelationNames list: shared rels are now identified in their include/pg_catalog/*.h files by a BKI_SHARED_RELATION macro, while indexes and toast rels inherit sharedness automatically from their parent table. Fix some bugs with failure to detoast pg_group.grolist during ALTER GROUP.
-
- 12 Apr, 2002 1 commit
-
-
Tom Lane authored
on the namespace not the name; pg_ is not a reserved prefix for table names anymore. From Fernando Nasser.
-
- 11 Apr, 2002 1 commit
-
-
Tom Lane authored
entries, per pghackers discussion. This fixes aggregates to live in namespaces, and also simplifies/speeds up lookup in parse_func.c. Also, add a 'proimplicit' flag to pg_proc that controls whether a type coercion function may be invoked implicitly, or only explicitly. The current settings of these flags are more permissive than I would like, but we will need to debate and refine the behavior; for now, I avoided breaking regression tests as much as I could.
-
- 31 Mar, 2002 1 commit
-
-
Tom Lane authored
temp table entries in pg_class have the names the user would expect.
-
- 29 Mar, 2002 1 commit
-
-
Tom Lane authored
in different namespaces. Also, cleanup work on relation namespace support: drop, alter, rename commands work for tables in non-default namespaces.
-
- 26 Mar, 2002 1 commit
-
-
Tom Lane authored
in schemas other than the system namespace; however, there's no search path yet, and not all operations work yet on tables outside the system namespace.
-
- 22 Mar, 2002 1 commit
-
-
Tom Lane authored
addRangeTableEntry calls. Remove relname field from RTEs, since it will no longer be a useful unique identifier of relations; we want to encourage people to rely on the relation OID instead. Further work on dumping qual expressions in EXPLAIN, too.
-
- 21 Mar, 2002 1 commit
-
-
Tom Lane authored
the parsetree representation. As yet we don't *do* anything with schema names, just drop 'em on the floor; but you can enter schema-compatible command syntax, and there's even a primitive CREATE SCHEMA command. No doc updates yet, except to note that you can now extract a field from a function-returning-row's result with (foo(...)).fieldname.
-
- 20 Mar, 2002 1 commit
-
-
Tom Lane authored
-
- 19 Mar, 2002 2 commits
-
-
Bruce Momjian authored
in the current code, the authentication logic (check user, check the relation we're operating on, etc) is done in tcop/utility.c, whereas the actual TRUNCATE command in done in TruncateRelation() in commands/createinh.c (which is really just a wrapper over heap_truncate() in catalog/heap.c). This patch moves the authentication logic into TruncateRelation(), as well as making some minor code cleanups. Neil Conway
-
Bruce Momjian authored
Rod Taylor.
-
- 07 Mar, 2002 1 commit
-
-
Bruce Momjian authored
-
- 06 Mar, 2002 2 commits
-
-
Bruce Momjian authored
- domain.patch -> source patch against pgsql in cvs - drop_domain.sgml and create_domain.sgml -> New doc/src/sgml/ref docs - dominfo.txt -> basic domain related queries I used for testing [ ADDED TO /doc] Enables domains of array elements -> CREATE DOMAIN dom int4[3][2]; Uses a typbasetype column to describe the origin of the domain. Copies data to attnotnull rather than processing in execMain(). Some documentation differences from earlier. If this is approved, I'll start working on pg_dump, and a \dD <domain> option in psql, and regression tests. I don't really feel like doing those until the system table structure settles for pg_type. CHECKS when added, will also be copied to to the table attributes. FK Constraints (if I ever figure out how) will be done similarly. Both will lbe handled by MergeDomainAttributes() which is called shortly before MergeAttributes(). Rod Taylor
-
Bruce Momjian authored
o Change all current CVS messages of NOTICE to WARNING. We were going to do this just before 7.3 beta but it has to be done now, as you will see below. o Change current INFO messages that should be controlled by client_min_messages to NOTICE. o Force remaining INFO messages, like from EXPLAIN, VACUUM VERBOSE, etc. to always go to the client. o Remove INFO from the client_min_messages options and add NOTICE. Seems we do need three non-ERROR elog levels to handle the various behaviors we need for these messages. Regression passed.
-
- 03 Mar, 2002 1 commit
-
-
Tom Lane authored
speed up repetitive failed searches; per pghackers discussion in late January. inval.c logic substantially simplified, since we can now treat inserts and deletes alike as far as inval events are concerned. Some repair work needed in heap_create_with_catalog, which turns out to have been doing CommandCounterIncrement at a point where the new relation has non-self-consistent catalog entries. With the new inval code, that resulted in assert failures during a relcache entry rebuild.
-
- 19 Feb, 2002 1 commit
-
-
Tom Lane authored
Improve 'pg_internal.init' relcache entry preload mechanism so that it is safe to use for all system catalogs, and arrange to preload a realistic set of system-catalog entries instead of only the three nailed-in-cache indexes that were formerly loaded this way. Fix mechanism for deleting out-of-date pg_internal.init files: this must be synchronized with transaction commit, not just done at random times within transactions. Drive it off relcache invalidation mechanism so that no special-case tests are needed. Cache additional information in relcache entries for indexes (their pg_index tuples and index-operator OIDs) to eliminate repeated lookups. Also cache index opclass info at the per-opclass level to avoid repeated lookups during relcache load. Generalize 'systable scan' utilities originally developed by Hiroshi, move them into genam.c, use in a number of places where there was formerly ugly code for choosing either heap or index scan. In particular this allows simplification of the logic that prevents infinite recursion between syscache and relcache during startup: we can easily switch to heapscans in relcache.c when and where needed to avoid recursion, so IndexScanOK becomes simpler and does not need any expensive initialization. Eliminate useless opening of a heapscan data structure while doing an indexscan (this saves an mdnblocks call and thus at least one kernel call).
-
- 12 Nov, 2001 1 commit
-
-
Tom Lane authored
to apply the proper Datum conversion macros to search key values.
-
- 02 Nov, 2001 1 commit
-
-
Tom Lane authored
analysis. This keeps stored rules from prematurely absorbing default information, which is necessary for ALTER TABLE SET DEFAULT to work unsurprisingly with rules. See pgsql-bugs discussion 24-Oct-01.
-
- 25 Oct, 2001 1 commit
-
-
Bruce Momjian authored
tests pass.
-