OSDN Git Service

pg-rex/syncrep.git
22 years agoCompile fix for jdbc1.
Bruce Momjian [Sat, 4 Aug 2001 19:46:56 +0000 (19:46 +0000)]
Compile fix for jdbc1.

22 years agoThis patch is because Hurd does not support NOFILE. It is against current
Bruce Momjian [Sat, 4 Aug 2001 19:42:34 +0000 (19:42 +0000)]
This patch is because Hurd does not support NOFILE.  It is against current
cvs.

The Debian bug report says, "The upstream source makes use of NOFILE
unconditionalized.  As the Hurd doesn't have an arbitrary limit on the
number of open files, this is not defined.  But _SC_OPEN_MAX works fine
and returns 1024 (applications can increase this as they want), so I
suggest the below diff.  Please forward this upstream, too."

Oliver Elphick

22 years agoThis patch adds the following to the FTI module:
Bruce Momjian [Sat, 4 Aug 2001 19:41:00 +0000 (19:41 +0000)]
This patch adds the following to the FTI module:

* The ability to index more than one column in a table with a single
trigger.
* All uses of sprintf changed to snprintf to prevent users from crashing
Postgres.
* Error messages made more consistent
* Some changes made to bring it into line with coding requirements for
triggers specified in the docs.  (ie. check you're a trigger before casting
your context)
* The perl script that generate indices has been updated to support indexing
multiple columns in a table.
* Fairly well tested in our development environment indexing a food
database's brand and description fields.  The size of the fti index is
around 300,000 rows.
* All docs and examples upgraded.  This includes specifying more efficient
index usage that was specified before, better examples that don't produce
duplicates, etc.

Christopher Kings-Lynne & Brett

22 years agoAdd LOCK A,B,C functionality as LOCK A;LOCK B;LOCK C; as agreed.
Bruce Momjian [Sat, 4 Aug 2001 19:39:00 +0000 (19:39 +0000)]
Add LOCK A,B,C functionality as LOCK A;LOCK B;LOCK C; as agreed.

Neil Padgett

22 years agoLooks okay in a quick glance, except error message spelling is poor:
Bruce Momjian [Sat, 4 Aug 2001 19:36:45 +0000 (19:36 +0000)]
Looks okay in a quick glance, except error message spelling is poor:

! #define ARRISNULL(x) ( (x) ? ( ( ARR_NDIM(x) == NDIM ) ? ( ( ARRNELEMS( x ) )
? 0 : 1 ) : ( ( ARR_NDIM(x) ) ? (elog(ERROR,"Array is not one-dimentional: %d di
mentions", ARR_NDIM(x)),1) : 1 ) ) : 1 )

Should be "one-dimensional" and "dimensions".  Bruce, would you fix that
when you apply it?

Tom

22 years ago1. Fixed error with empty array ( '{}' ),
Bruce Momjian [Sat, 4 Aug 2001 19:35:32 +0000 (19:35 +0000)]
1. Fixed error with empty array ( '{}' ),
   test data changed to include such data
2. Test a dimension of an array ( we support only one-dimension)

Oleg Bartunov

22 years ago> 1) When a row is retrieved, and then a SQL_FETCH_FIRST is issued, the
Bruce Momjian [Sat, 4 Aug 2001 19:33:49 +0000 (19:33 +0000)]
> 1) When a row is retrieved, and then a SQL_FETCH_FIRST is issued, the
check
> in convert.c
> does not consider the fact that the value in the field has been altered to
> be a '1' if the
> backend handed it a 't'.  The net result being that the first row on any
> subsequent queries
> has all it's boolean set to 0.

Aidan Mountford

22 years agoAttached is a patch that does the following:
Bruce Momjian [Sat, 4 Aug 2001 19:32:04 +0000 (19:32 +0000)]
Attached is a patch that does the following:

1) improves performance of commit/rollback by reducing number of round
trips to the server
2) uses 7.1 functionality for setting the transaction isolation level
3) backs out a patch from 11 days ago because that code failed to
compile under jdk1.1

Details:

1)  The old code was doing the following for each commit:
   commit
   begin
   set transaction isolation level xxx
thus a call to commit was performing three round trips to the database.
  The new code does this in one round trip as:
   commit; begin; set transaction isolation level xxx

In a simple test program that performs 1000 transactions (where each
transaction does one simple select inside that transaction) has the
following before and after timings:

Client and Server on same machine

old         new
---         ---
1.877sec    1.405sec   25.1% improvement

