- 19 5月, 2001 9 次提交
-
-
由 Peter Eisentraut 提交于
initialized FmgrInfo structs linger after elog.
-
由 Peter Eisentraut 提交于
FUNCTION command. Guard against trying to load a directory. Update documentation some.
-
由 Bruce Momjian 提交于
-
由 Bruce Momjian 提交于
-
由 Bruce Momjian 提交于
/* * parse function * This code is confusing because the database can accept * relation.column, column.function, or relation.column.function. * In these cases, funcname is the last parameter, and fargs are * the rest. * * It can also be called as func(col) or func(col,col). * In this case, Funcname is the part before parens, and fargs * are the part in parens. * */ Node * ParseFuncOrColumn(ParseState *pstate, char *funcname, List *fargs, bool agg_star, bool agg_distinct, int precedence)
-
由 Bruce Momjian 提交于
-
由 Bruce Momjian 提交于
-
由 Bruce Momjian 提交于
-
由 Tom Lane 提交于
-
- 18 5月, 2001 1 次提交
-
-
由 Peter Eisentraut 提交于
library extension.
-
- 17 5月, 2001 6 次提交
-
-
由 Bruce Momjian 提交于
-
由 Bruce Momjian 提交于
-
由 Bruce Momjian 提交于
-
由 Tom Lane 提交于
library code. Tweak progress messages to include elapsed real time, not only CPU time.
-
由 Bruce Momjian 提交于
-
由 Tom Lane 提交于
PageGetFreeSpace() was being called while not holding the buffer lock, which not only could yield a garbage answer, but even if it's the right answer there might be less space available after we reacquire the buffer lock. Also repair potential deadlock introduced by my recent performance improvement in RelationGetBufferForTuple(): it was possible for two heap_updates to try to lock two buffers in opposite orders. The fix creates a global rule that buffers of a single heap relation should be locked in decreasing block number order. Currently, this only applies to heap_update; VACUUM can get away with ignoring the rule since it holds exclusive lock on the whole relation anyway. However, if we try to implement a VACUUM that can run in parallel with other transactions, VACUUM will also have to obey the lock order rule.
-
- 16 5月, 2001 2 次提交
-
-
由 Peter Eisentraut 提交于
-
由 Tom Lane 提交于
type never scans a relation directly, it can't be an EPQ target. Explicitly drop subplan's tuple table to ensure we have no buffer pin leaks.
-
- 15 5月, 2001 11 次提交
-
-
由 Bruce Momjian 提交于
with many NULLs ( inserting of NULL into indexed field cause ERROR: MemoryContextAlloc: invalid request size) As a workaround 'vacuum analyze' could be used. This patch resolves the problem, please upply to 7.1.1 sources and current cvs tree. Oleg Bartunov
-
由 Bruce Momjian 提交于
-
由 Bruce Momjian 提交于
Re-add pg_index.indisclustered in a minimalist way. Also fix BSDi dynamic linker change. #include must be before #ifdef test.
-
由 Tom Lane 提交于
-
由 Tom Lane 提交于
trees (mostly my fault). Repair. Also fix long-standing bug in ExecReplace: after recomputing a concurrently updated tuple, we must recheck constraints. Make EvalPlanQual leak memory with somewhat less enthusiasm than before, although plugging leaks fully will require more changes than I care to risk in a dot-release.
-
由 Bruce Momjian 提交于
-
由 Bruce Momjian 提交于
-
由 Bruce Momjian 提交于
-
由 Peter Eisentraut 提交于
-
由 Bruce Momjian 提交于
forced.
-
由 Tom Lane 提交于
for relations on the nullable side of an OUTER JOIN. For now I think we'd better refuse such queries.
-
- 13 5月, 2001 1 次提交
-
-
由 Tom Lane 提交于
when we need to move to a new page; as long as we can insert the new tuple on the same page as before, we only need LockBuffer and not the expensive stuff. Also, twiddle bufmgr interfaces to avoid redundant lseeks in RelationGetBufferForTuple and BufferAlloc. Successive inserts now require one lseek per page added, rather than one per tuple with several additional ones at each page boundary as happened before. Lock contention when multiple backends are inserting in same table is also greatly reduced.
-
- 12 5月, 2001 1 次提交
-
-
由 Peter Eisentraut 提交于
-
- 11 5月, 2001 1 次提交
-
-
由 Tom Lane 提交于
not being consulted anywhere, so remove it and remove the _mdnblocks() calls that were used to set it. Change smgrextend interface to pass in the target block number (ie, current file length) --- the caller always knows this already, having already done smgrnblocks(), so it's silly to do it over again inside mdextend. Net result: extension of a file now takes one lseek(SEEK_END) and a write(), not three lseeks and a write.
-
- 10 5月, 2001 5 次提交
-
-
由 Tom Lane 提交于
between index order and table order.
-
由 Bruce Momjian 提交于
constraint names. > > A reasonable interpretation of DROP CONSTRAINT "foo" is to drop *all* > > constraints named "foo" on the target table. > > Then it should probably be a good thing to avoid the automatic > generation of > duplicate names? I might take a look at that, actually... > Christopher Kings-Lynne
-
由 Bruce Momjian 提交于
in referencing and referenced columns of an fk constraint aren't comparable using '=' at constraint definition time rather than insert/update time. Stephan Szabo
-
由 Bruce Momjian 提交于
that the original code would consider things like UNIX domain sockets are regular files. Gavin Sherry
-
由 Peter Eisentraut 提交于
-
- 09 5月, 2001 3 次提交
-
-
由 Tom Lane 提交于
collected by ANALYZE. Also, add some modest amount of intelligence to guesses that are used for varlena columns in the absence of any ANALYZE statistics. The 'width' reported by EXPLAIN is finally something less than totally bogus for varlena columns ... and, in consequence, hashjoin estimating should be a little better ...
-
由 Peter Eisentraut 提交于
-
由 Tom Lane 提交于
to their children, leading to misbehavior if they had any children that paid attention to chgParam (most plan node types don't). Append's bug has been there a long time, but nobody had noticed because it used to be difficult to create a query where an Append would be used below the top level of a plan; so there were never any parameters getting passed down. SubqueryScan is new in 7.1 ... and I'd modeled its behavior on Append :-(
-