]> granicus.if.org Git - postgresql/log
postgresql
24 years agoHere is a patch against the same cvs tree as the SSL patch (Aug 20).
Bruce Momjian [Tue, 29 Aug 2000 04:15:43 +0000 (04:15 +0000)]
Here is a patch against the same cvs tree as the SSL patch (Aug 20).
I hope I didn't mess the SGML up too bad, but somebody should definitly
look that over. I tried to steal as much as I could from around :-)

This patch updates:
* Installation instructions (paragraph on how to compile with openssl)
* Documentation of pg_hba.conf (added "hostssl" record docs)
* Libpq documentation (added connection option, documentation of
  PQgetssl() function)
* Add section on SSL to "Server Runtime Environment"

If you beleive any particular area needs more attention, please let me know.

//Magnus

24 years agoUpdate obsolete comments.
Tom Lane [Tue, 29 Aug 2000 02:00:38 +0000 (02:00 +0000)]
Update obsolete comments.

24 years agoRemove bogus use of int4out().
Tom Lane [Tue, 29 Aug 2000 00:57:21 +0000 (00:57 +0000)]
Remove bogus use of int4out().

24 years agoMaybe "shared_buffers" is a slightly better name than "shmem_buffers" for -B.
Peter Eisentraut [Mon, 28 Aug 2000 11:57:41 +0000 (11:57 +0000)]
Maybe "shared_buffers" is a slightly better name than "shmem_buffers" for -B.

24 years agoNew configure test for flex, which recognizes only flex but does so in all
Peter Eisentraut [Mon, 28 Aug 2000 11:53:23 +0000 (11:53 +0000)]
New configure test for flex, which recognizes only flex but does so in all
incarnations (I hope). When an acceptable flex version is not found, print
instructive error messages from both configure and the makefiles, so that
users can continue building anyway.

24 years agoClean up callers of AllocateFile and BasicOpenFile to ensure that
Tom Lane [Sun, 27 Aug 2000 21:50:18 +0000 (21:50 +0000)]
Clean up callers of AllocateFile and BasicOpenFile to ensure that
a reasonable error message (including the kernel errno message)
is reported on any file open failure.

24 years agoChange ReleaseLruFile() usage so that if we cannot release any more
Tom Lane [Sun, 27 Aug 2000 21:48:00 +0000 (21:48 +0000)]
Change ReleaseLruFile() usage so that if we cannot release any more
virtual FDs, we just return the ENFILE/EMFILE error to the caller,
rather than immediate elog().  This allows more robust behavior in
the postmaster, which uses AllocateFile() but does not want elog().

24 years agoUpdate FAQ.
Bruce Momjian [Sun, 27 Aug 2000 19:25:31 +0000 (19:25 +0000)]
Update FAQ.

24 years agoRemove configure tests for `signed', `volatile', and signal handler args;
Peter Eisentraut [Sun, 27 Aug 2000 19:00:41 +0000 (19:00 +0000)]
Remove configure tests for `signed', `volatile', and signal handler args;
the harm potential outweighs the possible benefits.

24 years agoChange pg_mblen and pg_encoding_mblen return types from void
Tatsuo Ishii [Sun, 27 Aug 2000 10:40:48 +0000 (10:40 +0000)]
Change pg_mblen and pg_encoding_mblen return types from void
to int so that they return the number of whcars.

24 years agoUpdate FAQ.
Bruce Momjian [Sun, 27 Aug 2000 03:55:20 +0000 (03:55 +0000)]
Update FAQ.

24 years agoTired of seeing these warnings ...
Tom Lane [Sat, 26 Aug 2000 21:56:23 +0000 (21:56 +0000)]
Tired of seeing these warnings ...

24 years agoRename BITSPERBYTE to BITS_PER_BYTE to avoid conflict with <values.h>
Tom Lane [Sat, 26 Aug 2000 21:53:44 +0000 (21:53 +0000)]
Rename BITSPERBYTE to BITS_PER_BYTE to avoid conflict with <values.h>
on some platforms.

