OSDN Git Service
Peter Eisentraut [Tue, 22 May 2001 16:00:00 +0000 (16:00 +0000)]
more indices -> indexes
Bruce Momjian [Tue, 22 May 2001 13:52:27 +0000 (13:52 +0000)]
ELSEIF PL/PgSQL doc patch.
Klaus Reger
Bruce Momjian [Tue, 22 May 2001 13:20:46 +0000 (13:20 +0000)]
Update TODO list.
Bruce Momjian [Tue, 22 May 2001 12:10:50 +0000 (12:10 +0000)]
Update TODO list.
Bruce Momjian [Tue, 22 May 2001 12:06:51 +0000 (12:06 +0000)]
The Watcom preprocessor adds a space at the start of each line. Therefore
the output of "egrep '^[0-9]' " is empty. Changing the pattern to
"egrep '^[ ]*[0-9]" generates the correct file.
Tegge, Bernd
Bruce Momjian [Tue, 22 May 2001 11:24:28 +0000 (11:24 +0000)]
Bump major libpq++ version after API changes, Patrick Welche
Bruce Momjian [Tue, 22 May 2001 01:35:25 +0000 (01:35 +0000)]
Update TODO list.
Bruce Momjian [Tue, 22 May 2001 01:28:16 +0000 (01:28 +0000)]
Pgindent fixes for Tom, mostly indenting problems.
Bruce Momjian [Mon, 21 May 2001 18:42:08 +0000 (18:42 +0000)]
Print error on SELECT tab FROM tab:
You can't use relation names alone in the target list, try relation.*
Bruce Momjian [Mon, 21 May 2001 18:36:58 +0000 (18:36 +0000)]
Update TODO list.
Peter Eisentraut [Mon, 21 May 2001 16:54:46 +0000 (16:54 +0000)]
Make char(n) and varchar(n) types raise an error if the inserted string is
too long. While I was adjusting the regression tests I moved the array
things all into array.sql, to make things more manageable.
Jan Wieck [Mon, 21 May 2001 14:22:19 +0000 (14:22 +0000)]
Enhancement of SPI to get access to portals
- New functions to create a portal using a prepared/saved
SPI plan or lookup an existing portal by name.
- Functions to fetch/move from/in portals. Results are placed
in the usual SPI_processed and SPI_tuptable, so the entire
set of utility functions can be used to gain attribute access.
- Prepared/saved SPI plans now use their own memory context
and SPI_freeplan(plan) can remove them.
- Tuple result sets (SPI_tuptable) now uses it's own memory
context and can be free'd by SPI_freetuptable(tuptab).
Enhancement of PL/pgSQL
- Uses generic named portals internally in FOR ... SELECT
loops to avoid running out of memory on huge result sets.
- Support for CURSOR and REFCURSOR syntax using the new SPI
functionality. Cursors used internally only need no explicit
transaction block. Refcursor variables can be used inside
of explicit transaction block to pass cursors between main
application and functions.
Jan
Tom Lane [Sun, 20 May 2001 20:28:20 +0000 (20:28 +0000)]
Modify optimizer data structures so that IndexOptInfo lists built for
create_index_paths are not immediately discarded, but are available for
subsequent planner work. This allows avoiding redundant syscache lookups
in several places. Change interface to operator selectivity estimation
procedures to allow faster and more flexible estimation.
Initdb forced due to change of pg_proc entries for selectivity functions!
Bruce Momjian [Sun, 20 May 2001 01:11:48 +0000 (01:11 +0000)]
Update TODO list.
Peter Eisentraut [Sat, 19 May 2001 09:28:08 +0000 (09:28 +0000)]
Make sure fmgr_info() fills in fn_oid last, so that no partially
initialized FmgrInfo structs linger after elog.
Peter Eisentraut [Sat, 19 May 2001 09:01:10 +0000 (09:01 +0000)]
Allow special '$libdir' macro to show up in object file path in CREATE
FUNCTION command. Guard against trying to load a directory. Update
documentation some.
Bruce Momjian [Sat, 19 May 2001 02:48:54 +0000 (02:48 +0000)]
Prevent ANT from recreating the JAR files just because the
errors.properties files were being copied.
Bruce Momjian [Sat, 19 May 2001 01:57:11 +0000 (01:57 +0000)]
Comment additions in parser.
Bruce Momjian [Sat, 19 May 2001 00:37:45 +0000 (00:37 +0000)]
Move ParserFuncOrColumn function higher in the file.
Bruce Momjian [Sat, 19 May 2001 00:33:20 +0000 (00:33 +0000)]
New comment. This func/column things has always confused me.
/*
* parse function
* This code is confusing because the database can accept
* relation.column, column.function, or relation.column.function.
* In these cases, funcname is the last parameter, and fargs are
* the rest.
*
* It can also be called as func(col) or func(col,col).
* In this case, Funcname is the part before parens, and fargs
* are the part in parens.
*
*/
Node *
ParseFuncOrColumn(ParseState *pstate, char *funcname, List *fargs,
bool agg_star, bool agg_distinct,
int precedence)
Bruce Momjian [Fri, 18 May 2001 22:54:23 +0000 (22:54 +0000)]
Undo \dT change. Not worth it.
Bruce Momjian [Fri, 18 May 2001 22:35:51 +0000 (22:35 +0000)]
Rename ParseFuncOrColumn() to ParseColumnOrFunc().
Bruce Momjian [Fri, 18 May 2001 21:24:20 +0000 (21:24 +0000)]
Small code cleanups,formatting.
Jan Wieck [Fri, 18 May 2001 21:16:59 +0000 (21:16 +0000)]
Adding ELSIF support contributed by Klaus Reger.
Jan
Tom Lane [Fri, 18 May 2001 17:49:52 +0000 (17:49 +0000)]
Suppress compiler warnings about pid_t vs int.
Bruce Momjian [Fri, 18 May 2001 16:28:12 +0000 (16:28 +0000)]
Update TODO list.
Tom Lane [Fri, 18 May 2001 16:02:01 +0000 (16:02 +0000)]
Add regression test to catch future breakage of avg(interval). This
aggregate seems uniquely fragile, because it's the only one with an
agginitval that's at all likely to change in format.
Tom Lane [Fri, 18 May 2001 15:59:04 +0000 (15:59 +0000)]
Correct recently-broken avg(interval) definition.
Bruce Momjian [Fri, 18 May 2001 15:18:55 +0000 (15:18 +0000)]
Update TODO list.
Bruce Momjian [Fri, 18 May 2001 14:39:54 +0000 (14:39 +0000)]
Update TODO list.
Bruce Momjian [Thu, 17 May 2001 22:07:21 +0000 (22:07 +0000)]
Update TODO list.
Peter Eisentraut [Thu, 17 May 2001 21:50:18 +0000 (21:50 +0000)]
Change "indices" to "indexes", per OED.
Peter Eisentraut [Thu, 17 May 2001 21:12:49 +0000 (21:12 +0000)]
Add -U and -W options to pg_dump and friends to support non-interactive
specification of username (like in psql). pg_dumpall now works with
password authentication.
Peter Eisentraut [Thu, 17 May 2001 17:44:18 +0000 (17:44 +0000)]
Add dynamic_library_path parameter and automatic appending of shared
library extension.
Bruce Momjian [Thu, 17 May 2001 16:11:08 +0000 (16:11 +0000)]
OK, now pgindent has blank lines before comment blocks, except when
there is a brace on the line above it.
Bruce Momjian [Thu, 17 May 2001 15:55:24 +0000 (15:55 +0000)]
Prevent forced blank line before comment block in pgindent.
Bruce Momjian [Thu, 17 May 2001 15:22:12 +0000 (15:22 +0000)]
Spacing cleanup.
Bruce Momjian [Thu, 17 May 2001 14:59:31 +0000 (14:59 +0000)]
Small cleanup of spacing.
Bruce Momjian [Thu, 17 May 2001 13:28:30 +0000 (13:28 +0000)]
Add HISTORY items for 7.1.2.
Bruce Momjian [Thu, 17 May 2001 13:20:35 +0000 (13:20 +0000)]
Add missing space to sample cvs call.
Bruce Momjian [Thu, 17 May 2001 11:54:04 +0000 (11:54 +0000)]
Fix pg_index statistics query to join proper relation.
Bruce Momjian [Thu, 17 May 2001 04:10:02 +0000 (04:10 +0000)]
Included is a patch that fixes a bug introduced in the lastest version
(1.22) of interfaces/jdbc/org/postgresql/jdbc2/ResultSet.java. That
change removed a line that set the variable s to the value of the
stringbuffer. This fix changes the following if checks to check the
length of the stringbuffer instead of s, since s no longer contains the
string the if conditions are expecting.
The bug manifests itself in getTimestamp() loosing the timezone
information of timestamps selected from the database, thereby causing
the time to be incorrect.
Barry Lind
Bruce Momjian [Thu, 17 May 2001 03:55:04 +0000 (03:55 +0000)]
Cleanup of backpatch of jdbc2 improvements to jdbc1:
Here's what I came up with. The biggest difference api between JDK1.x and
later versions is the support for collections. The problem was with the
Vector class; in jdk1.x there is no method called add, so I changed the
calls to addElement. Also no addAll, so I rewrote the method slightly to not
require addAll. While reviewing this I notices some System.out.println
statements that weren't commented out. So I commented them out in both
versions.
The upshot of all of this is that I have clean compile, but no idea if the
code works ;(
Dave Cramer
Bruce Momjian [Thu, 17 May 2001 03:22:53 +0000 (03:22 +0000)]
Fix 'make clean' with jdbc and ant by using filesets.
Hiroshi Inoue [Thu, 17 May 2001 02:56:37 +0000 (02:56 +0000)]
1) Decrease the size of some buffers.
2) Repair broken SQLStatistics().
Tom Lane [Thu, 17 May 2001 01:28:50 +0000 (01:28 +0000)]
Replace poorly-coded vac_find_eq routine with call to standard bsearch
library code. Tweak progress messages to include elapsed real time,
not only CPU time.
Bruce Momjian [Thu, 17 May 2001 00:29:52 +0000 (00:29 +0000)]
Mark column as not used.
Bruce Momjian [Thu, 17 May 2001 00:10:08 +0000 (00:10 +0000)]
Update TODO list.
Bruce Momjian [Thu, 17 May 2001 00:08:38 +0000 (00:08 +0000)]
Update TODO list.
Bruce Momjian [Wed, 16 May 2001 22:36:03 +0000 (22:36 +0000)]
Add missing paren.
Tom Lane [Wed, 16 May 2001 22:35:12 +0000 (22:35 +0000)]
Repair race condition introduced into heap_update() in 7.1 ---
PageGetFreeSpace() was being called while not holding the buffer lock, which
not only could yield a garbage answer, but even if it's the right answer there
might be less space available after we reacquire the buffer lock.
Also repair potential deadlock introduced by my recent performance improvement
in RelationGetBufferForTuple(): it was possible for two heap_updates to try to
lock two buffers in opposite orders. The fix creates a global rule that
buffers of a single heap relation should be locked in decreasing block number
order. Currently, this only applies to heap_update; VACUUM can get away with
ignoring the rule since it holds exclusive lock on the whole relation anyway.
However, if we try to implement a VACUUM that can run in parallel with other
transactions, VACUUM will also have to obey the lock order rule.
Bruce Momjian [Wed, 16 May 2001 20:18:25 +0000 (20:18 +0000)]
Update TODO list.
Bruce Momjian [Wed, 16 May 2001 17:47:27 +0000 (17:47 +0000)]
Fix for HASH for index lookups in ODBC.
Bruce Momjian [Wed, 16 May 2001 17:28:46 +0000 (17:28 +0000)]
autoconf
Bruce Momjian [Wed, 16 May 2001 17:24:10 +0000 (17:24 +0000)]
The configure.in file erraneous assumes that FreeBSD 1.x and 2.x have
ELF capability.
While this is true to some extent, this assumption makes it impossible
to compile PostgreSQL 7.1 and 7.2devel without the --disable-shared
switch during configuration.
Trond Endrest
Bruce Momjian [Wed, 16 May 2001 17:22:25 +0000 (17:22 +0000)]
This patch fixes a bug which occurs when setObject(1,obj) is called and obj
is of type Object, and is null
Dave Cramer
Bruce Momjian [Wed, 16 May 2001 17:09:26 +0000 (17:09 +0000)]
Add NUMERIC tests to jdbc code.
David Esposito
Bruce Momjian [Wed, 16 May 2001 16:42:31 +0000 (16:42 +0000)]
I was trying to get a very nice FREE graphical db tool called DbVisualizer
(http://www.ideit.com/products/dbvis/) to work with Postgresql and I found
out the following bug: if database has views then getTables() gets the null
pointer exception ('order by relname' makes the listing tree in
DbVisualizer a lot useful !!)
This patch should propably be applied to the the jdbc1's
DatabaseMetaData.java, too.
Panu Outinen
Bruce Momjian [Wed, 16 May 2001 16:30:38 +0000 (16:30 +0000)]
Change the line:
return ((c == 't') || (c == 'T'));
int the getBoolean function on line 184:ish to:
return ((c == 't') || (c == 'T') (c == '1'));
Hunter Hillegas
Bruce Momjian [Wed, 16 May 2001 16:20:53 +0000 (16:20 +0000)]
Backpatch jdbc2 fixes to jdbc1, ANT fixes, from Peter Eisentraut
Bruce Momjian [Wed, 16 May 2001 04:08:50 +0000 (04:08 +0000)]
Backpatch getImportedKeys to jdbc1.
Bruce Momjian [Wed, 16 May 2001 04:01:04 +0000 (04:01 +0000)]
Backpatch ORDER BY fix to jdbc1.
Bruce Momjian [Wed, 16 May 2001 03:50:08 +0000 (03:50 +0000)]
Here's an easy patch for todays snapshot to sort the result of the
public ResultSet getTables(String catalog, String schemaPattern, String
Jeroen van Vianen
Bruce Momjian [Wed, 16 May 2001 03:40:25 +0000 (03:40 +0000)]
jdbc2 implementation of getImportedKeys.
Ola Sundell
Bruce Momjian [Wed, 16 May 2001 03:29:01 +0000 (03:29 +0000)]
The current implementation of BlobInputStream does
not properly handle 8-bit unsigned data as it blindly
casts the byte to an int, which java most helpfully
promotes to a signed type. This causes problems when
you can only return -1 to indicated EOF.
The following patch fixes the bug and has been tested
locally on image data.
Chad David
Peter Eisentraut [Tue, 15 May 2001 16:55:27 +0000 (16:55 +0000)]
Add missing dlfcn.h includes. Fix "" vs <>.
Tom Lane [Tue, 15 May 2001 16:11:58 +0000 (16:11 +0000)]
Remove unnecessary EvalPlanQual support code --- since this plan node
type never scans a relation directly, it can't be an EPQ target.
Explicitly drop subplan's tuple table to ensure we have no buffer pin
leaks.
Bruce Momjian [Tue, 15 May 2001 14:14:49 +0000 (14:14 +0000)]
we found a problem in GiST with massive insert/update operations
with many NULLs ( inserting of NULL into indexed field cause
ERROR: MemoryContextAlloc: invalid request size)
As a workaround 'vacuum analyze' could be used.
This patch resolves the problem, please upply to 7.1.1 sources and
current cvs tree.
Oleg Bartunov
Bruce Momjian [Tue, 15 May 2001 13:57:37 +0000 (13:57 +0000)]
redo record -> undo record, Tom Lane.
D'Arcy J.M. Cain [Tue, 15 May 2001 13:28:56 +0000 (13:28 +0000)]
Fix small thinko.
Bruce Momjian [Tue, 15 May 2001 04:45:15 +0000 (04:45 +0000)]
Well, the correct code - that corresponds to current
encode - is below. I even got the linefeed stuff wrong.
--
marko
Bruce Momjian [Tue, 15 May 2001 04:12:56 +0000 (04:12 +0000)]
Fix regression for new oids.
Bruce Momjian [Tue, 15 May 2001 03:49:35 +0000 (03:49 +0000)]
Re-add pg_index.indhaskeytype.
Bruce Momjian [Tue, 15 May 2001 01:12:59 +0000 (01:12 +0000)]
Re-add pg_index.indisclustered in a minimalist way. Also fix BSDi
dynamic linker change. #include must be before #ifdef test.
Tom Lane [Tue, 15 May 2001 00:35:50 +0000 (00:35 +0000)]
Some badly needed documentation about EvalPlanQual.
Tom Lane [Tue, 15 May 2001 00:33:36 +0000 (00:33 +0000)]
EvalPlanQual was thoroughly broken for concurrent update/delete on inheritance
trees (mostly my fault). Repair. Also fix long-standing bug in ExecReplace:
after recomputing a concurrently updated tuple, we must recheck constraints.
Make EvalPlanQual leak memory with somewhat less enthusiasm than before,
although plugging leaks fully will require more changes than I care to risk
in a dot-release.
Tom Lane [Tue, 15 May 2001 00:00:15 +0000 (00:00 +0000)]
Let's stick to the documented number of digits in CATVERSION, shall we?
Bruce Momjian [Mon, 14 May 2001 22:16:15 +0000 (22:16 +0000)]
Update regression for new oids, some now two smaller.
Peter Eisentraut [Mon, 14 May 2001 22:06:50 +0000 (22:06 +0000)]
Remove linking hacks now that dynloader is fixed.
Bruce Momjian [Mon, 14 May 2001 22:06:41 +0000 (22:06 +0000)]
Small include file fix for pg_variabie.h
Bruce Momjian [Mon, 14 May 2001 21:59:19 +0000 (21:59 +0000)]
Update catalog version for fix.
Bruce Momjian [Mon, 14 May 2001 21:58:10 +0000 (21:58 +0000)]
Pg_varaiable removal cleanup found from regression.
Bruce Momjian [Mon, 14 May 2001 21:53:16 +0000 (21:53 +0000)]
Remove columns pg_index.haskeytype and pg_index.indisclustered. Not used.
Peter Eisentraut [Mon, 14 May 2001 21:45:53 +0000 (21:45 +0000)]
Use RTLD_GLOBAL flag for dlopen-style dynamic loaders.
Bruce Momjian [Mon, 14 May 2001 20:30:38 +0000 (20:30 +0000)]
Update TODO list.
Bruce Momjian [Mon, 14 May 2001 20:30:21 +0000 (20:30 +0000)]
Remove unused tables pg_variable, pg_inheritproc, pg_ipl tables. Initdb
forced.
Tom Lane [Mon, 14 May 2001 20:25:00 +0000 (20:25 +0000)]
Current implementation of FOR UPDATE has no hope of working correctly
for relations on the nullable side of an OUTER JOIN. For now I think
we'd better refuse such queries.
Bruce Momjian [Mon, 14 May 2001 16:16:52 +0000 (16:16 +0000)]
Fix 'set path' for csh.
Bruce Momjian [Sun, 13 May 2001 02:19:58 +0000 (02:19 +0000)]
Update TODO list.
Bruce Momjian [Sun, 13 May 2001 02:17:09 +0000 (02:17 +0000)]
> I've been experimenting with pgcrypto 0.3 (distributed with
> Postgres 7.1.0), and I think I've found a bug.
>
> I compiled Pgcrypto with OpenSSL, using gcc 2.95.4 and
> OpenSSL 0.9.6a (the latest Debian 'unstable' packages).
> web=> select encode(digest('blah', 'sha1'), 'base64');
> FATAL 1: pg_encode: overflow, encode estimate too small
> pqReadData() -- backend closed the channel unexpectedly.
> This probably means the backend terminated abnormally
> before or while processing the request.
> The connection to the server was lost. Attempting reset: Succeeded.
> Is this a bug? Can it be fixed?
This is a bug alright. And a silly one :)
Marko Kreen
Bruce Momjian [Sun, 13 May 2001 02:10:00 +0000 (02:10 +0000)]
Update to ora2pg 1.2.
Bruce Momjian [Sun, 13 May 2001 01:05:34 +0000 (01:05 +0000)]
Update TODO list.
Peter Eisentraut [Sun, 13 May 2001 00:12:05 +0000 (00:12 +0000)]
Cope with configure arguments that contain spaces.
Tom Lane [Sat, 12 May 2001 23:36:03 +0000 (23:36 +0000)]
proisstrict must be assumed FALSE when dumping from a 7.0 database,
not TRUE. Otherwise we break pl call handler functions. fmgr_oldstyle
will take care of making sure the semantics are the same for C functions.
Clean up some slightly grotty coding in 7.0 pg_class reading, also.
Peter Eisentraut [Sat, 12 May 2001 22:51:36 +0000 (22:51 +0000)]
Add index. Only some parts of the manual set have index entries so far...
Tom Lane [Sat, 12 May 2001 19:58:28 +0000 (19:58 +0000)]
Modify RelationGetBufferForTuple() so that we only do lseek and lock
when we need to move to a new page; as long as we can insert the new
tuple on the same page as before, we only need LockBuffer and not the
expensive stuff. Also, twiddle bufmgr interfaces to avoid redundant
lseeks in RelationGetBufferForTuple and BufferAlloc. Successive inserts
now require one lseek per page added, rather than one per tuple with
several additional ones at each page boundary as happened before.
Lock contention when multiple backends are inserting in same table
is also greatly reduced.
Peter Eisentraut [Sat, 12 May 2001 19:49:48 +0000 (19:49 +0000)]
Add provisions for using strdup replacement in the places that still
needed it.
from our fearless Ultrix porter, Alexander Klimov <ask@wisdom.weizmann.ac.il>
Peter Eisentraut [Sat, 12 May 2001 19:44:46 +0000 (19:44 +0000)]
Add command '\pset footer' to psql to turn off default "(x rows)" footer.
Peter Eisentraut [Sat, 12 May 2001 17:49:32 +0000 (17:49 +0000)]
PL/Python should build portably now, if you can get over the fact that
there's no shared libpython. Test suite works as well. Also, add some
documentation.
Tom Lane [Sat, 12 May 2001 17:37:15 +0000 (17:37 +0000)]
Add comment to explain need for bizarre-looking coding in HandleSlashCmds.