- 25 3月, 2010 1 次提交
-
-
由 Alvaro Herrera 提交于
by a superuser -- "ALTER USER f RESET setting" already disallows removing such a setting. Apply the same treatment to ALTER DATABASE d RESET ALL when run by a database owner that's not superuser.
-
- 17 2月, 2010 2 次提交
-
-
由 Tom Lane 提交于
(hope I got 'em all). Per discussion, this release will be 9.0 not 8.5.
-
由 Tom Lane 提交于
In addition, add support for a "payload" string to be passed along with each notify event. This implementation should be significantly more efficient than the old one, and is also more compatible with Hot Standby usage. There is not yet any facility for HS slaves to receive notifications generated on the master, although such a thing is possible in future. Joachim Wieland, reviewed by Jeff Davis; also hacked on by me.
-
- 08 2月, 2010 1 次提交
-
-
由 Tom Lane 提交于
of shared or nailed system catalogs. This has two key benefits: * The new CLUSTER-based VACUUM FULL can be applied safely to all catalogs. * We no longer have to use an unsafe reindex-in-place approach for reindexing shared catalogs. CLUSTER on nailed catalogs now works too, although I left it disabled on shared catalogs because the resulting pg_index.indisclustered update would only be visible in one database. Since reindexing shared system catalogs is now fully transactional and crash-safe, the former special cases in REINDEX behavior have been removed; shared catalogs are treated the same as non-shared. This commit does not do anything about the recently-discussed problem of deadlocks between VACUUM FULL/CLUSTER on a system catalog and other concurrent queries; will address that in a separate patch. As a stopgap, parallel_schedule has been tweaked to run vacuum.sql by itself, to avoid such failures during the regression tests.
-
- 04 2月, 2010 1 次提交
-
-
由 Bruce Momjian 提交于
-
- 23 1月, 2010 1 次提交
-
-
由 Robert Haas 提交于
Attributes can now have options, just as relations and tablespaces do, and the reloptions code is used to parse, validate, and store them. For simplicity and because these options are not performance critical, we store them in a separate cache rather than the main relcache. Thanks to Alex Hunsaker for the review.
-
- 18 1月, 2010 1 次提交
-
-
由 Tom Lane 提交于
pg_constraint before searching pg_trigger. This allows saner handling of corner cases; in particular we now say "constraint is not deferrable" rather than "constraint does not exist" when the command is applied to a constraint that's inherently non-deferrable. Per a gripe several months ago from hubert depesz lubaczewski. To make this work without breaking user-defined constraint triggers, we have to add entries for them to pg_constraint. However, in return we can remove the pgconstrname column from pg_constraint, which represents a fairly sizable space savings. I also replaced the tgisconstraint column with tgisinternal; the old meaning of tgisconstraint can now be had by testing for nonzero tgconstraint, while there is no other way to get the old meaning of nonzero tgconstraint, namely that the trigger was internally generated rather than being user-created. In passing, fix an old misstatement in the docs and comments, namely that pg_trigger.tgdeferrable is exactly redundant with pg_constraint.condeferrable. Actually, we mark RI action triggers as nondeferrable even when they belong to a nominally deferrable FK constraint. The SET CONSTRAINTS code now relies on that instead of hard-coding a list of exception OIDs.
-
- 10 1月, 2010 1 次提交
-
-
由 Robert Haas 提交于
This should have been part of the original tablespace-options patch, but I overlooked the need to update this portion of the documentation.
-
- 02 1月, 2010 1 次提交
-
-
由 Tom Lane 提交于
to be just a minor extension of the previous patch that made "x IS NULL" indexable, because we can treat the IS NOT NULL condition as if it were "x < NULL" or "x > NULL" (depending on the index's NULLS FIRST/LAST option), just like IS NULL is treated like "x = NULL". Aside from any possible usefulness in its own right, this is an important improvement for index-optimized MAX/MIN aggregates: it is now reliably possible to get a column's min or max value cheaply, even when there are a lot of nulls cluttering the interesting end of the index.
-
- 30 12月, 2009 1 次提交
-
-
由 Tom Lane 提交于
and teach ANALYZE to compute such stats for tables that have subclasses. Per my proposal of yesterday. autovacuum still needs to be taught about running ANALYZE on parent tables when their subclasses change, but the feature is useful even without that.
-
- 17 12月, 2009 1 次提交
-
-
由 Robert Haas 提交于
Rewrite the documentation in more idiomatic English, and in the process make it somewhat more succinct. Move the discussion of specific large object privileges out of the "server-side functions" section, where it certainly doesn't belong, and into "implementation features". That might not be exactly right either, but it doesn't seem worth creating a new section for this amount of information. Fix a few spelling and layout problems, too.
-
- 11 12月, 2009 1 次提交
-
-
由 Itagaki Takahiro 提交于
A new system catalog pg_largeobject_metadata manages ownership and access privileges of large objects. KaiGai Kohei, reviewed by Jaime Casanova.
-
- 07 12月, 2009 1 次提交
-
-
由 Tom Lane 提交于
support any indexable commutative operator, not just equality. Two rows violate the exclusion constraint if "row1.col OP row2.col" is TRUE for each of the columns in the constraint. Jeff Davis, reviewed by Robert Haas
-
- 21 11月, 2009 1 次提交
-
-
由 Tom Lane 提交于
checked to determine whether the trigger should be fired. For BEFORE triggers this is mostly a matter of spec compliance; but for AFTER triggers it can provide a noticeable performance improvement, since queuing of a deferred trigger event and re-fetching of the row(s) at end of statement can be short-circuited if the trigger does not need to be fired. Takahiro Itagaki, reviewed by KaiGai Kohei.
-
- 15 10月, 2009 1 次提交
-
-
由 Tom Lane 提交于
are named in the UPDATE's SET list. Note: the schema of pg_trigger has not actually changed; we've just started to use a column that was there all along. catversion bumped anyway so that this commit is included in the history of potentially interesting changes to system catalog contents. Itagaki Takahiro
-
- 08 10月, 2009 1 次提交
-
-
由 Alvaro Herrera 提交于
Create a new catalog pg_db_role_setting where they are now stored, and better encapsulate the code that deals with settings into its realm. The old datconfig and rolconfig columns are removed. psql has gained a \drds command to display the settings. Backwards compatibility warning: while the backwards-compatible system views still have the config columns, they no longer completely represent the configuration for a user or database. Catalog version bumped.
-
- 06 10月, 2009 1 次提交
-
-
由 Tom Lane 提交于
the privileges that will be applied to subsequently-created objects. Such adjustments are always per owning role, and can be restricted to objects created in particular schemas too. A notable benefit is that users can override the traditional default privilege settings, eg, the PUBLIC EXECUTE privilege traditionally granted by default for functions. Petr Jelinek
-
- 23 9月, 2009 1 次提交
-
-
由 Tom Lane 提交于
to create a function for it. Procedural languages now have an additional entry point, namely a function to execute an inline code block. This seemed a better design than trying to hide the transient-ness of the code from the PL. As of this patch, only plpgsql has an inline handler, but probably people will soon write handlers for the other standard PLs. In passing, remove the long-dead LANCOMPILER option of CREATE LANGUAGE. Petr Jelinek
-
- 11 8月, 2009 1 次提交
-
-
由 Alvaro Herrera 提交于
-
- 04 8月, 2009 1 次提交
-
-
由 Tom Lane 提交于
already treating it as text anyway, to the point that I couldn't find anything to change except the datatype markings in catalog/*.h. The only effect that the bytea declaration had was to cause byteaout() to be invoked when pg_dump (or another client program) inspected the column value. Since pg_dump wasn't expecting that, but just treating what it got as text, the net result is that dump and reload would mangle any backslashes or non-ASCII characters in the filename string for a C-language function. That is a very long-standing bug, but given the lack of field complaints it doesn't seem worth trying to find a back-patchable fix. We'll just make this change to fix it going forward. This change will also forestall problems after the planned change to let bytea emit hex output instead of escaped characters.
-
- 03 8月, 2009 1 次提交
-
-
由 Tom Lane 提交于
Robert Haas
-
- 30 7月, 2009 1 次提交
-
-
由 Tom Lane 提交于
The current implementation fires an AFTER ROW trigger for each tuple that looks like it might be non-unique according to the index contents at the time of insertion. This works well as long as there aren't many conflicts, but won't scale to massive unique-key reassignments. Improving that case is a TODO item. Dean Rasheed
-
- 28 7月, 2009 1 次提交
-
-
由 Tom Lane 提交于
conindid is the index supporting a constraint. We can use this not only for unique/primary-key constraints, but also foreign-key constraints, which depend on the unique index that constrains the referenced columns. tgconstrindid is just copied from the constraint's conindid field, or is zero for triggers not associated with constraints. This is mainly intended as infrastructure for upcoming patches, but it has some virtue in itself, since it exposes a relationship that you formerly had to grovel in pg_depend to determine. I simplified one information_schema view accordingly. (There is a pg_dump query that could also use conindid, but I left it alone because it wasn't clear it'd get any faster.)
-
- 02 7月, 2009 1 次提交
-
-
由 Tom Lane 提交于
-
- 01 4月, 2009 1 次提交
-
-
由 Tom Lane 提交于
relations (including a temp table's indexes and toast table/index), and false for normal relations. For ease of checking, this commit just adds the column and fills it correctly --- revising the relation access machinery to use it will come separately.
-
- 06 3月, 2009 1 次提交
-
-
由 Tom Lane 提交于
amgettuple or only implement amgetbitmap, instead of the former assumption that every AM supports both APIs. Extracted with minor editorialization from Teodor's fast-GIN-insert patch; whatever becomes of that, this seems like a simple and reasonable generalization of the index AM interface spec.
-
- 24 2月, 2009 1 次提交
-
-
由 Peter Eisentraut 提交于
wrappers (similar to procedural languages). This way we don't need to retain the nearly empty libraries, and we are more free in how to implement the wrapper API in the future.
-
- 10 2月, 2009 1 次提交
-
-
由 Alvaro Herrera 提交于
per-table overrides of parameters. This removes a whole class of problems related to misusing the catalog, and perhaps more importantly, gives us pg_dump support for the parameters. Based on a patch by Euler Taveira de Oliveira, heavily reworked by me.
-
- 08 2月, 2009 1 次提交
-
-
由 Bruce Momjian 提交于
-
- 07 2月, 2009 1 次提交
-
-
由 Bruce Momjian 提交于
-
- 05 2月, 2009 1 次提交
-
-
由 Alvaro Herrera 提交于
-
- 02 2月, 2009 1 次提交
-
-
由 Peter Eisentraut 提交于
-
- 27 1月, 2009 1 次提交
-
-
由 Peter Eisentraut 提交于
-
- 23 1月, 2009 2 次提交
-
-
由 Tom Lane 提交于
Stephen Frost, with help from KaiGai Kohei and others
-
由 Peter Eisentraut 提交于
Bernd Helmle
-
- 16 1月, 2009 1 次提交
-
-
由 Heikki Linnakangas 提交于
ignore the visibility map and scan the whole table, to advance relfrozenxid.
-
- 09 1月, 2009 2 次提交
-
-
由 Bruce Momjian 提交于
-
由 Andrew Dunstan 提交于
-
- 20 12月, 2008 2 次提交
-
-
由 Tom Lane 提交于
useful yet, but I'm tired of re-merging this aspect of the window functions patch.
-
由 Peter Eisentraut 提交于
This doesn't do any remote or external things yet, but it gives modules like plproxy and dblink a standardized and future-proof system for managing their connection information. Martin Pihlak and Peter Eisentraut
-