- 08 10月, 2008 4 次提交
-
-
由 Tom Lane 提交于
of referencing a WITH item that's not yet in scope according to the SQL spec's semantics. This seems to be an easy error to make, and the bare "relation doesn't exist" message doesn't lead one's mind in the correct direction to fix it.
-
由 Bruce Momjian 提交于
Jun Kuwamura
-
由 Tom Lane 提交于
-
由 Tom Lane 提交于
implementation uses an in-memory hash table, so it will poop out for very large recursive results ... but the performance characteristics of a sort-based implementation would be pretty unpleasant too.
-
- 07 10月, 2008 7 次提交
-
-
由 Michael Meskes 提交于
-
由 Heikki Linnakangas 提交于
use the old relfilenode in the new tablespace. There might be another relation in the new tablespace with the same relfilenode, so we must generate a fresh relfilenode in the new tablespace. The 8.3 patch to let deleted relation files linger as zero-length files until the next checkpoint made this more obvious: moving a relation from one table space another, and then back again, caused a collision with the lingering file. Back-patch to 8.1. The issue is present in 8.0 as well, but it doesn't seem worth fixing there, because we didn't have protection from OID collisions after OID wraparound before 8.1. Report by Guillaume Lelarge.
-
由 Tom Lane 提交于
supplies an expression that can't be coerced to the target column type. The code previously attempted to point at the target column name, which doesn't work at all in an INSERT with omitted column name list, and is also not remarkably helpful when the problem is buried somewhere in a long INSERT-multi-VALUES command. Make it point at the failed expression instead.
-
由 Bruce Momjian 提交于
-
由 Tom Lane 提交于
tuplestore: in READFILE state tuplestore_select_read_pointer must save the current file seek position in the read pointer being deactivated.
-
由 Tom Lane 提交于
get_name_for_var_field didn't have enough context to interpret a reference to a CTE query's output. Fixing this requires separate hacks for the regular deparse case (pg_get_ruledef) and for the EXPLAIN case, since the available context information is quite different. It's pretty nearly parallel to the existing code for SUBQUERY RTEs, though. Also, add code to make sure we qualify a relation name that matches a CTE name; else the CTE will mistakenly capture the reference when reloading the rule. In passing, fix a pre-existing problem with get_name_for_var_field not working on variables in targetlists of SubqueryScan plan nodes. Although latent all along, this wasn't a problem until we made EXPLAIN VERBOSE try to print targetlists. To do this, refactor the deparse_context_for_plan API so that the special case for SubqueryScan is all on ruleutils.c's side.
-
由 Tom Lane 提交于
the column alias names of the RTE referenced by the Var to the RowExpr. This is needed to allow ruleutils.c to correctly deparse FieldSelect nodes referencing such a construct. Per my recent bug report. Adding a field to RowExpr forces initdb (because of stored rules changes) so this solution is not back-patchable; which is unfortunate because 8.2 and 8.3 have this issue. But it only affects EXPLAIN for some pretty odd corner cases, so we can probably live without a solution for the back branches.
-
- 06 10月, 2008 14 次提交
-
-
由 Tom Lane 提交于
from a query level above the current ParseState.
-
由 Heikki Linnakangas 提交于
relation forks. While the file names are not visible to users, for those that do peek into the data directory, it's nice to have more descriptive names. Per Greg Stark's suggestion.
-
由 Tom Lane 提交于
-
由 Magnus Hagander 提交于
the value a parameter has at server start and will have after RESET, respectively. Greg Smith, with some modifications by me.
-
由 Heikki Linnakangas 提交于
-
由 Tom Lane 提交于
maybe isalnum is returning a value with the low-order byte all zero?
-
由 Tom Lane 提交于
-
由 Tom Lane 提交于
well as regular tables. Per discussion, this seems necessary to meet the principle of least astonishment. In passing, simplify the error messages in warnAutoRange(). Now that we have parser error position info for these errors, it doesn't seem very useful to word the error message differently depending on whether we are inside a sub-select or not.
-
由 Tom Lane 提交于
-
由 Tom Lane 提交于
machine produces zero (rather than the more usual minimum-possible-integer) for the only possible overflow case. This has been seen to occur for at least some word widths on some hardware, and it's cheap enough to check for everywhere. Per Peter's analysis of buildfarm reports. This could be back-patched, but in the absence of any gripes from the field I doubt it's worth the trouble.
-
由 Tom Lane 提交于
non-recursive term. Per an example from Dickson S. Guedes.
-
由 Tom Lane 提交于
recursive CTE that we're still in progress of analyzing. Add a similar guard to the similar code in expandRecordVariable(), and tweak regression tests to cover this case. Per report from Dickson S. Guedes.
-
由 Peter Eisentraut 提交于
-
由 Peter Eisentraut 提交于
nullvalue, nonvalue. A long time ago, these were used to implement the SQL constructs IS TRUE, etc.
-
- 05 10月, 2008 4 次提交
-
-
由 Peter Eisentraut 提交于
-
由 Peter Eisentraut 提交于
int8-exp-three-digits.out update untested, might need refinement.
-
由 Peter Eisentraut 提交于
-
由 Tom Lane 提交于
There are some unimplemented aspects: recursive queries must use UNION ALL (should allow UNION too), and we don't have SEARCH or CYCLE clauses. These might or might not get done for 8.4, but even without them it's a pretty useful feature. There are also a couple of small loose ends and definitional quibbles, which I'll send a memo about to pgsql-hackers shortly. But let's land the patch now so we can get on with other development. Yoshiyuki Asaba, with lots of help from Tatsuo Ishii and Tom Lane
-
- 04 10月, 2008 2 次提交
-
-
由 Peter Eisentraut 提交于
-
由 Tom Lane 提交于
knowledge disappears again.
-
- 03 10月, 2008 5 次提交
-
-
由 Peter Eisentraut 提交于
input formats.
-
由 Peter Eisentraut 提交于
changes. Add some documenting comments.
-
由 Peter Eisentraut 提交于
builds. It is too complicated to fix in another way for now.
-
由 Heikki Linnakangas 提交于
name of a fork ('main' or 'fsm', at the moment) to pg_relation_size() to get the size of a specific fork. Defaults to 'main', if none given. While we're at it, modify pg_relation_size to take a regclass as argument, instead of separate variants taking oid and name. This change is transparent to typical use where the table name is passed as a string literal, like pg_relation_size('table'), but will break queries like pg_relation_size(namecol), where namecol is of type name. text-type input still works, and using a non-schema-qualified table name is not very reliable anyway, so this is unlikely to break anyone's queries in practice.
-
由 Bruce Momjian 提交于
code in 8.4.
-
- 02 10月, 2008 4 次提交
-
-
由 Tom Lane 提交于
when using --enable-integer-datetimes and a non-ISO datestyle. Ron Mayer
-
由 Tom Lane 提交于
-
由 Heikki Linnakangas 提交于
large enough for block numbers higher than 2^31. The old pre-FSM-rewrite pg_freespacemap implementation got this right. While we're at it, remove some unnecessary #includes.
-
由 Heikki Linnakangas 提交于
"pg_freespacemap". Reported by hubert depesz lubaczewski.
-