]> granicus.if.org Git - postgresql/log
postgresql
24 years agoAllow LIKE and ILIKE as TokenId (and hence ColId) to make sure that they
Thomas G. Lockhart [Mon, 7 Aug 2000 06:54:51 +0000 (06:54 +0000)]
Allow LIKE and ILIKE as TokenId (and hence ColId) to make sure that they
 are allowed in the func_name production. Otherwise, we can't define
 more like() and ilike() functions for new data types.

24 years agoClean up code to remove the explicit backslash cruft.
Thomas G. Lockhart [Mon, 7 Aug 2000 01:45:00 +0000 (01:45 +0000)]
Clean up code to remove the explicit backslash cruft.
If the backslash default is still wanted, just pass a backslash
 to MatchText() for the two-parameter callable routines.

24 years agoInclude the case-insensitive LIKE prototypes.
Thomas G. Lockhart [Mon, 7 Aug 2000 01:43:35 +0000 (01:43 +0000)]
Include the case-insensitive LIKE prototypes.

24 years agoForgot to update the regression test output.
Thomas G. Lockhart [Mon, 7 Aug 2000 01:43:14 +0000 (01:43 +0000)]
Forgot to update the regression test output.

24 years agoClean up bogosities in use of random(3) and srandom(3) --- do not assume
Tom Lane [Mon, 7 Aug 2000 00:51:42 +0000 (00:51 +0000)]
Clean up bogosities in use of random(3) and srandom(3) --- do not assume
that RAND_MAX applies to them, since it doesn't.  Instead add a
config.h parameter MAX_RANDOM_VALUE.  This is currently set at 2^31-1
but could be auto-configured if that ever proves necessary.  Also fix
some outright bugs like calling srand() where srandom() is appropriate.

24 years agoImplement LIKE/ESCAPE. Change parser to use like()/notlike()
Thomas G. Lockhart [Sun, 6 Aug 2000 18:13:42 +0000 (18:13 +0000)]
Implement LIKE/ESCAPE. Change parser to use like()/notlike()
 rather than the "~~" operator; this made it easy to add ESCAPE features.
Implement ILIKE, NOT ILIKE, and the ESCAPE clause for them.
 afaict this is not MultiByte clean, but lots of other stuff isn't either.
Fix up underlying support code for LIKE/NOT LIKE.
 Things should be faster and does not require internal string copying.
Update regression test to add explicit checks for
 LIKE/NOT LIKE/ILIKE/NOT ILIKE.
Remove colon and semi-colon operators as threatened in 7.0.
Implement SQL99 COMMIT/AND NO CHAIN.
 Throw elog(ERROR) on COMMIT/AND CHAIN per spec
 since we don't yet support it.
Implement SQL99 CREATE/DROP SCHEMA as equivalent to CREATE DATABASE.
 This is only a stopgap or demo since schemas will have another
 implementation soon.
Remove a few unused production rules to get rid of warnings
 which crept in on the last commit.
Fix up tabbing in some places by removing embedded spaces.

24 years agoImplement LIKE/ESCAPE. Change parser to use like()/notlike()
Thomas G. Lockhart [Sun, 6 Aug 2000 18:06:44 +0000 (18:06 +0000)]
Implement LIKE/ESCAPE. Change parser to use like()/notlike()
 rather than the "~~" operator; this made it easy to add ESCAPE features.
Implement ILIKE, NOT ILIKE, and the ESCAPE clause for them.
 afaict this is not MultiByte clean, but lots of other stuff isn't either.
Fix up underlying support code for LIKE/NOT LIKE.
 Things should be faster and does not require internal string copying.
Update regression test to add explicit checks for
 LIKE/NOT LIKE/ILIKE/NOT ILIKE.
Remove colon and semi-colon operators as threatened in 7.0.
Implement SQL99 COMMIT/AND NO CHAIN.
 Throw elog(ERROR) on COMMIT/AND CHAIN per spec
 since we don't yet support it.
Implement SQL99 CREATE/DROP SCHEMA as equivalent to CREATE DATABASE.
 This is only a stopgap or demo since schemas will have another
 implementation soon.
Remove a few unused production rules to get rid of warnings
 which crept in on the last commit.
