Commit Graph

12057 Commits

Author SHA1 Message Date
Bruce Momjian bdae05f5d1 Use calloc() to allocate empty structures.
Fix pg_restore tar log output bug where Special flag wasn't being
initialized; bug seen on XP.
2003-10-08 03:52:32 +00:00
Bruce Momjian b8382c2688 Have log_min_duration_statement = 0 always print duration/statement.
Change log line to be "duration:  ms  query:"

Indent multi-line queries with a tab in the server logs.
2003-10-08 03:49:38 +00:00
Michael Meskes cfd992ecba Fixed floating point exception in long=>numeric conversion. 2003-10-07 18:36:46 +00:00
Bruce Momjian d665217278 Fix include used by entab. 2003-10-07 17:40:09 +00:00
Peter Eisentraut 06e6aa236c Add missing include file. 2003-10-07 08:07:56 +00:00
Michael Meskes 3cda980298 Fixed error handling in Informix compat str to date conversion. 2003-10-07 05:46:56 +00:00
Peter Eisentraut 34e9ab027b New Italian translation 2003-10-06 21:50:45 +00:00
Tom Lane b05ff39d7c Fix binary_oper_exact() so that the heuristic 'an unknown literal on
one side of a binary operator is probably supposed to be the same type
as the other operand' will be applied for domain types.  This worked
in 7.3 but was broken in 7.4 due to code rearrangements.  Mea culpa.
2003-10-06 20:09:47 +00:00
Peter Eisentraut f98cbb76a0 Translation updates 2003-10-06 17:37:39 +00:00
Tom Lane fec58f6c3f During ALTER TABLE ADD FOREIGN KEY, try to check the existing rows using
a single LEFT JOIN query instead of firing the check trigger for each
row individually.  Stephan Szabo, with some kibitzing from Tom Lane and
Jan Wieck.
2003-10-06 16:38:28 +00:00
Peter Eisentraut a0ab31dcc6 New Slovene translations 2003-10-06 16:31:16 +00:00
Michael Meskes aeb1f6478e - Fixed constant listing in execute using clause.
- Fixed typo in ecpg for Informix dec_t type.
- Fixed precision handling in Informix compat funxtions.
2003-10-06 06:44:55 +00:00
Peter Eisentraut 5e3aaf5402 Translation updates 2003-10-06 06:20:11 +00:00
Tom Lane 0eceaaf9b7 Modify COPY FROM to match the null-value string against the column value
before it is de-backslashed, not after.  This allows the null string \N
to be reliably distinguished from the data value \N (which must be
represented as \\N).  Per bug report from Manfred Koizar ... but it's
amazing this hasn't been reported before ...
Also, be consistent about encoding conversion for null string: the form
specified in the command is in the server encoding, but what is sent
to/from client must be in client encoding.  This never worked quite
right before either.
2003-10-06 02:38:53 +00:00
Tom Lane 351adb8dfb Fix order of operations within SendQuery() so that the time spent in
data transfer during COPY is included in the \timing display.  Also
avoid portability problems if tv_usec is unsigned on some platform.
2003-10-06 01:11:12 +00:00
Tom Lane a1dcd8f6dd Add a little more smarts to estimate_hash_bucketsize(): if there's no
statistics, but there is a unique index on the column, we can safely
assume it's well-distributed.
2003-10-05 22:44:25 +00:00
Bruce Momjian 22347dc102 Make psql \timing show three digits. 2003-10-05 22:36:00 +00:00
Peter Eisentraut eceff4cc55 Translation updates 2003-10-05 21:52:37 +00:00
Peter Eisentraut 83a234926c When revoking privileges from the owner, don't revoke the grant options,
to avoid recursively revoking everything from everyone.
2003-10-05 21:49:12 +00:00
Michael Meskes 8e6b74e4fd Fixed bug in day of week processing. 2003-10-05 11:12:00 +00:00
Peter Eisentraut f261af3f74 Translation update 2003-10-04 22:50:20 +00:00
Tom Lane fa09ee6026 Document the always-true-but-previously-undocumented fact that PQfnumber()
will downcase the supplied field name unless it is double-quoted.  Also,
upgrade the routine's handling of double quotes to match the backend,
in particular support doubled double quotes within quoted identifiers.
Per pgsql-interfaces discussion a couple weeks ago.
2003-10-04 21:05:21 +00:00
Tom Lane b833c3d4a4 Fix pg_get_constraintdef() to ensure CHECK constraints are always shown
with required outer parentheses.  Breakage seems to be leftover from
domain-constraint patches.  This could be smarter about suppressing
extra parens, but at this stage of the release cycle I want certainty
not cuteness.
2003-10-04 18:22:59 +00:00
Peter Eisentraut 0a14ffe5b5 Translation updates 2003-10-04 18:13:16 +00:00
Peter Eisentraut 8bc9fcb51f Translation update 2003-10-04 18:09:08 +00:00
Bruce Momjian 1c4d4cb17d Fix log_duration and log_min_duration_statement to print properly, as
pointed out by Peter.
2003-10-04 02:47:04 +00:00
Peter Eisentraut 75e76e1cf5 Translation updates 2003-10-04 01:07:05 +00:00
Peter Eisentraut 4cb67993a7 Format help message internally consistent. 2003-10-04 01:06:38 +00:00
Peter Eisentraut 9951474c71 Change transaction status indicator in prompt from %T to %x. 2003-10-04 01:04:46 +00:00
Peter Eisentraut beb935148a New translation 2003-10-03 22:39:34 +00:00
Tom Lane ef88199f61 Issue 'SET check_function_bodies = false' to suppress possible restore
failures in SQL functions, due to forward references or unqualified
references to objects in other schemas.  Per recent discussion.
2003-10-03 20:10:59 +00:00
Tom Lane 15c194c1d5 Add GUC parameter check_function_bodies to control whether validation
of function bodies is done at CREATE FUNCTION time.  This is normally
true but can be set false to avoid problems with forward references,
wrong schema search path, etc.  This is just the backend patch, still
need to adjust pg_dump to make use of it.
2003-10-03 19:26:49 +00:00
Tom Lane 251033186f Cause PQescapeString to stop processing at a null character, rather
than generating an invalid output string.  Per observation and patch
from Igor Shevchenko.  Further code cleanup and documentation by
Tom Lane.
2003-10-03 18:26:14 +00:00
Tom Lane 3b4c142030 Remove assorted compilation failures introduced by latest ecpg changes.
Also remove -g, which has no business in CPPFLAGS in the first place,
let alone being hardwired there by a sub-Makefile.
2003-10-03 17:04:48 +00:00
Michael Meskes 1bd5e054ed Hide Informix datatypes. They are not seen by our built process anymore. 2003-10-03 10:07:28 +00:00
Tom Lane 19c90bcc25 Add a bit more locking to vac_update_relstats and vac_update_dbstats
to make them comparable to what UpdateStats does in the same situation.
I'm not certain two instances of vac_update_relstats could run in
parallel for the same relation, but parallel invocations of vac_update_dbstats
do seem possible.
2003-10-02 23:19:44 +00:00
Tom Lane bea8af9152 When dumping CREATE INDEX, must show opclass name if the opclass isn't
in the schema search path.  Otherwise pg_dump doesn't correctly dump
scenarios where a custom opclass is created in 'public' and then used
by indexes in other schemas.
2003-10-02 22:24:54 +00:00
Tom Lane b4966453f6 Do not return from PQrequestCancel until postmaster has finished
processing the request; this ensures that the request won't be taken
to cancel a subsequently-issued query.  Race condition originally
noted by Oliver Jowett in the context of JDBC, but libpq has it too.
2003-10-02 19:52:44 +00:00
Tom Lane bf2f5d9463 Don't use 0 as a spelling of NULL. 2003-10-02 14:47:44 +00:00
Peter Eisentraut d938e8b0f4 Add documentation about \pset footer to \?.
from Patrick Welche
2003-10-02 06:39:31 +00:00
Peter Eisentraut 14528ffe6b String fixes/improvements found by Alvaro Herrera 2003-10-02 06:36:37 +00:00
Peter Eisentraut e78b0079a2 Change some notices to warnings and vice versa according to criteria
developed on -hackers.
2003-10-02 06:34:04 +00:00
Peter Eisentraut 5b806ecf55 Remove NOTICE about foreign key creating implicit triggers, because it no
longer conveys useful information.
2003-10-02 06:32:46 +00:00
Tom Lane 04b40923d6 Add code to check that IF/WHILE/EXIT test expressions are boolean,
and try to coerce the values to boolean if not.  Per recent discussions.
2003-10-01 21:47:42 +00:00
Tom Lane 55d85f42a8 Repair RI trigger visibility problems (this time for sure ;-)) per recent
discussion on pgsql-hackers: in READ COMMITTED mode we just have to force
a QuerySnapshot update in the trigger, but in SERIALIZABLE mode we have
to run the scan under a current snapshot and then complain if any rows
would be updated/deleted that are not visible in the transaction snapshot.
2003-10-01 21:30:53 +00:00
Tom Lane 47ed658c59 heap_open => relation_open to avoid unwanted restriction on relkind.
Per gripe from Gaetano Mendola.
2003-09-30 00:59:51 +00:00
Tom Lane e33f205a94 Adjust btree index build procedure so that the btree metapage looks
invalid (has the wrong magic number) until the build is entirely
complete.  This turns out to cost no additional writes in the normal
case, since we were rewriting the metapage at the end of the process
anyway.  In normal scenarios there's no real gain in security, because
a failed index build would roll back the transaction leaving an unused
index file, but for rebuilding shared system indexes this seems to add
some useful protection.
2003-09-29 23:40:26 +00:00
Tom Lane 0e319c7ad7 Improve context display for failures during COPY IN, as recently
discussed on pghackers.
2003-09-29 22:06:40 +00:00
Jan Wieck 36f15ddecd Fixed type lookup in spi_prepare for possible qualified
type name specification.

