summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2005-10-21Improve performance of CHECK_FOR_INTERRUPTS() macro on Windows by not doingTom Lane
a kernel call unless there's some evidence of a pending signal. This should bring its performance on Windows into line with the Unix version. Problem diagnosis and patch by Qingqing Zhou. Minor stylistic tweaks by moi ... if it's broken, it's my fault.
2005-10-21Fix EXPLAIN ANALYZE bug noted by Wiebe Cazemier: although we wereTom Lane
properly advancing the CommandCounter between multiple sub-queries generated by rules, we forgot to update the snapshot being used, so that the successive sub-queries didn't actually see each others' results. This is still not *exactly* like the semantics of normal execution of the same queries, in that we don't take new transaction snapshots and hence don't see changes from concurrently committed commands, but I think that's OK and probably even preferable for EXPLAIN ANALYZE.
2005-10-21Add an implicit cast from varchar to regclass, so that existing codeTom Lane
of the form nextval('foo'::varchar) doesn't break. Per gripe from Jean-Pierre Pelletier. Initdb forced :-(
2005-10-21Add missing PQinitSSL and PQregisterThreadLock to exports.txt.Tom Lane
2005-10-20Improve testlibpq3.c's example of PQexecParams() usage to include sendingTom Lane
a parameter in binary format. Also, add a TIP explaining how to use casts in the query text to avoid needing to specify parameter types by OID. Also fix bogus spacing --- apparently somebody expanded the tabs in the example programs to 8 spaces instead of 4 when transposing them into SGML.
2005-10-20Postpone pg_timezone_initialize() until after creation of postmaster.pid,Tom Lane
since it can take a fair amount of time and this can confuse boot scripts that expect postmaster.pid to appear quickly. Move initialization of SSL library and preloaded libraries to after that point, too, just for luck. Per reports from Tony Caduto and others.
2005-10-20Adjust not-too-sane calculation of DDD value for to_char(interval).Tom Lane
Per gripe from Chris Matheson.
2005-10-20Clean up md5.c to make it clearer that it is a frontend-and-backendTom Lane
module. Don't rely on backend palloc semantics; in fact, best to not use palloc at all, rather than #define'ing it to malloc, because that just encourages errors of omission. Bug spotted by Volkan YAZICI, but I went further than he did to fix it.
2005-10-20Make \d order a table's check constraints by constraint name insteadTom Lane
of the text of the constraint condition. Per Chris K-L, though I didn't use his patch exactly.
2005-10-19Better solution to the problem of labeling whole-row Datums that areTom Lane
generated from subquery outputs: use the type info stored in the Var itself. To avoid making ExecEvalVar and slot_getattr more complex and slower, I split out the whole-row case into a separate ExecEval routine.
2005-10-19Ensure that the Datum generated from a whole-row Var contains validTom Lane
type ID information even when it's a record type. This is needed to handle whole-row Vars referencing subquery outputs. Per example from Richard Huxton.
2005-10-19Fix oversight in recent changes to enable the 'physical tlist'Tom Lane
optimization for subquery and function scan nodes: we can't just do it unconditionally, we still have to check whether there is any need for a whole-row Var. I had been thinking that these node types couldn't have any system columns, which is true, but that loop is also checking for attno zero, ie, whole-row Var. Fix comment to not be so misleading. Per test case from Richard Huxton.
2005-10-18Improve trace_sort code to also show the total memory or disk space used.Tom Lane
Per request from Marc.
2005-10-18Code review for regexp_replace patch. Improve documentation and comments,Tom Lane
fix problems with replacement-string backslashes that aren't followed by one of the expected characters, avoid giving the impression that replace_text_regexp() is meant to be called directly as a SQL function, etc.
2005-10-18Code review for spi_query/spi_fetchrow patch: handle errors sanely,Tom Lane
avoid leaking memory. I would add a regression test for error handling except it seems eval{} can't be used in unprivileged plperl :-(
2005-10-18A few trivial code cleanups motivated by reading warnings generatedTom Lane
by a recent HP C compiler. Mostly, get rid of useless local variables that are assigned to but never used.
2005-10-17Clean up libpq's pollution of application namespace by renaming theTom Lane
exported routines of ip.c, md5.c, and fe-auth.c to begin with 'pg_'. Also get rid of the vestigial fe_setauthsvc/fe_getauthsvc routines altogether.
2005-10-16Add space after description.Bruce Momjian
Euler Taveira de Oliveira
2005-10-15kerberos error message: localhost -> server hostnameBruce Momjian
2005-10-15Fix thinko in pg_read_file: testing for negative result is not the wayTom Lane
to determine whether fread() failed.
2005-10-15Standard pgindent run for 8.1.Bruce Momjian
2005-10-15Update pgindent typedef list.Bruce Momjian
2005-10-14Fix syslog bug: if any messages are emitted to write_syslog beforeTom Lane
the facility has been set, the facility gets set to LOCAL0 and cannot be changed later. This seems reasonably plausible to happen, particularly at higher debug log levels, though I am not certain it explains Han Holl's recent report. Easiest fix is to teach the code how to change the value on-the-fly, which is nicer anyway. I made the settings PGC_SIGHUP to conform with log_destination.
2005-10-14Pass a strdup'd ident string to openlog(), to ensure that reallocationTom Lane
of GUC memory doesn't cause us to start emitting a bogus ident string. Per report from Han Holl. Also some trivial code cleanup in write_syslog.
2005-10-14Allow times of 24:00:00 to match rounding behavior:Bruce Momjian
regression=# select '23:59:59.9'::time(0); time ---------- 24:00:00 (1 row) This is bad because: regression=# select '24:00:00'::time(0); ERROR: date/time field value out of range: "24:00:00" The last example now works.
2005-10-13Fix uppercase TRUE/FALSE that are WIN32 stuffl.Bruce Momjian
2005-10-13Update regression output for new prepare transaction error messages.Bruce Momjian
2005-10-13Make stack_base_ptr non-static, for PL/Java.Bruce Momjian
2005-10-13This makes the error messages for PREPARE TRANSACTION, COMMIT PREPAREDBruce Momjian
etc. match the docs, which talk about "transaction identifier" not "gid" or "global transaction identifier". Steve Woodcock
2005-10-13Update krb_server_name to document that a missing entry defaults toBruce Momjian
'localhost'. Improve kerberos error message.
2005-10-13The patch updates the documentation to reflect the fact that higher valuesBruce Momjian
of client_min_messages (fatal + panic) are valid and also fixes a slight issue with how psql tried to display error messages that aren't sent to the client. We often tell people to ignore errors in response to requests for things like "drop if exists", but there's no good way to completely hide this without upping client_min_messages past ERROR. When running a file like SET client_min_messages TO 'FATAL'; DROP TABLE doesntexist; with "psql -f filename" you get an error prefix of "psql:/home/username/filename:3" even though there is no error message to prefix because it isn't sent to the client. Kris Jurka
2005-10-13Go back to emitting path names with forward slashes on Windows.Tom Lane
I'm not clear on what the double-backslash idea was intended to fix, but it breaks at least mingw GNU Make. Per report from Thomas Hallgren.
2005-10-13Back out this because of fear of changing error strings:Bruce Momjian
This makes the error messages for PREPARE TRANSACTION, COMMIT PREPARED etc. match the docs, which talk about "transaction identifier" not "gid" or "global transaction identifier". Steve Woodcock
2005-10-13This makes the error messages for PREPARE TRANSACTION, COMMIT PREPAREDBruce Momjian
etc. match the docs, which talk about "transaction identifier" not "gid" or "global transaction identifier". Steve Woodcock
2005-10-13Use get_progname() in backend main.c, rather than port-specific hackBruce Momjian
that is too fragile.
2005-10-13Fix small oversight in recent patch to add more CREATE-FUNCTION-timeTom Lane
syntax checking to plpgsql: check_sql_expr() wasn't being called by make_select_stmt(), so that there was no SQL syntax check for SELECT statements.
2005-10-13Remove an antiquated comment.Neil Conway
2005-10-13Add a comment describing the requirement that pointers into shared memoryNeil Conway
that is protected by a spinlock must be volatile, per recent discussion.
2005-10-13Don't try to remove duplicate OR-subclauses in create_bitmap_subplan andTom Lane
make_restrictinfo_from_bitmapqual. The likelihood of finding duplicates seems much less than in the AND-subclause case, and the cost much higher, because OR lists with hundreds or even thousands of subclauses are not uncommon. Per discussion with Ilia Kantor and andrew@supernews.
2005-10-12Fix longstanding bug found by Atsushi Ogawa: _bt_check_unique would markTom Lane
the wrong buffer dirty when trying to kill a dead index entry that's on a page after the one it started on. No risk of data corruption, just inefficiency, but still a bug.
2005-10-12Fix another recently-changed place that was messing with spinlock-Tom Lane
protected data structures and not using a volatile pointer for same.
2005-10-12Do all accesses to shared buffer headers through volatile-qualifiedTom Lane
pointers, to ensure that compilers won't rearrange accesses to occur while we're not holding the buffer header spinlock. It's probably not necessary to mark volatile in every single place in bufmgr.c, but better safe than sorry. Per trouble report from Kevin Grittner.
2005-10-11Fix typo in sample pg_hba.conf; per IRC report from Bernhard Neuhauser.Neil Conway
2005-10-11Add infrastructure for making spins_per_delay variable depending onTom Lane
whether we seem to be running in a uniprocessor or multiprocessor. The adjustment rules could probably still use further tweaking, but I'm convinced this should be a win overall.
2005-10-11Don't use a non-locked pre-test of the spinlock on x86_64 machines.Tom Lane
The pre-test has been shown to be a big loss on Opterons and at best a wash on EM64T.
2005-10-11Document that get_attstatsslot/free_attstatsslot only need to be passedTom Lane
valid type information if they are asked to fetch the values part of a pg_statistic slot; these arguments are unneeded if fetching only the numbers part. Use this to save a catcache lookup in btcostestimate, which is looking like a bit of a hotspot in recent profiling. Not a big savings, but since it's essentially free, might as well do it.
2005-10-11Fix oversight in 8.0 modification of RestrictInfo data structures.Tom Lane
A RestrictInfo representing an OR clause now contains two versions of the contained expression, one with sub-RestrictInfos and one without. clause_selectivity() should descend to the version with sub-RestrictInfos so that it has a chance of caching its results for the OR's sub-clauses. Failing to do so resulted in redundant planner effort.
2005-10-10Remove the DELETEs from pg_shadow and pg_group that pg_dumpall used toTom Lane
emit when given the --clean option, in favor of individual DROP ROLE commands. The old technique could not possibly work in 8.1, and was never a very good idea anyway IMHO. The DROP ROLE approach has the defect that the DROPs will fail for roles that own objects or have privileges, but perhaps we can improve that later.
2005-10-10Use a safer order of operations in dropdb(): rollbackable operations,Tom Lane
ie removing shared-dependency entries, should happen before non-rollbackable ones. That way a failure during the rollbackable part doesn't leave us with inconsistent state.
2005-10-10Document the process to update translations.Peter Eisentraut