Client and Server on different machines
old         new
---         ---
4.184sec    2.927sec   34.3% improvement

(all timings are an average of four different runs)

2)  The driver was using 'set transaction isolation level xxx' at the
begining of each transaction, instead of using the new 7.1 syntax of
'set session characteristics as transaction isolation level xxx' which
only needs to be done once instead of for each transaction.  This is
done conditionally (i.e. if server is 7.0 or older do the old behaviour,
else do the new behaviour) to not break backward compatibility.  This
also required the movement of some code to check/test database version
numbers from the DatabaseMetaData object to the Connection object.

3) Finally while testing, I discovered that the code that was checked in
  11 days ago actually didn't compile.  The code in the patch for
Connection.setCatalog() used Properties.setProperty() which only exists
in JDK1.2 or higher.  Thus compiling the JDBC1 driver failed as this
method doesn't exist.  Thus I backed out that patch.

Barry Lind

22 years agoFix handling of SIGCHLD, per recent pghackers discussion: on some
Tom Lane [Sat, 4 Aug 2001 00:14:43 +0000 (00:14 +0000)]
Fix handling of SIGCHLD, per recent pghackers discussion: on some
platforms system(2) gets confused unless the signal handler is set to
SIG_DFL, not SIG_IGN.  pgstats.c now uses pqsignal() as it should,
not signal().  Also, arrange for the stats collector process to show
a reasonable ID in 'ps', rather than looking like a postmaster.

22 years agoFix residual breakage from Windows socket-errno patch: the routines
Tom Lane [Fri, 3 Aug 2001 22:11:39 +0000 (22:11 +0000)]
Fix residual breakage from Windows socket-errno patch: the routines
that should use regular errno, not WSAGetLastError(), now do so again.

22 years agoFix win32.mak to support MULTIBYTE build --- it was pulling in several
Tom Lane [Fri, 3 Aug 2001 22:09:55 +0000 (22:09 +0000)]
Fix win32.mak to support MULTIBYTE build --- it was pulling in several
backend files that it shouldn't anymore, causing compile failures.
Per report from Darko Prenosil.

22 years agoFor some reason, CREATE TYPE has only accepted alignment specifications
Tom Lane [Fri, 3 Aug 2001 20:47:40 +0000 (20:47 +0000)]
For some reason, CREATE TYPE has only accepted alignment specifications
of 'int4' and 'double'.  Add 'char' and 'int2' to allow user-defined types
to access the full set of supported alignments.

22 years agoFix pg_dump so that comments on views are dumped in the proper sequence.
Tom Lane [Fri, 3 Aug 2001 19:43:05 +0000 (19:43 +0000)]
Fix pg_dump so that comments on views are dumped in the proper sequence.
Dump the alignment and storage information for user-defined types (how'd
that manage to slip through the cracks?), and don't dump 'shell' types
that don't have typisdefined set.  Fix badly broken logic for dependencies
of type definitions (did not work for more than one user-defined type...).
Avoid memory leakage within pg_dump by being more careful to release
storage used by PQExpBuffer objects.

22 years agoClean up various memory leaks within plpgsql, and re-enable the
Tom Lane [Thu, 2 Aug 2001 21:31:23 +0000 (21:31 +0000)]
Clean up various memory leaks within plpgsql, and re-enable the
exec_eval_simple_expr shortcut, which was diked out in 7.1 because it
leaked too much space.  CVS tip now leaks no memory in Chris Ruprecht's
example, which formerly leaked to the tune of 500 MB.  (Much of this
is work that Jan already did; this commit just cleans up around the
edges.)

22 years agoAdd a SPI_copytupledesc function that parallels SPI_copytuple --- ie,
Tom Lane [Thu, 2 Aug 2001 18:08:43 +0000 (18:08 +0000)]
Add a SPI_copytupledesc function that parallels SPI_copytuple --- ie,
it copies the tupdesc into upper-executor memory.  This is necessary
for returning tuple descriptors without leaking all of lower exec memory.

22 years agoTweak memory context sizing for saved SPI plans.
Tom Lane [Thu, 2 Aug 2001 16:05:23 +0000 (16:05 +0000)]
Tweak memory context sizing for saved SPI plans.

22 years agoFix some poor decisions about sizing of trigger-related memory contexts.
Tom Lane [Thu, 2 Aug 2001 15:59:28 +0000 (15:59 +0000)]
Fix some poor decisions about sizing of trigger-related memory contexts.

