summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2002-12-05Avoid pulling up sublinks from a subselect's targetlist. Works aroundTom Lane
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.
2002-12-05Clearify variables names so it is clear which variable is theBruce Momjian
client-supplied password and which is from pg_shadow.
2002-12-05Allow 'password' encryption even when pg_shadow has MD5 passwords, perBruce Momjian
report from Terry Yapt and Hiroshi. Backpatch to 7.3.
2002-12-05Phase 1 of read-only-plans project: cause executor state nodes to pointTom Lane
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.
2002-12-05Document get/set bit/byte functions.Bruce Momjian
2002-12-05More cleanup of userid to be AclId rather than Oid.Bruce Momjian
2002-12-05changed sort of column names to sort by attnum, not attnameDave Cramer
2002-12-04Repair oversight in recent change of dependency extraction code: whenTom Lane
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.
2002-12-04Stamp minor version numbers for 7.4 release.Bruce Momjian
2002-12-04Remove typprtlen from getdescr() as it is not available in 7.3. Return -1 forD'Arcy J.M. Cain
that field so that existing programs don't break.
2002-12-04Make usesysid consistently int4, not oid.Bruce Momjian
Catalog patch from Alvaro Herrera for same. catversion updated. initdb required.
2002-12-03Deal with cases where getpeereid _and_ another creditial method isBruce Momjian
supported.
2002-12-03Add OpenBSD local indent credentials, from William Ahern.Bruce Momjian
2002-12-02Repair core dump when trying to delete an entry from an already-NULLTom Lane
datconfig or useconfig field. Per report from Dustin Sallings.
2002-12-01Teach planner to expand sufficiently simple SQL-language functionsTom Lane
('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.
2002-12-01Fix ExecMakeTableFunctionResult() to work with generic expressions asTom Lane
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.
2002-12-01Fix pg_dump failure against 7.1 or older servers, perTom Lane
report from Philip Warner.
2002-12-01Run COPY OUT in a temporary memory context that's reset once per row,Tom Lane
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.
2002-11-30Code review for IS DISTINCT FROM patch. Fix incorrect constant-foldingTom Lane
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.
2002-11-30Missed one place that can be simplified after recent Param/Const cleanup.Tom Lane
2002-11-30Be more realistic about plans involving Materialize nodes: take theirTom Lane
cost into account while planning.
2002-11-30Upgrade planner and executor to allow multiple hash keys for a hash join,Tom Lane
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.
2002-11-29Tighten selection of equality and ordering operators for groupingTom Lane
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.
2002-11-29Repair prehistoric logic error in lseg_eq and lseg_ne.Tom Lane
2002-11-29Suppress compiler warning from newer gcc.Tom Lane
2002-11-29This patch fixes two tiny memory leaks in pg_dump and two in pg_dumpall.Bruce Momjian
Neil Conway
2002-11-27Improve some comments.Tom Lane
2002-11-27Synced parser with backendMichael Meskes
2002-11-26Add -cmdTuples to tcl interface.Bruce Momjian
2002-11-26Use Params, rather than run-time-modified Const nodes, to handleTom Lane
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.
2002-11-26Guard against 0 length string encoding conversion case.Tatsuo Ishii
2002-11-25Remove check for pg_group file as part of initdb -W password assignmentBruce Momjian
--- not needed.
2002-11-25Remove unused constisset and constiscast fields of Const nodes. CleanTom Lane
up code and documentation associated with Param nodes.
2002-11-25Restructure outfuncs and readfuncs to use macros in the same style asTom Lane
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).
2002-11-25Un-break triggers declared for INSERT OR DELETE OR UPDATE. This workedTom Lane
okay in 7.3, so I think it must have been busted in the recent triggers patch.
2002-11-25Restructure the code in copyfuncs and equalfuncs to put much heavierTom Lane
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.
2002-11-25I'm sending you a small patch to pgdb.py module. ThisD'Arcy J.M. Cain
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.
2002-11-25Change the pkey method so that the caller can optionally set the dictionaryD'Arcy J.M. Cain
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.
2002-11-25Change the debug variable to allow better control by the caller over howD'Arcy J.M. Cain
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.
2002-11-24Restructure planning of nestloop inner indexscans so that the set of usableTom Lane
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.
2002-11-23Fix regression test breakage from triggers patch.Tom Lane
2002-11-23Fix compile warnings from truncate patch.Tom Lane
2002-11-23Update regression for new patches. Bump up catversion.Bruce Momjian
2002-11-23Heres a patch which will create the sql_help.h file on Win32 if itBruce Momjian
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
2002-11-23Transaction safe TruncateBruce Momjian
Rod Taylor
2002-11-23This patch implements FOR EACH STATEMENT triggers, per my email toBruce Momjian
-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
2002-11-22Redesign internal logic of nodeLimit so that it does not need to fetchTom Lane
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.
2002-11-22Fix a dozen or so places that were passing unpredictable data stringsTom Lane
as elog format strings. Hai-Chen Tu pointed out the problem in contrib/dbmirror, but it wasn't the only such error.
2002-11-22Quote database name properly when invoking pg_dump. Per report fromTom Lane
Christopher Kings-Lynne.
2002-11-22TAS code originally written for s390 (32-bit) does not work for s390xTom Lane
(64-bit). Fix it. Per report from Permaine Cheung.