summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2003-08-01remove python module, as its moved to http://www.pygresql.orgMarc G. Fournier
2003-08-01Fix my own mistake in GUC variable annotation.Tom Lane
2003-08-01Adjust 'permission denied' messages to be more useful and consistent.Tom Lane
2003-07-31Fix mistaken error code assignments, per Peter's note 7/28/03.Tom Lane
2003-07-31When using a temp installation, unset PGUSER and other variables weTom Lane
might have inherited from the environment that would possibly cause psql to fail to connect to the temp installation properly. Per trouble report from Markus Bertheau 7/1/03.
2003-07-31Cause library-preload feature to report error if specified initializationTom Lane
function is not found. Also, make all the PL libraries have initialization functions with standard names. Patch from Joe Conway.
2003-07-31Upgrade parsing code for ACLs to be less hokey and more cognizant ofTom Lane
the actual logical structure and quoting rules being used. Fixes bug reported by Chris K-L on 7/8/03.
2003-07-31Add fflush of stdout when outputing query.Bruce Momjian
2003-07-30Add pretty-printing variants of pg_get_viewdef and related functions.Tom Lane
Patch from Andreas Pflug.
2003-07-30Fix numeric_smaller, numeric_larger, float4smaller, float4larger,Tom Lane
float8smaller, float8larger (and thereby the MIN/MAX aggregates on these datatypes) to agree with the datatypes' comparison operations as regards NaN handling. In all these datatypes, NaN is arbitrarily considered larger than any normal value ... but MIN/MAX had not gotten the word. Per recent discussion on pgsql-sql.
2003-07-30Cause ARRAY[] construct to return a NULL array, rather than raising anTom Lane
error, if any input element is NULL. This is not what we ultimately want, but until arrays can have NULL elements, it will have to do. Patch from Joe Conway.
2003-07-30When shutting down the regression test postmaster after 'make check',Tom Lane
wait for the postmaster to actually exit. Otherwise running repeated 'make check's tends to misbehave, because we try to remove and recreate the data directory while the old PM is still alive.
2003-07-29Fix longstanding error in _bt_search(): should moveright at top of loop notTom Lane
bottom. Otherwise we fail to moveright when the root page was split while we were "in flight" to it. This is not a significant problem when the root is above the leaf level, but if the root was also a leaf (ie, a single-page index just got split) we may return the wrong leaf page to the caller, resulting in failure to find a key that is in fact present. Bug has existed at least since 7.1, probably forever.
2003-07-29Coerce unknown-literal-constant default values to the column type duringTom Lane
CREATE TABLE (or ALTER TABLE SET DEFAULT), rather than postponing it to the time that the default is inserted into an INSERT command by the rewriter. This reverses an old decision that was intended to make the world safe for writing f1 timestamp default 'now' but in fact merely made the failure modes subtle rather than obvious. Per recent trouble report and followup discussion. initdb forced since there is a chance that stored default expressions will change.
2003-07-29There is no reason to cast valuntil to timestamp, and a very goodTom Lane
reason not to: it fails for an 'invalid' abstime. Per bug report of today's date.
2003-07-29Use a process-specific temp file name, per Andreas Haumer.Tom Lane
2003-07-29Apply (a somewhat revised version of) Greg Mullane's patch to eliminateTom Lane
heuristic determination of day vs month in date/time input. Add the ability to specify that input is interpreted as yy-mm-dd order (which formerly worked, but only for yy greater than 31). DateStyle's input component now has the preferred spellings DMY, MDY, or YMD; the older keywords European and US are now aliases for the first two of these. Per recent discussions on pgsql-general.
2003-07-28Code review for recent GUC changes --- try to make it less obvious thatTom Lane
these things were added at different times by different people ;-). Includes Aizaz Ahmed's patch to remove duplicate array in help_config.c.
2003-07-28Add error stack traceback support for SQL-language functions.Tom Lane
2003-07-28There was enough code drift since this patch, that a couple of bugsBruce Momjian
materialized. New items have been added to GucContext and GucSource enums, but of course they were not added to the corresponding GucContextName[] and GucSourceName[] arrays in the patch. Here's a new patch to fix the resulting bugs. Joe Conway
2003-07-28Localizability improvement.Tom Lane
2003-07-28elog() is no longer a gettext trigger --- all remaining uses are consideredTom Lane
internal errors.
2003-07-28Rename psql's VERBOSE variable to VERBOSITY, per suggestion from Bruce.Tom Lane
2003-07-28A visit from the message-style police ...Tom Lane
2003-07-27elog mop-up: bring some straggling fprintf(stderr)'s into the elog world.Tom Lane
2003-07-27Tom, happier with the attached patch?Bruce Momjian
I'd have to disagree with regards to the memory leaks not being worth a mention - any such leak can cause problems when the PostgreSQL installation is either unattended, long-living andor has very high connection levels. Half a kilobyte on start-up isn't negligible in this light. Regards, Lee. Tom Lane writes: > Lee Kindness <lkindness@csl.co.uk> writes: > > Guys, attached is a patch to fix two memory leaks on start-up. > > I do not like the changes to miscinit.c. In the first place, it is not > a "memory leak" to do a one-time allocation of state for a proc_exit > function. A bigger complaint is that your proposed change introduces > fragile coupling between CreateLockFile and its callers, in order to > save no resources worth mentioning. More, it introduces an assumption > that the globals directoryLockFile and socketLockFile don't change while > the postmaster is running. UnlinkLockFile should unlink the file that > it was originally told to unlink, regardless of what happens to those > globals. > > If you are intent on spending code to free stuff just before the > postmaster exits, a better fix would be for UnlinkLockFile to free its > string argument after using it. Lee Kindness
2003-07-27Fix some localizability issues with existing errcontext() calls.Tom Lane
2003-07-27Move ERRCODE_XXX macros into their own header file.Tom Lane
2003-07-27elog mop-up.Tom Lane
2003-07-27Error message editing in utils/adt. Again thanks to Joe Conway for doingTom Lane
the bulk of the heavy lifting ...
2003-07-27> Joe Conway <mail@joeconway.com> writes:Bruce Momjian
>>ISTM that "source" is worth knowing. > > Hm, possibly. Any other opinions? This version has the seven fields I proposed, including "source". Here's an example that shows why I think it's valuable: regression=# \x Expanded display is on. regression=# select * from pg_settings where name = 'enable_seqscan'; -[ RECORD 1 ]----------- name | enable_seqscan setting | on context | user vartype | bool source | default min_val | max_val | regression=# update pg_settings set setting = 'off' where name = 'enable_seqscan'; -[ RECORD 1 ]--- set_config | off regression=# select * from pg_settings where name = 'enable_seqscan'; -[ RECORD 1 ]----------- name | enable_seqscan setting | off context | user vartype | bool source | session min_val | max_val | regression=# alter user postgres set enable_seqscan to 'off'; ALTER USER (log out and then back in again) regression=# \x Expanded display is on. regression=# select * from pg_settings where name = 'enable_seqscan'; -[ RECORD 1 ]----------- name | enable_seqscan setting | off context | user vartype | bool source | user min_val | max_val | In the first case, enable_seqscan is set to its default value. After setting it to off, it is obvious that the value has been changed for the session only. In the third case, you can see that the value has been set specifically for the user. Joe Conway
2003-07-27This is a totally trivial patch for something that was a very minor nit thatBruce Momjian
annoyed me the other day while I was documenting my current project. It makes pg_dump use the same layout for types as for tables, by putting "\n\t" before the first field and "\n" before the final ");" Can't really justify this too much except to say I had an itch and I scratched it ;-) Andrew Dunstan
2003-07-27here are the patches for psql on Win32:Bruce Momjian
psql4win32.patch - changes in the psql source code psql-ref.patch - changes in the documentation psql-ref.sgml (for new builtin variable WIN32_CONSOLE) To apply them use "patch -p 1" in the root directory of the postgres source directory. These patches fix the following problems of psql on Win32 (all changes only have effect #ifdef WIN32): a) Problem: Static library libpq.a did not work Solution: Added WSAStartup() in fe-connect.c b) Problem: Secret Password was echoed by psql Solution: Password echoing disabled in sprompt.c c) Problem: 8bit characters were displayed/interpreted wrong in psql This is due to the fact that the Win32 "console" uses a different encoding than the rest of the Windows system Solution: Introduced a new psql variable WIN32_CONSOLE When set with "\set WIN32_console", the function OemToChar() is applied after reading input and CharToOem() before displaying Output Christoph Dalitz
2003-07-27This makes the initcap function compatible with Oracle 9i, it has beenBruce Momjian
tested on both redhat 8 and FreebSD. -- Mike Nolan
2003-07-27The deferred trigger queue pushing to disk patch pointed outBruce Momjian
that the regression tests for foreign keys didn't seem to test a deferred constraint that was not satisified by a later statement and was not made immediate by set constraints, so here's a simple added test with a single invalid insert and a commit. Stephan Szabo
2003-07-26>>You can alias $0, similar to the argument variables. And, I confirmedBruce Momjian
>>that you cannot change the value, similar to the argument variables: > > Perhaps you shouldn't mark it isconst; then it would actually have some > usefulness (you could use it directly as a temporary variable to hold > the intended result). I can't see much value in aliasing it if it's > const, either. OK; the only change in this version is "isconst = false;". Now you can use $0 as a result placeholder if desired. E.g.: create or replace function tmp(anyelement, anyelement) returns anyarray as ' declare v_ret alias for $0; v_el1 alias for $1; v_el2 alias for $2; begin v_ret := ARRAY[v_el1, v_el2]; return v_ret; end; ' language 'plpgsql'; create table f(f1 text, f2 text, f3 int, f4 int); insert into f values ('a','b',1,2); insert into f values ('z','x',3,4); select tmp(f1,f2) from f; select tmp(f3,f4) from f; Joe Conway
2003-07-26Have SSL text print only when SSL mode is enabled.Bruce Momjian
2003-07-26I corecting date_trunc('quarter',...) and friends because orig versionBruce Momjian
doing '2003-07-30' -> '2003-04-01', '2003-11-30' ->'2003-07-01' B?jthe Zolt?n
2003-07-26At long last I put together a patch to support 4 client SSL negotiationBruce Momjian
modes (and replace the requiressl boolean). The four options were first spelled out by Magnus Hagander <mha@sollentuna.net> on 2000-08-23 in email to pgsql-hackers, archived here: http://archives.postgresql.org/pgsql-hackers/2000-08/msg00639.php My original less-flexible patch and the ensuing thread are archived at: http://dbforums.com/t623845.html Attached is a new patch, including documentation. To sum up, there's a new client parameter "sslmode" and environment variable "PGSSLMODE", with these options: sslmode description ------- ----------- disable Unencrypted non-SSL only allow Negotiate, prefer non-SSL prefer Negotiate, prefer SSL (default) require Require SSL The only change to the server is a new pg_hba.conf line type, "hostnossl", for specifying connections that are not allowed to use SSL (for example, to prevent servers on a local network from accidentally using SSL and wasting cycles). Thus the 3 pg_hba.conf line types are: pg_hba.conf line types ---------------------- host applies to either SSL or regular connections hostssl applies only to SSL connections hostnossl applies only to regular connections These client and server options, the postgresql.conf ssl = false option, and finally the possibility of compiling with no SSL support at all, make quite a range of combinations to test. I threw together a test script to try many of them out. It's in a separate tarball with its config files, a patch to psql so it'll announce SSL connections even in absence of a tty, and the test output. The test is especially informative when run on the same tty the postmaster was started on, so the FATAL: errors during negotiation are interleaved with the psql client output. I saw Tom write that new submissions for 7.4 have to be in before midnight local time, and since I'm on the east coast in the US, this just makes it in before the bell. :) Jon Jensen
2003-07-26Update to match error editing.Tom Lane
2003-07-25Error message editing in src/pl. The plpython module could use anotherTom Lane
look ... I'm not real certain which errors are strictly internal and which are likely to be provoked by users.
2003-07-25Update copyrights to 2003.Bruce Momjian
print.c: Add one more line to pager calculation to account for the prompt. help.c: Call PageOutput with correct number of lines within slashUsage Add one to line count in helpSQL to account for "Available help:" line. Make copyright match COPYRIGHT file. (Just "1994") Greg Sabino Mullane
2003-07-25> Having read the list, and noticed the message about table inheritance IBruce Momjian
> thought that I would see if I could come up with a simple solution, and > have my first delve into the code for PostgreSQL. > > Attached is a diff against 7.3.3 source, of changes to describe.c for > psql. This should print out a list of parent tables in a similar style > to that of the index listing. I have done some testing on my side and it > all seems fine, can some other people have a quick look? What do people > think? Useful? Nick Barr
2003-07-25Recent patch to dump nondefault attstorage settings broke pg_dump forTom Lane
dropped columns. Fix by using LEFT JOIN rather than straight join between pg_attribute and pg_type. Also, use pg_type.oid as input to format_type, so that we don't get a failure on deleted types of deleted columns (this may be a change we ought to backpatch to 7.3....).
2003-07-25Error message editing in backend/utils (except /adt).Tom Lane
2003-07-25Seems my check constraint change did break stuff.Bruce Momjian
Alias the appropriate columns back to their original name. Fixed formatting of a few other places as I went along (indenting) -- Rod Taylor <rbt@rbt.ca>
2003-07-25> Rod Taylor <rbt@rbt.ca> writes:Bruce Momjian
> > It seems that readline() on my system (FreeBSD 4.8) isn't declared to > > take the prompt as a const. Thus, remove const from gets_interactive() > > to remove the warning. > > I think it would be a lot cleaner to just put a cast to char * into the > readline call (with a note about why). Ok.. that works. I must say it's a little strange being able to take a constant and say its no longer constant anymore -- but I suppose it's no different than defining then undefining pre-processor constants. Rod Taylor <rbt@rbt.ca>
2003-07-25Added explicit casts for date/interval/timestamp.Michael Meskes
2003-07-25Applied Peter's patch to use yyless instead of my string_unput function.Michael Meskes
2003-07-25No need for Static.Entries, use -rHEAD.Bruce Momjian