Vadim B. Mikheev [Thu, 21 Nov 1996 06:13:43 +0000 (06:13 +0000)]
Fix memory overhelding while forming index' result:
memory allocation for ItemPointerData of heap' tuple is useless
because of FormRetrieveIndexResult makes neccessary palloc.
Vadim B. Mikheev [Thu, 21 Nov 1996 06:02:56 +0000 (06:02 +0000)]
Fix memory overhelding while forming index' result:
memory allocation for ItemPointerData of heap' tuple is useless
because of FormRetrieveIndexResult makes neccessary palloc.
Bruce Momjian [Wed, 20 Nov 1996 22:53:10 +0000 (22:53 +0000)]
There is a bug in aclinsert3 in the code which update the acl arrays.
When an acl item is added or updated the new entry is deleted if it has no
permissions and the acl array is shrinked. This is is done by decrementing
the number of items without updating the corresponding array size.
The array with the incorrect size is later read by pg_aclcheck and the entry
count is used to allocate a new array while the array size is used to copy
the old one. This causes a memory corruption and a backend crash.
This happens only to normal user as the administrator bypasses acl checks.
Massimo Dal Zotto
Bruce Momjian [Wed, 20 Nov 1996 22:35:19 +0000 (22:35 +0000)]
following is a little fix for libpq.
PQexec handles the possibility of multiple results from one
query by simply submitting an empty query after the first
result and waiting for an 'I' message.
Rules can generate errors with transaction abort after the
first 'C' message was recieved (e.g. if a C-language function
used in a rule calls elog(WARN, ...)). Thus we have to look
for.
Bruce Momjian [Wed, 20 Nov 1996 22:32:55 +0000 (22:32 +0000)]
Here is the patch for pg_dump not handling NULL values in 'insert'
mode properly. This will apply correctly to 1.09 & 2.0 sources.
From David H. Bennett
Marc G. Fournier [Thu, 14 Nov 1996 21:39:14 +0000 (21:39 +0000)]
Features added:
* Wrote max(date) and min(date) aggregates
* Wrote operator "-" for date; date - date yields number of days
difference
* Wrote operator+(date,int) and operator-(date,int); the int is the
number of days. Each operator returns a new date.
Bryan Henderson [Thu, 14 Nov 1996 10:25:54 +0000 (10:25 +0000)]
Remove most compile-time options, add a few runtime options to make up for it.
In particular, no more compiled-in default for PGDATA or LIBDIR. Commands
that need them need either invocation options or environment variables.
PGPORT default is hardcoded as 5432, but overrideable with options or
environment variables.
Marc G. Fournier [Wed, 13 Nov 1996 20:56:15 +0000 (20:56 +0000)]
Commit of a *MAJOR* patch from Dan McGuirk <djm@indirect.com>
Changes:
* Unique index capability works using the syntax 'create unique
index'.
* Duplicate OID's in the system tables are removed. I put
little scripts called 'duplicate_oids' and 'find_oid' in
include/catalog that help to find and remove duplicate OID's.
I also moved 'unused_oids' from backend/catalog to
include/catalog, since it has to be in the same directory
as the include files in order to work.
* The backend tries converting the name of a function or aggregate
to all lowercase if the original name given doesn't work (mostly
for compatibility with ODBC).
* You can 'SELECT NULL' to your heart's content.
* I put my _bt_updateitem fix in instead, which uses
_bt_insertonpg so that even if the new key is so big that
the page has to be split, everything still works.
* All literal references to system catalog OID's have been
replaced with references to define'd constants from the catalog
header files.
* I added a couple of node copy functions. I think this was a
preliminary attempt to get rules to work.
Bryan Henderson [Mon, 11 Nov 1996 13:51:57 +0000 (13:51 +0000)]
Add utils directory for cross-subsystem tools to keep make files from having
to be sleazy and reach into other subsystems' directories. First entry in
this directory is the PG_VERSION file interface, which must be used by the
backend and also the pg_version program (which is used by initdb).
Marc G. Fournier [Mon, 11 Nov 1996 12:19:05 +0000 (12:19 +0000)]
-----
|After sending my previous changes I found one more thing in Makefile.global.
|Any tests should be done after including Makefile.custom or else there
|won't be anything, particularly the port name, to base the tests on.
|
-----
Marc G. Fournier [Mon, 11 Nov 1996 12:16:57 +0000 (12:16 +0000)]
As proposed,
following is the patch to libpq's large object interface that
removes the requirement to include fmgr.h into fe-lobj.c.
The large object interface now ask's the backend to tell the
OID's of all the required functions in pg_proc.