22 years agoI noticed that pltcl didn't have any way to get to SPI_lastoid like plpgsql does...
Bruce Momjian [Thu, 2 Aug 2001 15:45:55 +0000 (15:45 +0000)]
I noticed that pltcl didn't have any way to get to SPI_lastoid like plpgsql does.. I started using pltcl a lot because I like to decide when and how my queries get planned.. so I put one together really quick

Sorry I don't have the original around to make a quick diff, but its a very small change... I think this should be in the next release, there's no reason not to have it.

its a function with no expected arguments, so you can use it like:
spi_exec "INSERT INTO mytable(columns...) VALUES(values..)"
set oid [spi_lastoid]
spi_exec "SELECT mytable_id from mytable WHERE oid=$oid"

It just didn't make sense for me to use plpgsql and pltcl, or just screw
them both and use SPI from C.

bob@redivi.com

22 years agoEven though SO_PEERCRED is probably totally unportable, might as well
Tom Lane [Thu, 2 Aug 2001 14:39:35 +0000 (14:39 +0000)]
Even though SO_PEERCRED is probably totally unportable, might as well
declare the getsockopt parameter as ACCEPT_TYPE_ARG3 to be consistent
with our other uses of getsockopt.

22 years agoRemove SO_PASSCRED step in ident_unix --- according to Helge Bahmann,
Tom Lane [Thu, 2 Aug 2001 14:27:40 +0000 (14:27 +0000)]
Remove SO_PASSCRED step in ident_unix --- according to Helge Bahmann,
that call is not needed to prepare for SO_PEERCRED.  Also, simplify code
so that #ifdef SO_PEERCRED appears in only one place, to make it easier
to support other platforms with variants of this capability.

22 years agoDigging through previous discussion of this patch, I note where Peter E.
Tom Lane [Wed, 1 Aug 2001 23:52:50 +0000 (23:52 +0000)]
Digging through previous discussion of this patch, I note where Peter E.
points out how silly it is to use Autoconf to test for a preprocessor
symbol, when one can equally easily #ifdef on the symbol itself.
Accordingly, revert configure to prior state and do it that way.

22 years agoSupport ident authentication on local (Unix) socket connections, if the
Tom Lane [Wed, 1 Aug 2001 23:25:39 +0000 (23:25 +0000)]
Support ident authentication on local (Unix) socket connections, if the
system supports SO_PEERCRED requests for Unix sockets.  This is an
amalgamation of patches submitted by Helge Bahmann and Oliver Elphick,
with some editorializing by yours truly.

22 years agoAttached is a trivial patch to add ANALYZE to the tab complete file in
Bruce Momjian [Wed, 1 Aug 2001 18:45:50 +0000 (18:45 +0000)]
Attached is a trivial patch to add ANALYZE to the tab complete file in
psql.

Randy Hall

22 years agoAttached ia a patch to enable window size detection code of psql for Solaris
Bruce Momjian [Wed, 1 Aug 2001 18:44:54 +0000 (18:44 +0000)]
Attached ia a patch to enable window size detection code of psql for Solaris
platform.

TIOCGWINSZ is defined as follows:

    Linux       asm/ioctls.h
    FreeBSD     sys/ttycom.h. This file is included by sys/ioctl.h.
    Solaris     sys/termios.h

This patch tells print.c to know TIOCGWINSZ on Solaris platform. Same code is
founded in src/bin/psal/common.c.

Kenji Sugita

22 years agoThe fti.pl supplied with the fulltextindex module generate ALL possible
Bruce Momjian [Wed, 1 Aug 2001 18:40:12 +0000 (18:40 +0000)]
The fti.pl supplied with the fulltextindex module generate ALL possible
substrings of two characters or greater, and is case-sensitive.

This patch makes it work correctly.  It generates only the suffixes of each
word, plus lowercases them - as specified by the README file.

This brings it into line with the fti.c function, makes it case-insensitive
properly, removes the problem with duplicate rows being returned from an fti
search and greatly reduces the size of the generated index table.

It was written by my co-worker, Brett Toolin.

Christopher Kings-Lynne

22 years agoMessage typo was fixed in sources, but not in de.po.
Tom Lane [Wed, 1 Aug 2001 14:07:41 +0000 (14:07 +0000)]
Message typo was fixed in sources, but not in de.po.

