summaryrefslogtreecommitdiff
path: root/doc/src/sgml/ref
AgeCommit message (Collapse)Author
2006-08-21Make the server track an 'XID epoch', that is, maintain higher-order bitsTom Lane
of the transaction ID counter. Nothing is done with the epoch except to store it in checkpoint records, but this provides a foundation with which add-on code can pretend that XIDs never wrap around. This is a severely trimmed and rewritten version of the xxid patch submitted by Marko Kreen. Per discussion, the epoch counter seems the only part of xxid that really needs to be in the core server.
2006-08-21Fix all known problems with pg_dump's handling of serial sequencesTom Lane
by abandoning the idea that it should say SERIAL in the dump. Instead, dump serial sequences and column defaults just like regular ones. Add a new backend command ALTER SEQUENCE OWNED BY to let pg_dump recreate the sequence-to-column dependency that was formerly created "behind the scenes" by SERIAL. This restores SERIAL to being truly "just a macro" consisting of component operations that can be stated explicitly in SQL. Furthermore, the new command allows sequence ownership to be reassigned, so that old mistakes can be cleaned up. Also, downgrade the OWNED-BY dependency from INTERNAL to AUTO, since there is no longer any very compelling argument why the sequence couldn't be dropped while keeping the column. (This forces initdb, to be sure the right kinds of dependencies are in there.) Along the way, add checks to prevent ALTER OWNER or SET SCHEMA on an owned sequence; you can now only do this indirectly by changing the owning table's owner or schema. This is an oversight in previous releases, but probably not worth back-patching.
2006-08-15Add server support for "plugin" libraries that can be used for add-on tasksTom Lane
such as debugging and performance measurement. This consists of two features: a table of "rendezvous variables" that allows separately-loaded shared libraries to communicate, and a new GUC setting "local_preload_libraries" that allows libraries to be loaded into specific sessions without explicit cooperation from the client application. To make local_preload_libraries as flexible as possible, we do not restrict its use to superusers; instead, it is restricted to load only libraries stored in $libdir/plugins/. The existing LOAD command has also been modified to allow non-superusers to LOAD libraries stored in this directory. This patch also renames the existing GUC variable preload_libraries to shared_preload_libraries (after a suggestion by Simon Riggs) and does some code refactoring in dfmgr.c to improve clarity. Korry Douglas, with a little help from Tom Lane.
2006-08-12Add INSERT/UPDATE/DELETE RETURNING, with basic docs and regression tests.Tom Lane
plpgsql support to come later. Along the way, convert execMain's SELECT INTO support into a DestReceiver, in order to eliminate some ugly special cases. Jonah Harris and Tom Lane
2006-08-03Cause ALTER TABLE to perform ALTER COLUMN DROP DEFAULT operations duringTom Lane
the DROP pass rather than the ADD_CONSTR pass. On examining the code I think this was just an oversight rather than intentional, and it seems to satisfy the principle of least surprise better than the alternative solution that was discussed. Add an example to the ref page showing how to do ALTER TYPE and update the default in one command. Per gripe from Markus Bertheau that that wasn't possible.
2006-08-02Fix documentation error: GRANT/REVOKE for roles only accept role namesTom Lane
as grantees, not PUBLIC ... and you can't say GROUP either. Noted by Brian Hurt.
2006-08-01Add pg_dump -X no-data-for-failed-tables option to suppress loading dataBruce Momjian
if table creation failed (the table already exists). Martin Pitt
2006-08-01Allow multiple -n (schema) and -t (table) pg_dump options, and add -TBruce Momjian
and -N options to exclude objects. Also support regular expressions for option object names. Greg Sabino Mullane
2006-07-31Fix confusion between COPY FROM and COPY TO, per Gavin Sharry and Arul Shaji.Alvaro Herrera
2006-07-27Aggregate functions now support multiple input arguments. I also tookTom Lane
the opportunity to treat COUNT(*) as a zero-argument aggregate instead of the old hack that equated it to COUNT(1); this is materially cleaner (no more weird ANYOID cases) and ought to be at least a tiny bit faster. Original patch by Sergey Koposov; review, documentation, simple regression tests, pg_dump and psql support by moi.
2006-07-25Remove hard-wired lists of timezone abbreviations in favor of providingTom Lane
configuration files that can be altered by a DBA. The australian_timezones GUC setting disappears, replaced by a timezone_abbreviations setting (set this to 'Australia' to get the effect of australian_timezones). The list of zone names defined by default has undergone a bit of cleanup, too. Documentation still needs some work --- in particular, should we fix Table B-4, or just get rid of it? Joachim Wieland, with some editorializing by moi.
2006-07-20Update documentation on GRANT SCEMA USAGE, again.Bruce Momjian
2006-07-19Update GRANT USAGE on schema permission description.Bruce Momjian
2006-07-12Update schema USAGE permission description.Bruce Momjian
2006-07-11Tweak fillfactor code as per my recent proposal. Fix nbtsort.c so thatTom Lane
it can handle small fillfactors for ordinary-sized index entries without failing on large ones; fix nbtinsert.c to distinguish leaf and nonleaf pages; change the minimum fillfactor to 10% for all index types.
2006-07-10Add #include code to prevent multiple inclusion.Bruce Momjian
2006-07-10Update schema GRANT USAGE description.Bruce Momjian
2006-07-04Documentation fixes for FILLFACTOR patch. Minor other editorialization.Tom Lane
2006-07-02Add FILLFACTOR to CREATE INDEX.Bruce Momjian
ITAGAKI Takahiro
2006-07-02ALTER TABLE ... ADD/DROPS INHERIT (actually INHERIT / NO INHERIT)Bruce Momjian
Open items: There were a few tangentially related issues that have come up that I think are TODOs. I'm likely to tackle one or two of these next so I'm interested in hearing feedback on them as well. . Constraints currently do not know anything about inheritance. Tom suggested adding a coninhcount and conislocal like attributes have to track their inheritance status. . Foreign key constraints currently do not get copied to new children (and therefore my code doesn't verify them). I don't think it would be hard to add them and treat them like CHECK constraints. . No constraints at all are copied to tables defined with LIKE. That makes it hard to use LIKE to define new partitions. The standard defines LIKE and specifically says it does not copy constraints. But the standard already has an option called INCLUDING DEFAULTS; we could always define a non-standard extension LIKE table INCLUDING CONSTRAINTS that gives the user the option to request a copy including constraints. . Personally, I think the whole attislocal thing is bunk. The decision about whether to drop a column from children tables or not is something that should be up to the user and trying to DWIM based on whether there was ever a local definition or the column was acquired purely through inheritance is hardly ever going to match up with user expectations. . And of course there's the whole unique and primary key constraint issue. I think to get any traction at all on this you have a prerequisite of a real partitioned table implementation where the system knows what the partition key is so it can recognize when it's a leading part of an index key. Greg Stark
2006-06-28Editorialization for the additions to the CREATE TABLE reference pageNeil Conway
made as part of the recent INCLUDING CONSTRAINTS patch. The text could stand further improvement, but this is at least a step in the right direction.
2006-06-27Add INCLUDING CONSTRAINTS to CREATE TABLE LIKE.Bruce Momjian
Greg Stark
2006-06-18Merge postmaster and postgres command into just postgres. postmasterPeter Eisentraut
symlink is kept for now for compatibility. To call single-user mode, use postgres --single.
2006-06-16docs for DROP ... IF EXISTS for the following cases:Andrew Dunstan
language, tablespace, trigger, rule, opclass, function, aggregate. operator, and cast.
2006-06-16Document issues with non-default tablespaces and pg_dumpall restores.Bruce Momjian
Backpatch documentation addition to 8.1.X.
2006-06-03Remove pg_resetxlog -r flag, feature has problems referenced here:Bruce Momjian
http://archives.postgresql.org/pgsql-hackers/2006-05/msg00002.php
2006-05-31Fix example of how to escape data in psql backslash commands.Tom Lane
2006-05-31Recommend '' for literal ', rather than \', in psql documentation.Bruce Momjian
2006-05-31Support '' for literal ' in psql single-quote strings, documentation update.Bruce Momjian
2006-05-26Support binary COPY through psql. Also improve detection of write errorsTom Lane
during COPY OUT. Andreas Pflug, some editorialization by moi.
2006-05-13Update pg_dump vesion wording.Bruce Momjian
2006-05-13Mention version portability of pg_dump.Bruce Momjian
2006-05-06Recommend more clearly custom pg_dump format over tar, buy showingBruce Momjian
custom format examples first.
2006-05-04Rethink the locking mechanisms used for CREATE/DROP/RENAME DATABASE.Tom Lane
The former approach used ExclusiveLock on pg_database, which being a cluster-wide lock meant only one of these operations could proceed at a time; worse, it also blocked all incoming connections in ReverifyMyDatabase. Now that we have LockSharedObject(), we can use locks of different types applied to databases considered as objects. This allows much more flexible management of the interlocking: two CREATE DATABASEs need not block each other, and need not block connections except to the template database being used. Similarly DROP DATABASE doesn't block unrelated operations. The locking used in flatfiles.c is also much narrower in scope than before. Per recent proposal.
2006-04-30Code review for GRANT CONNECT patch. Spell the privilege as CONNECT notTom Lane
CONNECTION, fix a number of places that were missed (eg pg_dump support), avoid executing an extra search of pg_database during startup.
2006-04-30Improve the representation of FOR UPDATE/FOR SHARE so that we canTom Lane
support both FOR UPDATE and FOR SHARE in one command, as well as both NOWAIT and normal WAIT behavior. The more general code is actually simpler and cleaner.
2006-04-30Add GRANT CONNECTION ON DATABASE, to be used in addition to pg_hba.conf.Bruce Momjian
Gevik Babakhani
2006-04-27Use schema search path to find the first matching contraint name for SETBruce Momjian
CONSTRAINT, rather than affecting all constraints in all schemas (which is what we used to do). Also allow schema specifications. Kris Jurka
2006-04-26Allow pg_resetxlog -f to reset pg_control counters using xlogBruce Momjian
information, and add a -r option to reset pg_control without affecting xlog. yuanjia lee
2006-04-25Adjust SGML spacing.Bruce Momjian
2006-04-25Back out the rest of the RESET CONNECTION patch.Tom Lane
2006-04-25Call SET varaiables "configuration_parameter"s in the documentation.Bruce Momjian
2006-04-25Change "parameter" to "varname" in the alter role and alter userBruce Momjian
documentation sections. Also update SET/RESET to be consistent. Nicolas Barbier
2006-04-25Back out RESET CONNECTION until there is more discussion.Bruce Momjian
2006-04-25Add RESET CONNECTION, to reset all aspects of a session.Bruce Momjian
Hans-J?rgen Sch?nig
2006-04-22Suggest Win32 users user E'' strings and double backslashes used forBruce Momjian
patch separators in COPY. Backpatch doubleing backslashes suggestion to 8.1.
2006-04-15Document that pg_dump -d/-D prevents invalid data from canceling theBruce Momjian
entire table load.
2006-04-15Support the syntaxTom Lane
CREATE AGGREGATE aggname (input_type) (parameter_list) along with the old syntax where the input type was named in the parameter list. This fits more naturally with the way that the aggregate is identified in DROP AGGREGATE and other utility commands; furthermore it has a natural extension to handle multiple-input aggregates, where the basetype-parameter method would get ugly. In fact, this commit fixes the grammar and all the utility commands to support multiple-input aggregates; but DefineAggregate rejects it because the executor isn't fixed yet. I didn't do anything about treating agg(*) as a zero-input aggregate instead of artificially making it a one-input aggregate, but that should be considered in combination with supporting multi-input aggregates.
2006-04-05Fix a bunch of problems with domains by making them use special input functionsTom Lane
that apply the necessary domain constraint checks immediately. This fixes cases where domain constraints went unchecked for statement parameters, PL function local variables and results, etc. We can also eliminate existing special cases for domains in places that had gotten it right, eg COPY. Also, allow domains over domains (base of a domain is another domain type). This almost worked before, but was disallowed because the original patch hadn't gotten it quite right.
2006-04-04Modify all callers of datatype input and receive functions so that if theseTom Lane
functions are not strict, they will be called (passing a NULL first parameter) during any attempt to input a NULL value of their datatype. Currently, all our input functions are strict and so this commit does not change any behavior. However, this will make it possible to build domain input functions that centralize checking of domain constraints, thereby closing numerous holes in our domain support, as per previous discussion. While at it, I took the opportunity to introduce convenience functions InputFunctionCall, OutputFunctionCall, etc to use in code that calls I/O functions. This eliminates a lot of grotty-looking casts, but the main motivation is to make it easier to grep for these places if we ever need to touch them again.