Commit Graph

10028 Commits

Author SHA1 Message Date
Tom Lane ddd96e1f21 Guard against malloc failure. Also, don't examine segP->lastBackend
until we hold the spinlock.
2001-06-01 20:07:16 +00:00
Tom Lane d8adce8983 Check for malloc failure. 2001-06-01 19:54:58 +00:00
Tom Lane 25ee08e14a If spi.c wants to use malloc, it better test for malloc failure. 2001-06-01 19:43:55 +00:00
Tom Lane 7748e9e7e5 pltcl, plperl, and plpython all suffer the same bug previously fixed
in plpgsql: they fail for datatypes that have old-style I/O functions
due to caching FmgrInfo structs with wrong fn_mcxt lifetime.

Although the plpython fix seems straightforward, I can't check it here
since I don't have Python installed --- would someone check it?
2001-06-01 18:17:44 +00:00
Tom Lane 7c0c9b3cce New improved version of bpcharin() may have got the truncation case
right, but it failed to get the padding case right.

This was obscured by subsequent application of bpchar() in all but one
regression test case, and that one didn't fail in an obvious way ---
trailing blanks are hard to see.  Add another test case to make it
more obvious if it breaks again.
2001-06-01 17:49:17 +00:00
Bruce Momjian 597ca67e5e Fix for:
> Example form two pg_dump outputs
> 7.1.2 :
>       COPY "list"  FROM stdin;
> 7.0.2 :
>       COPY "list" FROM stdin;
2001-06-01 16:09:55 +00:00
Tom Lane a51ec450ff Remove fastpath.c's lame attempt at caching function lookup info across
calls.  This has never actually cached anything, because postgres.c does
each fastpath call as a separate transaction command, and so fastpath.c
would always decide that its cache was outdated.  If it had worked, it
would now be failing for calls of oldstyle functions due to dangling
pointers in the FmgrInfo struct.  Rip it out for simplicity and bug-
proofing.
2001-06-01 15:45:42 +00:00
Michael Meskes cfd184371e - Synced preproc.y with gram.y.
- Synced pgc.l with scan.l.
        - Synced keyword.c.
        - Set ecpg version to 2.9.0.
        - Set library version to 3.3.0.
2001-06-01 06:23:19 +00:00
Tom Lane 0b370ea7c8 Clean up some minor problems exposed by further thought about Panon's bug
report on old-style functions invoked by RI triggers.  We had a number of
other places that were being sloppy about which memory context FmgrInfo
subsidiary data will be allocated in.  Turns out none of them actually
cause a problem in 7.1, but this is for arcane reasons such as the fact
that old-style triggers aren't supported anyway.  To avoid getting burnt
later, I've restructured the trigger support so that we don't keep trigger
FmgrInfo structs in relcache memory.  Some other related cleanups too:
it's not really necessary to call fmgr_info at all while setting up
the index support info in relcache entries, because those ScanKeyEntry
structs are never used to invoke the functions.  This should speed up
relcache initialization a tiny bit.
2001-06-01 02:41:36 +00:00
Bruce Momjian a1d9d096f0 Update release 1.09 date 2001-06-01 00:24:21 +00:00
Bruce Momjian e5b412bd79 Forgot SGML section section id tag for 7.1. 2001-05-31 21:49:15 +00:00
Tom Lane 5bcf9233e4 Ooops, forgot to commit Makefile along with other changes. 2001-05-31 19:25:27 +00:00
Tom Lane 16f85390f2 Support for emulating RTREE indexing in GiST. Contributed by
Oleg Bartunov and Teodor Sigaev.
2001-05-31 18:27:18 +00:00
Tom Lane 3043810d97 Updates to make GIST work with multi-key indexes (from Oleg Bartunov
and Teodor Sigaev).  Declare key values as Datum where appropriate,
rather than char* (Tom Lane).
2001-05-31 18:16:55 +00:00
Tom Lane e1107fc285 RI triggers would fail for datatypes using old-style equal function,
because cached fmgr info contained reference to a shorter-lived data
structure.  Also guard against possibility that fmgr_info could fail,
leaving an incomplete entry present in the hash table.
2001-05-31 17:32:33 +00:00
Bruce Momjian c9a001a11e Allow IS and FOR in Pl/PgSQL cursors, per Oracle and ANSI. Jan-approved. 2001-05-31 17:15:40 +00:00
Bruce Momjian 0cee65b51f Update TODO list. 2001-05-31 14:49:24 +00:00
Bruce Momjian 227a584655 Update FAQ. 2001-05-30 23:00:41 +00:00
Bruce Momjian e07d894990 Update FAQ. 2001-05-30 22:58:00 +00:00
Bruce Momjian e05d246084 Oops, had 0.2 release date wrong. 2001-05-30 22:04:33 +00:00
Bruce Momjian 53020d0fbe Remove OLD_FILE_NAMING code. No longer used. 2001-05-30 20:52:34 +00:00
Bruce Momjian 06e5f1dfd9 Update TODO list. 2001-05-30 20:17:38 +00:00
Bruce Momjian ff3bffd7f4 Add recent UNDO/VACUUM thread to TODO.detail. 2001-05-30 20:15:28 +00:00
Tom Lane 8eb9c92560 Add "#define GIST_AM_OID". 2001-05-30 19:55:08 +00:00
Tom Lane f1d5d0905c Tweak StrategyEvaluation data structure to eliminate hardwired limit on
number of strategies supported by an index AM.  Add missing copyright
notices and CVS $Header$ markers to GIST source files.
2001-05-30 19:53:40 +00:00
Bruce Momjian f504ad1b4d Update TODO list. 2001-05-30 19:49:42 +00:00
Tom Lane baf57ee07b Remove unused, redundant header files. 2001-05-30 19:39:50 +00:00
Tom Lane 6625cf5f4f Fix broken $Header$ declaration. 2001-05-30 18:32:29 +00:00
Bruce Momjian 953002f1b3 Properly compute max sys oid for 7.0 and 7.1. 2001-05-30 18:08:24 +00:00
Bruce Momjian 4d84b7a10f I just got bitten by this too. I use type timestamp in the
database, and often need the latest timestamp, but want to
format it as a date. With 7.0.x, I just

 select ts from foo order by ts desc limit 1