22 years agoWhen invoked with -i (initialize mode), split the copy command every
Tatsuo Ishii [Wed, 1 Aug 2001 01:08:17 +0000 (01:08 +0000)]
When invoked with -i (initialize mode), split the copy command every
10000 tuples, rather than one big copy. This will prevent generating
too much WAL logs.

22 years agoAdd mention of SIGHUP for pg_ident.conf.
Bruce Momjian [Wed, 1 Aug 2001 00:52:19 +0000 (00:52 +0000)]
Add mention of SIGHUP for pg_ident.conf.

22 years agoAdd documentation changes for new pg_hba.conf behavior.
Bruce Momjian [Wed, 1 Aug 2001 00:48:52 +0000 (00:48 +0000)]
Add documentation changes for new pg_hba.conf behavior.

22 years agoCleanup code for preparsing pg_hba.conf and pg_ident.conf. Store line
Tom Lane [Tue, 31 Jul 2001 22:55:45 +0000 (22:55 +0000)]
Cleanup code for preparsing pg_hba.conf and pg_ident.conf.  Store line
number in the data structure so that we can give at least a minimally
useful idea of where the mistake is when we issue syntax error messages.
Move the ClientAuthentication() call to where it should have been in
the first place, so that postmaster memory releasing can happen in a
reasonable place also.  Update obsolete comments, correct one real bug
(auth_argument was not picked up correctly).

22 years agoFurther thought shows that has_distinct_on_clause() needs to take much
Tom Lane [Tue, 31 Jul 2001 20:16:33 +0000 (20:16 +0000)]
Further thought shows that has_distinct_on_clause() needs to take much
more care with resjunk tlist entries than it was doing.  The original
coding ignored resjunk entries entirely, but a resjunk entry that is
in either the distinctClause or sortClause lists indicates that DISTINCT
ON was used.  It's important for ruleutils.c to get this right, else we
may dump views using DISTINCT ON incorrectly.

22 years agoFix optimizer to not try to push WHERE clauses down into a sub-SELECT that
Tom Lane [Tue, 31 Jul 2001 17:56:31 +0000 (17:56 +0000)]
Fix optimizer to not try to push WHERE clauses down into a sub-SELECT that
has a DISTINCT ON clause, per bug report from Anthony Wood.  While at it,
improve the DISTINCT-ON-clause recognizer routine to not be fooled by out-
of-order DISTINCT lists.

22 years agoUpdate 'translate' function description. translate does character set
Bruce Momjian [Tue, 31 Jul 2001 17:09:30 +0000 (17:09 +0000)]
Update 'translate' function description.  translate does character set
mapping, not character strings.

22 years agoUpdate info on pg_hba.conf comments.
Bruce Momjian [Tue, 31 Jul 2001 15:45:20 +0000 (15:45 +0000)]
Update info on pg_hba.conf comments.

22 years agoUpdate TODO list.
Bruce Momjian [Tue, 31 Jul 2001 13:21:31 +0000 (13:21 +0000)]
Update TODO list.

22 years agoRemove WIN32_NON_BLOCKING_CONNECTIONS tests, since we don't need 'em
Tom Lane [Tue, 31 Jul 2001 02:14:49 +0000 (02:14 +0000)]
Remove WIN32_NON_BLOCKING_CONNECTIONS tests, since we don't need 'em
anymore.

22 years agoFix unportable coding for FRONTEND case.
Tom Lane [Tue, 31 Jul 2001 02:02:45 +0000 (02:02 +0000)]
Fix unportable coding for FRONTEND case.

22 years agoChange SQL commands embedded in the initdb script from the style
Tom Lane [Tue, 31 Jul 2001 01:16:09 +0000 (01:16 +0000)]
Change SQL commands embedded in the initdb script from the style
echo "command" | postgres
to the style
postgres <<EOF
command
EOF
This makes the script more legible (IMHO anyway) by reducing the need
to escape quotes, and allows us to execute successive SQL commands in
a single standalone-backend run, rather than needing to start a new
standalone backend for each command.  With all the CREATE VIEWs that
are getting done now, this makes for a rather substantial reduction
in the runtime of initdb.  (Some of us do initdb often enough to care
how long it runs ;-).)

22 years agoUpdate TODO list.
Bruce Momjian [Mon, 30 Jul 2001 17:58:25 +0000 (17:58 +0000)]
Update TODO list.

22 years agoUpdate TODO list.
Bruce Momjian [Mon, 30 Jul 2001 16:48:48 +0000 (16:48 +0000)]
Update TODO list.

