aboutsummaryrefslogtreecommitdiff
path: root/src/backend
Commit message (Collapse)AuthorAge
* Prevent core dump when ExecMarkPos is called before any tuples have beenTom Lane2002-12-18
| | | | | retrieved. This cannot happen in ordinary execution, but it can happen under EvalPlanQual().
* Skip unnecessary plan-copying now that plan trees are read-only in theTom Lane2002-12-17
| | | | executor.
* To suppress memory leakage in long-lived Lists, lremove() should pfreeTom Lane2002-12-17
| | | | | the cons cell it's deleting from the list. Do this, and fix a few callers that were bogusly assuming it wouldn't free the cons cell.
* Fix GEQO to work again in CVS tip, by being more careful about memoryTom Lane2002-12-16
| | | | | | | | | | | allocation in best_inner_indexscan(). While at it, simplify GEQO's interface to the main planner --- make_join_rel() offers exactly the API it really wants, whereas calling make_rels_by_clause_joins() and make_rels_by_clauseless_joins() required jumping through hoops. Rewrite gimme_tree for clarity (sometimes iteration is much better than recursion), and approximately halve GEQO's runtime by recognizing that tours of the forms (a,b,c,d,...) and (b,a,c,d,...) are equivalent because of symmetry in make_join_rel().
* Fix ALTER TABLE ADD COLUMN to disallow the same column types that areTom Lane2002-12-16
| | | | | | | | disallowed by CREATE TABLE (eg, pseudo-types); also disallow these types from being introduced by the range-function syntax. While at it, allow CREATE TABLE to create zero-column tables, per recent pghackers discussion. I am back-patching this into 7.3 since failure to disallow pseudo-types is arguably a security hole.
* Code review for palloc0 patch --- avoid dangerous and unnecessaryTom Lane2002-12-16
| | | | | | | | practice of evaluating MemSet's arguments multiple times, except for the special case of newNode(), where we can assume the argument is a constant sizeof() operator. Also, add GetMemoryChunkContext() to mcxt.c's API, in preparation for fixing recent GEQO breakage.
* Tweak default memory context allocation policy so that a context is notTom Lane2002-12-15
| | | | | | | | | given any malloc block until something is first allocated in it; but thereafter, MemoryContextReset won't release that first malloc block. This preserves the quick-reset property of the original policy, without forcing 8K to be allocated to every context whether any of it is ever used or not. Also, remove some more no-longer-needed explicit freeing during ExecEndPlan.
* Revise executor APIs so that all per-query state structure is built inTom Lane2002-12-15
| | | | | | a per-query memory context created by CreateExecutorState --- and destroyed by FreeExecutorState. This provides a final solution to the longstanding problem of memory leaked by various ExecEndNode calls.
* The actual segfault was caused by a double pfree(), but ISTM thatBruce Momjian2002-12-14
| | | | | | | | failing to find pg_hba.conf should be a fatal error anyway, so I increased the priority of the elog() from LOG to FATAL and refactored the code a little bit. Neil Conway
* Ok, I think I've gotten this figured out now. I saw this comment inBruce Momjian2002-12-14
| | | | | | | pqcomm.c, switched the ERROR logs to COMMERROR logs and it all works. I've attached a patch to be-secure.c that fixes all my problems. Nathan Mueller
* Initial version of the SQL information schemaPeter Eisentraut2002-12-14
|
* Clean up plantree representation of SubPlan-s --- SubLink does not appearTom Lane2002-12-14
| | | | | | | | in the planned representation of a subplan at all any more, only SubPlan. This means subselect.c doesn't scribble on its input anymore, which seems like a good thing; and there are no longer three different possible interpretations of a SubLink. Simplify node naming and improve comments in primnodes.h. No change to stored rules, though.
* Phase 3 of read-only-plans project: ExecInitExpr now builds expressionTom Lane2002-12-13
| | | | | | | execution state trees, and ExecEvalExpr takes an expression state tree not an expression plan tree. The plan tree is now read-only as far as the executor is concerned. Next step is to begin actually exploiting this property.
* Adjust costsize calculations to avoid introducing unnecessary roundoffTom Lane2002-12-13
| | | | | error. This seems to explain the differing choice of plan that's been causing geometry regress test to fail for the last few days.
* Remove strerror output for openssl SYSCALL error check.Bruce Momjian2002-12-13
|
* Check SSL_get_error() value SSL_ERROR_SYSCALL to see if SSL_read()Bruce Momjian2002-12-12
| | | | | | returned -1, per SSL_get_error() documentation. Nathan Mueller
* TODO marked as done:Bruce Momjian2002-12-12
| | | | | | | | | | | | | | | | | | | | | * Add schema, cast, and conversion backslash commands to psql I had to create a new publically available function, pg_conversion_is_visible, as it seemed to be missing from the catalogs. This required me to do no small amount of hacking around in namespace.c I have updated the \? help and sgml docs. \dc - list conversions [PATTERN] \dC - list casts \dn list schemas I didn't support patterns with casts as there's nothing obvious to match against. Catalog version incremented --- initdb required. Christopher Kings-Lynne
* Preliminary code review for domain CHECK constraints patch: add documentation,Tom Lane2002-12-12
| | | | | | | | make VALUE a non-reserved word again, use less invasive method of passing ConstraintTestValue into transformExpr, fix problems with nested constraint testing, do correct thing with NULL result from a constraint expression, remove memory leak. Domain checks still need much more work if we are going to allow ALTER DOMAIN, however.
* Guard against overrunning CTZName buffer when TZ is bogus.Tom Lane2002-12-12
|
* Phase 2 of read-only-plans project: restructure expression-tree nodesTom Lane2002-12-12
| | | | | | | | | so that all executable expression nodes inherit from a common supertype Expr. This is somewhat of an exercise in code purity rather than any real functional advance, but getting rid of the extra Oper or Func node formerly used in each operator or function call should provide at least a little space and speed improvement. initdb forced by changes in stored-rules representation.
* Fix line count error reporting in config files, like pg_hba.conf, perBruce Momjian2002-12-11
| | | | | | report from Oliver Elphick. Backpatch to 7.3.
* Some quick fixes for ALTER DOMAIN patch. It still needs a lot of work,Tom Lane2002-12-09
| | | | but at least it doesn't generate gcc warnings.
* Fix Latin9/Unicode conversion by selecting the right table.Peter Eisentraut2002-12-09
|
* Explain's code for showing quals of SubqueryScan nodes has been brokenTom Lane2002-12-06
| | | | all along; not noticed till now. It's a scan not an upper qual ...
* Attached are two small patches to expose md5 as a user function -- includingBruce Momjian2002-12-06
| | | | | | | | documentation and regression test mods. It seemed small and unobtrusive enough to not require a specific proposal on the hackers list -- but if not, let me know and I'll make a pitch. Otherwise, if there are no objections please apply. Joe Conway
* Re-addd Rod's ALTER DOMAIN patch.Bruce Momjian2002-12-06
|
* Back out V6 code, caused postmaster startup failure.Bruce Momjian2002-12-06
|
* Add missing v6utils file.Bruce Momjian2002-12-06
|
* Updated IPv6 patch to fix netmask.Bruce Momjian2002-12-06
|
* We have just finished porting the old KAME IPv6 patch over toBruce Momjian2002-12-06
| | | | | | | | | | | postgresql version 7.3, but yea... this patch adds full IPv6 support to postgres. I've tested it out on 7.2.3 and has been running perfectly stable. CREDITS: The KAME Project (Initial patch) Nigel Kukard <nkukard@lbsd.net> Johan Jordaan <johanj@lando.co.za>
* Back out ALTER DOMAIN patch until missing file appears.Bruce Momjian2002-12-06
|
* ALTER DOMAIN .. SET / DROP NOT NULLBruce Momjian2002-12-06
| | | | | | | | | | ALTER DOMAIN .. SET / DROP DEFAULT ALTER DOMAIN .. ADD / DROP CONSTRAINT New files: - doc/src/sgml/ref/alter_domain.sgml Rod Taylor
* As far as I figured from the source code this function only deals withBruce Momjian2002-12-05
| | | | | | | | cleaning up locale names and nothing else. Since all the locale names are in plain ASCII I think it will be safe to use ASCII-only lower-case conversion. Nicolai Tufar
* localbuf.c must be able to do blind writes.Tom Lane2002-12-05
|
* Avoid pulling up sublinks from a subselect's targetlist. Works aroundTom Lane2002-12-05
| | | | | | problems that occur if sublink is referenced via a join alias variable. Perhaps this can be improved later, but a simple and safe fix is needed for 7.3.1.
* Clearify variables names so it is clear which variable is theBruce Momjian2002-12-05
| | | | client-supplied password and which is from pg_shadow.
* Allow 'password' encryption even when pg_shadow has MD5 passwords, perBruce Momjian2002-12-05
| | | | | | report from Terry Yapt and Hiroshi. Backpatch to 7.3.
* Phase 1 of read-only-plans project: cause executor state nodes to pointTom Lane2002-12-05
| | | | | | | | | | to plan nodes, not vice-versa. All executor state nodes now inherit from struct PlanState. Copying of plan trees has been simplified by not storing a list of SubPlans in Plan nodes (eliminating duplicate links). The executor still needs such a list, but it can build it during ExecutorStart since it has to scan the plan tree anyway. No initdb forced since no stored-on-disk structures changed, but you will need a full recompile because of node-numbering changes.
* More cleanup of userid to be AclId rather than Oid.Bruce Momjian2002-12-05
|
* Repair oversight in recent change of dependency extraction code: whenTom Lane2002-12-04
| | | | | recursing to handle a join alias var, the context had better be set to be appropriate to the join var's query level. Per report from Hristo Neshev.
* Make usesysid consistently int4, not oid.Bruce Momjian2002-12-04
| | | | | | Catalog patch from Alvaro Herrera for same. catversion updated. initdb required.
* Deal with cases where getpeereid _and_ another creditial method isBruce Momjian2002-12-03
| | | | supported.
* Add OpenBSD local indent credentials, from William Ahern.Bruce Momjian2002-12-03
|
* Repair core dump when trying to delete an entry from an already-NULLTom Lane2002-12-02
| | | | datconfig or useconfig field. Per report from Dustin Sallings.
* Teach planner to expand sufficiently simple SQL-language functionsTom Lane2002-12-01
| | | | | | | | ('SELECT expression') inline, like macros, during the constant-folding phase of planning. The actual expansion is not difficult, but checking that we're not changing the semantics of the call turns out to be more subtle than one might think; in particular must pay attention to permissions issues, strictness, and volatility.
* Fix ExecMakeTableFunctionResult() to work with generic expressions asTom Lane2002-12-01
| | | | | | well as function calls. This is needed for cases where the planner has constant-folded or inlined the original function call. Possibly we should back-patch this change into 7.3 branch as well.
* Run COPY OUT in a temporary memory context that's reset once per row,Tom Lane2002-12-01
| | | | | | | and eliminate its manual pfree() calls. This solves the encoding-conversion bug recently reported, and should be faster and more robust than the original coding anyway. For example, we are no longer at risk if datatype output routines leak memory or choose to return a constant string.
* Code review for IS DISTINCT FROM patch. Fix incorrect constant-foldingTom Lane2002-11-30
| | | | | | logic, dissuade planner from thinking that 'x IS DISTINCT FROM 42' may be optimized into 'x = 42' (!!), cause dependency on = operator to be recorded correctly, minor other improvements.
* Missed one place that can be simplified after recent Param/Const cleanup.Tom Lane2002-11-30
|
* Be more realistic about plans involving Materialize nodes: take theirTom Lane2002-11-30
| | | | cost into account while planning.