Commit Graph

18935 Commits

Author SHA1 Message Date
Tom Lane
4867afef7a Code cleanup in path.c and exec.c. Handle Windows drive and network specs
everywhere not just some places, get rid of . and .. when joining path
sections together.  This should eliminate most of the ugly paths like
/foo/bar/./baz that we've been generating.
2004-11-06 01:16:22 +00:00
Tom Lane
3d6e538edf pred_test() logic was being too narrow-minded about where it might find
RestrictInfo nodes in the query expression.  Per example from James Robinson.
2004-11-05 20:45:10 +00:00
Tom Lane
98e8b48053 Create 'default_tablespace' GUC variable that supplies a TABLESPACE
clause implicitly whenever one is not given explicitly.  Remove concept
of a schema having an associated tablespace, and simplify the rules for
selecting a default tablespace for a table or index.  It's now just
(a) explicit TABLESPACE clause; (b) default_tablespace if that's not an
empty string; (c) database's default.  This will allow pg_dump to use
SET commands instead of tablespace clauses to determine object locations
(but I didn't actually make it do so).  All per recent discussions.
2004-11-05 19:17:13 +00:00
Peter Eisentraut
0ed3c7665e Small message clarifications 2004-11-05 17:11:34 +00:00
Peter Eisentraut
a23db90ce0 Translation update 2004-11-05 17:08:11 +00:00
Bruce Momjian
655b4741fc Fix typo:
<   one column or expression indexes, perhaps using per=index statistics
>   one column or expression indexes, perhaps using per-index statistics
2004-11-05 03:11:54 +00:00
Bruce Momjian
6c3083afe1 Add items:
< * Add transaction_timestamp(), statement_timestamp(), clock_timestamp() functionality
> * Add transaction_timestamp(), statement_timestamp(), clock_timestamp()
>   functionality
278c279
<   one column
>   one column or expression indexes, perhaps using per=index statistics
846a848
> * Remove kerberos4 from source tree?
2004-11-05 03:04:36 +00:00
Bruce Momjian
54691d414d Fix psql \e and \! for Win32. 2004-11-04 22:25:14 +00:00
Tom Lane
e48b9b5570 Minor documentation updates from Simon Riggs. 2004-11-04 19:08:42 +00:00
Bruce Momjian
e505a70c7f Add:
>
> * Add fillfactor to control reserved free space during index creation
2004-11-04 17:09:54 +00:00
Bruce Momjian
b976e92431 Add:
> * Allow accurate statistics to be collected on indexes with more than
>   one column
2004-11-04 16:53:58 +00:00
Bruce Momjian
2c793d1c87 Updates from Simon Riggs:
<   that can spam more than one table.
>   that can span more than one table.
239c239
<   rather than just col1
>   rather than just col1; also called skip-scanning.
641c641,642
< * Add free-behind capability for large sequential scans [fadvise]
> * Allow free-behind capability for large sequential scans, perhaps using
>   posix_fadvise() [fadvise]
2004-11-04 16:49:53 +00:00
Bruce Momjian
c894e7e8e0 Update bitmap index entries:
< * Allow the creation of bitmap indexes which can be quickly combined
<   with other bitmap indexes
> * Allow non-bitmap indexes to be combined by creating bitmaps in memory
259,261c258,259
<   combined.  Such indexes could be more compact if there are few unique
<   value.  Also, perhaps they can be lossy requiring a scan of the heap page
<   to find matching rows.
>   combined.  They can index by tid or can be lossy requiring a scan of the
>   heap page to find matching rows.
263c261,262
< * Allow non-bitmap indexes to be combined
> * Allow the creation of on-disk bitmap indexes which can be quickly
>   combined with other bitmap indexes
265,266c264
<   Do lookups on non-bitmap indexes and create bitmaps in memory that can be
<   combined with other indexes.
>   Such indexes could be more compact if there are few unique value.
2004-11-04 16:19:46 +00:00
Neil Conway
c874e7727a Fix build break, per report from Kris Jurka. Rename README to README.mysql,
for consistency.
2004-11-04 09:12:35 +00:00
Neil Conway
8f012ac89b Contrib build fixes:
- add some additional files to the dbmirror install (approved by
ssinger)

- add a makefile for contrib/mysql, and add mysql to the list of
contribs build by default

- use xml2-config to pickup -I flags for libxml2 in contrib/xml and
contrib/xml2

Original work from Martin Pitt of Debian, minor cleanups by Neil
Conway.
2004-11-04 06:09:26 +00:00
Bruce Momjian
4fbdfbffc6 Update:
< * Use bitmaps to combine existing indexes [performance]
> * Allow the creation of bitmap indexes which can be quickly combined
>   with other bitmap indexes
255,257c256,266
<   Bitmap indexes allow single indexed columns to be combined to
<   dynamically create a composite index to match a specific query. Each
<   index is a bitmap, and the bitmaps are AND'ed or OR'ed to be combined.
>   Bitmap indexes index single columns that can be combined with other bitmap
>   indexes to dynamically create a composite index to match a specific query.
>   Each index is a bitmap, and the bitmaps are bitwise AND'ed or OR'ed to be
>   combined.  Such indexes could be more compact if there are few unique
>   value.  Also, perhaps they can be lossy requiring a scan of the heap page
>   to find matching rows.
>
> * Allow non-bitmap indexes to be combined
>
>   Do lookups on non-bitmap indexes and create bitmaps in memory that can be
>   combined with other indexes.
2004-11-04 03:57:58 +00:00
Bruce Momjian
c21214f1c0 Honor TMPDIR.
Add the script name to the tmp directory name.

Move trap up now that the dir is more unique.
2004-11-04 02:04:10 +00:00
Bruce Momjian
ed9e8f5480 Move trap to after the directory is created. 2004-11-03 23:06:52 +00:00
Bruce Momjian
0f7a2a5fbe Create temporary files securely. 2004-11-03 22:46:15 +00:00
Bruce Momjian
a809899680 Update tablespace temp usage item:
<   This perhaps should use a round-robin allocation system where several
<   tablespaces are used in a cycle.  The cycle pointer should be global.
>   It could start with a random tablespace from a supplied list and cycle
>   through the list.
2004-11-03 22:20:52 +00:00
Bruce Momjian
f6b4707f1b Add idea on auto-cluster:
< 	  store heap rows in hashed groups.
> 	  store heap rows in hashed groups, perhaps using a user-supplied
> 	  hash function.
2004-11-03 19:38:20 +00:00
Bruce Momjian
aafbf33d96 Add idea on auto-cluster:
< 	  automatically access the heap data too.
> 	  automatically access the heap data too.  A third idea would be to
> 	  store heap rows in hashed groups.
2004-11-03 19:28:11 +00:00
Neil Conway
f4127feacf Don't create $DESTDIR/include/internal/lib, as it is no longer used. 2004-11-03 07:38:08 +00:00
Peter Eisentraut
d0066b9fa4 Tab completion for CREATE TABLESPACE arguments. Patch by Joachim Wieland. 2004-11-02 16:10:05 +00:00
Bruce Momjian
745bb9600f Update:
< * Add a GUC variable to control the tablespace for temporary objects
> * Add a GUC variable to control the tablespace for temporary objects and
>   sort files
>
>   This perhaps should use a round-robin allocation system where several
>   tablespaces are used in a cycle.  The cycle pointer should be global.
>
2004-11-02 14:49:27 +00:00
Peter Eisentraut
bb2d1ce8f1 Translation updates 2004-11-02 09:28:41 +00:00
Peter Eisentraut
005b1b5fc8 Translation updates 2004-11-02 09:20:22 +00:00
Bruce Momjian
fa82cddfd2 Move pthread.h test up to use PTHREAD_CFLAGS.
Kris Jurka
2004-11-02 05:44:45 +00:00
Bruce Momjian
0c3663b47d Add comment to postmaster.c that get_progname() will call exit if it
can't strdup().
2004-11-02 03:34:50 +00:00
Bruce Momjian
b0830e39c3 Add comment about memory failure of get_progname exiting the postmaster:
exit(1);    /* This could exit the postmaster */
2004-11-02 03:09:06 +00:00
Tom Lane
c4acbb843b timestamptz_trunc() should only recalculate the timezone when truncating
to DAY precision or coarser; leave the timezone alone when precision is
HOUR or less.  This avoids surprises for inputs near a DST transition
time, as per example from Matthew Gabeler-Lee.  (The only reason we
recalculate at all is so that outputs that are supposed to represent
days will come out as local midnight, and that's not relevant for sub-day
precision.)
2004-11-01 22:00:30 +00:00
Tom Lane
5ba04cd9f1 Invent pg_next_dst_boundary() and rewrite DetermineLocalTimeZone() to
use it, as per my proposal of yesterday.  This gives us a means of
determining the zone offset to impute to an unlabeled timestamp that
is both efficient and reliable, unlike all our previous tries involving
mktime() and localtime().  The behavior for invalid or ambiguous times
at a DST transition is fixed to be really and truly "assume standard
time", fixing a bug that has come and gone repeatedly but was back
again in 7.4.  (There is some ongoing discussion about whether we should
raise an error instead, but for the moment I'll make it do what it was
previously intended to do.)
2004-11-01 21:34:44 +00:00
Bruce Momjian
7fad5fff0d That's just the lovely way windows handles a "segfault". Gotta be really
interesting for MS to catch all those dumps...

Anyway. Oops. Seems I ran my regression tests with the old psql, and
just managed to update the backend, when I tested that patch. Turns out
there are codepaths where we'd access the Critical Section before it was
initialized. Attached patch breaks the initializeation off to a separate
part and adds that one to a much earlier position in the program.

Magnus Hagander
2004-11-01 19:21:50 +00:00
Bruce Momjian
9c3d654a16 Update comment to point to proper file. 2004-11-01 14:33:10 +00:00
Dave Cramer
7914deecb8 fixed bug in segfault REVOKE statement 2004-11-01 13:17:12 +00:00
Neil Conway
feac3364ed Trivial fixes for English grammar in contrib/btree_gist and contrib/rtree_gist
documentation.
2004-11-01 11:11:13 +00:00
Bruce Momjian
584bfe3d70 Adjust use of sizeof(EXE). 2004-11-01 04:46:56 +00:00
Bruce Momjian
b2b585fb2d Clarify coding of .exe patch 2004-11-01 04:25:18 +00:00
Bruce Momjian
a21c00d742 Update:
< * Add a GUC variable to control temporary and TOAST tablespace usage
> * Add a GUC variable to control the tablespace for temporary objects
2004-11-01 02:22:05 +00:00
Bruce Momjian
a9b6a5ca41 Add:
> * Add a GUC variable to control temporary and TOAST tablespace usage
2004-11-01 00:28:40 +00:00
Tom Lane
e837e4be8f Use psql -q option instead of 2>/dev/null during first invocation
of psql; this should make it easier to diagnose client-side problems,
such as library version mismatch.  Also, consistently use -X option
to avoid problems from weird .psqlrc settings.
2004-10-31 19:14:16 +00:00
Tom Lane
44e8a968e3 Invent a new, more thread-safe version of PQrequestCancel, called PQcancel.
Use this new function in psql.  Implement query cancellation in psql for
Windows.  Code by Magnus Hagander, documentation and minor editorialization
by Tom Lane.
2004-10-30 23:11:27 +00:00
Tom Lane
80559fa9e9 I found a corner case in which it is possible for RI_FKey_check's call
of HeapTupleSatisfiesItself() to trigger a hint-bit update on the tuple:
if the row was updated or deleted by a subtransaction of my own transaction
that was later rolled back.  This cannot occur in pre-8.0 of course, so
the hint-bit patch applied a couple weeks ago is OK for existing releases.
But for 8.0 it seems we had better fix things so that RI_FKey_check can
pass the correct buffer number to HeapTupleSatisfiesItself.  Accordingly,
add fields to the TriggerData struct to carry the buffer ID(s) for the
old and new tuple(s).  There are other possible solutions but this one
seems cleanest; it will allow other AFTER-trigger functions to safely
do tqual.c calls if they want to.  Put new fields at end of struct so
that there is no API breakage.
2004-10-30 20:53:06 +00:00
Tom Lane
88868d4fbc Change COMMIT back to the old behavior of emitting command tag COMMIT,
not ROLLBACK, for the case of COMMIT outside a transaction block.
Alvaro Herrera
2004-10-30 20:44:43 +00:00
Peter Eisentraut
e5ac8db035 Translation update 2004-10-30 08:23:32 +00:00
Tom Lane
23f264d125 Rearrange order of pre-commit operations: must close cursors before doing
ON COMMIT actions.  Per bug report from Michael Guerin.
2004-10-29 22:19:53 +00:00
Tom Lane
7d38e59448 Fix broken example for PREPARE. 2004-10-29 19:40:33 +00:00
Bruce Momjian
4eb1165ff3 No need to set errorMessage length --- already set in goto target. 2004-10-29 19:30:02 +00:00
Tom Lane
f05cfd2c73 Fix failure to think clearly about encoding conversion errors in COPY.
We can't regurgitate the unconverted string as I first thought, because
the elog.c mechanisms will assume the error message data is in the server
encoding and attempt a reverse conversion.  Eventually it might be worth
providing a short-circuit path to support this, but for now the simplest
solution is to abandon trying to report back the line contents after a
conversion failure.  Per bug report from Sil Lee, 27-Oct-2004.
2004-10-29 19:18:22 +00:00
Bruce Momjian
08510856a4 Set errorMessage length in PQrequestCancel() in all places. 2004-10-29 17:53:13 +00:00