Fix up tabbing in some places by removing embedded spaces.

24 years agoSupport SQL99 embedded double-quote syntax for quoted identifiers.
Thomas G. Lockhart [Sun, 6 Aug 2000 17:50:48 +0000 (17:50 +0000)]
Support SQL99 embedded double-quote syntax for quoted identifiers.
Allow this in the parser and in pg_dump, but it is probably not enough
 for a complete solution.
Better to have the feature started then never here.

24 years agoToast all the system-table columns that seem to need it. It turns out
Tom Lane [Sun, 6 Aug 2000 04:40:08 +0000 (04:40 +0000)]
Toast all the system-table columns that seem to need it.  It turns out
that giving pg_proc a toast table required solving the same problems
we'd have to solve for pg_class --- pg_proc is one of the relations
that gets bootstrapped in relcache.c.  Solution is to go back at the
end of initialization and read in the *real* pg_class row to replace
the phony entry created by formrdesc().  This should work as long as
there's no need to touch any toasted values during initialization,
which seems a reasonable assumption.
Although I did not add a toast-table for every single system table
with a varlena attribute, I believe that it would work to just do
ALTER TABLE pg_class CREATE TOAST TABLE.  So anyone who's really
intent on having several thousand ACL entries for a rel could do it.
NOTE: I didn't force initdb, but you must do one to see the effects
of this patch.

24 years agoClean up inefficiency in ExecRelCheck, and cause it to do the right
Tom Lane [Sun, 6 Aug 2000 04:26:40 +0000 (04:26 +0000)]
Clean up inefficiency in ExecRelCheck, and cause it to do the right
thing when there are multiple result relations.  Formerly, during
something like 'UPDATE foo*', foo's constraints and *only* foo's
constraints would be applied to all foo's children.  Wrong-o ...

24 years agoEnsure that catcache 'busy' flags are reset at transaction abort.
Tom Lane [Sun, 6 Aug 2000 04:17:47 +0000 (04:17 +0000)]
Ensure that catcache 'busy' flags are reset at transaction abort.
Without this, an elog during cache-entry load leaves that catcache
unusable.  elog in that segment of code is pretty unusual but it can
happen.

24 years agoCopy sub-Query nodes to avoid trouble when same sub-Query is linked to
Tom Lane [Sun, 6 Aug 2000 04:13:22 +0000 (04:13 +0000)]
Copy sub-Query nodes to avoid trouble when same sub-Query is linked to
multiple times in the parsetree (can happen in COALESCE or BETWEEN
contexts, for example).  This is a pretty grotty solution --- it will
do for now, but perhaps we can do better when we redesign querytrees.
What we need is a consistent policy about whether querytrees should be
considered read-only structures or not ...

24 years ago> I had to back out the patch. It only compiles with multi-byte enabled.
Bruce Momjian [Sat, 5 Aug 2000 14:59:29 +0000 (14:59 +0000)]
> I had to back out the patch. It only compiles with multi-byte enabled.

 Ooops, I forget... here it is again.

> > >  If encoding is not supported returns ERROR.

 and if multibyte not enabled too....

 Thanks.

                                Karel
~

24 years ago- Minor fix to create temp table for xrefs
Philip Warner [Sat, 5 Aug 2000 10:02:28 +0000 (10:02 +0000)]
- Minor fix to create temp table for xrefs

24 years ago- Only disable triggers for the table being loaded
Philip Warner [Sat, 5 Aug 2000 09:57:46 +0000 (09:57 +0000)]
- Only disable triggers for the table being loaded
- disable triggers prior to BLOB load
- better query for loading blob xrefs
- Fixes to error handling code

24 years agoBack out to_ascii patch from Karel.
Bruce Momjian [Fri, 4 Aug 2000 20:46:47 +0000 (20:46 +0000)]
Back out to_ascii patch from Karel.

24 years agoAdd missing files from Karel, tip from Jan.
Bruce Momjian [Fri, 4 Aug 2000 20:22:52 +0000 (20:22 +0000)]
Add missing files from Karel, tip from Jan.