24 years agoFix AC_FUNC_ACCEPT_ARGTYPES to accept `const struct sockaddr *' as second
Peter Eisentraut [Sat, 26 Aug 2000 21:11:45 +0000 (21:11 +0000)]
Fix AC_FUNC_ACCEPT_ARGTYPES to accept `const struct sockaddr *' as second
argument, change the order of tests for the third argument to be safe
against missing prototypes, and make it fail hard if none of the
combinations succeed.

24 years agoThis file seems not to have been updated for the most
Tom Lane [Sat, 26 Aug 2000 19:47:41 +0000 (19:47 +0000)]
This file seems not to have been updated for the most
recent change to geometry.sql.

24 years agoUpdate platform FAQs
Peter Eisentraut [Sat, 26 Aug 2000 19:34:24 +0000 (19:34 +0000)]
Update platform FAQs

24 years agoRemove old FAQ files.
Bruce Momjian [Sat, 26 Aug 2000 18:46:17 +0000 (18:46 +0000)]
Remove old FAQ files.

24 years agoUpdate FAQ.
Bruce Momjian [Sat, 26 Aug 2000 18:20:55 +0000 (18:20 +0000)]
Update FAQ.

24 years agoAdd pg-config utility that stores some configuration parameters other
Peter Eisentraut [Sat, 26 Aug 2000 13:08:16 +0000 (13:08 +0000)]
Add pg-config utility that stores some configuration parameters other
packages can use to configure their build.

E.g.,
$ pg-config --libdir
/usr/local/pgsql/lib