Jan
2003-09-29 19:24:06 +00:00
Bruce Momjian 2f98ece4de The brackets aren't put on the CHECK constraints properly.
Before patch:

test=# select pg_get_constraintdef(oid) from pg_constraint;
                                       pg_get_constraintdef
-------------------------------------------------------------------------------------------------
  CHECK (VALUE >= 0)
  CHECK ((((a)::text = 'asdf'::text) OR ((a)::text = 'fdsa'::text)) OR
((a)::text = 'dfd'::text))
  PRIMARY KEY (b)
  FOREIGN KEY (a) REFERENCES test2(b)
  UNIQUE (b)
(5 rows)

test=# select pg_get_constraintdef(oid, true) from pg_constraint;
                                pg_get_constraintdef
-----------------------------------------------------------------------------------
  CHECK VALUE >= 0
  CHECK a::text = 'asdf'::text OR a::text = 'fdsa'::text OR a::text =
'dfd'::text
  PRIMARY KEY (b)
  FOREIGN KEY (a) REFERENCES test2(b)
  UNIQUE (b)
(5 rows)

After patch:

test=# select pg_get_constraintdef(oid) from pg_constraint;
                                       pg_get_constraintdef
-------------------------------------------------------------------------------------------------
  CHECK (VALUE >= 0)
  CHECK ((((a)::text = 'asdf'::text) OR ((a)::text = 'fdsa'::text)) OR
((a)::text = 'dfd'::text))
  PRIMARY KEY (b)
  FOREIGN KEY (a) REFERENCES test2(b)
  UNIQUE (b)
(5 rows)

test=# select pg_get_constraintdef(oid, true) from pg_constraint;
                                pg_get_constraintdef
-----------------------------------------------------------------------------------
  CHECK (VALUE >= 0)

