aboutsummaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAge
* Rename 'holder' references to 'proclock' for PROCLOCK references, forBruce Momjian2003-02-18
| | | | consistency.
* Added Informix "database" command.Michael Meskes2003-02-17
|
* Back off previous patch to skip projection step in scan plan nodes,Tom Lane2003-02-16
| | | | | | | in the case where the node immediately above the scan is a Hash, Sort, or Material node. In these cases it's better to do the projection so that we don't store unneeded columns in the hash/sort/materialize table. Per discussion a few days ago with Anagh Lal.
* COALESCE() and NULLIF() are now first-class expressions, not macrosTom Lane2003-02-16
| | | | | that turn into CASE expressions. They evaluate their arguments at most once. Patch by Kris Jurka, review and (very light) editorializing by me.
* Marginal tweaks to make sure that roundoff error won't cause us to makeTom Lane2003-02-15
| | | | a bad choice between sorted and hashed aggregation.
* Teach planner how to propagate pathkeys from sub-SELECTs in FROM up toTom Lane2003-02-15
| | | | | | | | | the outer query. (The implementation is a bit klugy, but it would take nontrivial restructuring to make it nicer, which this is probably not worth.) This avoids unnecessary sort steps in examples like SELECT foo,count(*) FROM (SELECT ... ORDER BY foo,bar) sub GROUP BY foo which means there is now a reasonable technique for controlling the order of inputs to custom aggregates, even in the grouping case.
* Propogate pg_ctl -D to the postmaster as a -D flag for identification byBruce Momjian2003-02-14
| | | | ps for multiple postmasters, for Kevin Brown.
* Fix SPI result logic for case where there are multiple statements of theTom Lane2003-02-14
| | | | same type in a rule. Per bug report from Pavel Hanak.
* Make pg_dump/restore safer for autocommit=off in postgresql.conf.Bruce Momjian2003-02-14
|
* In Informix mode ecpg should still be able to parse preprocessor directives.Michael Meskes2003-02-14
|
* Update FAQ's in head and 7.3.X.Bruce Momjian2003-02-14
|
* - Synced parser and keyword file.Michael Meskes2003-02-14
| | | | - More work on Informix compatibility.
* Fix some of the breakage from the IPV6 patch.Tom Lane2003-02-14
|
* Remove bogus manipulation of SIGPIPE; the backend already runs withTom Lane2003-02-14
| | | | SIGPIPE disabled, and does not need to waste two syscalls per I/O on it.
* Repair incorrect indexing for atttypmod, per Brad McLean.Tom Lane2003-02-13
|
* Result of lo_read() is int, not size_t. Per Oleg Drokin.Tom Lane2003-02-13
|
* Parser was dropping foreign-key constraints on the floor if present inTom Lane2003-02-13
| | | | an ALTER TABLE ADD COLUMN command. Per bug #896.
* Repair rule permissions-checking bug reported by Tim Burgess 10-Feb-02:Tom Lane2003-02-13
| | | | | the table(s) modified by the original query would get checked for the type of write permission needed by a rule query.
* Arrange to give error when a SetOp member statement refers to a variableTom Lane2003-02-13
| | | | | | | | of the containing query (which really can only happen in a rule context). Per example from Brandon Craig Rhodes. Also, make the error message more specific for the similar case with sub-select in FROM. The revised coding should be easier to adapt to SQL99's LATERAL(), when we get around to supporting that.
* Just intermediate results for backup reasons.Michael Meskes2003-02-13
|
* transformExpr() was missing some cases it ought to allow; per reportTom Lane2003-02-13
| | | | | | | from Greg Stark. Also, twiddle the FuncCall case to not scribble on the input structure, which was the proximate cause of the problem. Someday we ought to fix things so that transformExpr() isn't called on already-transformed trees ...
* Suppress gcc warning.Tom Lane2003-02-13
|
* Prevent timetz2tm() from scribbling on its input in HAVE_INT64_TIMESTAMP case.Tom Lane2003-02-13
|
* - Applied error reporting patch by Matthew VanecekMichael Meskes2003-02-13
| | | | - Started with an Informix compatibility option.
* [ Revert patch ]Bruce Momjian2003-02-13
| | | | | | | | | | | | | | | | | > ================================================================= > User interface proposal for multi-row function targetlist entries > ================================================================= > 1. Only one targetlist entry may return a set. > 2. Each targetlist item (other than the set returning one) is > repeated for each item in the returned set. > Having gotten no objections (actually, no response at all), I can only assume no one had heartburn with this change. The attached patch covers the first of the two proposals, i.e. restricting the target list to only one set returning function. Joe Conway
* This patch fixes an error in the usage message for 'clusterdb', andBruce Momjian2003-02-13
| | | | | | | makes a few editorial changes to the documentation. Neil Conway
* This trivial patch removes the usage of some old statistics code that noBruce Momjian2003-02-13
| | | | | | | | | longer works -- IncrHeapAccessStat() didn't actually *do* anything anymore, so no reason to keep it around AFAICS. I also fixed a grammatical error in a comment. Neil Conway
* Adds in NO MAXVALUE and NO MINVALUE options for create sequence per 200XBruce Momjian2003-02-13
| | | | | | | | | spec, which will also make alter sequence a touch easier. sequence.c init_params() will check for settings which have been defined twice, and complain. Rod Taylor
* The "random" regression test uses a function called oidrand(), whichBruce Momjian2003-02-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | takes two parameters, an OID x and an integer y, and returns "true" with probability 1/y (the OID argument is ignored). This can be useful -- for example, it can be used to select a random sampling of the rows in a table (which is what the "random" regression test uses it for). This patch removes that function, because it was old and messy. The old function had the following problems: - it was undocumented - it was poorly named - it was designed to workaround an optimizer bug that no longer exists (the OID argument is to ensure that the optimizer won't optimize away calls to the function; AFAIK marking the function as 'volatile' suffices nowadays) - it used a different random-number generation technique than the other PSRNG-related functions in the backend do (it called random() like they do, but it had its own logic for setting a set and deciding when to reseed the RNG). Ok, this patch removes oidrand(), oidsrand(), and userfntest(), and improves the SGML docs a little bit (un-commenting the setseed() documentation). Neil Conway
* Code for WITHOUT OIDS.Bruce Momjian2003-02-13
| | | | | | | | | On Wed, 2003-01-08 at 21:59, Christopher Kings-Lynne wrote: > I agree. I want to remove OIDs from heaps of our tables when we go to 7.3. > I'd rather not have to do it in the dump due to down time. Rod Taylor <rbt@rbt.ca>
* This patch makes pg_get_constraintdef support UNIQUE, PRIMARY KEY andBruce Momjian2003-02-13
| | | | | | | | | | | CHECK constraints. There are apparently no other types of constraint in pg_constraint, so now all bases are covered. Also, this patch assumes that consrc for a CHECK constraint is always bracketed so that it's not necessary to add extra brackets. Christopher Kings-Lynne
* > =================================================================Bruce Momjian2003-02-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | > User interface proposal for multi-row function targetlist entries > ================================================================= > 1. Only one targetlist entry may return a set. > 2. Each targetlist item (other than the set returning one) is > repeated for each item in the returned set. > Having gotten no objections (actually, no response at all), I can only assume no one had heartburn with this change. The attached patch covers the first of the two proposals, i.e. restricting the target list to only one set returning function. It compiles cleanly, and passes all regression tests. If there are no objections, please apply. Any suggestions on where this should be documented (other than maybe sql-select)? Thanks, Joe p.s. Here's what the previous example now looks like: CREATE TABLE bar(f1 int, f2 text, f3 int); INSERT INTO bar VALUES(1, 'Hello', 42); INSERT INTO bar VALUES(2, 'Happy', 45); CREATE TABLE foo(a int, b text); INSERT INTO foo VALUES(42, 'World'); INSERT INTO foo VALUES(42, 'Everyone'); INSERT INTO foo VALUES(45, 'Birthday'); INSERT INTO foo VALUES(45, 'New Year'); CREATE TABLE foo2(a int, b text); INSERT INTO foo2 VALUES(42, '!!!!'); INSERT INTO foo2 VALUES(42, '????'); INSERT INTO foo2 VALUES(42, '####'); INSERT INTO foo2 VALUES(45, '$$$$'); CREATE OR REPLACE FUNCTION getfoo(int) RETURNS SETOF text AS ' SELECT b FROM foo WHERE a = $1 ' language 'sql'; CREATE OR REPLACE FUNCTION getfoo2(int) RETURNS SETOF text AS ' SELECT b FROM foo2 WHERE a = $1 ' language 'sql'; regression=# SELECT f1, f2, getfoo(f3) AS f4 FROM bar; f1 | f2 | f4 ----+-------+---------- 1 | Hello | World 1 | Hello | Everyone 2 | Happy | Birthday 2 | Happy | New Year (4 rows) regression=# SELECT f1, f2, getfoo(f3) AS f4, getfoo2(f3) AS f5 FROM bar; ERROR: Only one target list entry may return a set result Joe Conway
* [ dumping schemas ]Bruce Momjian2003-02-13
| | | | | | | | | | > I don't care what you use for short options if all useful ones are taken. > But the long option should be --schema. Ok, fair enough: a revised patch is attached that uses the '-n' short option and the '--schema' long option. Neil Conway
* [ Have readline save edit history.]Bruce Momjian2003-02-13
| | | | | | | | | | | | | | | > > > I already posted a one-line patch to implement this, but it doesn't > > seem to hve come through to the list. Here it is inline, instead of as > > an attachment: > > We need this to work without readline as well. (Of course there won't be > any history, but it needs to compile.) <blush> Even after slogging my way through the nesting #ifdefs for readline and win32, I forgot! Let's make that a three line patch, then. Ross J. Reedstrom
* Applied patch to update translation file, submitted by Zhenbang WeiBarry Lind2003-02-12
| | | | | Modified Files: jdbc/org/postgresql/errors_zh_TW.properties
* Patch to messages file from Holger Klawitter to add a missing message.Barry Lind2003-02-12
| | | | | | | | Patch to makefile to clean up some of the output Modified Files: jdbc/Makefile jdbc/org/postgresql/errors.properties jdbc/org/postgresql/errors_de.properties
* Fix buffer clearing bug.Peter Eisentraut2003-02-11
|
* Use a varno not chosen at random for dummy variables in the top-levelTom Lane2003-02-11
| | | | | | | | | targetlist of a set-operation tree. I'm not sure that this solution will really stand the test of time --- perhaps we need to make a special RTE for such vars to refer to. But this quick hack fixes Brandon Craig Rhodes' complaint of 10-Feb-02 about EXCEPT in CREATE RULE, while not changing any behavior in the better-tested cases where leftmostRTI is one anyway.
* Fix thinko in new logic about pushing down non-nullability constraints:Tom Lane2003-02-10
| | | | | | constraints appearing in outer-join qualification clauses are restricted as to when and where they can be pushed down. Add regression test to catch future errors in this area.
* Add code to show join rule (for outer and IN joins) in join type name.Tom Lane2003-02-10
|
* Get rid of last few vestiges of parsetree dependency on grammar tokenTom Lane2003-02-10
| | | | | | codes, per discussion from last March. parse.h should now be included *only* by gram.y, scan.l, keywords.c, parser.c. This prevents surprising misbehavior after seemingly-trivial grammar adjustments.
* Detect case where an outer join can be reduced to a plain inner joinTom Lane2003-02-09
| | | | | because there are WHERE clauses that will reject the null-extended rows. Per suggestion from Brandon Craig Rhodes, 19-Nov-02.
* upped build# to 201Barry Lind2003-02-09
|
* Better error message on character set mismatches during conversion to unicode.Barry Lind2003-02-09
| | | | | | | | | | Also applied patch from Lars Stenberg to make callable statements use the form select * from func() when running against a 7.3 server instead of select func() to allow for set returning functions to be called. Modified Files: jdbc/org/postgresql/errors.properties jdbc/org/postgresql/core/Encoding.java jdbc/org/postgresql/jdbc1/AbstractJdbc1Statement.java
* Create a distinction between Lists of integers and Lists of OIDs, to getTom Lane2003-02-09
| | | | | | rid of the assumption that sizeof(Oid)==sizeof(int). This is one small step towards someday supporting 8-byte OIDs. For the moment, it doesn't do much except get rid of a lot of unsightly casts.
* Remove bogus comment (too freely copied & pasted).Tom Lane2003-02-09
|
* Make further use of new bitmapset code: executor's chgParam, extParam,Tom Lane2003-02-09
| | | | | | | | locParam lists can be converted to bitmapsets to speed updating. Also, replace 'locParam' with 'allParam', which contains all the paramIDs relevant to the node (i.e., the union of extParam and locParam); this saves a step during SetChangedParamList() without costing anything elsewhere.
* Replace planner's representation of relation sets, per pghackers discussion.Tom Lane2003-02-08
| | | | | Instead of Lists of integers, we now store variable-length bitmap sets. This should be faster as well as less error-prone.
* applied Kris Jurka's patch for numericDave Cramer2003-02-07
|
* Revise mechanism for getting rid of temp tables at backend shutdown.Tom Lane2003-02-07
| | | | | | | | | | Instead of grovelling through pg_class to find them, make use of the handy dandy dependency mechanism: just delete everything that depends on our temp schema. Unlike the pg_class scan, the dependency mechanism is smart enough to delete things in an order that doesn't fall foul of any dependency restrictions. Fixes problem reported by David Heggie: a temp table with a serial column may cause a backend FATAL exit at shutdown time, if it chances to try to delete the temp sequence first.