22 years agoautoconf
Bruce Momjian [Mon, 30 Jul 2001 15:08:31 +0000 (15:08 +0000)]
autoconf

22 years agoOpen Unix 8 patch (Caldera Unixware). Still needs updated autoconf.
Bruce Momjian [Mon, 30 Jul 2001 15:01:00 +0000 (15:01 +0000)]
Open Unix 8 patch (Caldera Unixware).  Still needs updated autoconf.

Larry Rosenman

22 years agoXML conversion utility, requires expat library.
Bruce Momjian [Mon, 30 Jul 2001 14:59:02 +0000 (14:59 +0000)]
XML conversion utility, requires expat library.

John Gray

22 years agoPatch to add comments to Linux startup script.
Bruce Momjian [Mon, 30 Jul 2001 14:52:42 +0000 (14:52 +0000)]
Patch to add comments to Linux startup script.

Rene Pijlman

22 years agoThis patch merges the identical methods from the JDBC1 and JDBC2
Bruce Momjian [Mon, 30 Jul 2001 14:51:19 +0000 (14:51 +0000)]
This patch merges the identical methods from the JDBC1 and JDBC2
connection implementations (org.postgresql.jdbc[1|2].Connection) into
their superclass (org.postgresql.Connection).

It also changes the close() methods of Connection and PG_Stream, so that
PG_Stream no longer is responsible for sending the termination packet 'X'
to the backend. I figured that protocol-level stuff like that belonged in
Connection more than in PG_Stream.

Anders Bengtsson

22 years agoLoad pg_hba.conf and pg_ident.conf on startup and SIGHUP into List of
Bruce Momjian [Mon, 30 Jul 2001 14:50:24 +0000 (14:50 +0000)]
Load pg_hba.conf and pg_ident.conf on startup and SIGHUP into List of
Lists, and use that for user validation.

Bruce Momjian

22 years agoArrange for GRANT/REVOKE on a view to be dumped at the right time,
Tom Lane [Sun, 29 Jul 2001 22:12:23 +0000 (22:12 +0000)]
Arrange for GRANT/REVOKE on a view to be dumped at the right time,
namely after the view definition rather than before it.  Bug introduced
in 7.1 by changes to dump stuff in OID ordering.

23 years agoSuppress gcc warning in USE_LOCALE case.
Tom Lane [Sun, 22 Jul 2001 22:01:04 +0000 (22:01 +0000)]
Suppress gcc warning in USE_LOCALE case.

23 years agoMove EncodingTest.java file.
Bruce Momjian [Sat, 21 Jul 2001 21:27:41 +0000 (21:27 +0000)]
Move EncodingTest.java file.

23 years agoDatabaseMetaData.getColumns() doesn't appear to get the default
Bruce Momjian [Sat, 21 Jul 2001 18:57:08 +0000 (18:57 +0000)]
DatabaseMetaData.getColumns() doesn't appear to get the default
value for each column. Here is a context diff of CVS which should
fix it.

Jason Davies

23 years agoGreat, here is a context diff of CVS for implementing the get/setCatalog methods
Bruce Momjian [Sat, 21 Jul 2001 18:56:17 +0000 (18:56 +0000)]
Great, here is a context diff of CVS for implementing the get/setCatalog methods
 in Connection - note: I've updated setCatalog(String catalog) from my previous
diff so it checks whether it is already connected to the specified catalog.

Jason Davies

23 years agoJDBC encoding additions.
Bruce Momjian [Sat, 21 Jul 2001 18:52:11 +0000 (18:52 +0000)]
JDBC encoding additions.

Here's a patch against the current CVS. The changes from the previous
patch are mostly related to the changed interface for PG_Stream.

Anders Bengtsson

23 years agoRemove libpq TODO.detail. We don't need it any more because the item is done.
Bruce Momjian [Sat, 21 Jul 2001 04:41:29 +0000 (04:41 +0000)]
Remove libpq TODO.detail.  We don't need it any more because the item is done.

23 years agoUpdate TODO list.
Bruce Momjian [Sat, 21 Jul 2001 04:41:08 +0000 (04:41 +0000)]
Update TODO list.

23 years agoUpdate TODO list.
Bruce Momjian [Sat, 21 Jul 2001 04:40:07 +0000 (04:40 +0000)]
Update TODO list.

