aboutsummaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAge
* Change Win32 dlerror message to:Bruce Momjian2004-12-02
| | | | return "dynamic loading error";
* Disallow the combination VACUUM FULL FREEZE for safety's sake, for theTom Lane2004-12-02
| | | | | | | | | reasons I outlined in pghackers a few days ago. Also, undo someone's overly optimistic decision to reduce tuple state checks from if (...) elog() to Asserts. If I trusted this code more, I might think it was a good idea to disable these checks in production installations. But I don't.
* Don't bother adding to cflags/cppflags, just set them because configureBruce Momjian2004-12-02
| | | | handles that, and make solaris debug use no optimization.
* Rework libpq threaded SIGPIPE handling to avoid interference withBruce Momjian2004-12-02
| | | | | | calling applications. This is done by blocking sigpipe in the libpq thread and using sigpending/sigwait to possibily discard any sigpipe we generated.
* Teach regex_fixed_prefix() the correct handling of advanced regexTom Lane2004-12-02
| | | | | | escapes --- they aren't simply quoted characters. Problem noted by Antti Salmela. Also fix problem with incorrect handling of multibyte characters when followed by a quantifier.
* Make some adjustments to reduce platform dependencies in plan selection.Tom Lane2004-12-02
| | | | | | | | | | In particular, there was a mathematical tie between the two possible nestloop-with-materialized-inner-scan plans for a join (ie, we computed the same cost with either input on the inside), resulting in a roundoff error driven choice, if the relations were both small enough to fit in sort_mem. Add a small cost factor to ensure we prefer materializing the smaller input. This changes several regression test plans, but with any luck we will now have more stability across platforms.
* Allow libpq to build on MS Visual Studio .NET 2003 on Windows XP.Bruce Momjian2004-12-01
|
* Fix timestamptz_age() to do calculation in local timezone not GMT, per bug 1332.Tom Lane2004-12-01
|
* Change planner to use the current true disk file size as its estimate ofTom Lane2004-12-01
| | | | | | | | | | | | | | | | | a relation's number of blocks, rather than the possibly-obsolete value in pg_class.relpages. Scale the value in pg_class.reltuples correspondingly to arrive at a hopefully more accurate number of rows. When pg_class contains 0/0, estimate a tuple width from the column datatypes and divide that into current file size to estimate number of rows. This improved methodology allows us to jettison the ancient hacks that put bogus default values into pg_class when a table is first created. Also, per a suggestion from Simon, make VACUUM (but not VACUUM FULL or ANALYZE) adjust the value it puts into pg_class.reltuples to try to represent the mean tuple density instead of the minimal density that actually prevails just after VACUUM. These changes alter the plans selected for certain regression tests, so update the expected files accordingly. (I removed join_1.out because it's not clear if it still applies; we can add back any variant versions as they are shown to be needed.)
* Add \n to end of output for psql \s with no history file name.Bruce Momjian2004-11-30
| | | | | This prevents the next psql prompt from showing up on the end of the last history line.
* Quote SHELL arguments only on Win32.Bruce Momjian2004-11-30
|
* Fix a few typos in comments.Neil Conway2004-11-30
|
* Update plperl to use ereport() not elog() for user-facing messages,Tom Lane2004-11-29
| | | | | so that they will be translatable. Give messages some semblance of conformance to the style guide.
* Clean up initdb's error handling so that it prints something moreTom Lane2004-11-29
| | | | | | | | | useful than just \'failed\' when there's a problem. Per gripe from Chris Albertson. In an unrelated change, use VACUUM FULL; VACUUM FREEZE; rather than a single VACUUM FULL FREEZE command, to respond to my worries of a couple days ago about the reliability of doing this in one go.
* Add comment explaining possible compiler warning:Bruce Momjian2004-11-29
| | | | | | | | | /* * Some compilers with throw a warning knowing this test can never be * true because off_t can't exceed the compared maximum. */ if (th->fileLen > MAX_TAR_MEMBER_FILELEN) die_horribly(AH, modulename, "archive member too large for tar format\n");
* Have initdb display relative paths to start postmaster if used to invokeBruce Momjian2004-11-29
| | | | initdb, and display in a path-native way.
* Avoid scribbling on original parsetree during DECLARE CURSOR. ThisTom Lane2004-11-28
| | | | | | prevents problems when the DECLARE is in a portal and is executed repeatedly, as is possible in v3 protocol. Per analysis by Oliver Jowett, though I didn't use his patch exactly.
* Work around lack of NLS support in libpgport by making those componentsPeter Eisentraut2004-11-27
| | | | | | who use it scan the relevant source files for their own catalog. It creates a bit of duplicate work for translators, but it gets the job done for now.
* Update of conformance information to SQL:2003Peter Eisentraut2004-11-27
| | | | | | by Troels Arvin, Simon Riggs, Elein Mustain Make spelling of SQL standard names uniform.
* Fix HAVE_OPTRESET to be HAVE_INT_OPTRESET. Typos spotted by Lorne Sunley.Tom Lane2004-11-27
|
* Add to CPPFLAGS/CFLAGS in template files, don't over-ride them.Bruce Momjian2004-11-27
|
* RelOptInfo.pages should really be declared as BlockNumber, not long.Tom Lane2004-11-26
|
* Install Tcl regex fixes to sync our regex engine with Tcl 8.4.8 (up fromTom Lane2004-11-24
| | | | | 8.4.1). This corrects some curious regex bugs, though not the greediness issue I was hoping to find a solution for :-(
* Our interface code for Spencer's regexp package was checking for regexpTom Lane2004-11-24
| | | | | | | error conditions during regexp compile, but not during regexp execution; any sort of "can't happen" errors would be treated as no-match instead of being reported as they should be. Noticed while trying to duplicate a reported Tcl bug.
* A client_encoding specification coming from the connection request hasTom Lane2004-11-24
| | | | | | | | | | to be processed by GUC before InitPostgres, because any required lookup of the encoding conversion function has to be done during InitializeClientEncoding. So, I broke this last week by moving GUC processing to after InitPostgres :-(. What we can do as a compromise is process non-SUSET variables during command line scanning (the same as before), and postpone the processing of only SUSET variables. None of the SUSET variables need to be set before InitPostgres.
* Avoid getting bit by roundoff error while checking $Safe::VERSION.Tom Lane2004-11-24
| | | | Per report from Mark Kirkwood.
* Trivial fix for a bug introduced in r1.94 of help.c: we want to onlyNeil Conway2004-11-24
| | | | | include "\s" in \? output when readline is enabled, but that commit supressed "\s" whether readline was enabled or not.
* Assert that BufferIsPinned() in IncrBufferRefCount(), rather than usingNeil Conway2004-11-24
| | | | | a home-brewed combination of assertions that boiled down to the same thing.
* New translationsPeter Eisentraut2004-11-23
|
* Translation updatesPeter Eisentraut2004-11-23
|
* Further plperl cleanup: be more paranoid about checking the type ofTom Lane2004-11-23
| | | | | | | | | data returned from Perl. Consolidate multiple bits of code to convert a Perl hash to a tuple, and drive the conversion off the keys present in the hash rather than the tuple column names, so we detect error if the hash contains keys it shouldn't. (This means keys not in the hash will silently default to NULL, which seems ok to me.) Fix a bunch of reference-count leaks too.
* The beginnings of a regression test for plperl. Right now it onlyTom Lane2004-11-22
| | | | covers return value processing, but that was the most broken stuff...
* Try to instill some sanity in plperl's function result processing.Tom Lane2004-11-22
| | | | | Get rid of static variables for SETOF result, don't crash when called from non-FROM context, eliminate dead code, etc.
* Fix rounding problem in dynahash.c's decision about when the targetTom Lane2004-11-21
| | | | | | | | fill factor has been exceeded. We usually run with ffactor == 1, but the way the test was coded, it wouldn't split a bucket until the actual fill factor reached 2.0, because of use of integer division. Change from > to >= so that it will split more aggressively when the table starts to get full.
* Reduce the default size of the PortalHashTable in order to save aTom Lane2004-11-21
| | | | | | few cycles during transaction exit. A typical session probably wouldn't have as many as half a dozen portals open at once, so the original value of 64 seems far larger than needed.
* While fixing plperl and pltcl, I realized plpgsql wasn't doingTom Lane2004-11-21
| | | | | | | | | subtransactions quite right either: the ReleaseCurrentSubTransaction call should occur inside the PG_TRY, so that the proper path is taken if an error occurs during subtransaction commit. This assumes that AbortSubTransaction can cope with the state left behind if CommitSubTransaction fails partway through, but we were already requiring that.
* Suppress remaining compile warnings, and add a comment about whyTom Lane2004-11-21
| | | | it's not really broken. Andrew Dunstan
* Fix plperl and pltcl error handling per my previous proposal. SPITom Lane2004-11-21
| | | | | | | | | operations are now run as subtransactions, so that errors in them can be reported as ordinary Perl or Tcl errors and caught by the normal error handling convention of those languages. Also do some minor code cleanup in pltcl.c: extract a large chunk of duplicated code in pltcl_SPI_execute and pltcl_SPI_execute_plan into a shared subroutine.
* Patch of 2004-03-30 corrected date_part(timestamp) for extractingTom Lane2004-11-20
| | | | | the year from a BC date, but failed to make the same fix in date_part(timestamptz).
* Fix up makefile dependencies for pg_config_paths.h.Tom Lane2004-11-20
|
* Avoid scanning the relcache during AtEOSubXact_RelationCache when thereTom Lane2004-11-20
| | | | | is nothing to do, which is most of the time. This is another simple improvement to cut subtransaction entry/exit overhead.
* Reduce the default size of the local lock hash table. There's usuallyTom Lane2004-11-20
| | | | | | | no need for it to be nearly as big as the global hash table, and since it's not in shared memory it can grow if it does need to be bigger. By reducing the size, we speed up hash_seq_search(), which saves a significant fraction of subtransaction entry/exit overhead.
* Fix plperl's elog() function to convert elog(ERROR) into Perl croak(),Tom Lane2004-11-20
| | | | | | rather than longjmp'ing clear out of Perl and thereby leaving Perl in a broken state. Also some minor prettification of error messages. Still need to do something with spi_exec_query() error handling.
* Fix one more place where we were expecting lcons() to be nondestructiveTom Lane2004-11-20
| | | | | | | to the original List; per report from Sebastian BÎck. I think this is the last such bug --- I examined every lcons() call in the backend and the rest seem OK --- but it's nervous-making that we're still finding 'em so many months after the List rewrite went in.
* On some HPUX versions/hardware, it seems we need to include libgcc.a inTom Lane2004-11-20
| | | | the regression test shared libraries.
* Fix unportable isdigit() call --- must cast arg to unsigned char.Tom Lane2004-11-20
|
* Move pgstat_report_tabstat() call so that stats are not reported to theTom Lane2004-11-20
| | | | | | collector until the transaction commits. Per recent discussion, this should avoid confusing autovacuum when an updating transaction runs for a long time.
* Make sure we produce a useful error message for the case where theTom Lane2004-11-20
| | | | postgresql.crt file simply isn't there, too.
* Improve error reporting for SSL connection failures. Remove redundantTom Lane2004-11-20
| | | | | free operations in client_cert_cb --- openssl will also attempt to free these structures, resulting in core dumps.
* Clean up rpath handling for HPUX --- we can't use the cc-style rpathTom Lane2004-11-19
| | | | switch syntax when calling ld directly.