aboutsummaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAge
...
* 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.
* Document get/set bit/byte functions.Bruce Momjian2002-12-05
|
* More cleanup of userid to be AclId rather than Oid.Bruce Momjian2002-12-05
|
* changed sort of column names to sort by attnum, not attnameDave Cramer2002-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.
* Stamp minor version numbers for 7.4 release.Bruce Momjian2002-12-04
|
* Remove typprtlen from getdescr() as it is not available in 7.3. Return -1 forD'Arcy J.M. Cain2002-12-04
| | | | that field so that existing programs don't break.
* 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.
* Fix pg_dump failure against 7.1 or older servers, perTom Lane2002-12-01
| | | | report from Philip Warner.
* 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.
* Upgrade planner and executor to allow multiple hash keys for a hash join,Tom Lane2002-11-30
| | | | | | instead of only one. This should speed up planning (only one hash path to consider for a given pair of relations) as well as allow more effective hashing, when there are multiple hashable joinclauses.
* Tighten selection of equality and ordering operators for groupingTom Lane2002-11-29
| | | | | | | operations: make sure we use operators that are compatible, as determined by a mergejoin link in pg_operator. Also, add code to planner to ensure we don't try to use hashed grouping when the grouping operators aren't marked hashable.
* Repair prehistoric logic error in lseg_eq and lseg_ne.Tom Lane2002-11-29
|
* Suppress compiler warning from newer gcc.Tom Lane2002-11-29
|
* This patch fixes two tiny memory leaks in pg_dump and two in pg_dumpall.Bruce Momjian2002-11-29
| | | | Neil Conway
* Improve some comments.Tom Lane2002-11-27
|
* Synced parser with backendMichael Meskes2002-11-27
|
* Add -cmdTuples to tcl interface.Bruce Momjian2002-11-26
|
* Use Params, rather than run-time-modified Const nodes, to handleTom Lane2002-11-26
| | | | | | | sublink results and COPY's domain constraint checking. A Const that isn't really constant is just a Bad Idea(tm). Remove hacks in parse_coerce and other places that were needed because of the former klugery.
* Guard against 0 length string encoding conversion case.Tatsuo Ishii2002-11-26
|
* Remove check for pg_group file as part of initdb -W password assignmentBruce Momjian2002-11-25
| | | | --- not needed.
* Remove unused constisset and constiscast fields of Const nodes. CleanTom Lane2002-11-25
| | | | up code and documentation associated with Param nodes.
* Restructure outfuncs and readfuncs to use macros in the same style asTom Lane2002-11-25
| | | | | | | | just done for copyfuncs/equalfuncs. Read functions in particular get a lot shorter than before, and it's much easier to compare an out function with the corresponding read function to make sure they agree. initdb forced due to small changes in nodestring format (regularizing a few cases that were formerly idiosyncratic).
* Un-break triggers declared for INSERT OR DELETE OR UPDATE. This workedTom Lane2002-11-25
| | | | | okay in 7.3, so I think it must have been busted in the recent triggers patch.
* Restructure the code in copyfuncs and equalfuncs to put much heavierTom Lane2002-11-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | reliance on macros, in hopes of eliminating silly typos (like copying to the wrong field) and just generally making it easier to see the forest instead of the trees. As an example, here is the new code for A_Indices: static A_Indices * _copyAIndices(A_Indices *from) { A_Indices *newnode = makeNode(A_Indices); COPY_NODE_FIELD(lidx); COPY_NODE_FIELD(uidx); return newnode; } static bool _equalAIndices(A_Indices *a, A_Indices *b) { COMPARE_NODE_FIELD(lidx); COMPARE_NODE_FIELD(uidx); return true; } I plan to redo outfuncs/readfuncs in a similar style, but am committing what I've got.
* I'm sending you a small patch to pgdb.py module. ThisD'Arcy J.M. Cain2002-11-25
| | | | | | | | | | | | | | raises pgdb.DatabaseError when any of the fetch* methods was invoked but previous call to execute* did not produce any result set or no call was issued yet. Also, raises pgdb.NotSupportedError when .nextset() is invoked, instead of NameError. This behaviour complies with DB-API 2.0. Thanks for your work! Timur Irmatov.
* Change the pkey method so that the caller can optionally set the dictionaryD'Arcy J.M. Cain2002-11-25
| | | | | | | | | used for the primary key lookup. This will prevent a database lookup for each connection object that gets created. This could be a significant optimization on a busy system. Similarly, the get_attnames method allows for the attributes dictionary to be installed directly.
* Change the debug variable to allow better control by the caller over howD'Arcy J.M. Cain2002-11-25
| | | | | | | | | | | | | debug output is managed. The user can continue to use the current method of passing a formatting string to have a replacement done and output will be sent to the standard output exactly as it did before. In addition they can set it to a file object, sys.stderr for example, and the query string will be printed to it. Thay can also set it to a method (function) and the query string will be passed to that method giving them the maximum flexibility to do whatever they want with the query string. I will be working with the PyGreSQL documentation shortly and at that time will properly document this feature.
* Restructure planning of nestloop inner indexscans so that the set of usableTom Lane2002-11-24
| | | | | | | | | | | joinclauses is determined accurately for each join. Formerly, the code only considered joinclauses that used all of the rels from the outer side of the join; thus for example FROM (a CROSS JOIN b) JOIN c ON (c.f1 = a.x AND c.f2 = b.y) could not exploit a two-column index on c(f1,f2), since neither of the qual clauses would be in the joininfo list it looked in. The new code does this correctly, and also is able to eliminate redundant clauses, thus fixing the problem noted 24-Oct-02 by Hans-Jürgen Schönig.
* Fix regression test breakage from triggers patch.Tom Lane2002-11-23
|
* Fix compile warnings from truncate patch.Tom Lane2002-11-23
|
* Update regression for new patches. Bump up catversion.Bruce Momjian2002-11-23
|
* Heres a patch which will create the sql_help.h file on Win32 if itBruce Momjian2002-11-23
| | | | | | | doesn't already exist using an installed copy of perl. I've tested it using perl v5.6.1 from ActiveState and all appears to work. Al Sutton
* Transaction safe TruncateBruce Momjian2002-11-23
| | | | Rod Taylor
* This patch implements FOR EACH STATEMENT triggers, per my email toBruce Momjian2002-11-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | -hackers a couple days ago. Notes/caveats: - added regression tests for the new functionality, all regression tests pass on my machine - added pg_dump support - updated PL/PgSQL to support per-statement triggers; didn't look at the other procedural languages. - there's (even) more code duplication in trigger.c than there was previously. Any suggestions on how to refactor the ExecXXXTriggers() functions to reuse more code would be welcome -- I took a brief look at it, but couldn't see an easy way to do it (there are several subtly-different versions of the code in question) - updated the documentation. I also took the liberty of removing a big chunk of duplicated syntax documentation in the Programmer's Guide on triggers, and moving that information to the CREATE TRIGGER reference page. - I also included some spelling fixes and similar small cleanups I noticed while making the changes. If you'd like me to split those into a separate patch, let me know. Neil Conway
* Redesign internal logic of nodeLimit so that it does not need to fetchTom Lane2002-11-22
| | | | | | one more row from the subplan than the COUNT would appear to require. This costs a little more logic but a number of people have complained about the old implementation.
* Fix a dozen or so places that were passing unpredictable data stringsTom Lane2002-11-22
| | | | | as elog format strings. Hai-Chen Tu pointed out the problem in contrib/dbmirror, but it wasn't the only such error.
* Quote database name properly when invoking pg_dump. Per report fromTom Lane2002-11-22
| | | | Christopher Kings-Lynne.
* TAS code originally written for s390 (32-bit) does not work for s390xTom Lane2002-11-22
| | | | (64-bit). Fix it. Per report from Permaine Cheung.