`pg-config --configure' stores the configure command line.

24 years agoTweak btree insertion to avoid O(N^2) slowdown with large numbers of
Tom Lane [Fri, 25 Aug 2000 23:13:33 +0000 (23:13 +0000)]
Tweak btree insertion to avoid O(N^2) slowdown with large numbers of
equal keys.  See discussion of today's date in pghackers list.

24 years agoAvoid creating a TOAST table if we can prove that the maximum tuple
Tom Lane [Fri, 25 Aug 2000 18:05:54 +0000 (18:05 +0000)]
Avoid creating a TOAST table if we can prove that the maximum tuple
length is < TOAST_TUPLE_THRESHOLD, even with toastable column types
present.  For example, CREATE TABLE foo (f1 int, f2 varchar(100))
does not require a toast table, even though varchar is a toastable
type.

24 years agoFix typos and inconsistancies found by He Weiping
Thomas G. Lockhart [Fri, 25 Aug 2000 15:17:50 +0000 (15:17 +0000)]
Fix typos and inconsistancies found by He Weiping
 (aka Henry) <laser@zhangmai.com.cn>.
Fix new problems in insert.sgml and create_function.sgml which kept jade
 from completing.

24 years agoChange return type of:
Tatsuo Ishii [Fri, 25 Aug 2000 14:24:09 +0000 (14:24 +0000)]
Change return type of:
       pg_mb2wchar(const unsigned char *, pg_wchar *);
       pg_mb2wchar_with_len(const unsigned char *, pg_wchar *, int);
from void to int. Now they return the number of
wide chars.

24 years agoMake the location of the Kerberos server key file run time configurable
Peter Eisentraut [Fri, 25 Aug 2000 10:00:35 +0000 (10:00 +0000)]
Make the location of the Kerberos server key file run time configurable
(rather than compile time). For libpq, even when Kerberos support is
compiled in, the default user name should still fall back to geteuid()
if it can't be determined via the Kerberos system.

A couple of fixes for string type configuration parameters, now that there
is one.

24 years agoDocumentation updates to reflect TOAST and new-style fmgr.
Tom Lane [Thu, 24 Aug 2000 23:59:38 +0000 (23:59 +0000)]
Documentation updates to reflect TOAST and new-style fmgr.

24 years agoDocumentation updates to reflect TOAST and new-style fmgr.
Tom Lane [Thu, 24 Aug 2000 23:36:29 +0000 (23:36 +0000)]
Documentation updates to reflect TOAST and new-style fmgr.

24 years agoGetAttributeByName and GetAttributeByNum should be declared to return
Tom Lane [Thu, 24 Aug 2000 23:34:11 +0000 (23:34 +0000)]
GetAttributeByName and GetAttributeByNum should be declared to return
Datum, not char*, for portability's sake.

24 years agoUpdate funcs tutorial for new function manager.
Tom Lane [Thu, 24 Aug 2000 23:32:43 +0000 (23:32 +0000)]
Update funcs tutorial for new function manager.

24 years agoSQL-language functions are now callable in ordinary fmgr contexts ...
Tom Lane [Thu, 24 Aug 2000 03:29:15 +0000 (03:29 +0000)]
SQL-language functions are now callable in ordinary fmgr contexts ...
for example, an SQL function can be used in a functional index.  (I make
no promises about speed, but it'll work ;-).)  Clean up and simplify
handling of functions returning sets.

24 years agoComment fixes from Larry Rosenman" <ler@lerctr.org>.
Thomas G. Lockhart [Wed, 23 Aug 2000 13:44:14 +0000 (13:44 +0000)]
Comment fixes from Larry Rosenman" <ler@lerctr.org>.

24 years agoAdd functions to convert to and from text, and to truncate to MAC OUI.
Thomas G. Lockhart [Wed, 23 Aug 2000 06:04:49 +0000 (06:04 +0000)]
Add functions to convert to and from text, and to truncate to MAC OUI.
Remove hardcoded macaddr_manuf(), which had really old, obsolete info.
 Replace this with some contrib/mac/ code to maniag OUI info from IEEE.

24 years agoCreate and manage information on MAC address OUIs
Thomas G. Lockhart [Wed, 23 Aug 2000 06:02:23 +0000 (06:02 +0000)]
Create and manage information on MAC address OUIs
 (Organizationally Unique Identifiers).
 This is the manufacturer's code in the MAC address.

24 years agoFix several <ulink> tags which refer to e-mail addresses
Thomas G. Lockhart [Wed, 23 Aug 2000 05:59:11 +0000 (05:59 +0000)]
Fix several <ulink> tags which refer to e-mail addresses
 but were missing the "mailto:" prefix.
Fix typo.
Thanks to Neil Conway <nconway@klamath.dyndns.org> for the heads-up.

24 years agoFix plpgsql lexer to accept Windows-style and Mac-style newlines as
Tom Lane [Tue, 22 Aug 2000 14:59:28 +0000 (14:59 +0000)]
Fix plpgsql lexer to accept Windows-style and Mac-style newlines as
newlines.

24 years agoMake scanner multibyte aware. Currently it may produce an incorrect
Tatsuo Ishii [Tue, 22 Aug 2000 13:01:20 +0000 (13:01 +0000)]
Make scanner multibyte aware. Currently it may produce an incorrect
multibyte sequence while truncating identifiers.

24 years agoMake makeObjectName multibyte aware. Currently, it may produce
Tatsuo Ishii [Tue, 22 Aug 2000 12:59:04 +0000 (12:59 +0000)]
Make makeObjectName multibyte aware. Currently, it may produce
incorrect multibyte sequence while truncating too long names.

24 years agoAdd multibyte support for both LIKE and ILIKE
Tatsuo Ishii [Tue, 22 Aug 2000 06:33:57 +0000 (06:33 +0000)]
Add multibyte support for both LIKE and ILIKE
Eliminate up-to-4-times memory allocation problem

24 years agoFix a many-legged critter reported by chifungfan@yahoo.com: under the
Tom Lane [Tue, 22 Aug 2000 04:06:22 +0000 (04:06 +0000)]
Fix a many-legged critter reported by chifungfan@yahoo.com: under the
right circumstances a hash join executed as a DECLARE CURSOR/FETCH
query would crash the backend.  Problem as seen in current sources was
that the hash tables were stored in a context that was a child of
TransactionCommandContext, which got zapped at completion of the FETCH
command --- but cursor cleanup executed at COMMIT expected the tables
to still be valid.  I haven't chased down the details as seen in 7.0.*
but I'm sure it's the same general problem.

24 years agoAdd some more Assert checks.
Tom Lane [Tue, 22 Aug 2000 04:00:10 +0000 (04:00 +0000)]
Add some more Assert checks.

24 years agoMove pg_checkretval out of the planner (where it never belonged) into
Tom Lane [Mon, 21 Aug 2000 20:55:31 +0000 (20:55 +0000)]
Move pg_checkretval out of the planner (where it never belonged) into
pg_proc.c (where it's actually used).  Fix it to correctly handle tlists
that contain resjunk target items, and improve error messages.  This
addresses bug reported by Krupnikov 6-July-00.

24 years agoFix format_type() to display correct lengths for BIT/BIT VARYING.
Tom Lane [Mon, 21 Aug 2000 18:23:18 +0000 (18:23 +0000)]
Fix format_type() to display correct lengths for BIT/BIT VARYING.
Also, make it depend on type OIDs rather than type names for more
consistency with rest of backend.

24 years agofmgr interface mopup work. Use new DatumGetBool and BoolGetDatum
Tom Lane [Mon, 21 Aug 2000 17:22:36 +0000 (17:22 +0000)]
fmgr interface mopup work.  Use new DatumGetBool and BoolGetDatum
macros where appropriate (the code used to have several different ways
of doing that, including Int32, Int8, UInt8, ...).  Remove last few
references to float32 and float64 typedefs --- it's all float4/float8
now.  The typedefs themselves should probably stay in c.h for a release
or two, though, to avoid breaking user-written C functions.

24 years agoFirst pass at integrating BIT and BIT VARYING code from Adriaan Joubert.
Tom Lane [Mon, 21 Aug 2000 04:48:57 +0000 (04:48 +0000)]
First pass at integrating BIT and BIT VARYING code from Adriaan Joubert.
Update functions to new-style fmgr, make BIT and VARBIT be binary-
equivalent, add entries to allow these types to be btree indexed,
correct a few bugs.  BIT/VARBIT are now toastable, too.
NOTE: initdb forced due to catalog updates.

24 years agoStandardize on just one spelling of BITSPERBYTE.
Tom Lane [Sun, 20 Aug 2000 19:31:37 +0000 (19:31 +0000)]
Standardize on just one spelling of BITSPERBYTE.

24 years agocoupla minor fixes in the `make dist' support code
Peter Eisentraut [Sun, 20 Aug 2000 15:55:15 +0000 (15:55 +0000)]
coupla minor fixes in the `make dist' support code

24 years agoSubstitute libdir into createlang as last resort so one doesn't have to set
Peter Eisentraut [Sun, 20 Aug 2000 11:56:29 +0000 (11:56 +0000)]
Substitute libdir into createlang as last resort so one doesn't have to set
PGLIB or use any option anymore.

24 years agoIntroduce HAVE_UNIX_SOCKETS symbol to replace repeatedly listing all the
Peter Eisentraut [Sun, 20 Aug 2000 10:55:35 +0000 (10:55 +0000)]
Introduce HAVE_UNIX_SOCKETS symbol to replace repeatedly listing all the
unsupported platforms.

24 years agoMake functional indexes accept binary-compatible functions, for example
Tom Lane [Sun, 20 Aug 2000 00:44:19 +0000 (00:44 +0000)]
Make functional indexes accept binary-compatible functions, for example
CREATE INDEX fooi ON foo (lower(f1)) where f1 is varchar rather than text.

24 years ago./configure --without-CXX errroneously tried to use a C++ compiler named "no"
Peter Eisentraut [Sat, 19 Aug 2000 23:39:36 +0000 (23:39 +0000)]
./configure --without-CXX errroneously tried to use a C++ compiler named "no"

reported by Mark Hollomon

24 years agoClean up handling of variable-free qual clauses. System now does the
Tom Lane [Sun, 13 Aug 2000 02:50:35 +0000 (02:50 +0000)]
Clean up handling of variable-free qual clauses.  System now does the
right thing with variable-free clauses that contain noncachable functions,
such as 'WHERE random() < 0.5' --- these are evaluated once per
potential output tuple.  Expressions that contain only Params are
now candidates to be indexscan quals --- for example, 'var = ($1 + 1)'
can now be indexed.  Cope with RelabelType nodes atop potential indexscan
variables --- this oversight prevents 7.0.* from recognizing some
potentially indexscanable situations.

24 years agoMop-up for removal of ':' and ';' operators ... like, say, actually
Tom Lane [Sat, 12 Aug 2000 05:15:24 +0000 (05:15 +0000)]
Mop-up for removal of ':' and ';' operators ... like, say, actually
take 'em out of pg_operator.  Also remove from scan.l's set of legal
operator characters.  Update documentation.

24 years agoFix ruleutils to produce correct output for array assignment, such
Tom Lane [Sat, 12 Aug 2000 04:04:53 +0000 (04:04 +0000)]
Fix ruleutils to produce correct output for array assignment, such
as UPDATE foo SET arr[3] = 42.

24 years agoUpdate comments for some parse node types.
Tom Lane [Fri, 11 Aug 2000 23:46:54 +0000 (23:46 +0000)]
Update comments for some parse node types.

24 years agocopyObject() and equal() now know about all parse-time node types,
Tom Lane [Fri, 11 Aug 2000 23:45:35 +0000 (23:45 +0000)]
copyObject() and equal() now know about all parse-time node types,
including utility statements.  Still can't copy or compare executor
state, but at present that doesn't seem to be necessary.  This makes
it possible to execute most (all?) utility statements in plpgsql.
Had to change parsetree representation of CreateTrigStmt so that it
contained only legal Nodes, and not bare string constants.

24 years agoRemove debugging Assert that should never have been committed in the
Tom Lane [Fri, 11 Aug 2000 18:35:50 +0000 (18:35 +0000)]
Remove debugging Assert that should never have been committed in the
first place :-(

24 years agoMake debug_assertions default to ON, when compiled in at all, for
Tom Lane [Fri, 11 Aug 2000 18:31:10 +0000 (18:31 +0000)]
Make debug_assertions default to ON, when compiled in at all, for
backwards compatibility with old behavior.

24 years agoCREATE btree INDEX takes dead tuples into account when old transactions
Hiroshi Inoue [Thu, 10 Aug 2000 02:33:20 +0000 (02:33 +0000)]
CREATE btree INDEX takes dead tuples into account when old transactions
are running.

24 years agoReimplement MULTIBYTE support (oops). Not tested, but it does compile.
Thomas G. Lockhart [Wed, 9 Aug 2000 14:13:03 +0000 (14:13 +0000)]
Reimplement MULTIBYTE support (oops). Not tested, but it does compile.

24 years agoRemove 'func_tlist' from Func expression nodes, likewise 'param_tlist'
Tom Lane [Tue, 8 Aug 2000 15:43:12 +0000 (15:43 +0000)]
Remove 'func_tlist' from Func expression nodes, likewise 'param_tlist'
from Param nodes, per discussion a few days ago on pghackers.  Add new
expression node type FieldSelect that implements the functionality where
it's actually needed.  Clean up some other unused fields in Func nodes
as well.
NOTE: initdb forced due to change in stored expression trees for rules.

24 years agoBuf fix to pg_restire -S option in getopts
Philip Warner [Tue, 8 Aug 2000 11:48:59 +0000 (11:48 +0000)]
Buf fix to pg_restire -S option in getopts

24 years agoTOAST mop-up work: update comments for tuple-size-related symbols such
Tom Lane [Mon, 7 Aug 2000 20:16:13 +0000 (20:16 +0000)]
TOAST mop-up work: update comments for tuple-size-related symbols such
as MaxHeapAttributeNumber.  Increase MaxAttrSize to something more
reasonable (given what it's used for, namely checking char(n) declarations,
I didn't make it the full 1G that it could theoretically be --- 10Mb
seemed a more reasonable number).  Improve calculation of MaxTupleSize.

24 years agoFix incorrect example of CAST syntax (was missing required parentheses).
Tom Lane [Mon, 7 Aug 2000 19:53:27 +0000 (19:53 +0000)]
Fix incorrect example of CAST syntax (was missing required parentheses).

24 years ago- version # change in header
Philip Warner [Mon, 7 Aug 2000 12:39:37 +0000 (12:39 +0000)]
- version # change in header
CVs: ----------------------------------------------------------------------

24 years ago- Support for iscachable when dumping functions
Philip Warner [Mon, 7 Aug 2000 12:32:54 +0000 (12:32 +0000)]
- Support for iscachable when dumping functions

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.