and in java: d = res.getDate(1);

but this fails everywhere in my code now :(

http://java.sun.com/j2se/1.3/docs/guide/jdbc/spec/jdbc-spec.frame7.html

says

  The ResultSet.getXXX methods will attempt to
  convert whatever SQL type was returned by the
  database to whatever Java type is returned by
  the getXXX method.

Palle Girgensohn
2001-05-30 16:34:49 +00:00
Bruce Momjian 5b42666fd9 Fix missing relation in FROM causing NOTICE. Cleanup. 2001-05-30 15:37:38 +00:00
Bruce Momjian 1172fcdad0 Remove reference to pg_class.relhaspkey from code. Column is unused. 2001-05-30 14:44:00 +00:00
Bruce Momjian b6ec9d48e2 Mark as unused:
> Are these columns in pg_class:
> relukeys | relfkeys | relhaspkey
> unused or what?

Christopher Kings
2001-05-30 14:40:13 +00:00
Bruce Momjian 3b9c100770 Update TODO list. 2001-05-30 14:37:51 +00:00
Bruce Momjian e7988a7ad3 Remove SEP_CHAR from /contrib. 2001-05-30 14:18:18 +00:00
Bruce Momjian 33f2614aa1 Remove SEP_CHAR, replace with / or '/' as appropriate. 2001-05-30 14:15:27 +00:00
Bruce Momjian f032b70c0c Fix for Druid. We did not support some PROCEDURE queries.
Dave Cramer
2001-05-30 13:03:43 +00:00
Bruce Momjian 3d56fb7598 This is a docs patch to go with my DROP CONSTRAINT patch.
Christopher Kings
2001-05-30 13:01:08 +00:00
Bruce Momjian 7160c86ec2 These patches should fix check constraints not inheriting
when added by alter table add constraint.  The first file
patches backend/commands/command.c and the latter is a patch
to the alter table regression test.

Stephan Szabo
2001-05-30 13:00:03 +00:00
Bruce Momjian 3f5563d131 Playing with the earthdistance stuff, and found I needed the following
patch:

Larry Rosenman
2001-05-30 12:58:45 +00:00
Bruce Momjian 36546c98b5 Attached is my patch that adds DROP CONSTRAINT support to PostgreSQL. I
basically want your guys feedback.  I have sprinkled some of my q's thru
the text delimited with the @@ symbol.  It seems to work perfectly.

[ Removed @@ comments because patch was reviewed. ]

At the moment it does CHECK constraints only, with inheritance.  However,
due to the problem mentioned before with the mismatching between inherited
constraints it may be wise to disable the inheritance feature for a while.
it is written in an extensible fashion to support future dropping of other
types of constraint, and is well documented.

Please send me your comments, check my use of locking, updating of
indices, use of ERROR and NOTICE, etc. and I will rework the patch based
on feedback until everyone
is happy with it...

Christopher Kings
2001-05-30 12:57:36 +00:00
Tom Lane 7d4854f85c Correct obsolete example of FROM-less query. 2001-05-30 04:32:30 +00:00
Bruce Momjian aa665d901f In chapter:
7.7. Keys

you have

    However, my application requires that each collection will also have a
    unique name. Why? So that a human being who wants to modify a collection
    will be able to identify it. It's much harder to know, if you have two
    collections named "Life Science", the the one tagged 24433 is the one
you
    need, and the one tagged 29882 is not

    I think 'the the' shouldn't be repeated twice. Although taken from an
email it would be cool to fix.

Cheers,
Maxim Maletsky
2001-05-30 04:01:11 +00:00
D'Arcy J.M. Cain 8d7952fdc4 Further conversions to Version 1 API. Also, fix boolean return to use
PG_RETURN_BOOL(0) instead of return 0.
2001-05-30 02:11:46 +00:00
D'Arcy J.M. Cain d34a5d8e2d Add missing comma. 2001-05-30 02:04:49 +00:00
Tom Lane 8a3b80deb0 Make text <=> char conversion functions convert zero character to and
from an empty text string.  This makes them consistent with the de facto
behavior of type char's I/O conversion functions, and avoids generating
text values with embedded nulls, which confuse many text operators.
2001-05-28 21:58:32 +00:00
Tom Lane a056f14be0 Cause plpgsql's PERFORM to behave according to its documentation,
which says that PERFORM will execute any SELECT query and discard the
result.  The former implementation would in fact raise an error if the
result contained more than one row or more than one column.

Also, change plpgsql's error-logging mechanism to emit the additional
messages about error location at NOTICE rather than DEBUG level.  This
allows them to be seen by the client without having to dig into the
postmaster log file (which may be nonexistent or inaccessible by the
client).
2001-05-28 19:33:24 +00:00
D'Arcy J.M. Cain 505d9037cd Upgraded code to use the current version 1 calling conventions. 2001-05-28 15:34:27 +00:00
Tom Lane 2ba48262b9 Suppress useless memmove() when buffer already contains left-justified
data.
2001-05-28 15:29:51 +00:00
Peter Eisentraut 3fdfce6839 markup fix 2001-05-28 14:58:58 +00:00