- 27 9月, 2013 1 次提交
-
-
由 Andrew Dunstan 提交于
The behaviour in json_populate_record() and json_populate_recordset() was changed during development but the docs were not.
-
- 04 9月, 2013 3 次提交
-
-
由 Bruce Momjian 提交于
-
由 Bruce Momjian 提交于
per suggestion from Francisco Olart
- 21 8月, 2013 1 次提交
-
-
由 Bruce Momjian 提交于
Per suggestion from Vik Fearing
-
- 15 8月, 2013 1 次提交
-
-
由 Bruce Momjian 提交于
This syntax is supported by the parser, but is non-standard. _Not_ backpatched to 9.3 in case we change our minds.
-
- 10 8月, 2013 2 次提交
-
-
由 Bruce Momjian 提交于
(Yes, there was no UTC back then, but we compute it that way.) Backpatch to 9.3.
-
由 Bruce Momjian 提交于
Backpatch to 9.3. Per request from Marc Dahn
-
- 29 7月, 2013 1 次提交
-
-
由 Greg Stark 提交于
Author: Andrew Gierth, David Fetter Reviewers: Dean Rasheed, Jeevan Chalke, Stephen Frost
-
- 23 7月, 2013 2 次提交
-
-
由 Peter Eisentraut 提交于
-
由 Alvaro Herrera 提交于
Also, tweak wording in comments (per Andres) and documentation (myself) to point out that it's the database's default tablespace that can be passed as 0, not DEFAULTTABLESPACE_OID. Robert Haas noticed the bug in the code, but didn't update the accompanying prose.
-
- 22 7月, 2013 1 次提交
-
-
由 Robert Haas 提交于
Future patches are expected to introduce logical replication that works by decoding WAL. WAL contains relfilenodes rather than relation OIDs, so this infrastructure will be needed to find the relation OID based on WAL contents. If logical replication does not make it into this release, we probably should consider reverting this, since it will add some overhead to DDL operations that create new relations. One additional index insert per pg_class row is not a large overhead, but it's more than zero. Another way of meeting the needs of logical replication would be to the relation OID to WAL, but that would burden DML operations, not only DDL. Andres Freund, with some changes by me. Design review, in earlier versions, by Álvaro Herrera.
-
- 19 7月, 2013 1 次提交
-
-
由 Robert Haas 提交于
David Christensen
-
- 02 7月, 2013 1 次提交
-
-
由 Bruce Momjian 提交于
Add ability for to_char() to output the timezone's UTC offset (OF). We already have the ability to return the timezone abbeviation (TZ/tz). Per request from Andrew Dunstan
-
- 27 6月, 2013 2 次提交
-
-
由 Tom Lane 提交于
Adjust the wording in the first para of "Sequence Manipulation Functions" so that neither of the link phrases in it break across line boundaries, in either A4- or US-page-size PDF output. This fixes a reported build failure for the 9.3beta2 A4 PDF docs, and future-proofs this particular para against causing similar problems in future. (Perhaps somebody will fix this issue in the SGML/TeX documentation tool chain someday, but I'm not holding my breath.) Back-patch to all supported branches, since the same problem could rise up to bite us in future updates if anyone changes anything earlier than this in func.sgml.
-
由 Noah Misch 提交于
Back-patch to all supported versions. Laurenz Albe
-
- 13 6月, 2013 1 次提交
-
-
由 Andrew Dunstan 提交于
Per discussion on -hackers. We treat Unicode escapes when unescaping them similarly to the way we treat them in PostgreSQL string literals. Escapes in the ASCII range are always accepted, no matter what the database encoding. Escapes for higher code points are only processed in UTF8 databases, and attempts to process them in other databases will result in an error. \u0000 is never unescaped, since it would result in an impermissible null byte.
-
- 08 6月, 2013 1 次提交
-
-
由 Andrew Dunstan 提交于
In 9.2, Unicode escape sequences are not analysed at all other than to make sure that they are in the form \uXXXX. But in 9.3 many of the new operators and functions try to turn JSON text values into text in the server encoding, and this includes de-escaping Unicode escape sequences. This processing had not taken into account the possibility that this might contain a surrogate pair to designate a character outside the BMP. That is now handled correctly. This also enforces correct use of surrogate pairs, something that is not done by the type's input routines. This fact is noted in the docs.
-
- 21 5月, 2013 1 次提交
-
-
由 Peter Eisentraut 提交于
-
- 17 5月, 2013 1 次提交
-
-
由 Tom Lane 提交于
If we're going to quote a well-known pangram, we should quote it accurately. Per gripe from Thom Brown.
-
- 07 5月, 2013 1 次提交
-
-
由 Tom Lane 提交于
Previously this state was represented by whether the view's disk file had zero or nonzero size, which is problematic for numerous reasons, since it's breaking a fundamental assumption about heap storage. This was done to allow unlogged matviews to revert to unpopulated status after a crash despite our lack of any ability to update catalog entries post-crash. However, this poses enough risk of future problems that it seems better to not support unlogged matviews until we can find another way. Accordingly, revert that choice as well as a number of existing kluges forced by it in favor of creating a pg_class.relispopulated flag column.
-
- 04 4月, 2013 1 次提交
-
-
由 Andrew Dunstan 提交于
Dickson S. Guedes
-
- 30 3月, 2013 3 次提交
-
-
由 Bruce Momjian 提交于
-
由 Andrew Dunstan 提交于
-
由 Andrew Dunstan 提交于
The JSON parser is converted into a recursive descent parser, and exposed for use by other modules such as extensions. The API provides hooks for all the significant parser event such as the beginning and end of objects and arrays, and providing functions to handle these hooks allows for fairly simple construction of a wide variety of JSON processing functions. A set of new basic processing functions and operators is also added, which use this API, including operations to extract array elements, object fields, get the length of arrays and the set of keys of a field, deconstruct an object into a set of key/value pairs, and create records from JSON objects and arrays of objects. Catalog version bumped. Andrew Dunstan, with some documentation assistance from Merlin Moncure.
-
- 29 3月, 2013 2 次提交
-
-
由 Tom Lane 提交于
I changed this in commit fd15dba5, but missed the fact that the SGML documentation of the function specified exactly what it did. Well, one of the two places where it's specified documented that --- probably I looked at the other place and thought nothing needed to be done. Sync the two places where encode() and decode() are described.
-
由 Alvaro Herrera 提交于
This event takes place just before ddl_command_end, and is fired if and only if at least one object has been dropped by the command. (For instance, DROP TABLE IF EXISTS of a table that does not in fact exist will not lead to such a trigger firing). Commands that drop multiple objects (such as DROP SCHEMA or DROP OWNED BY) will cause a single event to fire. Some firings might be surprising, such as ALTER TABLE DROP COLUMN. The trigger is fired after the drop has taken place, because that has been deemed the safest design, to avoid exposing possibly-inconsistent internal state (system catalogs as well as current transaction) to the user function code. This means that careful tracking of object identification is required during the object removal phase. Like other currently existing events, there is support for tag filtering. To support the new event, add a new pg_event_trigger_dropped_objects() set-returning function, which returns a set of rows comprising the objects affected by the command. This is to be used within the user function code, and is mostly modelled after the recently introduced pg_identify_object() function. Catalog version bumped due to the new function. Dimitri Fontaine and Álvaro Herrera Review by Robert Haas, Tom Lane
-
- 21 3月, 2013 1 次提交
-
-
由 Alvaro Herrera 提交于
Introduce pg_identify_object(oid,oid,int4), which is similar in spirit to pg_describe_object but instead produces a row of machine-readable information to uniquely identify the given object, without resorting to OIDs or other internal representation. This is intended to be used in the event trigger implementation, to report objects being operated on; but it has usefulness of its own. Catalog version bumped because of the new function.
-
- 19 3月, 2013 1 次提交
-
-
由 Tom Lane 提交于
The docs showed that early-January dates can be considered part of the previous year for week-counting purposes, but failed to say explicitly that late-December dates can also be considered part of the next year. Fix that, and add a cross-reference to the "isoyear" field. Per bug #7967 from Pawel Kobylak.
-
- 15 3月, 2013 1 次提交
-
-
由 Tom Lane 提交于
This change adds some more standard sprintf() functionality to format(). Pavel Stehule, reviewed by Dean Rasheed and Kyotaro Horiguchi
-
- 11 3月, 2013 1 次提交
-
-
由 Andrew Dunstan 提交于
This adds the following: json_agg(anyrecord) -> json to_json(any) -> json hstore_to_json(hstore) -> json (also used as a cast) hstore_to_json_loose(hstore) -> json The last provides heuristic treatment of numbers and booleans. Also, in json generation, if any non-builtin type has a cast to json, that function is used instead of the type's output function. Andrew Dunstan, reviewed by Steve Singer. Catalog version bumped.
-
- 04 3月, 2013 1 次提交
-
-
由 Kevin Grittner 提交于
A materialized view has a rule just like a view and a heap and other physical properties like a table. The rule is only used to populate the table, references in queries refer to the materialized data. This is a minimal implementation, but should still be useful in many cases. Currently data is only populated "on demand" by the CREATE MATERIALIZED VIEW and REFRESH MATERIALIZED VIEW statements. It is expected that future releases will add incremental updates with various timings, and that a more refined concept of defining what is "fresh" data will be developed. At some point it may even be possible to have queries use a materialized in place of references to underlying tables, but that requires the other above-mentioned features to be working first. Much of the documentation work by Robert Haas. Review by Noah Misch, Thom Brown, Robert Haas, Marko Tiikkaja Security review by KaiGai Kohei, with a decision on how best to implement sepgsql still pending.
-
- 04 2月, 2013 1 次提交
-
-
由 Tom Lane 提交于
This patch changes pg_get_viewdef() and allied functions so that PRETTY_INDENT processing is always enabled. Per discussion, only the PRETTY_PAREN processing (that is, stripping of "unnecessary" parentheses) poses any real forward-compatibility risk, so we may as well make dump output look as nice as we safely can. Also, set the default wrap length to zero (i.e, wrap after each SELECT or FROM list item), since there's no very principled argument for the former default of 80-column wrapping, and most people seem to agree this way looks better. Marko Tiikkaja, reviewed by Jeevan Chalke, further hacking by Tom Lane
-
- 02 2月, 2013 1 次提交
-
-
由 Peter Eisentraut 提交于
-
- 25 1月, 2013 1 次提交
-
-
由 Tom Lane 提交于
Previously, the VARIADIC labeling was effectively ignored, but now these functions act as though the array elements had all been given as separate arguments. Pavel Stehule
-
- 25 12月, 2012 1 次提交
-
-
由 Tom Lane 提交于
Code review for commit 2f582f76: don't use a static variable for what ought to be a deparse_context field, fix non-multibyte-safe test for spaces, avoid useless and potentially O(N^2) (though admittedly with a very small constant) calculations of wrap positions when we aren't going to wrap.
-
- 14 12月, 2012 1 次提交
-
-
由 Peter Eisentraut 提交于
Karl O. Pinc
-
- 04 12月, 2012 1 次提交
-
-
由 Tom Lane 提交于
Obviously, this returns type "path", but somebody made a copy-and-pasteo long ago. Dagfinn Ilmari Mannsåker
-
- 01 9月, 2012 1 次提交
-
-
由 Tom Lane 提交于
Extend xfunc.sgml's discussion of set-returning functions to show an example of using LATERAL, and recommend that over putting SRFs in the targetlist. In passing, reword func.sgml's section on set-returning functions so that it doesn't claim that the functions listed therein are all the built-in set-returning functions. That hasn't been true for a long time, and trying to make it so doesn't seem like it would be an improvement. (Perhaps we should rename that section?) Both per suggestions from Merlin Moncure.
-
- 23 8月, 2012 1 次提交
-
-
由 Tom Lane 提交于
A very large number of small improvements ...
-