diff --git a/doc/TODO b/doc/TODO index 2866f14c8e..20f7330f4d 100644 --- a/doc/TODO +++ b/doc/TODO @@ -30,6 +30,7 @@ PARSER * Array index references without table name cause problems * Update table SET table.value = 3 fails * Creating index of timestamp fails +* SELECT foo UNION SELECT foo is incorrectly simplified to SELECT foo VIEWS @@ -207,8 +208,8 @@ MISC places, like GROUP BY, UNIQUE, index processing, etc. * improve dynamic memory allocation by introducing tuple-context memory allocation -* add pooled memory allocation where allocations are freed only as a group - +* fix indexscan() so it does leak memory by not requiring caller to free +* fix memory leak in cache code when non-existant table is refer SOURCE CODE ----------- diff --git a/src/backend/libpq/pqcomm.c b/src/backend/libpq/pqcomm.c index e8489dce41..1c9f7c2945 100644 --- a/src/backend/libpq/pqcomm.c +++ b/src/backend/libpq/pqcomm.c @@ -28,7 +28,7 @@ * * Copyright (c) 1994, Regents of the University of California * - * $Id: pqcomm.c,v 1.72 1999/05/25 16:09:02 momjian Exp $ + * $Id: pqcomm.c,v 1.73 1999/07/07 17:17:47 momjian Exp $ * *------------------------------------------------------------------------- */ @@ -181,7 +181,7 @@ StreamDoUnlink() */ int -StreamServerPort(char *hostName, short portName, int *fdP) +StreamServerPort(char *hostName, unsigned short portName, int *fdP) { SockAddr saddr; int fd, diff --git a/src/backend/postmaster/postmaster.c b/src/backend/postmaster/postmaster.c index 14e4235d84..4279963580 100644 --- a/src/backend/postmaster/postmaster.c +++ b/src/backend/postmaster/postmaster.c @@ -10,7 +10,7 @@ * * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/backend/postmaster/postmaster.c,v 1.107 1999/07/02 18:09:27 momjian Exp $ + * $Header: /cvsroot/pgsql/src/backend/postmaster/postmaster.c,v 1.108 1999/07/07 17:17:48 momjian Exp $ * * NOTES * @@ -130,7 +130,7 @@ static Dllist *BackendList; /* list of ports associated with still open, but incomplete connections */ static Dllist *PortList; -static short PostPortName = -1; +static unsigned short PostPortName = 0; static short ActiveBackends = FALSE; /* @@ -240,7 +240,7 @@ extern int optind, */ static void pmdaemonize(void); static Port *ConnCreate(int serverFd); -static void reset_shared(short port); +static void reset_shared(unsigned short port); static void pmdie(SIGNAL_ARGS); static void reaper(SIGNAL_ARGS); static void dumpstatus(SIGNAL_ARGS); @@ -502,7 +502,7 @@ PostmasterMain(int argc, char *argv[]) break; case 'p': /* Set PGPORT by hand. */ - PostPortName = (short) atoi(optarg); + PostPortName = (unsigned short) atoi(optarg); break; case 'S': @@ -534,8 +534,8 @@ PostmasterMain(int argc, char *argv[]) /* * Select default values for switches where needed */ - if (PostPortName == -1) - PostPortName = pq_getport(); + if (PostPortName == 0) + PostPortName = (unsigned short)pq_getport(); /* * Check for invalid combinations of switches @@ -1050,7 +1050,7 @@ ConnCreate(int serverFd) * reset_shared -- reset shared memory and semaphores */ static void -reset_shared(short port) +reset_shared(unsigned short port) { ipc_key = port * 1000 + shmem_seq * 100; CreateSharedMemoryAndSemaphores(ipc_key, MaxBackends); diff --git a/src/include/libpq/libpq.h b/src/include/libpq/libpq.h index e8fb31b10f..d9d1a95523 100644 --- a/src/include/libpq/libpq.h +++ b/src/include/libpq/libpq.h @@ -6,7 +6,7 @@ * * Copyright (c) 1994, Regents of the University of California * - * $Id: libpq.h,v 1.30 1999/05/25 22:42:50 momjian Exp $ + * $Id: libpq.h,v 1.31 1999/07/07 17:17:50 momjian Exp $ * *------------------------------------------------------------------------- */ @@ -234,7 +234,7 @@ extern int32 pqtest(struct varlena * vlena); /* * prototypes for functions in pqcomm.c */ -extern int StreamServerPort(char *hostName, short portName, int *fdP); +extern int StreamServerPort(char *hostName, unsigned short portName, int *fdP); extern int StreamConnection(int server_fd, Port *port); extern void StreamClose(int sock); extern void pq_init(void);