1
0
mirror of https://github.com/postgres/postgres.git synced 2025-07-30 11:03:19 +03:00
Commit Graph

161 Commits

Author SHA1 Message Date
67a636918a There is a patch which has worked for me. The real problem might
be in PQreset, which can't reset a conninfo based connection. The
patch:

Arpad Magosanyi
1998-06-16 05:50:55 +00:00
583891833f The attached patch modifies libpgtcl per previous discussion: the
pg_notifies statement is eliminated, and callbacks defined by
pg_listen are instead invoked automatically from the Tcl idle loop
whenever a NOTIFY message is received.

I have done only cursory testing, so there may be problems still
lurking (particularly on non-Unix machines?).  But it seems to
work.

Patch is against today's cvs sources.  Note that this will not work
with the 6.3.2 release since it depends on the new libpq.

The diffs are a bit large so I've gzipped them.  A patch to update
libpgtcl.sgml is included too.

			regards, tom lane
1998-06-16 04:10:17 +00:00
26d5a31dbf Add bsdi shared library support. 1998-06-16 03:17:47 +00:00
a0f95aceb4 Fix portname defines in Makefiles. 1998-06-15 21:01:54 +00:00
6bd323c6b3 Remove un-needed braces around single statements. 1998-06-15 19:30:31 +00:00
6f1a50746c Clean up template names and remove LINUX_ELF hack. No longer
needed.
1998-06-12 18:36:42 +00:00
eaa1df28bf From: Tom Lane <tgl@sss.pgh.pa.us>
... which causes it to build and install the shared version of
libpgtcl under the wrong name, on HPUX only.  Patch against
today's sources follows.
1998-05-24 03:48:58 +00:00
58fffea03c Cleanups for large objects, so file is trucated on open, fix for
solaris/spare shared libararies, new error message for postmaster
startup, and makefile cleanups.
1998-05-12 21:44:08 +00:00
1c2d9cb637 It seems the regression tests don't cover copy in/out at all, so
code that I had assumed was working had not been tested.  Naturally,
it was broken ...

Tom Lane
1998-05-06 23:53:48 +00:00
edbd51395c What I've done:
1. Rewritten libpq to allow asynchronous clients.

2. Implemented client side of cancel protocol in library,
   and patched psql.c to send a cancel request upon SIGINT.  The
   backend doesn't notice it yet :-(

3. Implemented 'Z' protocol message addition and renaming of
   copy in/out start messages.  These are implemented conditionally,
   ie, the client protocol version is checked; so the code should
   still work with 1.0 clients.

4. Revised protocol and libpq sgml documents (don't have an SGML
   compiler, though, so there may be some markup glitches here).


What remains to be done:

1. Implement addition of atttypmod field to RowDescriptor messages.
   The client-side code is there but ifdef'd out.  I have no idea
   what to change on the backend side.  The field should be sent
   only if protocol >= 2.0, of course.

2. Implement backend response to cancel requests received as OOB
   messages.  (This prolly need not be conditional on protocol
   version; just do it if you get SIGURG.)

3. Update libpq.3.  (I'm hoping this can be generated mechanically
   from libpq.sgml... if not, will do it by hand.)  Is there any
   other doco to fix?

4. Update non-libpq interfaces as necessary.  I patched libpgtcl
   so that it would compile, but haven't tested it.  Dunno what
   needs to be done with the other interfaces.

Have at it!

Tom Lane
1998-05-06 23:51:16 +00:00
6d817475b2 From: Tom Lane <tgl@sss.pgh.pa.us>
HP-UX (all versions) requires shared libraries to have execute
permission, and really needs them to be exactly mode 555 for
performance reasons.  The standard configure/install procedure
installs libpq.sl as mode 644, which DOES NOT WORK.

The attached patch modifies the makefiles to distinguish
INSTL_LIB_OPTS (install mode for ordinary libraries) from
INSTL_SHLIB_OPTS (mode for shared libs), and adds a test
to configure to set INSTL_SHLIB_OPTS="-m 555" when on HP-UX.
1998-04-27 14:55:46 +00:00
5e6b0a574b Try for a LINUX_ELF fix (bandage?) 1998-04-21 12:38:46 +00:00
471dbbc223 DESTDIR removed, again. 1998-04-06 16:53:15 +00:00
066ee9a2e9 Make DESTDIR consistent, and verious Linux cleanups. 1998-04-06 01:36:41 +00:00
5523beb949 Re-introduce $DISTDIR. 1998-04-06 01:16:55 +00:00
1e801a8f16 Hi,
Attached you'll find a (big) patch that fixes make dep and make
depend in all Makefiles where I found it to be appropriate.

It also removes the dependency in Makefile.global for NAMEDATALEN
and OIDNAMELEN by making backend/catalog/genbki.sh and bin/initdb/initdb.sh
a little smarter.

This no longer requires initdb.sh that is turned into initdb with
a sed script when installing Postgres, hence initdb.sh should be
renamed to initdb (after the patch has been applied :-) )

This patch is against the 6.3 sources, as it took a while to
complete.

Please review and apply,