23 years agoI downloaded new source for lib (only few hours old !!!), and made
Bruce Momjian [Sat, 21 Jul 2001 04:32:42 +0000 (04:32 +0000)]
I downloaded new source for lib (only few hours old !!!), and made
changes on this new source to make non-blocking connection work. I
tested it, and PQSendQuery and PQGetResult are working fine.

In win32.h I added one line:
#define snprintf _snprintf

Darko Prenosil

23 years agoSource formatting cleanup.
Bruce Momjian [Sat, 21 Jul 2001 00:29:56 +0000 (00:29 +0000)]
Source formatting cleanup.

23 years agoUpdate TODO list.
Bruce Momjian [Fri, 20 Jul 2001 20:51:31 +0000 (20:51 +0000)]
Update TODO list.

23 years agoi've spotted a following problem using DBD::Pg under win32. winsock
Bruce Momjian [Fri, 20 Jul 2001 17:45:06 +0000 (17:45 +0000)]
i've spotted a following problem using DBD::Pg under win32. winsock
functions do not set errno, so some normal conditions are treated as
fatal errors. e.g. fetching large tuples fails, as at some point recv()
returns EWOULDBLOCK. here's a patch, which replaces errno with
WSAGetLastError(). i've tried to to affect non-win32 code.

Dmitry Yurtaev

23 years agoUpdate TODO list.
Bruce Momjian [Fri, 20 Jul 2001 16:14:55 +0000 (16:14 +0000)]
Update TODO list.

23 years agoUpdate TODO list.
Bruce Momjian [Fri, 20 Jul 2001 16:07:32 +0000 (16:07 +0000)]
Update TODO list.

23 years agoUpdate TODO list.
Bruce Momjian [Fri, 20 Jul 2001 14:31:28 +0000 (14:31 +0000)]
Update TODO list.

23 years agoUpdate TODO list.
Bruce Momjian [Fri, 20 Jul 2001 14:29:56 +0000 (14:29 +0000)]
Update TODO list.

23 years agoUpdate TODO list.
Bruce Momjian [Fri, 20 Jul 2001 14:23:33 +0000 (14:23 +0000)]
Update TODO list.

23 years agoMinor performance improvement in MultiRecordFreeSpace.
Tom Lane [Thu, 19 Jul 2001 21:25:37 +0000 (21:25 +0000)]
Minor performance improvement in MultiRecordFreeSpace.

23 years agoArrange to recycle old XLOG log segment files as new segment files,
Tom Lane [Thu, 19 Jul 2001 02:12:35 +0000 (02:12 +0000)]
Arrange to recycle old XLOG log segment files as new segment files,
rather than deleting them only to have to create more.  Steady state
is 2*CHECKPOINT_SEGMENTS + WAL_FILES + 1 segment files, which will
simply be renamed rather than constantly deleted and recreated.
To make this safe, added current XLOG file/offset number to page
header of XLOG pages, so that an un-overwritten page from an old
incarnation of a logfile can be reliably told from a valid page.
This change means that if you try to restart postmaster in a CVS-tip
database after installing the change, you'll get a complaint about
bad XLOG page magic number.  If you don't want to initdb, run
contrib/pg_resetxlog (and be sure you shut down the old postmaster
cleanly).

23 years agoUpdate TODO list.
Bruce Momjian [Wed, 18 Jul 2001 15:37:34 +0000 (15:37 +0000)]
Update TODO list.

23 years agoNew-style vacuum neglected to update pg_class statistics about indexes
Tom Lane [Wed, 18 Jul 2001 00:46:25 +0000 (00:46 +0000)]
New-style vacuum neglected to update pg_class statistics about indexes
if there were no deletions to do.

23 years agoDisallow non-cachable functions in functional indexes and in index
Tom Lane [Tue, 17 Jul 2001 21:53:01 +0000 (21:53 +0000)]
Disallow non-cachable functions in functional indexes and in index
predicates.  Per suggestion from Hiroshi.

23 years agoAvoid assuming that pg_index table entries have unique OIDs, or even
Tom Lane [Tue, 17 Jul 2001 00:30:35 +0000 (00:30 +0000)]
Avoid assuming that pg_index table entries have unique OIDs, or even
that they have OIDs at all (the primary key for this table is indexrelid,
not OID).  Simplify overly complex query to get name of primary key.