`  CHECK (a::text = 'asdf'::text OR a::text = 'fdsa'::text OR a::text =
'dfd'::text)
  PRIMARY KEY (b)
  FOREIGN KEY (a) REFERENCES test2(b)
  UNIQUE (b)
(5 rows)

It's important that those brackets are there to (a) match all other
constraints and (b) so that people can just copy and paste them and it
will work as SQL.


Christopher Kings-Lynne
2003-09-29 18:55:56 +00:00
Bruce Momjian 4b4c43b146 This patch fixes an obvious bug in the "should I print the duration of
this query?" logic in postgres.c

Also, make it print "duration:" like log_duration.

Neil Conway
2003-09-29 18:50:58 +00:00
Bruce Momjian fc7a2affab I discovered that TupleDescGetAttInMetadata and BuildTupleFromCStrings
don't deal well with tuples having dropped columns. The attached fixes
the issue. Please apply.

Joe Conway
2003-09-29 18:22:48 +00:00
Bruce Momjian f3db606592 > >
> >  a) Write documentation how the win32 console needs to be set up so that
> >     psql can handle 8-bit characters.
> >     Where should it be added? The Section "Installation on Windows" in the
> >     Administrator's Guide seems natural to me.
> >
> >  b) Add code to psql that prints a warning on startup of psql when the
> >     console codepage differs from the windows codepage, something like
> >
> >     Warning: Console codepage (850) differs from windows codepage (1252)
> >              8-bit characters will not work correctly. See PostgreSQL
> >              documentation "Installation on Windows" for details.
>
Attached are two patches:

 - installdoc.patch contains an additional paragraph on the win32 console
   codepage for the chapter "Installation on Windows"
   Due to a lack of SGML-tools, I have only edited the text and not tested
   the SGML code - please check it before merging into the CVS branch.

 - psqlcodepage.patch adds the warning about a problematic codepage to psql.


Christoph Dalitz
2003-09-29 18:21:33 +00:00
Peter Eisentraut 55fbc98b3f Adjust the new Norwegian translation for some of the easier message
changes between 7.3 and 7.4, for example quoting and function names.
2003-09-29 16:41:33 +00:00
Peter Eisentraut 275c909a8c Apparently, gettext doesn't like double parentheses around argument. What
were they doing here anyway?
2003-09-29 16:39:18 +00:00
Peter Eisentraut f4d5d620f2 Make message fit guidelines. 2003-09-29 16:38:04 +00:00
Peter Eisentraut 2d480b92cf Eliminate another gratuitous message wording difference. 2003-09-29 16:37:29 +00:00
Peter Eisentraut a776bd9b69 New Norwegian translation by Trond Endrestøl, actually made for 7.3, but
this should help people get started in 7.4 as well.
2003-09-29 10:57:06 +00:00
Peter Eisentraut b994b143a6 New translations 2003-09-29 09:51:29 +00:00
Bruce Momjian f7fca96366 Fix #error message to mention renamed option --disable-spinlocks. 2003-09-29 04:20:22 +00:00
Bruce Momjian 3e4b208285 Update docs that point to thread test program. 2003-09-29 03:32:05 +00:00
Tom Lane 5594aa6a6e Fix broken definition of :print: character class, per Bruno Wolff.
Also, make :alnum: character class directly dependent on isalnum()
rather than guessing.
2003-09-29 00:21:58 +00:00
Peter Eisentraut 3b97d9f525 Translation update 2003-09-29 00:17:42 +00:00
Peter Eisentraut 7438af96fa More message editing, some suggested by Alvaro Herrera 2003-09-29 00:05:25 +00:00
Tom Lane 8b510838f6 Restructure plpgsql's caching of 'simple' expression evaluation trees
to be less dangerous, and often faster as well.  ExprState trees are
not kept across transaction boundaries; this eliminates problems with
resource leakage in failed transactions.  But by keeping them in a
per-transaction EState, we can safely arrange for a single ExprState
to be shared by all the expression evaluations done in a given plpgsql
function call.  (Formerly it seemed necessary to create and destroy an
ExprState for each exec_eval_simple_expr() call.)  This saves time in
any scenario where a plpgsql function executes more than one expression.
Seems to be about as fast as 7.3 for simple cases, and significantly
faster for functions that do a lot of calculations.
2003-09-28 23:37:45 +00:00
Tom Lane 8934790052 Add a mechanism to let dynamically loaded modules register post-commit/
post-abort cleanup hooks.  I'm surprised that we have not needed this
already, but I need it now to fix a plpgsql problem, and the usefulness
for other dynamically loaded modules seems obvious.
2003-09-28 23:26:20 +00:00
Tom Lane a15207f8d6 Now that we have UPDATE tab SET col = DEFAULT, get rid of horrid hack
in the RI triggers for ON DELETE/UPDATE SET DEFAULT.  The code depended
way too much on knowledge of plan structure, and yet still would fail
if the generated query got rewritten by rules.
2003-09-28 02:11:23 +00:00
Bruce Momjian a994d5984f Adjust pgindent for newer awks.
Nigel J. Andrews
2003-09-28 00:25:22 +00:00
Bruce Momjian b4ca39b956 Allow pgindent to work with newer BSD indents. 2003-09-28 00:22:58 +00:00
Bruce Momjian 74c8703031 Mark Linux for threads. 2003-09-27 22:23:35 +00:00
Tom Lane 0ac697b269 Remove erroneous restriction that -t cannot be used to select a
sequence for dumping.
2003-09-27 22:10:01 +00:00
Bruce Momjian 16e4adc38f Update bsd indent patch. 2003-09-27 21:26:09 +00:00
Bruce Momjian ee84100cc1 Cleanup pgindent patch. 2003-09-27 21:19:47 +00:00
Tom Lane e0736689a3 Got the link order wrong :-( 2003-09-27 20:38:19 +00:00
Tom Lane cd75f94daf Adjust Darwin build to use the default 'two level namespace' linking
method.  Fix a number of places where shared libraries were linked without
mentioning all the libraries they depend on; the Darwin and AIX ports
are known to require this, and it doesn't seem to hurt any other supported
platforms.  (Hence, remove code in pl/tcl makefile that tried to avoid
mentioning other libs if not needed.)
2003-09-27 19:35:32 +00:00
Tom Lane 4f7a2fa0c3 Fix typo in message. 2003-09-27 18:16:35 +00:00
Bruce Momjian bb9ec59419 Add compile step to instructions. 2003-09-27 17:29:30 +00:00
Bruce Momjian e349584d5d Make dump files created by initdb have consistent EOL termination, to
pass COPY's EOL tests.
2003-09-27 16:27:57 +00:00
Bruce Momjian 391dceb462 Finalize configuration of thread_test program. 2003-09-27 16:24:45 +00:00
Jan Wieck a6790ce857 Changed the logic when a CAST is dumped according to discussion
on pgsql-hackers.

A cast is included in the dump output if any of the objects does
not belong to a system namespace and all of the non-system namespace
objects belong to dumped namespaces. System namespace is defined
as nspname begins with "pg_".

Jan
2003-09-27 15:34:06 +00:00
Bruce Momjian 227dd9b427 Rename thread compile flag. Move thread test program to tools/thread,
and improve tests.
2003-09-27 15:32:48 +00:00
Peter Eisentraut e05147e51a You can't NLS-enable a program component by just putting gettext() around
every string, especially if some of the output should be fixed-format
machine-readable.  This needs to be more carefully sorted out. Also, make
the help message generated by --help-config -h be more similar in style to
the others.
2003-09-27 09:29:31 +00:00
Peter Eisentraut 4af19a579d The formatting of the display of the locale names assumed that locale names
are not longer than 8 characters.  But sometimes they are, and that made
the display quite ugly.  So just format them vertically so that everyone
can read them.
2003-09-27 09:21:26 +00:00
Tom Lane 026f9c05d5 Move -D_GNU_SOURCE hack from port header to template, so that
configure's tests see the same compilation environment as the code.
Per discussion with Stephan Szabo.
2003-09-26 17:39:13 +00:00
Peter Eisentraut d84b6ef56b Various message fixes, among those fixes for the previous round of fixes 2003-09-26 15:27:37 +00:00
Peter Eisentraut 98150f108f Translation update 2003-09-26 15:25:39 +00:00
Michael Meskes e11136e4a5 Fixed segfault after error in parsing precision argument. 2003-09-26 15:16:29 +00:00
Tom Lane 8d108fb166 Fix tid scan evaluation of non-constant TID values; can't try to do it
during ExecInitTidScan, because the rest of the executor isn't ready.
2003-09-26 01:17:01 +00:00
Tom Lane 2848dc5fea Make the world safe (more or less) for dropped columns in plpgsql rowtypes. 2003-09-25 23:02:12 +00:00
Tom Lane a039148cad tlist_matches_tupdesc() needs to defend itself against dropped columns. 2003-09-25 19:41:49 +00:00
Tom Lane c63a5452d8 Get rid of ReferentialIntegritySnapshotOverride by extending Executor API
to allow es_snapshot to be set to SnapshotNow rather than a query snapshot.
This solves a bug reported by Wade Klaver, wherein triggers fired as a
result of RI cascade updates could misbehave.
2003-09-25 18:58:36 +00:00
Tom Lane 7ab5c5b83e Fix regression error messages for platforms Peter doesn't use. 2003-09-25 16:16:35 +00:00
Tom Lane d332f7f610 Fix grammatical error introduced into error message. 2003-09-25 15:58:06 +00:00
Peter Eisentraut be1d437e01 Forget to update the real source of the regression test results after
message editing.
2003-09-25 15:48:17 +00:00
Peter Eisentraut feb4f44d29 Message editing: remove gratuitous variations in message wording, standardize
terms, add some clarifications, fix some untranslatable attempts at dynamic
message building.
2003-09-25 06:58:07 +00:00
Bruce Momjian 266664fcd2 Fix creation of temporary sequences in ecpg, per report from Edmund Bacon. 2003-09-24 19:05:32 +00:00
Tom Lane a56a016ceb Repair some REINDEX problems per recent discussions. The relcache is
now able to cope with assigning new relfilenode values to nailed-in-cache
indexes, so they can be reindexed using the fully crash-safe method.  This
leaves only shared system indexes as special cases.  Remove the 'index
deactivation' code, since it provides no useful protection in the shared-
index case.  Require reindexing of shared indexes to be done in standalone
mode, but remove other restrictions on REINDEX.  -P (IgnoreSystemIndexes)
now prevents using indexes for lookups, but does not disable index updates.
It is therefore safe to allow from PGOPTIONS.  Upshot: reindexing system catalogs
can be done without a standalone backend for all cases except
shared catalogs.
2003-09-24 18:54:02 +00:00
Tom Lane a9e9abebd9 Issue CREATE SCHEMA as the originally connecting user, with an
AUTHORIZATION clause to specify the desired owner.  This allows a
superuser to restore schemas owned by users without CREATE-SCHEMA
permissions (ie, schemas originally created by a superuser using
AUTHORIZATION).  --no-owner can be specified to suppress the
AUTHORIZATION clause if need be.
2003-09-23 23:31:52 +00:00
Tom Lane 6767cebc6f pg_dump/pg_restore now always use SET SESSION AUTHORIZATION, not \connect,
to control object ownership.  The use-set-session-authorization and
no-reconnect switches are obsolete (still accepted on the command line,
but they don't do anything).  This is a precursor to fixing handling
of CREATE SCHEMA, which will be a separate commit.
2003-09-23 22:48:53 +00:00
Tom Lane dbf8259adf Tweak generic_type_consistency routines to avoid loss of functionality
since 7.3: 'select array_dims(histogram_bounds) from pg_stats' used to
work and still should.  Problem was that code wouldn't take input of
declared type anyarray as matching an anyarray argument.  Allow this
case as long as we don't need to determine an element type (which in
practice means as long as anyelement isn't used in the function signature).
2003-09-23 17:12:53 +00:00
Tom Lane 267924ead8 _SPI_cursor_operation forgot to check for failure return from
_SPI_begin_call.  Per gripe from Tomasz Myrta.
2003-09-23 15:11:33 +00:00
Michael Meskes 5a5f0a6168 - Changed struct definition handling so "struct foo {}" always gets defined. 2003-09-23 12:56:35 +00:00
Barry Lind 2ec8ee0c0c Fix to properly handle timezone offsets that are partial hours. If the offset
was a partial hour and less than gmt (i.e. -02:30) the code would corrupt the
minutes part.

 Modified Files:
 	jdbc/org/postgresql/jdbc1/AbstractJdbc1Statement.java
2003-09-23 06:13:52 +00:00
Barry Lind 618d56d09a A fix for jdbc regression test submitted yesterday by Kim Ho at Redhat
Modified Files:
 	ResultSetTest.java
2003-09-23 06:11:06 +00:00
Hiroshi Inoue f5c5c3c6f7 Putting back the previous change must be the first thing.
ALso put back a #ifndef ENABLE_REINDEX_NAILED_RELATIONS
which was removed about a year ago.
2003-09-23 01:51:09 +00:00
Michael Meskes 22c0b1f0f4 - Fixed order mismatch in processing "using" arguments.
- Fixed some minor things in test cases.
- Use defines for Informix error codes.
2003-09-22 13:19:39 +00:00
Barry Lind 8839b85ed8 Additional jdbc regression tests submitted by Oliver Jowett. Some tests are
currently commented out, pending fixes for the bugs these tests uncovered.

 Modified Files:
 	jdbc/org/postgresql/test/jdbc2/Jdbc2TestSuite.java
 	jdbc/org/postgresql/test/jdbc2/ServerPreparedStmtTest.java
 Added Files:
 	jdbc/org/postgresql/test/jdbc2/CursorFetchTest.java
2003-09-22 05:38:01 +00:00
Barry Lind 66d00417c9 Applied jdbc patch from Kim Ho at RedHat to improve boolean support, as well
as some additional regression tests for this an other recent changes.

 Modified Files:
 	jdbc/org/postgresql/jdbc1/AbstractJdbc1ResultSet.java
 	jdbc/org/postgresql/test/jdbc2/DateTest.java
 	jdbc/org/postgresql/test/jdbc2/ResultSetTest.java
 	jdbc/org/postgresql/test/jdbc2/TimeTest.java
 	jdbc/org/postgresql/test/jdbc2/TimestampTest.java
2003-09-22 04:55:00 +00:00
Tom Lane f03d2284c0 HeapTupleSatisfiesVacuum() needs to be more careful about the
difference between INSERT_IN_PROGRESS and DELETE_IN_PROGRESS for
tuples inserted and then deleted by a concurrent transaction.
Example of bug:
regression=# create table foo (f1 int);
CREATE TABLE
regression=# begin;
BEGIN
regression=# insert into foo values(1);
INSERT 195531 1
regression=# delete from foo;
DELETE 1
regression=# insert into foo values(1);
INSERT 195532 1
regression=# create unique index fooi on foo(f1);
ERROR:  could not create unique index
DETAIL:  Table contains duplicated values.
2003-09-22 00:47:23 +00:00
Peter Eisentraut 278a13fe47 Translation updates 2003-09-22 00:27:01 +00:00
Peter Eisentraut 6f57d63cb4 Message wording improvements 2003-09-22 00:23:35 +00:00
Tom Lane 5aa29e88e9 Arrange to align shared disk buffers on at least 32-byte boundaries,
not just MAXALIGN boundaries.  This makes a noticeable difference in
the speed of transfers to and from kernel space, at least on recent
Pentiums, and might help other CPUs too.  We should look at making
this happen for local buffers and buffile.c too.  Patch from Manfred Spraul.
2003-09-21 17:57:21 +00:00
Tom Lane 11b274f00f Fix some ill-considered ifdefs, per report from Hans-JÏrgen SchÎnig. 2003-09-21 17:42:22 +00:00
Tom Lane 58ad65ec2d Apply ranlib(1) after installing a static (.a) library on Darwin.
Per past complaints --- verified to still be a problem on OS X 10.2.6.
2003-09-20 21:26:20 +00:00
Tom Lane 776ec78e9d Attaching -lpq to LDFLAGS doesn't work, because the generated command
puts that before the .c file name.
2003-09-20 21:14:57 +00:00
Tom Lane f3ad615ce8 Fix a batch of speling misteaks identified by Peter's spell-checker tool. 2003-09-20 20:12:05 +00:00
Michael Meskes 3438065eed - Renamed my own strndup() function because of a name clash. 2003-09-20 09:10:50 +00:00
Michael Meskes f604b39c2f - Applied some bug fixing patches by Dave Cramer <dave@fastcrypt.com>.
- Added protecting defines to include files.
2003-09-20 09:10:09 +00:00
Tom Lane f72a93b4c9 pg_dump missed comments attached to primary key or unique constraints
(as distinct from their underlying indexes).  Per bug report from
Hiroshi Saito.
2003-09-19 23:15:18 +00:00
Tom Lane a13b018530 Disallow foreign-key references from temp tables to permanent tables.
Per recent discussion, this does not work because other backends can't
reliably see tuples in a temp table and so cannot run the RI checks
correctly.  Seems better to disallow this case than go back to accessing
temp tables through shared buffers.  Also, disallow FK references to
ON COMMIT DELETE ROWS tables.  We already caught this problem for normal
TRUNCATE, but the path used by ON COMMIT didn't check.
2003-09-19 21:04:20 +00:00
Tom Lane fc6b7c550d Latest version of gcc from Apple does not work well with -traditional-cpp
(it rejects some system header files...).  Use -no-cpp-precomp instead.
I think it is okay to change this unconditionally, but if we hear
complaints from people still using very old compilers on Darwin,
we could put in a test to see which switch the compiler likes.
2003-09-19 20:47:59 +00:00
Tom Lane 28847ae77d Seems like a bad idea that REINDEX TABLE supports (or thinks it does)
reindexing system tables without ignoring system indexes, when the
other two varieties of REINDEX disallow it.  Make all three act the same,
and simplify downstream code accordingly.
2003-09-19 19:57:42 +00:00
Michael Meskes 580e08a98b One small typo in preprocessor. 2003-09-19 14:13:16 +00:00
Michael Meskes df974272ec Removed superfluous return statement in get_data. 2003-09-19 14:06:21 +00:00
Michael Meskes 723a9bde33 - Accept output variables for FETCH in DECLARE statement.
- Synced parser.
- Allowed C variables to carry the name of prepared statements.
- Added Informix handling of datatype converion errors.
2003-09-18 13:12:23 +00:00
Barry Lind 215d965f0e Applied patch from Oliver Jowett to clean up some instances where the wrong
type was being reported for PREPAREs.

 Modified Files:
 	jdbc/org/postgresql/jdbc1/AbstractJdbc1Statement.java
 	jdbc/org/postgresql/test/jdbc2/ServerPreparedStmtTest.java
2003-09-18 04:14:27 +00:00
Barry Lind 7da6afef26 Small jdbc patch from Kim Ho at RedHat to fix some boolean problems
Modified Files:
 	jdbc/org/postgresql/jdbc1/AbstractJdbc1ResultSet.java
2003-09-18 04:09:02 +00:00
Barry Lind 47cb1c3f94 A minor fix to jdbc regression tests
Modified Files:
 	jdbc/org/postgresql/test/jdbc2/DatabaseMetaDataPropertiesTest.java
2003-09-18 03:58:16 +00:00
Tom Lane 6b73da67b2 Disallow converting a table to a view if it has triggers, indexes, or
child tables --- all cases that will trip various sanity checks elsewhere
in the system, as well as cases that should not occur in the only intended
use of this feature, namely coping with ancient pg_dump representation
of views.  Per bug report from Chris Pizzi.
2003-09-17 17:19:17 +00:00
Barry Lind e8839c2b6c Applied patch to jdbc from Kim Ho at RedHat, fixing improper handling of empty queries under the V3 protocol
Modified Files:
 	jdbc/org/postgresql/core/QueryExecutor.java
2003-09-17 08:21:36 +00:00
Barry Lind c020d67bc6 Applied patch for jdbc from Kim Ho at RedHat to more correctly deal with boolean values
Modified Files:
 	jdbc/org/postgresql/jdbc1/AbstractJdbc1ResultSet.java
2003-09-17 07:00:24 +00:00
Barry Lind 292048f186 Fixed jdbc to correctly report that constraints are supported
Modified Files:
 	jdbc/org/postgresql/jdbc1/AbstractJdbc1DatabaseMetaData.java
2003-09-17 06:42:47 +00:00
Barry Lind 33815bf657 Applied patch from Fernando Nasser of RedHat to fix some error messages
that would not get correctly looked up in the translation files for jdbc

 Modified Files:
 	jdbc/org/postgresql/errors.properties
 	jdbc/org/postgresql/jdbc2/AbstractJdbc2ResultSet.java
2003-09-17 05:14:52 +00:00
Barry Lind 0671b65b81 Applied patch from Kim Ho at redhat to improve boolean and bit handling
in the jdbc driver

 Modified Files:
 	jdbc/org/postgresql/jdbc1/AbstractJdbc1Statement.java
 	jdbc/org/postgresql/jdbc3/AbstractJdbc3Statement.java
2003-09-17 05:07:38 +00:00
Tatsuo Ishii ce90c0f504 Fix typo in comment 2003-09-17 04:25:29 +00:00
Tom Lane 7e06dbe1c2 Make psql correctly track the effects of SET CLIENT_ENCODING commands.
I thought I'd fixed this earlier, but I didn't get it right ...
2003-09-16 17:59:02 +00:00
Tatsuo Ishii 7b05ef5b63 fix typo in a comment 2003-09-16 07:47:06 +00:00
Tom Lane fc73264005 I don't care whether it's informix-compatible or not: #defining a word
like 'date' in a public header file is a damn fool idea.
2003-09-16 04:32:28 +00:00
Tom Lane b8f8896888 Fix some problems with dropped columns in plpython trigger functions. 2003-09-16 01:07:51 +00:00
Tom Lane 8723e37a26 Since SPI_modifytuple's natts argument is the number of attributes to be
changed, it should allow a zero value (implying no changes to make).
2003-09-16 00:50:09 +00:00
Tom Lane db18703b5a Fix LISTEN/NOTIFY race condition reported by Gavin Sherry. While a
really general fix might be difficult, I believe the only case where
AtCommit_Notify could see an uncommitted tuple is where the other guy
has just unlistened and not yet committed.  The best solution seems to
be to just skip updating that tuple, on the assumption that the other
guy does not want to hear about the notification anyway.  This is not
perfect --- if the other guy rolls back his unlisten instead of committing,
then he really should have gotten this notify.  But to do that, we'd have
to wait to see if he commits or not, or make UNLISTEN hold exclusive lock
on pg_listener until commit.  Either of these answers is deadlock-prone,
not to mention horrible for interactive performance.  Do it this way
for now.  (What happened to that project to do LISTEN/NOTIFY in memory
with no table, anyway?)
2003-09-15 23:33:43 +00:00
Tom Lane d73e1b33b5 Update regression test for message change. 2003-09-15 23:25:31 +00:00
Tom Lane daed6f4b94 Improve a couple of error messages per suggestions from Alvaro Herrera. 2003-09-15 22:28:58 +00:00
Peter Eisentraut 7ce5f25b5b Translation updates 2003-09-15 20:42:40 +00:00
Peter Eisentraut 2d13472c9e OK, some of these syntax errors should be given other codes. 2003-09-15 20:03:37 +00:00
Bruce Momjian 72ed916a1f Add errno value for thread *_r function call buffer too small. Improve
thread comments.
2003-09-15 02:30:29 +00:00
Bruce Momjian 24d41a9efc NetBSD needs reentrant funcs. 2003-09-15 02:17:49 +00:00
Peter Eisentraut a07c5a1225 Remove warnings for operations that have no effect when executed repeatedly. 2003-09-15 00:26:31 +00:00
Peter Eisentraut 2f9d32cded Run distprep target before creating list of files that contain translatable
strings in the backend, so that .l and .y files are included.  To that end,
don't make the .pot file a prerequisite on distprep.
2003-09-14 22:40:38 +00:00
Peter Eisentraut 20aaf64252 Allow translation of SQL help in psql. 2003-09-14 22:37:13 +00:00
Tom Lane 241cea18f7 Add missing support for Opteron (__x86_64__). 2003-09-14 20:21:18 +00:00
Tom Lane 0441e269ea Make pltcl create separate function objects when the same function is
used as trigger on different relations.  I am not convinced that Tcl
actually has to have this, but it seems a good idea to make it be
parallel to the other PLs that definitely do need it.
2003-09-14 17:25:54 +00:00
Tom Lane 96e63199f3 Fix plpython to generate separate cached procedure data for each
relation, when the same function is used as a trigger on more than
one relation.  This avoids crashes due to differing rowtypes for
different relations.  Per bug report from Lance Thomas, 7-Feb-03.
2003-09-14 17:13:06 +00:00
Bruce Momjian efebe2605e Since I haven't gotten a reply, can someone REVERT the lines in
src/Makefile.shlib that adds $(libdir)/$(soname) for
port,eq,unixware to $(soname)?

Larry Rosenman
2003-09-14 13:33:08 +00:00
Tom Lane b38c04335a Reconsider placement of MemoryContextCheck() call --- do after commit,
not before, to avoid duplication of effort.
2003-09-14 00:03:32 +00:00
Tom Lane 4cf6e9e081 Avoid corner cases where aset.c would unnecessarily make malloc()
requests of sizes that aren't powers of 2.  Per observation from
David Schultz, 28-Aug.
2003-09-13 22:25:38 +00:00
Tom Lane 94a13b8a11 Okay, I've had it with mktime() bugs. While chasing Torello Querci's
recent gripe, I discovered not one but two undocumented, undesirable
behaviors of glibc's mktime.  So, stop using it entirely, and always
rely on inversion of localtime() to determine the local time zone.
It's not even very much slower, as it turns out that mktime (at least
in the glibc implementation) also does repeated reverse-conversions.
2003-09-13 21:12:38 +00:00
Bruce Momjian cd47a4d3c4 With pg_autovacuum becoming increasingly popular it's important to
have a working stats collector.  This test is able to discover the
problem that was present in 7.4 Beta 2.

Manfred Koizar
2003-09-13 16:44:49 +00:00
Bruce Momjian c346ca8648 When I sent in the sslmode patch I forgot to update the
comments/examples in pg_hba.conf. This patch remedies that, adds a brief
explanation of the connection types, and adds a missing period in the
docs.

Jon Jensen
2003-09-13 16:43:38 +00:00
Bruce Momjian d7635e5c4f autoconf/autoheader run. 2003-09-13 16:39:51 +00:00
Bruce Momjian b041d3e3a1 Attempt threading in this order:
*      use non-*_r function names if they are all thread-safe
 *          (NEED_REENTRANT_FUNCS=no)
 *      use *_r functions if they exist (configure test)
 *      do our own locking and copying of non-threadsafe functions

New to this patch is the last option.
2003-09-13 14:49:51 +00:00
Barry Lind 509a9cd3f9 More SQLState updates from Kim Ho at Redhat.
Also a patch from Kris Jurka to correctly report SQLState support.

 Modified Files:
 	jdbc/org/postgresql/Driver.java.in
 	jdbc/org/postgresql/core/QueryExecutor.java
 	jdbc/org/postgresql/fastpath/Fastpath.java
 	jdbc/org/postgresql/geometric/PGbox.java
 	jdbc/org/postgresql/geometric/PGcircle.java
 	jdbc/org/postgresql/geometric/PGline.java
 	jdbc/org/postgresql/geometric/PGlseg.java
 	jdbc/org/postgresql/geometric/PGpath.java
 	jdbc/org/postgresql/geometric/PGpoint.java
 	jdbc/org/postgresql/jdbc1/AbstractJdbc1Connection.java
 	jdbc/org/postgresql/jdbc1/AbstractJdbc1ResultSet.java
 	jdbc/org/postgresql/jdbc1/AbstractJdbc1ResultSetMetaData.java
 	jdbc/org/postgresql/jdbc1/AbstractJdbc1Statement.java
 	jdbc/org/postgresql/jdbc2/AbstractJdbc2ResultSet.java
 	jdbc/org/postgresql/jdbc2/AbstractJdbc2ResultSetMetaData.java
 	jdbc/org/postgresql/jdbc2/Array.java
 	jdbc/org/postgresql/jdbc3/AbstractJdbc3DatabaseMetaData.java
 	jdbc/org/postgresql/util/PGmoney.java
 	jdbc/org/postgresql/util/PSQLState.java
2003-09-13 04:02:16 +00:00
Tom Lane 8b43e325eb Revert to our pre-7.4 behavior of identifying Unix-socket connections in
ps status as '[local]', not as 'localhost' as the code has been doing
recently.  That's too easily confused with TCP loopback connections,
and there is no good reason to change the behavior anyway.
2003-09-12 20:18:51 +00:00
Tom Lane b1d3de6b96 Someone (possibly me) foolishly reduced the response for failing
to create a TCP/IP socket from FATAL to LOG.  This was unwise;
historically we have expected socket conflicts to abort postmaster
startup.  Conflicts on port numbers with another postmaster can only
be detected reliably at the TCP socket level.
2003-09-12 19:33:59 +00:00
Bruce Momjian 9fc3b9330e Mark FreeBSD as non-thread-safe. 2003-09-12 16:49:34 +00:00
Bruce Momjian 06e3ec7a54 Implement compiler #error if spinlock code not found, add configure flag
to bypass the error, --without-spinlocks.
2003-09-12 16:10:27 +00:00
Bruce Momjian 69a46e9ce1 Enable Opteron/Itanium spinlocks. 2003-09-12 15:49:34 +00:00
Bruce Momjian 9182481bea Remove WIN32_CONSOLE support, at the request of the author. 2003-09-12 02:40:10 +00:00
Bruce Momjian aaafbdcfd3 Fix old mention of exec() in AttachSharedMemoryAndSemaphores comment. 2003-09-12 02:13:23 +00:00
Tom Lane 8ff2005c67 Message in the other exit from acquire_sample_rows(), as per update
from Mark Kirkwood.  Also show the sample size.
2003-09-11 23:12:31 +00:00
Tom Lane 47c7f9ef1c Try to make recently-added analyze log message look something like
the others in style.
2003-09-11 22:59:28 +00:00
Bruce Momjian 188eda0df2 Consistenly lowercase GUC variable names, in docs and error messages. 2003-09-11 18:30:39 +00:00
Bruce Momjian d768cb267b seemed like a typo in one of the appendix tables
Robert Treat
2003-09-11 16:22:42 +00:00
Tom Lane fdd93470fa Fix missed message update, per Alvaro Herrera. 2003-09-11 02:40:13 +00:00
Bruce Momjian d6a9b4e0b5 Update row count for \? output, used by pager. 2003-09-10 21:35:55 +00:00
Tom Lane 9cb4a28f47 Improve error message for cp or rm failur during create/drop database,
per recent discussions.
2003-09-10 20:24:09 +00:00
Tom Lane 336ebee2c0 copydir() is supposed to return on failure, not elog(ERROR). Reduce
ERROR to WARNING so we keep control.
2003-09-10 20:12:01 +00:00
Bruce Momjian d16b877612 Add HINT if CREATE FUNCTION specifies a valid language, but the language
isn't loaded into the database.
2003-09-10 19:59:23 +00:00
Michael Meskes 573f4500a3 Some uppercase type definitions were left. 2003-09-10 18:03:08 +00:00
Bruce Momjian 0f310ee703 Here is a patch to make PostgreSQL use a full path in DT_SONAME for
UnixWare.

Larry Rosenman
2003-09-10 03:56:33 +00:00
Peter Eisentraut 33d4c828fd Some "feature not supported" errors are better syntax errors, because the
feature they complain about isn't a feature or cannot be implemented without
definitional changes.
2003-09-09 23:22:21 +00:00
Tom Lane d0bfe7f100 Update comments about how locale settings are handled. 2003-09-09 15:19:31 +00:00
Barry Lind 62b53accd4 Clean up some unused import warnings in the example jdbc code 2003-09-09 11:24:04 +00:00
Barry Lind 5cdf771d8a Additional SQLState work for JDBC - thanks to Kim Ho at Redhat for input on this
Modified Files:
 	jdbc/build.xml jdbc/org/postgresql/core/QueryExecutor.java
 	jdbc/org/postgresql/jdbc1/AbstractJdbc1Connection.java
 	jdbc/org/postgresql/jdbc1/AbstractJdbc1DatabaseMetaData.java
 	jdbc/org/postgresql/jdbc1/AbstractJdbc1ResultSet.java
 	jdbc/org/postgresql/jdbc1/AbstractJdbc1Statement.java
 	jdbc/org/postgresql/jdbc2/AbstractJdbc2Statement.java
 	jdbc/org/postgresql/util/PSQLState.java
2003-09-09 10:49:16 +00:00
Michael Meskes fcdf0e22fc - Added Dave patch for Informix handling of numeric/int conversion.
- Changed all new datatypes to lowercase.
- Fixed rounding bug in numerical types.
2003-09-09 10:46:42 +00:00
Barry Lind 05dddf40c2 Opps, can't forget the new file. This is part of the last commit to apply
the redhat patch for SQLState support.

 Added Files:
 	PSQLState.java
2003-09-08 17:45:35 +00:00
Barry Lind 0378a269f3 This set of changes applies a patch from KHO at redhat to add some SQLState
support to the jdbc driver.
That patch needed some work: it assumed the sqlcode in a server message was
fixed in its position, the patch lost the ability to pass exceptions, and the
patch missed a couple of places where server errors where being received.
In addition to fixing the above, I also added full support for the V3 protocol
error message syntax, I reversed the order of arguments in the PSQLException
constructor to more closely follow the constructors for SQLException, I changed
the new constructors that take PSQLState to take Object for additional
parameters as the old ones did.
Still todo are to add SQLState values to all existing exceptions thrown in the
driver and add support for parsing the V3 protocol format for notices.

 Modified Files:
 	jdbc/build.xml jdbc/org/postgresql/Driver.java.in
 	jdbc/org/postgresql/errors.properties
 	jdbc/org/postgresql/core/Encoding.java
 	jdbc/org/postgresql/core/PGStream.java
 	jdbc/org/postgresql/core/QueryExecutor.java
 	jdbc/org/postgresql/fastpath/Fastpath.java
 	jdbc/org/postgresql/jdbc1/AbstractJdbc1Connection.java
 	jdbc/org/postgresql/jdbc1/AbstractJdbc1ResultSet.java
 	jdbc/org/postgresql/jdbc1/AbstractJdbc1Statement.java
 	jdbc/org/postgresql/jdbc2/AbstractJdbc2ResultSet.java
 	jdbc/org/postgresql/jdbc2/AbstractJdbc2Statement.java
 	jdbc/org/postgresql/util/MessageTranslator.java
 	jdbc/org/postgresql/util/PSQLException.java
2003-09-08 17:30:22 +00:00
Tom Lane e702b04cf4 Avoid using s_addr as a local variable name, to work around broken
system headers on Unixware.
2003-09-08 00:56:13 +00:00
Tom Lane 48beecda7c Remove geqo_random_seed parameter. Having geqo reset the global random()
sequence every time it's called is bogus --- it interferes with user
control over the seed, and actually decreases randomness overall
(because a seed based on time(NULL) is pretty predictable).  If you really
want a reproducible result from geqo, do 'set seed = 0' before planning
a query.
2003-09-07 15:26:54 +00:00
Tom Lane 75c35e0f31 Remove check on source address of a statistics packet. Check was broken
by recent IPv6 changes, and since it's redundant with a kernel-level check
anyway, it seems not worth trying to fix it.  Per recent discussions.
2003-09-07 14:44:40 +00:00
Bruce Momjian 4b407f6c3c Changes for MinGW/WIN32:
o allow configure to see include/port/win32 include files
        o add matching Win32 accept() prototype
        o allow pg_id to compile with native Win32 API
        o fix invalide mbvalidate() function calls (existing bug)
        o allow /scripts to compile with native Win32 API
        o add win32.c to Win32 compiles (already in *.mak files)
2003-09-07 03:43:57 +00:00
Tom Lane 7703e55c32 Make the default pg_hba.conf include an entry for ::1 only if configure
set HAVE_IPV6.  Per recent discussions.
2003-09-07 03:36:03 +00:00
Tom Lane f4ed650996 load_file() has to remove pre-existing shlibs that match the new file
on either name or inode; otherwise load_external_function() won't do
anything.  At least on Linux, it appears that recompiling a shlib leads
to a new file with a different inode, so the old code failed to detect
a match.
2003-09-07 02:18:01 +00:00
Peter Eisentraut 3e20a72603 Make all valid uses of the COLLATE clause yield the same result: a syntax
error.  There is no point in providing some kind of forward compatibility
now, because no one can tell what a future implementation will look like.
2003-09-06 14:01:51 +00:00
Bruce Momjian 4060f07578 Rename variables for clarity. 2003-09-06 01:41:56 +00:00
Tom Lane 92aa462247 Second try at IPv4-to-v6 mapping code; avoid assuming that the struct
returned by getaddrinfo_all will have enough room for an IPv6 address.
2003-09-05 23:07:21 +00:00
Tom Lane 3c9bb8886d Allow IPv4-format entries in pg_hba.conf to match IPv6 connections
that have IPv4-embedded-in-IPv6 addresses.  Per idea of Andreas Pflug.
2003-09-05 20:31:36 +00:00
Bruce Momjian e26af972b5 ifdef out pqGetpwuid() because Win32 doesn't have struct passwd.
Needed for libpq builds, not just for native Win32 port, and probably
for cygwin too.
2003-09-05 17:43:40 +00:00
Bruce Momjian 702c91b4ff This fixes three minor typos in hba.c.
--
Alvaro Herrera (<alvherre[a]dcc.uchile.cl>)
2003-09-05 03:57:13 +00:00
Bruce Momjian 04aabb034f Clean up WIN32_CONSOLE code. 2003-09-05 02:31:10 +00:00