aboutsummaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAge
* Prevent autovacuum from zeroing damaged pages.Bruce Momjian2006-03-06
|
* In psql, save history of backslash commands used in multi-lineBruce Momjian2006-03-06
| | | | | statements before the multi-line statement, rather than inside the multi-line statement.
* Per recent discussion on -hackers, we should sometimes reorder theNeil Conway2006-03-05
| | | | | | | | | | columns of the grouping clause to avoid redundant sorts. The optimizer is not currently capable of doing this, so this patch implements a simple hack in the analysis phase (transformGroupClause): if any subset of the GROUP BY clause matches a prefix of the ORDER BY list, that prefix is moved to the front of the GROUP BY clause. This shouldn't change the semantics of the query, and allows a redundant sort to be avoided for queries like "GROUP BY a, b ORDER BY b".
* Prepared queries for PLPerl, plus fixing a small plperl memory leak. PatchAndrew Dunstan2006-03-05
| | | | and docs from Dmitry Karasik, slightly editorialised.
* Update copyright for 2006. Update scripts.Bruce Momjian2006-03-05
|
* Update to 2006.Bruce Momjian2006-03-05
|
* Check for "msys" so it doesn't use 'con' by checking for an evironmentBruce Momjian2006-03-05
| | | | variable.
* Improve STRINGS_H macro test for MSVC extensions.Bruce Momjian2006-03-05
| | | | Add DLLIMPORT for V1 headers, in case Win32 don't export all symbols.
* Support include directives in postgresql.conf.Tom Lane2006-03-04
| | | | Patch by Joachim Wieland, somewhat reworked for clarity and portability.
* Declare the arguments of AllocateFile() as const char *, not char *.Tom Lane2006-03-04
| | | | This is consistent with the standard definition of fopen().
* Incorporate a couple of recent tuplesort.c improvements into tuplestore.c.Tom Lane2006-03-04
| | | | | | In particular, ensure that enlargement of the memtuples[] array doesn't fall foul of MaxAllocSize when work_mem is very large, and don't bother enlarging it if that would force an immediate switch into 'tape' mode anyway.
* Prevent lazy_space_alloc from making requests that exceed MaxAllocSize,Tom Lane2006-03-04
| | | | per report from Stefan Kaltenbrunner.
* Prevent sorting from requesting a SortTuple array that exceeds MaxAllocSize;Tom Lane2006-03-04
| | | | | | | we'll go over to disk-based sort if we reach that limit. This fixes Stefan Kaltenbrunner's observation that sorting can suffer an 'invalid memory alloc request size' failure when sort_mem is set large enough. It's unfortunately not so easy to fix in 8.1 ...
* Tighten up SJIS byte sequence check. Now we reject invalid SJIS byteTatsuo Ishii2006-03-04
| | | | | sequence such as "0x95 0x27". Patches from Akio Ishida. Also update copyright notice.
* > gettimeofday.c:35: warning: integer constant is too large for "long"Bruce Momjian2006-03-04
| | | | | | | | | | > type Wouldn't it be better to use the UINT64CONST macro? I realize this file is Windows-only, but we do worry about more than one compiler on that platform. Kris Jurka
* Use DEVTTY as 'con' on Win32 as a replacement for /dev/tty.Bruce Momjian2006-03-04
|
* This patch fixes this warning.Bruce Momjian2006-03-03
| | | | | | | gettimeofday.c:35: warning: integer constant is too large for "long" type Kris Jurka
* Avoid trying to open /dev/tty on Win32. Some Win32 systems haveBruce Momjian2006-03-03
| | | | | | | | | | | /dev/tty, but it isn't a device file and doesn't work as expected. This fixes a known bug where psql does not prompt for a password on some Win32 systems. Backpatch to 8.1.X. Robert Kinberg
* Improve pg_dump and psql to use libpq's newer COPY support routines,Tom Lane2006-03-03
| | | | | instead of the old deprecated ones. Volkan Yazici, with some editorializing by moi.
* Fixes for Win32-client only compiles.Bruce Momjian2006-03-03
| | | | Hiroshi Saito
* Update ipcclean to use try 'id' first for root check.Bruce Momjian2006-03-03
|
* Add workaround so MSVC doesn't try to load strings.h, which it doesn'tBruce Momjian2006-03-03
| | | | | | have. This happens when MSVC uses pg_config.h generated by MinGW. Per report from Charles F. I. Savage
* Teach PQcmdTuples() that a COPY command tag might contain a row count,Tom Lane2006-03-03
| | | | | and tighten up its sanity checking of the tag as a safety measure. Volkan Yazici.
* Clarify macro layout for win32 IMPORT.Bruce Momjian2006-03-03
|
* Make the COPY command return a command tag that includes the number ofTom Lane2006-03-03
| | | | | rows copied. Backend side of Volkan Yazici's recent patch, with corrections and documentation.
* Dept. of second thoughts: rejigger the TRUNCATE ... CASCADE patch so thatTom Lane2006-03-03
| | | | | | | relations are still checked for permissions etc as soon as they are opened. The original form of the patch could hold exclusive lock for a long time on relations that the user doesn't even have permissions to access, let alone truncate.
* In ipcclean, check LOGNAME only if USER is not set.Bruce Momjian2006-03-03
| | | | Fixes problem with 'su' on some platforms.
* Fix a typo.Neil Conway2006-03-03
|
* Add CASCADE option to TRUNCATE. Joachim WielandTom Lane2006-03-03
|
* Add comment about localized month names for to_date and to_timestamp.Bruce Momjian2006-03-03
|
* Arrange to call AbsorbFsyncRequests every so often while performing aTom Lane2006-03-03
| | | | | | | checkpoint in the bgwriter. This forestalls overflow of the fsync request queue, which is not fatal but causes considerable performance degradation when it occurs (because backends then have to do their own fsyncs). Per patch from Itagaki Takahiro, modified a little bit by me.
* Remove unnecessary lo_lseek call in lo_open. Apparently there was onceTom Lane2006-03-02
| | | | | | | a need for it back in the neolithic era, but it's certainly dead code in any PG release we would recognize as such. Since it forces an additional network round trip to the backend, getting rid of it should provide some small performance improvement for large-object-using clients.
* Fix ancient error in large objects usage example: overwrite() subroutineTom Lane2006-03-02
| | | | | was opening with INV_READ flag and then writing. Prior to 8.1 the backend did not reject this, but now it does.
* Repair oidvectorrecv and int2vectorrecv, which I broke while changingTom Lane2006-03-02
| | | | them to use array_recv :-(. Per report from Tim Kordas.
* Fix possible crash at transaction end when a plpgsql function is used andTom Lane2006-03-02
| | | | | | | | | then modified within the same transaction. The code was using a linked list of active PLpgSQL_expr structs, which was OK when it was written because plpgsql never released any parse data structures for the life of the backend. But since Neil fixed plpgsql's memory management, elements of the linked list could be freed, leading to crash when the list is chased. Per report and test case from Kris Jurka.
* Fix up pg_dump to emit shell-type definitions at the proper time, toTom Lane2006-03-02
| | | | | | | | | | make use of the recently added ability to create a shell type explicitly. I also put in place some infrastructure to allow dump/no dump decisions to be made separately for each database object, rather than the former hardwired 'dump if in a dumpable schema' policy. This was needed anyway for shell types so now seemed a convenient time to do it. The flexibility isn't exposed to the user yet, but is ready for future extensions.
* Update the expected regression test results to account for the changes toNeil Conway2006-03-01
| | | | | error messages I made yesterday -- thanks to Andrew Dunstan for reporting this, and my apologies for missing it the first time.
* Attached is a patch that replaces a bunch of places where StringInfosNeil Conway2006-03-01
| | | | | | | | | | | | | are unnecessarily allocated on the heap rather than the stack. If the StringInfo doesn't outlive the stack frame in which it is created, there is no need to allocate it on the heap via makeStringInfo() -- stack allocation is faster. While it's not a big deal unless the code is in a critical path, I don't see a reason not to save a few cycles -- using stack allocation is not less readable. I also cleaned up a bit of code along the way: moved variable declarations into a more tightly-enclosing scope where possible, fixed some pointless copying of strings in dblink, etc.
* This patch makes the error message strings throughout the backendNeil Conway2006-03-01
| | | | | | | | more compliant with the error message style guide. In particular, errdetail should begin with a capital letter and end with a period, whereas errmsg should not. I also fixed a few related issues in passing, such as fixing the repeated misspelling of "lexeme" in contrib/tsearch2 (per Tom's suggestion).
* Fix typo in comment.Neil Conway2006-02-28
|
* Allow the syntax CREATE TYPE foo, with no parameters, to permit explicitTom Lane2006-02-28
| | | | | | | | | | creation of a shell type. This allows a less hacky way of dealing with the mutual dependency between a datatype and its I/O functions: make a shell type, then make the functions, then define the datatype fully. We should fix pg_dump to handle things this way, but this commit just deals with the backend. Martijn van Oosterhout, with some corrections by Tom Lane.
* Tweak the error message emitted when a void-returning PL/Python functionNeil Conway2006-02-28
| | | | does not return None, per suggestion from Tom.
* Allow PL/Python functions to return void, per gripe from James RobinsonNeil Conway2006-02-28
| | | | | | | (I didn't use his patch, however). A void-returning PL/Python function must return None (from Python), which is translated into a void datum (and *not* NULL) for Postgres. I also added some regression tests for this functionality.
* Add PG_VERSION_NUM for use by 3rd party applications wanting to test theBruce Momjian2006-02-28
| | | | backend version in C using > and < comparisons.
* Teach nodeSort and nodeMaterial to optimize out unnecessary overheadTom Lane2006-02-28
| | | | | when the passed-down eflags indicate they can. Simon Riggs and Tom Lane
* Extend the ExecInitNode API so that plan nodes receive a set of flagTom Lane2006-02-28
| | | | | | | | | | | | bits indicating which optional capabilities can actually be exercised at runtime. This will allow Sort and Material nodes, and perhaps later other nodes, to avoid unnecessary overhead in common cases. This commit just adds the infrastructure and arranges to pass the correct flag values down to plan nodes; none of the actual optimizations are here yet. I'm committing this separately in case anyone wants to measure the added overhead. (It should be negligible.) Simon Riggs and Tom Lane
* Clean up CREATE FUNCTION syntax usage in contrib and elsewhere, inPeter Eisentraut2006-02-27
| | | | | particular get rid of single quotes around language names and old WITH () construct.
* Add mention that tid perhaps someday should be output as a record.Bruce Momjian2006-02-27
|
* Improve sorting speed by pre-extracting the first sort-key column ofTom Lane2006-02-26
| | | | | | each tuple, as per my proposal of several days ago. Also, clean up sort memory management by keeping all working data in a separate memory context, and refine the handling of low-memory conditions.
* Fix a few minor typos in comments in PL/Perl.Neil Conway2006-02-26
|