23 years agoImprove documentation about reasoning behind the order of operations
Tom Lane [Mon, 16 Jul 2001 22:43:34 +0000 (22:43 +0000)]
Improve documentation about reasoning behind the order of operations
in GetSnapshotData, GetNewTransactionId, CommitTransaction, AbortTransaction,
etc.  Correct race condition in transaction status testing in
HeapTupleSatisfiesVacuum --- this wasn't important for old VACUUM with
exclusive lock on its table, but it sure is important now.  All per
pghackers discussion 7/11/01 and 7/12/01.

23 years agoUpdate TODO list.
Bruce Momjian [Mon, 16 Jul 2001 21:18:14 +0000 (21:18 +0000)]
Update TODO list.

23 years agoFix fault in message.
Peter Eisentraut [Mon, 16 Jul 2001 20:05:51 +0000 (20:05 +0000)]
Fix fault in message.

23 years agoRemove some unused node symbols
Bruce Momjian [Mon, 16 Jul 2001 19:12:58 +0000 (19:12 +0000)]
Remove some unused node symbols

23 years agoMore EXTEND INDEX removal.
Bruce Momjian [Mon, 16 Jul 2001 19:07:40 +0000 (19:07 +0000)]
More EXTEND INDEX removal.

Martijn van Oosterhout

23 years agoDo not push down quals into subqueries that have LIMIT/OFFSET clauses,
Tom Lane [Mon, 16 Jul 2001 17:57:02 +0000 (17:57 +0000)]
Do not push down quals into subqueries that have LIMIT/OFFSET clauses,
since the added qual could change the set of rows that get past the
LIMIT.  Per discussion on pgsql-sql 7/15/01.

23 years agoUpdate TODO list.
Bruce Momjian [Mon, 16 Jul 2001 14:34:26 +0000 (14:34 +0000)]
Update TODO list.

23 years agoPartial indexes work again, courtesy of Martijn van Oosterhout.
Tom Lane [Mon, 16 Jul 2001 05:07:00 +0000 (05:07 +0000)]
Partial indexes work again, courtesy of Martijn van Oosterhout.
Note: I didn't force an initdb, figuring that one today was enough.
However, there is a new function in pg_proc.h, and pg_dump won't be
able to dump partial indexes until you add that function.

23 years agoUpdate TODO list.
Bruce Momjian [Mon, 16 Jul 2001 05:01:46 +0000 (05:01 +0000)]
Update TODO list.

23 years agoUpdate TODO list.
Bruce Momjian [Mon, 16 Jul 2001 05:00:29 +0000 (05:00 +0000)]
Update TODO list.

23 years agoRestructure index AM interface for index building and index tuple deletion,
Tom Lane [Sun, 15 Jul 2001 22:48:19 +0000 (22:48 +0000)]
Restructure index AM interface for index building and index tuple deletion,
per previous discussion on pghackers.  Most of the duplicate code in
different AMs' ambuild routines has been moved out to a common routine
in index.c; this means that all index types now do the right things about
inserting recently-dead tuples, etc.  (I also removed support for EXTEND
INDEX in the ambuild routines, since that's about to go away anyway, and
it cluttered the code a lot.)  The retail indextuple deletion routines have
been replaced by a "bulk delete" routine in which the indexscan is inside
the access method.  I haven't pushed this change as far as it should go yet,
but it should allow considerable simplification of the internal bookkeeping
for deletions.  Also, add flag columns to pg_am to eliminate various
hardcoded tests on AM OIDs, and remove unused pg_am columns.