24 years ago to_ascii( text )
Bruce Momjian [Fri, 4 Aug 2000 15:45:12 +0000 (15:45 +0000)]
 to_ascii( text )

        - encode 'text' from database encoding to ASCII

        to_ascii('\256\341k')

 to_ascii( text, int4 )

        - encode 'text' from 'int4' encoding to ASCII

          to_ascii('\256\341k', 8)

 to_ascii( text, name )

        - encode 'text' from 'name' encoding to ASCII

          to_ascii('\256\341k', 'LATIN2')

  Now is supported LATIN1, LATIN2, WIN1250. For other character sets I
haven't good resources. Add new encoding is easy...

 If encoding is not supported returns ERROR.

 Note --- not exists total corect conversion to ASCII, this function try
        convert chars those is _probably_ interpret-able in ASCII for
        others use ' '. But for example for all Czech characters it is
        sufficient ... hmm Chinese / JAP and other complicated langs
have
        bad luck here :-(

                                                Karel

24 years agoSubclasses inherit constraints of super classes properly
Hiroshi Inoue [Fri, 4 Aug 2000 06:12:11 +0000 (06:12 +0000)]
Subclasses inherit constraints of super classes properly

24 years agoFix tuptoaster bugs induced by making bytea toastable. Durn thing was
Tom Lane [Fri, 4 Aug 2000 04:16:17 +0000 (04:16 +0000)]
Fix tuptoaster bugs induced by making bytea toastable.  Durn thing was
trying to toast tuples inserted into toast tables!  Fix is two-pronged:
first, ensure all columns of a toast table are marked attstorage='p',
and second, alter the target chunk size so that it's less than the
threshold for trying to toast a tuple.  (Code tried to do that but the
expression was wrong.)  A few cosmetic cleanups in tuptoaster too.
NOTE: initdb forced due to change in toaster chunk-size.

24 years agoConvert inet-related functions to new fmgr style. I have also taken it
Tom Lane [Thu, 3 Aug 2000 23:07:51 +0000 (23:07 +0000)]
Convert inet-related functions to new fmgr style.  I have also taken it
on myself to do something about the non-self-consistency of the inet
comparison functions.  The results are probably still semantically wrong
(inet and cidr should have different comparison semantics, I think)
but at least the boolean operators now agree with each other and with
the sort order of indexes on inet/cidr.

24 years agoModify heap_open()/heap_openr() API per pghackers discussion of 11 July.
Tom Lane [Thu, 3 Aug 2000 19:19:38 +0000 (19:19 +0000)]
Modify heap_open()/heap_openr() API per pghackers discussion of 11 July.
These two routines will now ALWAYS elog() on failure, whether you ask for
a lock or not.  If you really want to get a NULL return on failure, call
the new routines heap_open_nofail()/heap_openr_nofail().  By my count there
are only about three places that actually want that behavior.  There were
rather more than three places that were missing the check they needed to
make under the old convention :-(.

24 years agoMore functions updated to new fmgr style --- money, name, tid datatypes.
Tom Lane [Thu, 3 Aug 2000 16:35:08 +0000 (16:35 +0000)]
More functions updated to new fmgr style --- money, name, tid datatypes.
We're reaching the mopup stage here (good thing too, this is getting
tedious).

24 years agoRepair bug noted by Paul Caskey: neqsel() has been generating a bogus
Tom Lane [Thu, 3 Aug 2000 00:58:22 +0000 (00:58 +0000)]
Repair bug noted by Paul Caskey: neqsel() has been generating a bogus
result, in fact nearly the opposite of what it should, because it
was passing the not-equal operator to eqsel() which would use it to
compare the value against the most common value in the column, and
of course obtain the wrong result therefrom.  Must pass the equality
operator to eqsel() instead.  Fortunately that's easy to get from
the oprnegate link.

24 years agoConvert all remaining float4 and float8 functions to new fmgr style.
Tom Lane [Tue, 1 Aug 2000 18:29:35 +0000 (18:29 +0000)]
Convert all remaining float4 and float8 functions to new fmgr style.
At this point I think it'd be possible to make float4 be pass-by-value
without too much work --- and float8 too on machines where Datum is
8 bytes.  Something to try when the mood strikes, anyway.

24 years ago- Added --create, --no-owner, --superuser, --no-reconnect (pg_dump & pg_restore)
Philip Warner [Tue, 1 Aug 2000 15:51:45 +0000 (15:51 +0000)]
- Added --create, --no-owner, --superuser, --no-reconnect (pg_dump & pg_restore)
- Added code to dump 'Create Schema' statement (pg_dump)
- Don't bother to disable/enable triggers if we don't have a superuser (pg_restore)
- Cleaned up code for reconnecting to database.
- Force a reconnect as superuser before enabling/disabling triggers.
- Added & Removed --throttle (pg_dump)
- Fixed minor bug in language dumping code: expbuffres were not being reset.
- Fixed version number initialization in _allocAH (pg_backup_archiver.c)
- Added second connection when restoring BLOBs to allow temp. table to survive
  (db reconnection causes temp tables to be lost).

24 years agoMake acl-related functions safe for TOAST. Mark pg_class.relacl as
Tom Lane [Mon, 31 Jul 2000 22:39:17 +0000 (22:39 +0000)]
Make acl-related functions safe for TOAST.  Mark pg_class.relacl as
compressible but not externally storable (since we're not sure about
whether creating a toast relation for pg_class would work).

24 years agoCancel request while waiting for a lock should try to wake
Hiroshi Inoue [Mon, 31 Jul 2000 01:16:24 +0000 (01:16 +0000)]
Cancel request while waiting for a lock should try to wake
up sleeping processes.

24 years agoType lztext is toast.
Tom Lane [Sun, 30 Jul 2000 22:14:09 +0000 (22:14 +0000)]
Type lztext is toast.

(Sorry, couldn't help it...)

Removed type filename as well, since it's unused and probably useless.
INITDB FORCED, because pg_rewrite columns are now plain text again.

24 years agoConvert all remaining geometric operators to new fmgr style. This
Tom Lane [Sun, 30 Jul 2000 20:44:02 +0000 (20:44 +0000)]
Convert all remaining geometric operators to new fmgr style.  This
allows fixing problems with operators that expected to be able to
return a NULL, such as the '#' line-segment-intersection operator
that tried to return NULL when the two segments don't intersect.
(See, eg, bug report from 1-Nov-99 on pghackers.)  Fix some other
bugs in passing, such as backwards comparison in path_distance().

24 years agoPATH and POLYGON datatypes are now TOASTable. Associated functions
Tom Lane [Sat, 29 Jul 2000 18:46:12 +0000 (18:46 +0000)]
PATH and POLYGON datatypes are now TOASTable.  Associated functions
updated to new fmgr style.  Deleted hoary old functions for compatibility
with pre-6.1 representations of these datatypes.

24 years agobpchar, varchar, bytea, numeric are toastable --- if you initdb, which
Tom Lane [Sat, 29 Jul 2000 03:26:51 +0000 (03:26 +0000)]
bpchar, varchar, bytea, numeric are toastable --- if you initdb, which
I did not force.  I marked numeric as compressable-but-not-move-off-able,
partly to test that storage mode and partly because I've got doubts
that numerics are large enough to need external storage.

24 years agoFix acceptance of PATH as a type and column name.
Thomas G. Lockhart [Fri, 28 Jul 2000 14:47:23 +0000 (14:47 +0000)]
Fix acceptance of PATH as a type and column name.
 Note that this has changed some of the edge cases for what is accepted
 as a type name and/or column id. Regression test passes, but more
 tweaks may be coming...

24 years agoAdd int2-vs-int8 comparison operators. These are now necessary because
Tom Lane [Fri, 28 Jul 2000 05:07:49 +0000 (05:07 +0000)]
Add int2-vs-int8 comparison operators.  These are now necessary because
the planner may try to generate them as a result of transitivity of the
existing int2-vs-int4 and int4-vs-int8 operators.  In fact, it is now
necessary that mergejoinable cross-datatype operators form closed sets.
Add an opr_sanity regress test to detect missing operators.

24 years agoUpdate TODO list.
Bruce Momjian [Fri, 28 Jul 2000 02:28:08 +0000 (02:28 +0000)]
Update TODO list.

24 years agoRemove <values.h> inclusions, no-longer-needed MAXINT definitions.
Tom Lane [Fri, 28 Jul 2000 02:13:52 +0000 (02:13 +0000)]
Remove <values.h> inclusions, no-longer-needed MAXINT definitions.

24 years agoFix sloppy macro coding (not enough parentheses).
Tom Lane [Fri, 28 Jul 2000 01:04:40 +0000 (01:04 +0000)]
Fix sloppy macro coding (not enough parentheses).

24 years agoMake planner safe for recursive calls --- needed for cases where
Tom Lane [Thu, 27 Jul 2000 23:16:04 +0000 (23:16 +0000)]
Make planner safe for recursive calls --- needed for cases where
eval_const_expressions tries to simplify an SQL function.

24 years agoUpdate FAQ.
Bruce Momjian [Thu, 27 Jul 2000 20:26:55 +0000 (20:26 +0000)]
Update FAQ.

24 years agoSome pedantic compile syntax errors to fix with the following patch
Bruce Momjian [Thu, 27 Jul 2000 19:49:24 +0000 (19:49 +0000)]
Some pedantic compile syntax errors to fix with the following patch
for today's snapshot

Andreas

24 years agoHere is a bug and patch to fix it. I have tested this bug and fix on
Bruce Momjian [Thu, 27 Jul 2000 19:44:01 +0000 (19:44 +0000)]
Here is a bug and patch to fix it. I have tested this bug and fix on
FreeBSD/Intel and DecUX/Alpha machines. The bug appears in postgresql
6.5.3 and 7.0.2. Can someone please review it and apply it to the
source tree?

Sometimes when the postgres connection dies it is necessary to
attempt to reconnect. Calling the pgconnection::Connect method in a
derived class leaks memory because it does not clear the current
connection (if there is one). These patches ensures that any open
connections are closed before attempting to open a new one.

-Michael Richards

24 years agoUpdate FAQ.
Bruce Momjian [Thu, 27 Jul 2000 19:22:20 +0000 (19:22 +0000)]
Update FAQ.

24 years agoAdd cidr TODO.detai file.
Bruce Momjian [Thu, 27 Jul 2000 19:11:47 +0000 (19:11 +0000)]
Add cidr TODO.detai file.

24 years agoUpdate TODO list.
Bruce Momjian [Thu, 27 Jul 2000 18:51:40 +0000 (18:51 +0000)]
Update TODO list.

24 years agoUpdate TODO list.
Bruce Momjian [Thu, 27 Jul 2000 18:50:37 +0000 (18:50 +0000)]
Update TODO list.

24 years agoUpdate TODO list.
Bruce Momjian [Thu, 27 Jul 2000 18:48:28 +0000 (18:48 +0000)]
Update TODO list.

24 years agoUpdate TODO list.
Bruce Momjian [Thu, 27 Jul 2000 18:47:06 +0000 (18:47 +0000)]
Update TODO list.

24 years agoUpdate TODO list.
Bruce Momjian [Thu, 27 Jul 2000 18:42:15 +0000 (18:42 +0000)]
Update TODO list.

24 years agoUpdate FAQ.
Bruce Momjian [Thu, 27 Jul 2000 16:55:33 +0000 (16:55 +0000)]
Update FAQ.

24 years agoUpdate TODO list.
Bruce Momjian [Thu, 27 Jul 2000 16:53:21 +0000 (16:53 +0000)]
Update TODO list.

24 years agoArrange to free planning memory (or most of it, anyway) at completion
Tom Lane [Thu, 27 Jul 2000 04:51:04 +0000 (04:51 +0000)]
Arrange to free planning memory (or most of it, anyway) at completion
of planning.  This should reduce memory requirements for large joins.

24 years agoEnsure that values stored within arrays are not toasted, per
Tom Lane [Thu, 27 Jul 2000 03:50:52 +0000 (03:50 +0000)]
Ensure that values stored within arrays are not toasted, per
discussion on pghackers a few days ago.

24 years agoUpdate TODO list.
Bruce Momjian [Thu, 27 Jul 2000 00:56:43 +0000 (00:56 +0000)]
Update TODO list.

24 years agoWhen dealing with OR-of-ANDs quals, extract multiple subclauses of an AND
Tom Lane [Wed, 26 Jul 2000 23:46:22 +0000 (23:46 +0000)]
When dealing with OR-of-ANDs quals, extract multiple subclauses of an AND
to use with a multiple-key index.  Formerly we would only extract clauses
that had to do with the first key of the index, which was correct but
didn't exploit the index fully.

24 years agoUpdate FAQ.
Bruce Momjian [Wed, 26 Jul 2000 19:20:00 +0000 (19:20 +0000)]
Update FAQ.

24 years agoUpdate FAQ.
Bruce Momjian [Wed, 26 Jul 2000 16:54:58 +0000 (16:54 +0000)]
Update FAQ.

24 years agoUpdate FAQ.
Bruce Momjian [Wed, 26 Jul 2000 02:20:02 +0000 (02:20 +0000)]
Update FAQ.

24 years agoExecRestrPos() really needs to raise ERROR, not a wimpy DEBUG message,
Tom Lane [Tue, 25 Jul 2000 23:43:38 +0000 (23:43 +0000)]
ExecRestrPos() really needs to raise ERROR, not a wimpy DEBUG message,
if given a node type it doesn't support.  As is, wrong results from a
mergejoin would go undetected.

24 years agoEnsure that if the OID counter wraps around, we will not generate 0,
Tom Lane [Tue, 25 Jul 2000 20:18:19 +0000 (20:18 +0000)]
Ensure that if the OID counter wraps around, we will not generate 0,
nor any OID in the reserved range (1-16383).

24 years agoFix confusion between sizeof(long) and sizeof(long*), as well as
Tom Lane [Tue, 25 Jul 2000 20:17:02 +0000 (20:17 +0000)]
Fix confusion between sizeof(long) and sizeof(long*), as well as
failure to MAXALIGN the start of shmem allocable space.  No reports
of trouble here, just compulsive tidiness.

24 years agoAdd commentary about varying usage of scankeys in btree code.
Tom Lane [Tue, 25 Jul 2000 05:26:40 +0000 (05:26 +0000)]
Add commentary about varying usage of scankeys in btree code.

24 years agoClean up and document btree code for ordering keys. Neat stuff,
Tom Lane [Tue, 25 Jul 2000 04:47:59 +0000 (04:47 +0000)]
Clean up and document btree code for ordering keys.  Neat stuff,
actually, but who could understand it with no comments?  Fix bug
while at it: _bt_orderkeys would try to invoke comparisons on
NULL inputs, given the right sort of redundant quals.

24 years agoUpdate comments.
Tom Lane [Tue, 25 Jul 2000 04:30:42 +0000 (04:30 +0000)]
Update comments.

24 years agoUpdate bsdi template
Bruce Momjian [Mon, 24 Jul 2000 13:53:16 +0000 (13:53 +0000)]
Update bsdi template

24 years agomore doc cleanups
Bruce Momjian [Mon, 24 Jul 2000 13:17:44 +0000 (13:17 +0000)]
more doc cleanups

24 years agopg_backup_plain_text.c replaced by pg_backup_null.c
Philip Warner [Mon, 24 Jul 2000 06:30:16 +0000 (06:30 +0000)]
pg_backup_plain_text.c replaced by pg_backup_null.c

24 years ago- no longer put ACLs at end of dump
Philip Warner [Mon, 24 Jul 2000 06:24:26 +0000 (06:24 +0000)]
- no longer put ACLs at end of dump
- connect as appropriate user in pg_restore with db connection
- dump owner of rule in pg_dump

24 years agoDeduce equality constraints that are implied by transitivity of
Tom Lane [Mon, 24 Jul 2000 03:11:01 +0000 (03:11 +0000)]
Deduce equality constraints that are implied by transitivity of
mergejoinable qual clauses, and add them to the query quals.  For
example, WHERE a = b AND b = c will cause us to add AND a = c.
This is necessary to ensure that it's safe to use these variables
as interchangeable sort keys, which is something 7.0 knows how to do.
Should provide a useful improvement in planning ability, too.

24 years agoUnset locale variables before running regression tests. (All of them!)
Peter Eisentraut [Sun, 23 Jul 2000 13:01:11 +0000 (13:01 +0000)]
Unset locale variables before running regression tests. (All of them!)
Don't do config.status substitutions into the regression test makefile.

24 years agoClean up some sloppy casts --- Oid vs. Datum, that sort of thing.
Tom Lane [Sun, 23 Jul 2000 03:50:26 +0000 (03:50 +0000)]
Clean up some sloppy casts --- Oid vs. Datum, that sort of thing.

24 years agoFurther cleanup of array behavior. Slice assignments to arrays with
Tom Lane [Sun, 23 Jul 2000 01:36:05 +0000 (01:36 +0000)]
Further cleanup of array behavior.  Slice assignments to arrays with
varlena elements work now.  Allow assignment to previously-nonexistent
subscript position to extend array, but only for 1-D arrays and only
if adjacent to existing positions (could do more if we had a way to
represent nulls in arrays, but I don't want to tackle that now).
Arrange for assignment of NULL to an array element in UPDATE to be a
no-op, rather than setting the entire array to NULL as it used to.
(Throwing an error would be a reasonable alternative, but it's never
done that...)  Update regress test accordingly.

24 years agoShed some light onto SysV IPC configuration.
Peter Eisentraut [Sat, 22 Jul 2000 14:49:01 +0000 (14:49 +0000)]
Shed some light onto SysV IPC configuration.

24 years agotypos
Peter Eisentraut [Sat, 22 Jul 2000 14:48:01 +0000 (14:48 +0000)]
typos

24 years ago2nd try for the index tuple toast hack. This time as suggested
Jan Wieck [Sat, 22 Jul 2000 11:18:47 +0000 (11:18 +0000)]
2nd try for the index tuple toast hack. This time as suggested
by Tom.

Jan

24 years agoMake update lists like 'UPDATE tab SET foo[1] = bar, foo[3] = baz'
Tom Lane [Sat, 22 Jul 2000 06:19:04 +0000 (06:19 +0000)]
Make update lists like 'UPDATE tab SET foo[1] = bar, foo[3] = baz'
work as expected.  THe underlying implementation is essentially
'SET foo = array_set(foo, 1, bar)', so we have to turn the items
into nested invocations of array_set() to make it work correctly.
Side effect: we now complain about 'UPDATE tab SET foo = bar, foo = baz'
which is illegal per SQL92 but we didn't detect it before.

24 years agospell cleanups
Bruce Momjian [Sat, 22 Jul 2000 04:45:10 +0000 (04:45 +0000)]
spell cleanups

24 years agospell cleanups
Bruce Momjian [Sat, 22 Jul 2000 04:30:27 +0000 (04:30 +0000)]
spell cleanups

24 years agoRemove 'Array' node type, which has evidently been dead code for
Tom Lane [Sat, 22 Jul 2000 04:22:47 +0000 (04:22 +0000)]
Remove 'Array' node type, which has evidently been dead code for
a very long time.

24 years agoMissed some array updates ...
Tom Lane [Sat, 22 Jul 2000 04:16:13 +0000 (04:16 +0000)]
Missed some array updates ...

24 years agoArrays are toastable. (At least if you initdb, which I didn't force.)
Tom Lane [Sat, 22 Jul 2000 03:34:43 +0000 (03:34 +0000)]
Arrays are toastable.  (At least if you initdb, which I didn't force.)
Remove a bunch of crufty code for large-object-based arrays, which is
superseded by TOAST and likely hasn't worked in a long time anyway.
Clean up array code a little, and in particular eliminate its habit
of scribbling on the input array (ie, modifying the input tuple :-().

24 years agoCleanups
Bruce Momjian [Sat, 22 Jul 2000 02:39:10 +0000 (02:39 +0000)]
Cleanups

24 years agomaintainer-clean and distclean ought to remove dependency information as well.
Peter Eisentraut [Sat, 22 Jul 2000 01:48:53 +0000 (01:48 +0000)]
maintainer-clean and distclean ought to remove dependency information as well.

24 years agoFix typo in version-mismatch error report.
Tom Lane [Fri, 21 Jul 2000 22:27:29 +0000 (22:27 +0000)]
Fix typo in version-mismatch error report.

24 years agoFurther cleanup of btbuild (CREATE INDEX). Avoid storing unneeded
Tom Lane [Fri, 21 Jul 2000 22:14:09 +0000 (22:14 +0000)]
Further cleanup of btbuild (CREATE INDEX).  Avoid storing unneeded
left keys during bottom-up index build, and leave some free space
instead of packing the pages to the brim (so as to avoid vast numbers
of page splits during the first interactive insertions).

24 years agoFix sloppiness about alignment requirements in findsplitloc() space
Tom Lane [Fri, 21 Jul 2000 19:21:00 +0000 (19:21 +0000)]
Fix sloppiness about alignment requirements in findsplitloc() space
calculation, also make it stop when it has a 'good enough' split instead
of exhaustively trying all split points.

24 years agoMore doc cleanups, from book.
Bruce Momjian [Fri, 21 Jul 2000 18:51:24 +0000 (18:51 +0000)]
More doc cleanups, from book.

24 years agoMore doc cleanups
Bruce Momjian [Fri, 21 Jul 2000 17:58:49 +0000 (17:58 +0000)]
More doc cleanups

24 years agoUpdate for sh.
Bruce Momjian [Fri, 21 Jul 2000 14:51:00 +0000 (14:51 +0000)]
Update for sh.

24 years ago- Support for TAR output
Philip Warner [Fri, 21 Jul 2000 11:43:26 +0000 (11:43 +0000)]
- Support for TAR output
- Support for BLOB output from pg_dump and input via pg_restore
- Support for direct DB connection in pg_restore
- Fixes in support for --insert flag
- pg_dump now outputs in modified OID order

24 years ago- Support for BLOB output from pg_dump and input via pg_restore
Philip Warner [Fri, 21 Jul 2000 11:40:08 +0000 (11:40 +0000)]
- Support for BLOB output from pg_dump and input via pg_restore
- Support for direct DB connection in pg_restore
- Fixes in support for --insert flag
- pg_dump now outputs in modified OID order
- various other bug fixes

24 years agoNeed to switch to tuples memory context when replacing the toasted
Jan Wieck [Fri, 21 Jul 2000 11:18:51 +0000 (11:18 +0000)]
Need to switch to tuples memory context when replacing the toasted
one with the plain one.

Jan

24 years agoTemporary fix to make TOAST vacuum-safe. All values are forced to be
Jan Wieck [Fri, 21 Jul 2000 10:31:31 +0000 (10:31 +0000)]
Temporary fix to make TOAST vacuum-safe. All values are forced to be
in memory (plain or compressed) in the tuple returned from the heap-am.
So no index will ever contain an external reference.

Jan

24 years agoMajor overhaul of btree index code. Eliminate special BTP_CHAIN logic for
Tom Lane [Fri, 21 Jul 2000 06:42:39 +0000 (06:42 +0000)]
Major overhaul of btree index code.  Eliminate special BTP_CHAIN logic for
duplicate keys by letting search go to the left rather than right when an
equal key is seen at an upper tree level.  Fix poor choice of page split
point (leading to insertion failures) that was forced by chaining logic.
Don't store leftmost key in non-leaf pages, since it's not necessary.
Don't create root page until something is first stored in the index, so an
unused index is now 8K not 16K.  (Doesn't seem to be as easy to get rid of
the metadata page, unfortunately.)  Massive cleanup of unreadable code,
fix poor, obsolete, and just plain wrong documentation and comments.
See src/backend/access/nbtree/README for the gory details.

24 years agocleanup
Bruce Momjian [Fri, 21 Jul 2000 04:49:23 +0000 (04:49 +0000)]
cleanup

24 years agocleanup
Bruce Momjian [Fri, 21 Jul 2000 04:48:33 +0000 (04:48 +0000)]
cleanup

24 years agoCleanup
Bruce Momjian [Fri, 21 Jul 2000 04:42:28 +0000 (04:42 +0000)]
Cleanup

24 years agoCleanujp
Bruce Momjian [Fri, 21 Jul 2000 04:37:10 +0000 (04:37 +0000)]
Cleanujp

24 years agoCleanup
Bruce Momjian [Fri, 21 Jul 2000 04:25:05 +0000 (04:25 +0000)]
Cleanup

24 years agoreference page cleanup
Bruce Momjian [Fri, 21 Jul 2000 03:38:22 +0000 (03:38 +0000)]
reference page cleanup

24 years agoClean up flags
Bruce Momjian [Fri, 21 Jul 2000 03:14:33 +0000 (03:14 +0000)]
Clean up flags