Cheers,

Jeroen van Vianen
1998-04-06 00:32:26 +00:00
2dfee93457 Remove DISTDIR. 1998-04-05 22:02:56 +00:00
05102c7551 Here are 3 patches (all relative to the src directory) to help with
the configuration of v6.3.1.  I have replaced the queries for
include/lib directories with --with configuration options.  I have
also included a list of potential tcl/tk include directories directly
in the CPPFLAGS variable.  As new versions are needed, these should
be added to the list in reverse numerical order (libraries are in
a separate list near the end).  This greatly simplifies the later
checks if --with-tcl is set.  I hope this solution works for
everyone.

I also added a check to disable the perl support if postgres was
not already installed (as per the instructions in the directory).
By the way, why must there be an installed pgsql to compile perl
support? This seems odd, at best.

Finally, I changed the Makefile in the libpgtcl interface to place
the shared libraries at the end of the list of files, not at the
beginning.  With NetBSD at least, libraries are linked in order,
so the original sequence does not work.

Brook Milligan
1998-04-05 20:28:23 +00:00
dbf34c5c19 This problem had nothing to do with the upgrades I made. There
was a 2000 character buffer allocated for results, and the files
you refer to produce a 2765 byte column called formsource.  This
should not have worked with any version of libpgtcl.

Nevertheless, the limit is an artificial one, since there is no
need to use this intermediate buffer where it is being used and
abused.

Randy Kunkee <kunkee@pluto.ops.NeoSoft.com>
1998-03-30 17:39:16 +00:00
953ca76b8d more tcl/tk fixes 1998-03-23 06:03:04 +00:00
6ac2528616 From: Randy Kunkee <kunkee@pluto.ops.NeoSoft.com>
It is my hope that the following "patches" to libpgtcl get included
in the next release.

See the update to the README file to get a full description of the changes.
This version of libpgtcl is completely interpreter-safe, implements the
database connection handle as a channel (no events yet, but will make it
a lot easier to do fileevents on it in the future), and supports the SQL
"copy table to stdout" and "copy table from stdin" commands, with the
I/O being from and to the connection handle.  The connection and result
handles are formatted in a way to make access to the tables more efficient.
1998-03-15 08:03:00 +00:00
3674ccdf95 Change Postgres95 to PostgreSQL. Update CLUSTER manual page. 1998-03-14 21:58:09 +00:00
a32450a585 pgindent run before 6.3 release, with Thomas' requested changes. 1998-02-26 04:46:47 +00:00
64e7adb07b From: Tom I Helbekkmo <tih@Hamartun.Priv.NO>
Apart from this Makefile hack, all I've done is to make dynamically
loaded code modules fail properly (as was already done for __mips__,
although I think this is too loose: I believe NetBSD for the pmax can
do dynamic linking), and to add test-and-set lock handling.  As Bruce
suggested, this is done in a maximally efficient inlined way: I was
not aware that this code was so important, speed-wise.
1998-02-13 05:10:06 +00:00
24cab6bd0d Goodbye register keyword. Compiler knows better. 1998-02-11 19:14:04 +00:00
36c1c94bca From: "Billy G. Allie" <Bill.Allie@mug.org>
The attached patches will allow postgreSQL to compile successfully on SCO
UNIXWARE 2.1.x.  The patches fix the following problems:

1.  Configure did not properly recognize the UNIXWARE system as needing the
    univel port.  It used the sys4 port.

2.  Configure did not properly process the CC flag in the template file.

3.  There was no working test and set locking implementation for the native
    UNIXWARE compiler.

4.  The test and set locking used for Intel X86 that was selected by defining
    NEED_I386_TAS_ASM could fail in a multi-processor environment.

5.  The makefiles for libpq and libpgtcl did not make a shared library for
    the univel port.
1998-01-17 23:33:58 +00:00
405ced26ba Various fixes resulting from removing the PORTNAME defines
From: Tom I Helbekkmo <tih@Hamartun.Priv.NO>
1998-01-13 04:18:22 +00:00
195f78e43c More archive cleanup. 1997-11-21 19:12:41 +00:00
9a8fcee342 Patch for tcl library crash, from Jan Wieck. 1997-10-30 17:29:57 +00:00
5680f8795f Fix for array handling, from Gerhard Hintermayer 1997-10-30 05:00:56 +00:00
5071d3124a Added support for shlib for BSD44_derived & i386_solaris. 1997-10-28 15:13:10 +00:00
a28c50ad3b Changed location of libpgtcl stuff. 1997-09-27 19:35:04 +00:00
0384d37083 Fix for libpgtcl from Constantin Teodorescu. 1997-09-25 15:48:51 +00:00
bcdd0a93ed Cleanup. 1997-09-23 00:02:44 +00:00
f3a58f2639 Makefile cleanup. 1997-09-16 18:47:36 +00:00
9b7f362d0a -Linux configure additoin, libtcl Makefile patch. 1997-09-14 23:34:16 +00:00
59f6a57e59 Used modified version of indent that understands over 100 typedefs. 1997-09-08 21:56:23 +00:00
319dbfa736 Another PGINDENT run that changes variable indenting and case label indenting. Also static variable indenting. 1997-09-08 02:41:22 +00:00
1ccd423235 Massive commit to run PGINDENT on all *.c and *.h files. 1997-09-07 05:04:48 +00:00
17b5bd33e4 From: Anton de Wet <adw@obsidian.co.za>
Subject: [HACKERS] Small patch to pgtclCmds.c