Fix rtree and gist index types to not attempt to store NULLs; before this,
gist usually crashed, while rtree managed not to crash but computed wacko
bounding boxes for NULL entries (which might have had something to do with
the performance problems we've heard about occasionally).

Add AtEOXact routines to hash, rtree, and gist, all of which have static
state that needs to be reset after an error.  We discovered this need long
ago for btree, but missed the other guys.

Oh, one more thing: concurrent VACUUM is now the default.

23 years agoAdd ORDER BY to a couple of test queries whose output ordering is not
Tom Lane [Sun, 15 Jul 2001 20:16:17 +0000 (20:16 +0000)]
Add ORDER BY to a couple of test queries whose output ordering is not
as predictable as it used to be, due to recycling of free space with
new VACUUM.

23 years agoUpdate TODO list.
Bruce Momjian [Sun, 15 Jul 2001 14:34:02 +0000 (14:34 +0000)]
Update TODO list.

23 years agoNLS for libpq. Clean up the message formats and change the documentation
Peter Eisentraut [Sun, 15 Jul 2001 13:45:04 +0000 (13:45 +0000)]
NLS for libpq.  Clean up the message formats and change the documentation
accordingly.

23 years agoChange xgettext rule to run in the source tree, so we don't have the
Peter Eisentraut [Sun, 15 Jul 2001 11:43:55 +0000 (11:43 +0000)]
Change xgettext rule to run in the source tree, so we don't have the
absolute paths of the source tree in the po files.  Also, run msgfmt with
-c option in maintainer-check.

23 years agoMake sure the build tree is before the source tree in the include path.
Peter Eisentraut [Sun, 15 Jul 2001 11:20:01 +0000 (11:20 +0000)]
Make sure the build tree is before the source tree in the include path.

23 years agoTODO item:
Tatsuo Ishii [Sun, 15 Jul 2001 11:07:37 +0000 (11:07 +0000)]
TODO item:
* Make n of CHAR(n)/VARCHAR(n) the number of letters, not bytes

23 years agoThe attached patch fixes problems with the JDBC driver handling long
Bruce Momjian [Sun, 15 Jul 2001 04:21:26 +0000 (04:21 +0000)]
The attached patch fixes problems with the JDBC driver handling long
null terminated strings.  The FE/BE protocol sends in some cases null
terminated strings to the client.  The docs for the FE/BE protocol state
that there is no limit on the size of a null terminated string sent to
the client and a client should be coded using an expanding buffer to
deal with large strings.  The old code did not do this and gave an error
if a null terminated string was greater than either 4 or 8K.  It appears
that with the advent of TOAST very long SQL statements are becoming more
common, and apparently some error messages from the backend include the
SQL statement thus easily exceeding the 8K limit in the old code.

In fixing I also cleaned up some calls in the JDBC fastpath code that
were not doing character set conversion under multibyte, and removed
some methods that were no longer needed.  I also removed a potential
threading problem with a shared variable that was being used in
Connection.java.

Thanks to Steve Wampler for discovering the problem and sending the
initial diffs that were the basis of this patch.

thanks,
--Barry

23 years agoInitial implementation of concurrent VACUUM. Ifdef'd out for the moment,
Tom Lane [Fri, 13 Jul 2001 22:55:59 +0000 (22:55 +0000)]
Initial implementation of concurrent VACUUM.  Ifdef'd out for the moment,
because index locking issues are not handled correctly yet.  Need to go
work on the index AMs next.

23 years agoMinor code cleanup/beautification in RelationPutHeapTuple.
Tom Lane [Fri, 13 Jul 2001 22:52:58 +0000 (22:52 +0000)]
Minor code cleanup/beautification in RelationPutHeapTuple.

23 years agoUpdate TODO list.
Bruce Momjian [Fri, 13 Jul 2001 18:22:03 +0000 (18:22 +0000)]
Update TODO list.

23 years agoUpdate TODO list.
Bruce Momjian [Fri, 13 Jul 2001 17:58:31 +0000 (17:58 +0000)]
Update TODO list.

23 years agoUpdate TODO list.
Bruce Momjian [Fri, 13 Jul 2001 00:57:37 +0000 (00:57 +0000)]
Update TODO list.

23 years agoUpdate TODO list.
Bruce Momjian [Thu, 12 Jul 2001 21:47:13 +0000 (21:47 +0000)]
Update TODO list.

23 years agoindicies to indexes from Neil Conway
Bruce Momjian [Thu, 12 Jul 2001 20:35:54 +0000 (20:35 +0000)]
indicies to indexes from Neil Conway

23 years agoAdd jdbc items.
Bruce Momjian [Thu, 12 Jul 2001 19:59:55 +0000 (19:59 +0000)]
Add jdbc items.

23 years agoRemove grammar restrictions on order of optional clauses in CREATE GROUP.
Tom Lane [Thu, 12 Jul 2001 18:03:00 +0000 (18:03 +0000)]
Remove grammar restrictions on order of optional clauses in CREATE GROUP.
From Vince Vielhaber.

23 years agoBack out SET AUTHORIZATION patch until security is resolved.
Bruce Momjian [Thu, 12 Jul 2001 17:42:08 +0000 (17:42 +0000)]
Back out SET AUTHORIZATION patch until security is resolved.

23 years agoAdd win32 c++ files.
Bruce Momjian [Thu, 12 Jul 2001 14:07:48 +0000 (14:07 +0000)]
Add win32 c++  files.

23 years agoAdd missing encode file.
Bruce Momjian [Thu, 12 Jul 2001 14:05:31 +0000 (14:05 +0000)]
Add missing encode file.