Hi I have made the following small change to the extensions I made to
pgtclCmds.c quite a while ago.

At the moment there is a -assignbyidx option to pg_result assigning the
returned tuples to an array by using the 1st field of the select statement
as the key to the array.
eg "select name,age from vitalstatistics" will result in an array with

myarray(peter) = 32
myarray(paul)  = 45

Often I need to have a pseudo-multi dimentional
array eg. "select name,age from vitalstatistics where occupation='plummer'

I would like to be able to generate an array
newarray(peter,overpaid) = 32

So to add a arbitrary string to the key value I have extended

  pg_result $res -assignbyidx $arrayname

to have an optional argument

  pg_result $res -assignbyidx $arrayname $appendstr

So that that string is appended to the key value.
1997-04-02 18:16:49 +00:00
5b1311acfb From: Oleg Bartunov <oleg@sai.msu.su>
Subject: [HACKERS] locale patches !

Hi there,

here are little patches to get Postgres 6.1 works with locale stuff.
This is a patch against 970402.tar.gz, there are no problem to apply them
by hand to 6.0 release. Collate stuff tested about 1-2 months in real
working database but I'm sure there must be no problem. US hackers
could vote against locale implementation ( locale for sure will affect to
speed of postgres ), so I introduce variable USE_LOCALE which
controls locale stuff. Non-US users now could use ~* operator
for searching and <order by> for strings with nation alphabet.
Please, don't forget, as I did first time, to set environment variable
LC_CTYPE and LC_COLLATE because backend get locale information from them.
I start postmaster from a little script, assuming that shell is Bash shell
it looks like:

#!/bin/sh

export LC_CTYPE=koi8-r
export LC_COLLATE=koi8-r
postmaster -B 1024 -S -D/usr/local/pgsql/data/ -o '-Fe'
1997-04-02 18:13:47 +00:00
c2e73db87a Various patches for shared libraries under i386-solaris by:
Christoph Kaesling <ck@dog.pfalz.sub.de>
1997-03-25 09:21:59 +00:00
7d02575ad1 Fixes for libpgtcl from Massimo 1997-03-17 22:05:08 +00:00
fdaf47f9f4 The last patch fixes some incongruences in the #define used to compile the
Tcl arrays support. Here are the correct values to be defined in config.h
and pgtclCmds.c.

Submitted by: Massimo Dal Zotto <dz@cs.unitn.it>
1997-01-23 19:47:18 +00:00
f0ff9ac0c2 Fix from Andrew for compiling libpgtcl...basically, switch off -Werror,
which probably isn't needed, since we are going to take off -Werror
anyway, right?
1997-01-23 16:04:25 +00:00
e2e6b2d730 Fixes:
I forgot to clear out the variable created and the memory used.

From: darcy@druid.net (D'Arcy J.M. Cain)
1997-01-11 14:28:51 +00:00
8738e47d03 From: darcy@druid.net (D'Arcy J.M. Cain)
Fix for libpgtcl:

I forgot to clear out the variable created and the memory used.
1997-01-11 14:24:40 +00:00
63b22d8aa9 cleanup for LINUX_ELF 1997-01-10 18:55:24 +00:00
90ff767d14 I found the following bugs in the version 6.0 (dated 961229).
At least the first two should be fixed before the final release of 6.0.

1)      There is a mismatch between the type declared in the catalog for
        the input/output attributes of pg_type and the actual type of
        values stored in the table.  The type of typinput, typoutput,
        typsend and typreceive are declared oid (26) while the values are
        regproc (24).  The error was there also in previous versions but
        nobody noticed it until an Assert has been added in ExecEvalVar.
        The effect is that it is now impossible to replace the typoutput
        of existing data types with new procs.

2)      The identd hba fails after the first time because the data read
        from the identd socket is not zero-terminated and strlen reports
        an incorrect length if the stack contains garbage, which usually
        happens after the first connection has been made.

3)      The new initdb wants to create itself the data directory. This
        implies that the parent directory must be writable by postgres and
        this may not always be desirable.  A better solution would be to
        allow the directory to be created by root and then filled by initdb.
        It would also nice to have some reasonable default for PGLIB and
        PGDATA like the previous version did.  This applies also to the
        postmaster executable.
1997-01-10 17:40:07 +00:00
b5164666a3 someone added pg_listen and pg_notifies to libpgtcl. But first
these routines try to use the old pointer casting stuff to get
    the connection id, second the notification hash table should
    be part of the cliendData. Otherwise, one interpreter might
    eat up the notifies for another one.

    Please apply the patch below to the current 6.0 tree.

Submitted by: wieck@sapserv.debis.de
1997-01-03 18:48:31 +00:00