Commit Graph

1289 Commits

Author SHA1 Message Date
Tom Lane
9c5327b99b Pay attention to failure returns from fgets() in all cases.
Avoid infinite loop prompting for password at stdin EOF.
2000-11-27 02:20:36 +00:00
Tom Lane
e8a72c0db2 Prevent simple_prompt() from locking up in a tight loop at stdin EOF. 2000-11-27 01:28:40 +00:00
Peter Eisentraut
ca1c7e662f Silence warning 2000-11-26 11:09:32 +00:00
Peter Eisentraut
fc6603ff75 Advertise --help (rather than '-?') as help option (problems with csh).
Accept --help even if no general long options support exists.
2000-11-25 19:05:44 +00:00
Bruce Momjian
63edc5c4e0 Fix security problem with psql \e where temp file could be an existing
symlink created by someone else, and therefore modifyable by someone else.
2000-11-25 06:21:54 +00:00
Bruce Momjian
312063c97b Make pgsql compile on FreeBSD-alpha.
Context diff this time.

Remove -m486 compile args for FreeBSD-i386, compile -O2 on i386.

Compile with only -O on alpha for codegen safety.

Make the port use the TEST_AND_SET for alpha and i386 on FreeBSD.

Fix a lot of bogus string formats for outputting pointers (cast to int
and %u/%x replaced with no cast and %p), and 'Size'(size_t) are now
cast to 'unsigned long' and output with %lu/

Remove an unused variable.

Alfred Perlstein
2000-11-16 05:51:07 +00:00
Bruce Momjian
ebd61ac03f Remove -k unix socketpath option from client side, allow hostname with
leading slash to behave as a unix socket path.
2000-11-13 23:37:54 +00:00
Bruce Momjian
2150c2edf1 UUNET is looking into offering PostgreSQL as a part of a managed web
hosting product, on both shared and dedicated machines.  We currently
offer Oracle and MySQL, and it would be a nice middle-ground.
However, as shipped, PostgreSQL lacks the following features we need
that MySQL has:

1. The ability to listen only on a particular IP address.  Each
   hosting customer has their own IP address, on which all of their
   servers (http, ftp, real media, etc.) run.
2. The ability to place the Unix-domain socket in a mode 700 directory.
   This allows us to automatically create an empty database, with an
   empty DBA password, for new or upgrading customers without having
   to interactively set a DBA password and communicate it to (or from)
   the customer.  This in turn cuts down our install and upgrade times.
3. The ability to connect to the Unix-domain socket from within a
   change-rooted environment.  We run CGI programs chrooted to the
   user's home directory, which is another reason why we need to be
   able to specify where the Unix-domain socket is, instead of /tmp.
4. The ability to, if run as root, open a pid file in /var/run as
   root, and then setuid to the desired user.  (mysqld -u can almost
   do this; I had to patch it, too).

The patch below fixes problem 1-3.  I plan to address #4, also, but
haven't done so yet.  These diffs are big enough that they should give
the PG development team something to think about in the meantime :-)
Also, I'm about to leave for 2 weeks' vacation, so I thought I'd get
out what I have, which works (for the problems it tackles), now.

With these changes, we can set up and run PostgreSQL with scripts the
same way we can with apache or proftpd or mysql.

In summary, this patch makes the following enhancements:

1. Adds an environment variable PGUNIXSOCKET, analogous to MYSQL_UNIX_PORT,
   and command line options -k --unix-socket to the relevant programs.
2. Adds a -h option to postmaster to set the hostname or IP address to
   listen on instead of the default INADDR_ANY.
3. Extends some library interfaces to support the above.
4. Fixes a few memory leaks in PQconnectdb().

The default behavior is unchanged from stock 7.0.2; if you don't use
any of these new features, they don't change the operation.

David J. MacKenzie
2000-11-13 15:18:15 +00:00
Tom Lane
4ad9fe4ce5 Teach psql about new relkind for views. 2000-10-25 20:36:52 +00:00
Tom Lane
4b70629b92 Rejigger do_lo_list's query so that obj_description() is evaluated only
once per distinct LO, not once per pg_largeobject tuple.
2000-10-24 04:13:28 +00:00
Tom Lane
4f44aa04b5 Major overhaul of large-object implementation, by Denis Perchine with
kibitzing from Tom Lane.  Large objects are now all stored in a single
system relation "pg_largeobject" --- no more xinv or xinx files, no more
relkind 'l'.  This should offer substantial performance improvement for
large numbers of LOs, since there won't be directory bloat anymore.
It'll also fix problems like running out of locktable space when you
access thousands of LOs in one transaction.
Also clean up cruft in read/write routines.  LOs with "holes" in them
(never-written byte ranges) now work just like Unix files with holes do:
a hole reads as zeroes but doesn't occupy storage space.
INITDB forced!
2000-10-24 01:38:44 +00:00
Peter Eisentraut
805e431a38 Add support for VPATH builds, that is, building somewhere else than in the
source directory.  This involves mostly makefiles using $(srcdir) when they
might have used ".".  (Regression tests don't work with this, yet.)

Sort out usage of CPPFLAGS, CFLAGS (and CXXFLAGS).  Add "override" keyword
in most places, to preserve necessary flags even when the user overrode the
flags.
2000-10-20 21:04:27 +00:00
Peter Eisentraut
831e78e0c4 Better coding of readline tests 2000-10-03 19:50:21 +00:00
Peter Eisentraut
27777b6645 Don't free() the result of getpwuid().
Discovered by Jason Tishler <Jason.Tishler@dothill.com>.
2000-09-22 23:02:00 +00:00
Peter Eisentraut
239f74d28d psql forgot to close connection before re-issuing password prompt.
([BUGS] psql can crash the backend on login, 2000-09-03)
2000-09-17 20:33:45 +00:00
Peter Eisentraut
335248c9b7 Support for DESTDIR make variable. This is used as in `make install
DESTDIR=/else/where' and prepends the value of DESTDIR to the full
installation paths (e.g., /else/where/usr/local/pgsql/bin). This allows
users to install the package into a location different from the one that
was configured and hard-coded into various scripts, e.g., for creating
binary packages.

DESTDIR is in many cases preferrable over `make install
prefix=/else/where' because

a) `prefix' affects the path that is hard-coded into the files, which can
lead to a `make install prefix=xxx' (as done by the regression test
driver) corrupting the files in the source tree with wrong paths.

b) it doesn't work at all if a directory was overridden to not depend on
`prefix', e.g., --sysconfdir=/etc.

(Updating the regression test driver to use DESTDIR is a separate
undertaking.)

See also autoconf@gnu.org, From: Akim Demaille <akim@epita.fr>, Date: 08
Sep 2000 12:48:59 +0200, Message-ID:
<mv4em2vb1lw.fsf@nostromo.lrde.epita.fr>, Subject: Re: HTML format
documentation.
2000-09-17 13:02:52 +00:00
Tatsuo Ishii
c18c321365 Fix psql crash. If MULTIBYTE is enabled, \l+ dumps core due to
SQL buffer in listAllDbs is just too small.
2000-09-07 04:55:27 +00:00
Peter Eisentraut
ffd9aaa0a9 A bit of cleanup after SSL patch. Add it to config file, improve
documentation.
2000-09-06 19:54:52 +00:00
Peter Eisentraut
424f0edcb8 Fix relative path references so that make knowns which dependencies refer
to one another. Sort out builddir vs srcdir variable namings. Remove some
now obsoleted make variables.
2000-08-31 16:12:35 +00:00
Bruce Momjian
7bc654bb16 SSL patch from Magnus 2000-08-30 14:54:24 +00:00
Peter Eisentraut
ef6164de1d Revert removal of signed, volatile, and signal handler arg type tests. 2000-08-29 09:36:51 +00:00
Peter Eisentraut
79abd73eee Remove configure tests for signed', volatile', and signal handler args;
the harm potential outweighs the possible benefits.
2000-08-27 19:00:41 +00:00
Peter Eisentraut
9b3d66ecbd Introduce HAVE_UNIX_SOCKETS symbol to replace repeatedly listing all the
unsupported platforms.
2000-08-20 10:55:35 +00:00
Peter Eisentraut
32163099d7 Add distprep target to take some of the job of the release_prep script.
The latter updated accordingly. Also add `dist' and `distcheck' targets
to play with, but caveat packager.

Updated backend/bootstrap and backend/parser makefile to make them
marginally builddir aware and fix the usual set of things.

Add rule to automatically remake config.h dependent on config.h.in and
config.status. (Adopted from Autoconf manual and about every other
package.) On a good day we should now have a complete and accurate set
of dependencies throughout everything.
2000-07-19 16:30:27 +00:00
Peter Eisentraut
5da7e533f7 Don't strip trailing backslashes from a line. Treat them more reasonably. 2000-07-17 18:24:33 +00:00
Thomas G. Lockhart
be703cd9e8 Implement nested block comments in the backend and in psql.
Include updates for the comment.sql regression test.
Implement SET SESSION CHARACTERISTICS and SET DefaultXactIsoLevel.
Implement SET SESSION CHARACTERISTICS TRANSACTION COMMIT
 and SET AutoCommit in the parser only.
 Need to add code to actually do something.
Implement WITHOUT TIME ZONE type qualifier.
Define SCHEMA keyword, along with stubbed-out grammar.
Implement "[IN|INOUT|OUT] [varname] type" function arguments
 in parser only; INOUT and OUT throws an elog(ERROR).
Add PATH as a type-specific token, since PATH is in SQL99
 to support schema resource search and resolution.
2000-07-14 15:43:57 +00:00
Peter Eisentraut
b54faa1b15 oidvectortypes: use SQL type names and separate by commas
psql \df: use format_type and oidvectortypes
map type REAL to float4, not float8
psql \dd :work around UNION bug
2000-07-09 21:30:21 +00:00
Peter Eisentraut
de85dd1d51 - format_type function, in use by psql
- added bigint as synonym of int8
- set typelem of varlen non-array types to 0
2000-07-07 19:24:43 +00:00
Peter Eisentraut
6fb9d2e347 Version number now set in configure, available through Makefile.global
and config.h. Adjusted all referring code.

Scrapped pg_version and changed initdb accordingly. Integrated
src/utils/version.c into src/backend/utils/init/miscinit.c. Changed all
callers.

Set version number to `7.1devel'. (Non-numeric version suffixes now allowed.)
2000-07-02 15:21:27 +00:00
Bruce Momjian
2f131ca588 Fix select '1--2'; for PEter. 2000-06-30 18:03:40 +00:00
Bruce Momjian
c9ec78a6b8 Fix quotes in /* */ comments in psql. 2000-06-29 16:27:57 +00:00
Peter Eisentraut
44f64dd3ea Makefile cleanup for interface tree. Now essentially with all the
standard targets and behaviour. Replaced Makefile.in's with
Makefile's and declared the respective variables in Makefile.global.

maintainer-clean target now available at top level, although it does
not work in the backend tree yet.

Cleanup pass over Makefile.shlib, renamed some targets and variables.
The shared library symlink tests are now done by make, not the shell.

ecpg: Remove one warning in sloppy flex output.

PL/Perl and Perl interface: the MakeMaker documentation is confusing,
the realclean target *does* "delete derived files", but it also
uninstalls them. Don't use that.

The submake targets in the various bin directories that update libpq
should `make all', not `make libpq.a'. That is a) unportable, and
b) doesn't build the shared library.
2000-06-28 18:30:16 +00:00
Peter Eisentraut
5bb8b62983 Makefile cleanup for bin and pl subtrees. They should now support
all the standard semantics. Also get rid of Makefile.in's on the
way and instead declare all variables in Makefile.global.
2000-06-27 00:32:06 +00:00
Bruce Momjian
ecef326850 Fix \pset null to use ', not ". 2000-06-26 14:16:34 +00:00
Peter Eisentraut
c4e63f70fa Added new commands and intelligence to psql tab completion. 2000-06-25 14:25:51 +00:00
Peter Eisentraut
1652d43358 Remove fmgrstamp-h business -- not needed and confusing
Add options to configure to automatically build for Kerberos
support; no more editing of make files.
2000-06-17 00:10:40 +00:00
Peter Eisentraut
6de89c9ab7 Moved the intricacies of the perl interface build into its own makefile
that now functions as a wrapper around the MakeMaker stuff. It might
even behave sensically when we have separate build dirs. Same for plperl,
which of course still doesn't work very well. Made sure that plperl
respects the choice of --libdir.

Added --with-python to automatically build and install the Python interface.
Works similarly to the Perl5 stuff.

Moved the burden of the distclean targets lower down into the source tree.
Eventually, each make file should have its own.

Added automatic remaking of makefiles and configure. Currently only for the
top-level because of a bug(?) in Autoconf. Use GNU `missing' to work around
missing autoconf and aclocal. Start factoring out macros into their own
config/*.m4 files to increase readability and organization.
2000-06-10 18:02:12 +00:00
Bruce Momjian
be6e7717db Fix \h SELECT to not show SELECT INTO. 2000-05-26 15:47:18 +00:00
Peter Eisentraut
d64aa21570 That psql option should be --no-readline (as it used to be), not --noreadline. 2000-05-14 18:05:05 +00:00
Bruce Momjian
40c992c7dd Back out -\?. Didn't look good to Peter. 2000-05-12 16:28:31 +00:00
Peter Eisentraut
9d31e3a991 /home/peter/commit-msg 2000-05-12 16:13:44 +00:00
Bruce Momjian
4624b84cf2 Small cleanup of file. 2000-05-12 00:54:53 +00:00
Bruce Momjian
7da0f5d7de More psql help cleanup 2000-05-11 18:41:00 +00:00
Bruce Momjian
8101d0c571 Makefile CFLAGS cleanups. 2000-05-11 17:46:35 +00:00
Bruce Momjian
e10c5597b7 Display -? as -\? under unix for psql. 2000-05-11 03:14:19 +00:00
Bruce Momjian
0fbde5d928 Add options and cleanup psql \? and -? help displays 2000-05-11 01:37:54 +00:00
Bruce Momjian
5a75ad5573 Update psql \? to show file rather than "fname". 2000-05-09 19:08:36 +00:00
Peter Eisentraut
5e4d8be18b psql: suppress warnings about too many arguments if the command is not valid in the first place 2000-05-05 09:38:40 +00:00
Peter Eisentraut
8322072188 Spello SERIALIZED -> SERIALIZABLE in psql tab completion 2000-05-05 08:44:27 +00:00
Bruce Momjian
297e7f3ef4 Fix \h to not go past array bounds 2000-04-24 22:41:43 +00:00
Tom Lane
f084cc4939 Fix still more static-declaration-vs-nonstatic-definition glitches.
gcc doesn't think these are a problem, but somewhere out there is a
compiler that will spit up.
2000-04-21 03:01:54 +00:00
Peter Eisentraut
3d62fbc4eb squished \dS+ bug pointed out by Mike Mascari 2000-04-16 20:04:51 +00:00
Tom Lane
ea46ddcfa6 Tweak create_help.pl so it will work under either perl 4.* or perl 5.*.
Remove knowledge of path to documentation source directory from perl
script, instead have Makefile pass it to script.
2000-04-16 18:07:22 +00:00
Peter Eisentraut
aae70b2dca more psql bug squashing:
\copy without arguments failed
commands with too many arguments were too silent
2000-04-16 15:46:40 +00:00
Peter Eisentraut
ffc9812451 fixed another psql \e bug (handle newlines as whitespace)
repaired psql option scanning bug (special treatment to \g |pipe)
fixed ipcclean makefile
made configure look for Perl to handle psql help build gracefully
2000-04-14 23:43:44 +00:00
Bruce Momjian
52f77df613 Ye-old pgindent run. Same 4-space tabs. 2000-04-12 17:17:23 +00:00
Bruce Momjian
354a39bc44 Clean up temp files from \e. 2000-04-11 17:35:50 +00:00
Peter Eisentraut
a9f37f16d2 Fixed bug with repeated \e in psql (failed to clear buffers correctly) 2000-03-27 21:11:37 +00:00
Peter Eisentraut
7d392f257b Fixed psql -c "\slashcmd" 2000-03-18 22:48:29 +00:00
Tom Lane
f945f46193 Modify lexing of multi-char operators per pghackers discussion around
16-Mar-00: trailing + or - is not part of the operator unless the operator
also contains characters not present in SQL92-defined operators.  This
solves the 'X=-Y' problem without unduly constraining users' choice of
operator names --- in particular, no existing Postgres operator names
become invalid.

Also, remove processing of // comments, as agreed in the same thread.
2000-03-18 18:03:12 +00:00
Tom Lane
0e314d747e Add safety check on expression nesting depth. Default value is set by
a config.h #define, and the runtime value can be controlled via SET.
2000-03-17 05:29:07 +00:00
Peter Eisentraut
a1642089bf Fixed deficiency where an unterminated (no semicolon) command at end of
psql script would be dropped silently.
2000-03-13 13:46:32 +00:00
Peter Eisentraut
1d75298176 Karel Zakr's revised patch to fix psql prompt for local host connections. 2000-03-11 13:56:24 +00:00
Bruce Momjian
f43ec05d05 I've made a diff against the 7.0beta1 tree that accomplishes several things:
1) adds NetBSD shared lib support on both ELF and a.out platforms

        2) replaces "-L$(LIBPQDIR) -lpq" with "$(LIBPQ)" defined in
           Makefile.global.  This makes it much easier to build stuff in
           the source tree after you've already installed the libraries.

        3) adds TEMPLATEDIR in Makefile.global that indicates where the
           database templates are stored.  This separates the template files
           from real libraries that are installed in $(LIBDIR).
        4) changes include order of <readline/readline.h> and <readline.h>.
           The latest GNU readline installs its headers under a readline
           subdirectory.

In addition to applying the patch below the following files need to be copied:

        backend/port/dynloader:
                bsd.h -> netbsd.h
                bsd.c -> netbsd.c
        include/port:
                bsd.h -> netbsd.h
        makefiles:
                Makefile.bsd -> Makefile.netbsd

It would be great to see this incorporated into the source tree before
the 7.0 release is cut.

        Thanks!

     -- Johnny C. Lam <lamj@stat.cmu.edu>
2000-03-08 01:58:46 +00:00
Bruce Momjian
326e2155d9 Hi Peter,
I try change prompt in the psql, but it is set '.' (as '%m') for
non-TCP/IP
connection. This small patch try use uname() information for non-TCP/IP
instead '.'.

                                        Karel
2000-03-08 01:38:59 +00:00
Peter Eisentraut
8de482a847 Added configure test for readline's filename_completion_function
Completed psql's \? help
2000-03-05 13:30:20 +00:00
Peter Eisentraut
c75adac757 More fixes for psql ^C handling, especially during copy. Still doesn't
cope so well with copy to but that will have to wait for the next release.

Also added -X option to prevent reading .psqlrc startup file.
2000-03-01 21:10:05 +00:00
Tom Lane
01eea27c4c Fix a couple of inconsistent usages of include <...> vs. include "...". 2000-02-27 01:10:31 +00:00
Tom Lane
cbf4c9671e psql's \d command wasn't doing the right things with 'char' (type 18)
fields, nor with bpchar and varchar fields that have typmod -1.  The
latter effectively have an unspecified length, so I made them display
as char() and varchar() rather than falsely equating them to char(1)
and varchar(1).
2000-02-26 18:31:25 +00:00
Peter Eisentraut
c8009959c9 Fixed psql's Control-C handling when COPY in progress 2000-02-21 19:40:42 +00:00
Tatsuo Ishii
320d3e06ee Fixes for \encoding command.
1) freeing null pointer
	2) invalid encoding info may be stored into psql variable
	3) fix indentation
2000-02-21 02:05:12 +00:00
Peter Eisentraut
718bb2cc9c Moved psql \eset and \eshow to \encoding
Improved psql's Ctrl-C handling
Fixed configure test for sigsetjmp that now even recognizes it if it's a macro
2000-02-20 14:28:28 +00:00
Tom Lane
e79b2dd5e7 Fix missing \n in some psql_error calls. 2000-02-20 02:37:40 +00:00
Tatsuo Ishii
eb089e7f76 Add new backslash command \eset and \eshow. 2000-02-19 05:01:16 +00:00
Bruce Momjian
78693c89d7 Clean up include files use in psql. 2000-02-16 13:15:26 +00:00
Tom Lane
b1577a7c78 New cost model for planning, incorporating a penalty for random page
accesses versus sequential accesses, a (very crude) estimate of the
effects of caching on random page accesses, and cost to evaluate WHERE-
clause expressions.  Export critical parameters for this model as SET
variables.  Also, create SET variables for the planner's enable flags
(enable_seqscan, enable_indexscan, etc) so that these can be controlled
more conveniently than via PGOPTIONS.

Planner now estimates both startup cost (cost before retrieving
first tuple) and total cost of each path, so it can optimize queries
with LIMIT on a reasonable basis by interpolating between these costs.
Same facility is a win for EXISTS(...) subqueries and some other cases.

Redesign pathkey representation to achieve a major speedup in planning
(I saw as much as 5X on a 10-way join); also minor changes in planner
to reduce memory consumption by recycling discarded Path nodes and
not constructing unnecessary lists.

Minor cleanups to display more-plausible costs in some cases in
EXPLAIN output.

Initdb forced by change in interface to index cost estimation
functions.
2000-02-15 20:49:31 +00:00
Peter Eisentraut
9672d38f91 Adjusted psql echoing options (-a and -e) 2000-02-13 21:45:15 +00:00
Peter Eisentraut
2fb0ff0c5b Default argument for createdb
Changed EXIT_ON_ERROR to ON_ERROR_STOP in psql
2000-02-10 20:08:58 +00:00
Bruce Momjian
ecd8537376 I checked the WinNT port yesterday (a few days old snapshot from CVS) and I
am including a patch to get it compile.

changes to psql:
- added less as default pager when compiling on Cygwin
- need to declare "filename_completion_function" because it is not exported
from readline -> added to include/port/win.h

changes to pg_id:
- include of <getopt.h>
- add .exe when installing

I think there is a problem with calling the regress tests on WinNT - it
should be called with PORTNAME not HOST as the parameter to regress.sh or
the check  when to add "-h localhost" to psql has to be changed. Now it is
checked against the PORTNAME.

The results of the regress tests were OK with expected failures ;-)

Daniel Horak
2000-02-09 16:23:44 +00:00
Peter Eisentraut
9ceb5d8a7b Fixed psql double quoting of SQL ids
Fixed libpq printing functions
2000-02-07 23:10:11 +00:00
Tatsuo Ishii
b304b4a90e Change function name PQclientencoding to PQclientEncoding since
it seems more suitable for the naming convention in libpq.
2000-02-05 12:27:56 +00:00
Peter Eisentraut
2b84cbb60f A few minor psql enhancements
Initdb help correction
Changed end/abort to commit/rollback and changed related notices
Commented out way old printing functions in libpq
Fixed a typo in alter table / alter column
2000-01-29 16:58:54 +00:00
Bruce Momjian
3f0074e403 fix for compile. 2000-01-27 05:33:51 +00:00
Bruce Momjian
2d5dd7557b Update files. 2000-01-26 16:10:01 +00:00
Bruce Momjian
5c25d60244 Add:
* Portions Copyright (c) 1996-2000, PostgreSQL, Inc

to all files copyright Regents of Berkeley.  Man, that's a lot of files.
2000-01-26 05:58:53 +00:00
Peter Eisentraut
bdb41ad0e7 Made abstime/reltime use int4 instead of time_t (TODO item)
Made type equivalency apply to aggregates (TODO item)
Fixed parsing bug in psql
Reverted some stupid options changes I made to pg_dump
2000-01-24 19:34:19 +00:00
Peter Eisentraut
49581f9848 updated install file
updated date/time types doc
fixed small psql bug
removed libpq code that lower-cased db names
make notice when long identifier is truncated
2000-01-23 01:27:39 +00:00
Peter Eisentraut
fa5400c0a4 added ALTER TABLE DROP COLUMN, early version 2000-01-22 14:20:56 +00:00
Tom Lane
7cc0d6ae9d Fix tab-complete so it works with old versions of readline that don't
have the rl_completion_append_character variable.  The tab completion
behavior doesn't seem to be quite perfect in that situation, but it's
better than failing to build at all...
2000-01-21 23:32:36 +00:00
Tom Lane
e33f550bc0 Fix handleCopyIn's response to EOF seen mid-line, that is, input file
does not end with a newline.  I don't think this explains the recent
complaints, since this bug existed in 6.5 (and probably long before).
But might as well fix it now that I see it.
2000-01-21 04:21:12 +00:00
Peter Eisentraut
13f8875017 Added new pg_id to fix initdb problems
New INSTALL file
Fixed a copyright notice
2000-01-20 21:51:09 +00:00
Bruce Momjian
e6ed9f2c75 Fix typo in \z. 2000-01-20 15:29:20 +00:00
Peter Eisentraut
65e0051843 another round of user interface cleanups
removed pg_id
fixed a few bugs in the scripts
2000-01-19 20:08:36 +00:00
Peter Eisentraut
533d516629 Removed MBFLAGS from makefiles since it's now done in include/config.h. 2000-01-19 02:59:03 +00:00
Peter Eisentraut
f565cf41ab another set of cleanups 2000-01-18 23:30:24 +00:00
Bruce Momjian
0cb6bc70ce Hi!
Here is a patch to bring both libpq and psql to a state where it compiles on
win32 (native) again. A lot of things have changed, and I have not been able
to keep up with them all, so it has been broken for quite a while.
After this patch, at least it compiles. It also talks "basic talk" to the
server, but I have not yet tested all things. Sending queries, and using
e.g. \d or \dt works fine. The rest will have to be tested further.
It also bumps the version on libpq.dll to 7.0.

Everything should be enclosed in #ifdef WIN32, unless I have missed
something. Except for one or maybe two places where I have moved a #include
that should not be used on win32 from the "global area" into a "#ifndef
WIN32 area".


//Magnus
2000-01-18 19:05:31 +00:00
Tatsuo Ishii
449b4cc177 Show encoding name rather than encoding id in case of psql -l. 2000-01-18 05:11:38 +00:00
Tom Lane
fdc85f50a3 Put back change to 'connection failed' message formatting that someone
overwrote.
2000-01-16 20:34:54 +00:00
Peter Eisentraut
759fba4873 Included all yacc and lex files into the distribution. 2000-01-16 20:05:00 +00:00
Tatsuo Ishii
bfbd58ce13 Adapt to the changes of libpq(eliminateing using putenv()). 2000-01-15 05:38:50 +00:00
Peter Eisentraut
7c9390caa1 Fixed psql variables vs array syntax, as well as minor psql enhancements 2000-01-14 22:18:03 +00:00
Tom Lane
0e6d72db55 Make PSQLexec's behavior on loss of connection more reasonable;
report original error before attempting reset, not after.
2000-01-14 05:28:31 +00:00
Tom Lane
19ff2e4d55 Make connection-failed messages a little friendlier on
80-column displays...
2000-01-14 04:01:55 +00:00
Peter Eisentraut
f6689a328f Fixed a few "fixes" and bugs. Adjusted messages and options to GNU suggestions. 2000-01-12 19:36:36 +00:00
Bruce Momjian
6456b17bc1 Rename oid8 -> oidvector and int28 -> int2vector. Cleanup of *out functions. 2000-01-10 16:13:23 +00:00
Bruce Momjian
a040281787 Move fixes for >8 indexed fields. 2000-01-10 05:20:26 +00:00
Bruce Momjian
b78769fda2 Fix it's and its to be correct. 2000-01-05 18:23:54 +00:00
Bruce Momjian
eb9bb3de33 Make psql \dT always show descriptions. There is room. 1999-12-31 21:06:19 +00:00
Tom Lane
ec806d72c0 Clean up some minor gcc warnings. 1999-12-20 01:34:19 +00:00
Bruce Momjian
65f694f802 Add cvs. 1999-12-18 00:34:48 +00:00
Bruce Momjian
5c99f9cd84 Fix MULTIBYTE handling in string by using strcat. 1999-12-17 18:05:32 +00:00
Bruce Momjian
1b22a8cb03 Clear paren level flag on \r or any backslash command, rather than
keeping parenlevel unchanged.
1999-12-16 23:54:41 +00:00
Bruce Momjian
1ff0a475ee Fix for psql from Peter. 1999-12-11 21:35:49 +00:00
Bruce Momjian
298845a6f0 Allow ; in () in psql. 1999-12-11 01:03:36 +00:00
Bruce Momjian
3c75d64f40 Remove old file. 1999-12-10 17:46:41 +00:00
Bruce Momjian
77a4729936 This should fix the \e (\p, \g, ...) behaviour on an empty query buffer.
Also, minor tweakage of tab completion, and I hope the output is flushed
on time now.

--
Peter Eisentraut                  Sernanders väg 10:115
1999-12-10 03:59:30 +00:00
Jan Wieck
a27542c3a8 Added a fflush(stdout) to the \p command required for the
multisession test tool.

Jan
1999-12-10 00:26:35 +00:00
Bruce Momjian
a010be7543 Peter's file removals. 1999-12-07 22:43:03 +00:00
Bruce Momjian
1f64926953 Fix compile error on older patch. 1999-11-30 04:29:57 +00:00
Bruce Momjian
47e51683e6 I pulled this one out via CVS, I hope you can make use of it:
Peter.
1999-11-29 05:28:11 +00:00
Tom Lane
adbf98a77f Fix references to backend/port files so that they actually work. 1999-11-27 19:43:20 +00:00
Bruce Momjian
a7f14616c6 Change // to /* */ 1999-11-26 17:26:38 +00:00
Bruce Momjian
09f185a040 Fix missing prototype psql warning. 1999-11-26 04:36:48 +00:00
Bruce Momjian
78bc83fedf * Includes tab completion. It's not magic, but it's very cool. At any
rate
  it's better than what used to be there.

* Does proper SQL "host variable" substitution as pointed out by Andreas
  Zeugwetter (thanks): select * from :foo; Also some changes in how ':'
  and ';' are treated (escape with \ to send to backend). This does
_not_
  affect the '::' cast operator, but perhaps others that contain : or ;
  (but there are none right now).

* To show description with a <something> listing, append '?' to command
  name, e.g., \df?. This seemed to be the convenient and logical
solution.
  Or append a '+' to see more useless information, e.g., \df+.

* Fixed fflush()'ing bug pointed out by Jan during the regression test
  discussion.

* Added LastOid variable. This ought to take care of TODO item "Add a
  function to return the last inserted oid, for use in psql scripts"
  (under CLIENTS)
  E.g.,
insert into foo values(...);
insert into bar values(..., :LastOid);
\echo $LastOid

* \d command shows constraints, rules, and triggers defined on the table
  (in addition to indices)

* Various fixes, optimizations, corrections

* Documentation update as well


Note: This now requires snprintf(), which, if necessary, is taken from
src/backend/port. This is certainly a little weird, but it should
suffice
until a source tree cleanup is done.

Enjoy.

--
Peter Eisentraut                  Sernanders väg 10:115
1999-11-26 04:24:17 +00:00
Bruce Momjian
e61e4d460c Fix for psql control-d and .psqlrc that I broke. Fix for \dT with
descriptions enabled.
1999-11-13 19:16:47 +00:00
Bruce Momjian
db12a63ef1 The \p\g fix didn't turn out to be so bad. It even works in other
circumstances:
=> select * from foo\x\t\pset border 0 \p\g\\select * from bar;

Also the release prep update so the sql_help.h is generated before
packaging.

Peter.
1999-11-13 02:04:54 +00:00
Bruce Momjian
2a24ec6f16 In the spirit of TODO item
* Add use of 'const' for varibles in source tree
(which is misspelled, btw.)
I went through the front-end libpq code and did so. This affects in
particular the various accessor functions (such as PQdb() and
PQgetvalue()) as well as, by necessity, the internal helpers they use.

I have been really thorough in that regard, perhaps some people will find
it annoying that things like
char * foo = PQgetvalue(res, 0, 0)
will generate a warning. On the other hand it _should_ generate one. This
is no real compatibility break, although a few clients will have to be
fixed to suppress warnings. (Which again would be in the spirit of the
above TODO.)

In addition I replaced some int's by size_t's and removed some warnings
(and generated some new ones -- grmpf!). Also I rewrote PQoidStatus (so it
actually honors the const!) and supplied a new function PQoidValue that
returns a proper Oid type. This is only front-end stuff, none of the
communicaton stuff was touched.


The psql patch also adds some new consts to honor the new libpq situation,
as well as fixes a fatal condition that resulted when using the -V
(--version) option and there is no database listening.


So, to summarize, the psql you should definitely put in (with or without
the libpq). If you think I went too far with the const-mania in libpq, let
me know and I'll make adjustments. If you approve it, I will also update
the docs.

        -Peter

--
Peter Eisentraut                  Sernanders vaeg 10:115
1999-11-11 00:10:14 +00:00
Bruce Momjian
c6c60302ba Cleanup of psql \copyright 1999-11-10 01:22:37 +00:00
Bruce Momjian
b2c55a02b1 psql makefile fix from Keith Parks 1999-11-08 15:59:59 +00:00
Bruce Momjian
86ef36c907 New NameStr macro to convert Name to Str. No need for var.data anymore.
Fewer calls to nameout.

Better use of RelationGetRelationName.
1999-11-07 23:08:36 +00:00
Bruce Momjian
17d819c093 Fix for recusive exit call from Massimo. 1999-11-06 17:01:29 +00:00
Bruce Momjian
a9ade930da Sort help file names, from Peter Eisentraut 1999-11-06 16:49:06 +00:00
Bruce Momjian
5e3189eaff Update psql banner 1999-11-05 18:21:09 +00:00
Bruce Momjian
f793ac0a16 Update psql display. 1999-11-05 15:44:57 +00:00
Bruce Momjian
3d1db6ddc6 Update \? display. 1999-11-05 02:12:59 +00:00
Bruce Momjian
200e183254 Make pager on by default. 1999-11-05 01:38:58 +00:00
Bruce Momjian
f0a45ccd0a Clean up \? psql display. 1999-11-05 01:25:39 +00:00
Bruce Momjian
754a4428a6 psql banner cleanup 1999-11-05 00:12:52 +00:00
Bruce Momjian
87a8c72a64 clean up startup banner 1999-11-05 00:10:03 +00:00
Bruce Momjian
e6a0e4ed61 Fix EOF/control-D display in psql. 1999-11-04 23:26:02 +00:00
Bruce Momjian
dc16399d8d Update to psql, run pgindent. 1999-11-04 23:17:33 +00:00
Bruce Momjian
0e6652e673 psql cleanup 1999-11-04 23:14:30 +00:00
Bruce Momjian
2323b63631 Update psql with man pages and new version of help. 1999-11-04 22:07:57 +00:00
Bruce Momjian
a45195a191 Major psql overhaul by Peter Eisentraut. 1999-11-04 21:56:02 +00:00
Bruce Momjian
60f3e6b3a5 Make USING in COPY optional. 1999-10-29 23:52:22 +00:00
Bruce Momjian
d79d0a3c0f Fix psql quote missing. 1999-10-27 16:33:45 +00:00
Bruce Momjian
021146f375 improve manual page 1999-10-26 04:40:58 +00:00
Bruce Momjian
b6d6cffa99 Add documentation for comment. 1999-10-26 03:48:58 +00:00
Tom Lane
51f62d505e Standardize on MAXPGPATH as the size of a file pathname buffer,
eliminating some wildly inconsistent coding in various parts of the
system.  I set MAXPGPATH = 1024 in config.h.in.  If anyone is really
convinced that there ought to be a configure-time test to set the
value, go right ahead ... but I think it's a waste of time.
1999-10-25 03:08:03 +00:00
Tom Lane
2dd82a67e5 Remove gratuitous redefinitions of BLCKSZ. 1999-10-23 03:28:58 +00:00
Bruce Momjian
627b5e9c20 Backup psql banner change. 1999-10-23 01:31:32 +00:00
Bruce Momjian
918d9de886 change issue to information in banner 1999-10-21 01:24:53 +00:00
Bruce Momjian
4931dea619 Make psql startup banner cleaner. 1999-10-21 00:43:46 +00:00
Bruce Momjian
2d12ee3f71 Update psql \? for \w. 1999-10-14 01:28:42 +00:00
Tom Lane
6eb8d255d2 Allow CREATE FUNCTION's WITH clause to be used for all language types,
not just C, so that ISCACHABLE attribute can be specified for user-defined
functions.  Get rid of ParamString node type, which wasn't actually being
generated by gram.y anymore, even though define.c thought that was what
it was getting.  Clean up minor bug in dfmgr.c (premature heap_close).
1999-10-02 21:33:33 +00:00
Bruce Momjian
9394d62c73 I have been working with user defined types and user defined c
functions.  One problem that I have encountered with the function
manager is that it does not allow the user to define type conversion
functions that convert between user types. For instance if mytype1,
mytype2, and mytype3 are three Postgresql user types, and if I wish to
define Postgresql conversion functions like

I run into problems, because the Postgresql dynamic loader would look
for a single link symbol, mytype3, for both pieces of object code.  If
I just change the name of one of the Postgresql functions (to make the
symbols distinct), the automatic type conversion that Postgresql uses,
for example, when matching operators to arguments no longer finds the
type conversion function.

The solution that I propose, and have implemented in the attatched
patch extends the CREATE FUNCTION syntax as follows. In the first case
above I use the link symbol mytype2_to_mytype3 for the link object
that implements the first conversion function, and define the
Postgresql operator with the following syntax

The patch includes changes to the parser to include the altered
syntax, changes to the ProcedureStmt node in nodes/parsenodes.h,
changes to commands/define.c to handle the extra information in the AS
clause, and changes to utils/fmgr/dfmgr.c that alter the way that the
dynamic loader figures out what link symbol to use.  I store the
string for the link symbol in the prosrc text attribute of the pg_proc
table which is currently unused in rows that reference dynamically
loaded
functions.


Bernie Frankpitt
1999-09-28 04:34:56 +00:00
Bruce Momjian
d62a7ac6d3 Massimo's SET FSYNC and SHOW PG_OPTIONS changes, without SET QUERY_LIMIT. 1999-09-27 20:27:32 +00:00
Bruce Momjian
337ab803a2 TRUNCATE command from Mike Mascari<mascarim@yahoo.com> 1999-09-23 17:11:16 +00:00
Bruce Momjian
e7cad7b0cb Add TRUNCATE command, with psql help and sgml additions. 1999-09-23 17:03:39 +00:00
Tom Lane
f1de4f9532 Additional long-query fixes from Mike Ansley and yours truly.
psql.c seems clean of query length restrictions now.
1999-09-06 23:30:53 +00:00
Bruce Momjian
f96babac12 While I was running some tests in psql, trying to figure out how to change
the query string to handle any length, I discovered that under certain
conditions, psql will core dump when handling long strings.  Thus, the
patch.  It was caused by a buffer overrun, probably not noticeable in a lot
of cases, but pretty noticeable in mine.

Problem was caused by the fact that the length check is only performed after
the check for a ; to get the end of the query and execute.

Cheers...

MikeA
1999-07-20 17:20:43 +00:00
Bruce Momjian
d6ce220f04 psql fix. 1999-07-19 21:06:19 +00:00
Bruce Momjian
50644a2202 Cleanup of patch just applied. 1999-07-19 16:49:17 +00:00
Bruce Momjian
2b8c9e793d Set the application name, used for parsing readline's .inputrc -- dz
Massimo
1999-07-19 16:46:53 +00:00
Bruce Momjian
e44c931801 Re-add getopt.h check, remove NT-specific tests for it. 1999-07-19 02:27:16 +00:00
Bruce Momjian
3406901a29 Move some system includes into c.h, and remove duplicates. 1999-07-17 20:18:55 +00:00
Tatsuo Ishii
8f02f2252d Fix some compiler warnings (Tomoaki Nishiyama), add WIN1250 support (Pavel Behal) 1999-07-11 22:47:21 +00:00
Bruce Momjian
4c65382596 Remove QUERY_LIMIT and documenation on same. Change _ALIGN to TYPEALIGN
for Irix.
1999-06-17 15:16:09 +00:00
Bruce Momjian
8864ee0b6b > Here is a small patch that should only affect win32 building
> (native win32, not cygnus).
> It does the following:
> Patches two win32.mak files to DEFINE HAVE_VSNPRINTF and
> HAVE_STRDUP. This is required to build at all.
> Bumps the version number on libpq.dll from 6.4 to 6.5.
> Required for install programs to work.
> Adds defintions for BLCKSZ and MAXIMUM_ALIGN to "win32.h" in
> the client-side libpiq directory.
>
> All these files are only used when building on native win32,
> so it should be safe I think.
>
> Again, really sorry to throw this in so late, but I would
> hate to do the same thing as with 6.4 (which required 6.4.1
> to at all compile on Win32).
>
> Thanks,
>
>   //Magnus
1999-06-07 14:29:20 +00:00
Tom Lane
857c079304 Suppress indexes on large objects from psql's \d listing;
they were confusing because the large object tables themselves are not
shown.  (Besides, if you've got hundreds or thousands of large objects,
you really don't want to see 'em at all.)
Also, suppress all indexes from the \z ACL listing, since indexes have
no meaningful protection information.
1999-06-04 21:21:13 +00:00
Bruce Momjian
f0f416a2d3 Add mention of SHARE ROW EXCLUSIVE mode. 1999-06-04 04:28:54 +00:00
Bruce Momjian
155b5808ca Thanks for this, but SET TRANSACTION ISOLATION LEVEL
should be described like SET TIME ZONE: TO is not allowed, as well
as DEFAULT option. There are only two forms:

for Vadim.
1999-06-03 20:42:18 +00:00
Bruce Momjian
a4a5f56202 Add mention of FOR UPDATE and LIMIT/OFFSET> 1999-06-03 19:52:09 +00:00
Bruce Momjian
e1ea7cc2e5 Update lock sgml/man/psql help pages. 1999-06-03 19:18:00 +00:00
Bruce Momjian
4a077caa60 Add SET TRANSACTION ISOLATION LEVEL and SET NAMES mention. 1999-06-03 18:38:00 +00:00
Bruce Momjian
7857241229 Update psql help so it looks better. 1999-06-03 18:25:27 +00:00
Bruce Momjian
fa0ed6f047 Update SET commands for psql \h, man pages, and sgml. 1999-06-03 18:18:43 +00:00
Tom Lane
ca08ce28e8 Clean up uninitialized-variable warning from egcs.
(Curious that gcc doesn't complain about this code...).
1999-05-30 15:32:45 +00:00
Bruce Momjian
bf09f8aa43 Display numeric precision on \d. 1999-05-26 20:08:06 +00:00
Bruce Momjian
07842084fe pgindent run over code. 1999-05-25 16:15:34 +00:00
Tom Lane
eb4d9f45ef Do not refer to stdin in static variable initializer ...
apparently some systems choke on that :-(.
1999-05-12 23:26:03 +00:00
Bruce Momjian
210055ad61 here are some patches for 6.5.0 which I already submitted but have never
been applied. The patches are in the .tar.gz attachment at the end:

varchar-array.patch     this patch adds support for arrays of bpchar() and
                        varchar(), which where always missing from postgres.

                        These datatypes can be used to replace the _char4,
                        _char8, etc., which were dropped some time ago.

block-size.patch        this patch fixes many errors in the parser and other
                        program which happen with very large query statements
                        (> 8K) when using a page size larger than 8192.

                        This patch is needed if you want to submit queries
                        larger than 8K. Postgres supports tuples up to 32K
                        but you can't insert them because you can't submit
                        queries larger than 8K. My patch fixes this problem.

                        The patch also replaces all the occurrences of `8192'
                        and `1<<13' in the sources with the proper constants
                        defined in include files. You should now never find
                        8192 hardwired in C code, just to make code clearer.


--
Massimo Dal Zotto
1999-05-03 19:10:48 +00:00
Tom Lane
22fe451c9d psql's recognition of comments didn't work right in MULTIBYTE
environments; it was being careless about character lengths.
1999-04-25 23:10:36 +00:00
Tom Lane
38405e1894 Update CREATE FUNCTION's on-line help in psql. 1999-04-18 03:01:49 +00:00
Tom Lane
1ae6739ee1 psql did the wrong thing with COPY FROM STDIN inside a file
sourced with \i (tried to read data from the terminal, rather than from
the source file; this breaks pg_dump scripts read with \i).  Also, \o file
followed by COPY TO STDOUT wrote to terminal not designated file.
All better now.
1999-04-15 02:24:41 +00:00
Tom Lane
eaffc61675 Correct psql's online help for CREATE OPERATOR, which did
not match what the backend actually accepts.
1999-04-14 23:48:07 +00:00
Tatsuo Ishii
3f8f0ac1a7 Bug fixes and enhances to psql submitted by Masaaki Sakaida
1. Fix problems of PAGER and \? command
2. Add -E option that shows actual queries sent by \dt and friends
3. Add version number in startup banners for psql
1999-03-30 05:00:42 +00:00
Tatsuo Ishii
e1a22d5e84 Add KOI8/WIN/ALT to set client_encoding command help 1999-03-24 06:57:20 +00:00
Tatsuo Ishii
494b82b718 Fix typo. #ifdef MUTIBYTE --> #ifdef MULTIBYTE 1999-03-24 06:55:14 +00:00
Bruce Momjian
0d01fd4e19 Add EXCEPT/INTERSECT doc changes. 1999-03-19 02:41:41 +00:00
Bruce Momjian
265c283e1b > > > This patches src/bin/psql/psql.c.
> > >
> > > This patch is in responce to the following TODO list item:
> > >  * have psql \d on a view show the query
> > > -Ryan
1999-03-15 02:18:37 +00:00
Marc G. Fournier
8c3e8a8a0e From: Tatsuo Ishii <t-ishii@sra.co.jp>
Ok. I made patches replacing all of "#if FALSE" or "#if 0" to "#ifdef
NOT_USED" for current. I have tested these patches in that the
postgres binaries are identical.
1999-02-21 03:49:55 +00:00
Bruce Momjian
6724a50787 Change my-function-name-- to my_function_name, and optimizer renames. 1999-02-13 23:22:53 +00:00
Bruce Momjian
65decc3402 Allow psql to do \p\g. Ingres does it, why not us? 1999-02-07 02:56:53 +00:00
Bruce Momjian
9322950aa4 Cleanup of source files where 'return' or 'var =' is alone on a line. 1999-02-03 21:18:02 +00:00
Bruce Momjian
a7ad43cd18 Included patches make some enhancements to the multi-byte support.
o allow to use Big5 (a Chinese encoding used in Taiwan) as a client
  encoding. In this case the server side encoding should be EUC_TW

o add EUC_TW and Big5 test cases to the regression and the mb test
  (contributed by Jonah Kuo)

o fix mistake in include/mb/pg_wchar.h. An encoding id for EUC_TW was
  not correct (was 3 and now is 4)

o update documents (doc/README.mb and README.mb.jp)

o update psql helpfile (bin/psql/psqlHelp.h)

--
Tatsuo Ishii
t-ishii@sra.co.jp
1999-02-02 18:51:40 +00:00
Bruce Momjian
8358a8f6a0 psql help fix. 1999-02-02 18:41:17 +00:00
Bruce Momjian
1b907ab8f5 Fix for psql help create table. 1999-02-02 18:39:23 +00:00
Bruce Momjian
4390b0bfbe Add TEMP tables/indexes. Add COPY pfree(). Other cleanups. 1999-02-02 03:45:56 +00:00
Marc G. Fournier
2ae5d51668 From: Tatsuo Ishii <t-ishii@sra.co.jp>
Included patches fix a portability problem of unsetenv() used in
6.4.2 multi-byte support. unsetenv() is only avaliable on FreeBSD and
Linux so I decided to replace with putenv().
1999-01-27 01:18:23 +00:00
Bruce Momjian
7a6b562fdf Apply Win32 patch from Horak Daniel. 1999-01-17 06:20:06 +00:00
Bruce Momjian
ffb90a01fd Current multi-byte related codes have a bug with SQL_ASCII
support. Included patches will solve it and should be applied to
both trees.  Also, it fix the problem with \c command of psql when
switching different encoding databases.

Regression tests passed.
--
Tatsuo Ishii
t-ishii@sra.co.jp
1998-12-14 04:59:58 +00:00
Tom Lane
19740e2fff Portability fixes found needed for SunOS 4.1.x:
SunOS has tas(), but not memmove or strerror, and its sprintf() doesn't
return int.  Also, older versions of GNU Make don't like rules with
empty left-hand sides...
1998-11-30 00:30:05 +00:00
Thomas G. Lockhart
8d507c204b Additional fixes for mixed-case table names from Billy Allie. 1998-11-17 14:26:39 +00:00
Tom Lane
990fa43c23 Get rid of some minor compiler warnings. 1998-10-26 01:05:07 +00:00
Bruce Momjian
8cec4cf91b New QUERY_LIMIT set command. 1998-10-14 05:10:12 +00:00
Tom Lane
976625c54a I continue my quest to eliminate documentation that claims
a listen/notify condition name is a class or table name, 'cause it ain't.
1998-10-08 01:10:28 +00:00
Bruce Momjian
30debec6e5 Hello!
Here are two new patches for the Win32 support.

1) The patch based on the one from Hiroshi Inoue [Inoue@tpf.co.jp], to
load
Winsock.dll from libpq.dll.
2) A patch for psql.c to remove the call to WSAStartup(), since it is
not
required when it's done in libpq.dll.

I'm still looking for the possibility of having a crypt() function in
libpq.dll too, the same way getopt was included. Any chance of getting
this
before 6.4, or should we wait for the next one?


//Magnus
1998-10-08 00:10:49 +00:00
Bruce Momjian
e1ebac319d Here are the patches against the current source tree. I have run the
regression test on a FreeBSD box with both non-MULTIBYTE and
MULTIBYTE-enabled, and confirmed that the results are same.

However I do not tested on PCs(I don't have access to win). Please let
me know if the patches break anything on PCs.

Also please note that the patch for varchar.c is a fix for a nasty bug
of char(n) types that I introduced and I believe at least this should
be applied.

Tatsuo Ishii
1998-10-06 03:02:29 +00:00
Bruce Momjian
25a64f7519 Fix for \z formatting from Tom Lane. 1998-09-21 02:25:29 +00:00
Bruce Momjian
9d8d647146 patch cleanups. 1998-09-03 05:08:28 +00:00
Bruce Momjian
9fbaf1d851 Remove \r\n in windows makefile. 1998-09-03 02:16:27 +00:00
Bruce Momjian
f71d0cf64e Attached is a patch to remove the definitions of libpq's internal
structs from libpq-fe.h, as we previously discussed.

There turned out to be sloppy coding practices in more places than
I had realized :-(, but all in all I think it was a well-worth-while
exercise.

I ended up adding several routines to libpq's API in order to respond
to application requirements that were exposed by this work.  I owe the
docs crew updates for libpq.sgml to describe these changes.  I'm way too
tired to work on the docs tonight, however.

This is the last major change I intend to submit for 6.4.  I do want
to see if I can make libpgtcl work with Tcl 8.0 before we go final,
but hopefully that will be a minor bug fix.
1998-09-03 02:10:56 +00:00
Bruce Momjian
fa1a8d6a97 OK, folks, here is the pgindent output. 1998-09-01 04:40:42 +00:00
Bruce Momjian
a060d5bedf Hello!
Here is a new patch for libpq, to make it work on Win32 again (since
the latest modifications broke it a little).

Please also add the file "libpq.rc" to the interfaces/libpq directory.
This will allow version-stamping of the generated DLL file, so that
automatic install programs (and interested users) can determine
the version of the file.  The file is currently set as "prerelease".
Before the release, somebody should change the line "FILEFLAGS
VS_FF_PRERELEASE" to "FILEFLAGS 0".  That information should probably
go into toos\RELEASE_CHANGES.

The patch is against the cvs as of ~ 1998-08-26 14:30 CEST.


//Magnus
1998-08-29 04:05:46 +00:00
Bruce Momjian
a53ea467e1 Hi all,
I  don't know if this is really related to the initdb problem
    discussion (haven't followed it enough). But seems so because
    it  fixes  a  damn  problem  during  index tuple insertion on
    CREATE TABLE into pg_attribute_relid_attnum_index.

    Anyway - this bug was really hard to find. During startup the
    relcache  reads  in  some  prepared  information  about index
    strategies from a file and then  reinitializes  the  function
    pointers  inside  the  scanKey data.  But for sake it assumed
    single attribute index tuples (hasn't that changed recently).
    Thus not all the strategies scanKey entries where initialized
    properly,  resulting  in  invalid  addresses  for  the  btree
    comparision functions.

    With  the  patch  at  the  end  the  regression  tests passed
    excellent except for the sanity_check that crashed at  vacuum
    and the misc test where the select unique1 from onek2 outputs
    the two rows in different order.

Jan
1998-08-28 03:36:31 +00:00
Marc G. Fournier
602ac52d3e From: Magnus Hagander <mha@edu.sollentuna.se>
Ok. Here is a patch to make psql work on Win32 (as a console mode
application, of course).
It requires getopt.c to be in src/utils - works fine with the FreeBSD
version of it.

Also, the file win32.mak should go into src/bin/psql.
1998-08-27 13:25:40 +00:00
Marc G. Fournier
f62d1253ef From: Massimo Dal Zotto <dz@cs.unitn.it>
>       these patches define the UNLISTEN sql command. The code already
>       existed but it was unknown to the parser. Now it can be used
>       like the listen command.
>       You must make clean and delete gram.c and parser.h before make.
1998-08-25 21:37:08 +00:00
Bruce Momjian
99a099d436 With the attached patch, I have verified that long (> 8char anyway)
usernames and passwords work correctly in both "password" and
"crypt" authorization mode.  NOTE: at least on my machine, it seems
that the crypt() routines ignore the part of the password beyond
8 characters, so there's no security gain from longer passwords in
crypt auth mode.  But they don't fail.

The login-related part of psql has apparently not been touched
since roughly the fall of Rome ;-).  It was going through huge
pushups to get around the lack of username/login parameters to
PQsetdb.  I don't know when PQsetdbLogin was added to libpq, but
it's there now ... so I was able to rip out quite a lot of crufty
code while I was at it.

It's possible that there are still bogus length limits on username
or password in some of the other PostgreSQL user interfaces besides
psql/libpq.  I will leave it to other folks to check that code.

			regards, tom lane
1998-08-22 04:49:05 +00:00
Marc G. Fournier
9312033071 Date: Sun, 16 Aug 1998 14:56:48 -0400
From: Tom Lane <tgl@sss.pgh.pa.us>
Attached is a patch for this weekend's work on libpq.  I've dealt
with several issues:

        <for details: see message, in pgsql-patches archive for above data>
1998-08-17 03:50:43 +00:00
Bruce Momjian
ffb120ecc6 Add new \w write command to psql. 1998-08-10 20:31:42 +00:00
Bruce Momjian
af5fde7491 Make large objects their own relkind type. Fix dups in pg_class_mb
files.  Fix sequence creation hack for relkind type.
1998-08-06 05:13:14 +00:00
Bruce Momjian
7260ad7fd9 Fix for \d index display. 1998-08-05 16:23:40 +00:00
Bruce Momjian
f26e1d39be Add Indices display to \d command. 1998-08-04 18:29:41 +00:00
Marc G. Fournier
5979d73841 From: t-ishii@sra.co.jp
As Bruce mentioned, this is due to the conflict among changes we made.
Included patches should fix the problem(I changed all MB to
MULTIBYTE). Please let me know if you have further problem.

P.S. I did not include pathces to configure and gram.c to save the
file size(configure.in and gram.y modified).
1998-07-26 04:31:41 +00:00
Bruce Momjian
01a651aaf9 Fix compile error. Make transaction/work optional on all transaction
statements.  More cleanups of psql help.  Fix for shift/reduce on
UNION in subselect.
1998-07-26 01:18:09 +00:00
Bruce Momjian
d8d0aa019b Update psql help syntax to remove <> and uppercaese keywords. 1998-07-25 00:17:30 +00:00
Marc G. Fournier
bf00bbb0c4 I really hope that I haven't missed anything in this one...
From: t-ishii@sra.co.jp

Attached are patches to enhance the multi-byte support.  (patches are
against 7/18 snapshot)

* determine encoding at initdb/createdb rather than compile time

Now initdb/createdb has an option to specify the encoding. Also, I
modified the syntax of CREATE DATABASE to accept encoding option. See
README.mb for more details.

For this purpose I have added new column "encoding" to pg_database.
Also pg_attribute and pg_class are changed to catch up the
modification to pg_database.  Actually I haved added pg_database_mb.h,
pg_attribute_mb.h and pg_class_mb.h. These are used only when MB is
enabled. The reason having separate files is I couldn't find a way to
use ifdef or whatever in those files. I have to admit it looks
ugly. No way.

* support for PGCLIENTENCODING when issuing COPY command

commands/copy.c modified.

* support for SQL92 syntax "SET NAMES"

See gram.y.

* support for LATIN2-5
* add UNICODE regression test case
* new test suite for MB

New directory test/mb added.

* clean up source files

Basic idea is to have MB's own subdirectory for easier maintenance.
These are include/mb and backend/utils/mb.
1998-07-24 03:32:46 +00:00
Bruce Momjian
7b2b779a2a Add auto-size to screen to \d? commands. Use UNION to show all
\d? results in one query. Add \d? field search feature.  Rename MB
to MULTIBYTE.
1998-07-18 18:34:34 +00:00
Bruce Momjian
37273977cb add mention of DISTINCT ON attrN 1998-07-12 04:49:47 +00:00
Marc G. Fournier
a0659e3e2c From: Tom Lane <tgl@sss.pgh.pa.us>
Making PQrequestCancel safe to call in a signal handler turned out to be
much easier than I feared.  So here are the diffs.

Some notes:
  * I modified the postmaster's packet "iodone" callback interface to allow
    the callback routine to return a continue-or-drop-connection return
    code; this was necessary to allow the connection to be closed after
    receiving a Cancel, rather than proceeding to launch a new backend...
    Being a neatnik, I also made the iodone proc have a typechecked
    parameter list.
  * I deleted all code I could find that had to do with OOB.
  * I made some edits to ensure that all signals mentioned in the code
    are referred to symbolically not by numbers ("SIGUSR2" not "2").
    I think Bruce may have already done at least some of the same edits;
    I hope that merging these patches is not too painful.
1998-07-09 03:29:11 +00:00
Bruce Momjian
cb7cbc16fa Hi, here are the patches to enhance existing MB handling. This time
I have implemented a framework of encoding translation between the
backend and the frontend. Also I have added a new variable setting
command:

SET CLIENT_ENCODING TO 'encoding';

Other features include:
	Latin1 support more 8 bit cleaness

See doc/README.mb for more details. Note that the pacthes are
against May 30 snapshot.

Tatsuo Ishii
1998-06-16 07:29:54 +00:00
Bruce Momjian
6bd323c6b3 Remove un-needed braces around single statements. 1998-06-15 19:30:31 +00:00
Bruce Momjian
27db9ecd0b Fix macros that were not properly surrounded by parens or braces. 1998-06-15 18:40:05 +00:00
Bruce Momjian
45878915a8 Another \f\ fix for psql. 1998-05-15 01:57:33 +00:00
Bruce Momjian
2af0d090f1 Fix to allow \f \ to make spaces as delimiter. 1998-05-13 03:27:07 +00:00
Bruce Momjian
982c695fbd The attached patch corrects two problems with autoconfiguration of
psql in Postgres 6.3.2.  Both of these problems were complained of
recently in pgsql-questions:

1. In the right circumstances, psql.c will fail to compile due to
trying
   to include a nonexistent <history.h>.  (Thread "Compile-time
   error" around 17 Apr 98.) 2. In other circumstances, psql will
compile but does not provide
   command history capability, even though the underlying readline
   library supports it.  (Various threads, most recently "query
   repetition in psql" around 29 Apr.)

Tom Lane
1998-05-12 23:05:12 +00:00
Bruce Momjian
95aa15f32a Give proper error on psql \copy use. 1998-05-12 23:04:01 +00:00
Bruce Momjian
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
Bruce Momjian
29c20d498d Fix for missing parens with \g causing psql to get completely
confused.
1998-05-04 02:02:09 +00:00
Bruce Momjian
471dbbc223 DESTDIR removed, again. 1998-04-06 16:53:15 +00:00
Bruce Momjian
5523beb949 Re-introduce $DISTDIR. 1998-04-06 01:16:55 +00:00
Bruce Momjian
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
Bruce Momjian
2dfee93457 Remove DISTDIR. 1998-04-05 22:02:56 +00:00
Bruce Momjian
fdb37f073b this patch solve 2 problemes :
probleme number 1 :

- configure can find the library readline , but don't
  find the header file . so in this case we don't use lib readline
  .

probleme number 2 :

- when you have postgres 6.2.1 and readline installed
  with the same prefix( and generally all your software ) .  you
  can compile the version 6.3 .  I use this prefix , when configure
  ask me for "Additional directories to search for include files"
  .

  ( because there a conflict in the header when you
    compile psql.c ) In this case, you must permut the sequence of
  directive -I .

Erwan MAS
1998-04-05 21:29:49 +00:00
Bruce Momjian
01ecb2e3a0 documentation for HAVING, clean up UNION comment. 1998-03-30 19:05:10 +00:00
Bruce Momjian
c530fbfb2f Add checks for UNION target fields, and add optional TABLE to LOCK
and SELECT manual pages and psql help.
1998-03-18 15:49:08 +00:00
Bruce Momjian
cc494cebbb Prevent \do from wrapping. 1998-03-16 14:27:38 +00:00
Bruce Momjian
a32450a585 pgindent run before 6.3 release, with Thomas' requested changes. 1998-02-26 04:46:47 +00:00
Marc G. Fournier
6132387d5a Make changes to psql so that it sees pg_user again instead of db_user 1998-02-25 14:50:36 +00:00
Marc G. Fournier
ab6e4ea3dc Modify initdb.sh so that it makes pg_user readable through view db_user
Modify psql so that it uses db_user instead of pg_user
GRANT SELECT on pg_class
1998-02-23 19:26:36 +00:00
Bruce Momjian
65faaf3046 atttypmod now -1. 1998-02-07 06:11:56 +00:00
Bruce Momjian
c2dd3c4fef Fix for \d on long table names. 1998-02-06 17:46:31 +00:00
Bruce Momjian
00f325d510 Subselects with =, >, etc.
Cleanup for vacuum help, manual page, and error message
1998-02-03 19:27:30 +00:00
Bruce Momjian
0427469f57 psql \df cleanup and lock manual page cleanup. 1998-01-28 20:44:42 +00:00
Bruce Momjian
d57753efd4 Add cash_words_out and fix \df width. 1998-01-25 20:23:40 +00:00
Marc G. Fournier
b34c8ec3ec From: James Hughes <jamesh@interpath.com>
This is a patch to fix crashes in psql when executing queries from
an external file. The code also adds error checking to verify that
memory for "query" was allocated. The conditional for the block of
code was changed from "query == NULL" to "query_alloced == false".

The conditional, "query == NULL", was never true. This prevented
the memory being allocated for "query". A few lines later, an attempt
to write to an un-allocated memory area generated a SIGSEGV causing
the frontend to crash.
1998-01-23 19:22:24 +00:00
Marc G. Fournier
b8476a09fe From: Andrew Martin <martin@biochemistry.ucl.ac.uk>
psql .psqlrc file startup(Andrew)
1998-01-23 19:21:11 +00:00
Bruce Momjian
7015dfef4b Add LOCK command as DELETE FROM ... WHERE false. 1998-01-22 23:05:18 +00:00
Bruce Momjian
0fd8d60185 Allow \z to show sequences. 1998-01-22 18:50:22 +00:00
Bruce Momjian
b37bc65f44 Creates the SubLink structure, and the Query->hasSubLink field,
with supporting code.

Creates SubLink node in gram.y.

psql.c patch for newatttypmod field.
1998-01-17 04:53:46 +00:00
Bruce Momjian
660f458d3b Clean up of copyfuncs. 1998-01-11 20:02:32 +00:00
Bruce Momjian
f3dbe7356b psql help cleanup. 1998-01-11 04:36:28 +00:00
Bruce Momjian
40d55d2c0a Update psql help. 1998-01-11 04:17:01 +00:00
Bruce Momjian
bf8af2205b PAGER \z in psql. 1998-01-09 19:34:38 +00:00
Bruce Momjian
3d8820a364 Remove un-needed quotes from psql \d DEFAULT display. 1998-01-05 13:56:05 +00:00
Bruce Momjian
0af9137f14 Add NOT NULL and DEFAULT to \d table. 1998-01-05 02:21:22 +00:00
Marc G. Fournier
0aa928764a Various fixes NETBSD/sparc related
From: Tom I Helbekkmo <tih@Hamartun.Priv.NO>
1998-01-04 19:13:04 +00:00
Bruce Momjian
a01b085c78 Cleanup of UNION ALL fix. Manual page updates. 1997-12-29 01:13:37 +00:00
Bruce Momjian
bbd5c21786 Make no-tty not use quiet in psql, fix group by copy failure, fix ccsym to delete tmp files. 1997-12-23 21:38:53 +00:00
Bruce Momjian
3827555869 Fix notty output to show status result. -q option still turns it off. 1997-12-22 20:03:53 +00:00
Bruce Momjian
a68a132a6c Add VARHDRSZ where needed. Many places just used 4. 1997-12-06 22:57:36 +00:00
Bruce Momjian
5a5cb30096 Fix tolower loops to go in proper direction for cache. 1997-12-05 01:13:24 +00:00
Marc G. Fournier
4c04f7724e From: todd brandys <brandys@eng3.hep.uiuc.edu>
An extension to the code to allow for a pg_password authentication database
that is *seperate* from the system password file
1997-12-04 00:28:15 +00:00
Bruce Momjian
7059464335 Fix for \dd on types. 1997-11-30 17:46:01 +00:00
Bruce Momjian
97ad0b1cd4 \dd fix. 1997-11-26 02:34:28 +00:00
Bruce Momjian
91742c5c24 Change heading. 1997-11-24 14:15:11 +00:00
Bruce Momjian
4857de6be4 Cleanup wrapping in \d commands. 1997-11-24 14:05:02 +00:00
Bruce Momjian
a986b7ba4d Move descriptions to pg_proc, add descriptions. 1997-11-24 13:43:29 +00:00
Bruce Momjian
3fa2bb316c Remove archive stuff. 1997-11-21 18:12:58 +00:00
Bruce Momjian
b686104cd5 Change \df order. 1997-11-19 03:14:19 +00:00
Bruce Momjian
20858bdd96 Make \d commands not wrap over 80 cols. 1997-11-18 06:46:31 +00:00
Bruce Momjian
bd6733f9ce Clean out pgbuiltin now that new psql \d commands exist. 1997-11-17 22:15:03 +00:00
Bruce Momjian
d0928a3af3 Fix \e for empty file. 1997-11-17 17:54:24 +00:00
Bruce Momjian
0f62b3024e Fix for \e on empty file. 1997-11-17 05:23:11 +00:00
Bruce Momjian
930bce33db Re-ordeer new \d command output. 1997-11-16 05:32:16 +00:00
Bruce Momjian
12fc33077b New \dS psql command. initdb cleanup. 1997-11-16 04:36:52 +00:00
Bruce Momjian
4e9df155f0 Add new \df psql option and oid8types() function. 1997-11-15 16:32:25 +00:00
Bruce Momjian
4cbc06cff1 Add new psql \da, \do, and \dT options. 1997-11-14 21:38:25 +00:00
Bruce Momjian
ea4223c45f FIx for indexing regex stuff. Change rowoid to objoid. 1997-11-14 05:57:46 +00:00
Bruce Momjian
145bae2759 pg_description cleanup. 1997-11-13 03:36:42 +00:00
Bruce Momjian
5071ae2972 Add pg_description table for info on tables, columns, operators, types, and aggregates. Modify psql with new \dd operator to access description 1997-11-13 03:23:18 +00:00
Thomas G. Lockhart
7e1a8a90f8 Support "delimited identifiers" for \d tablename command.
This allows mixed-case identifiers if surrounded by double quotes.
Add mention of "with location" clause for "create database" in help.
1997-11-07 06:27:55 +00:00
Bruce Momjian
475a8873b0 Add paging for \d, and fix \i. 1997-11-03 04:21:49 +00:00
Vadim B. Mikheev
05a436b327 DROP TRIGGER. 1997-10-16 06:59:23 +00:00
Vadim B. Mikheev
953e9e2b3c + MOVE
+ CREATE TRIGGER
Little changes for create table.
1997-10-02 13:58:06 +00:00
Bruce Momjian
f477db7705 Update manuals for 6.2 release. 1997-10-01 19:42:53 +00:00
Bruce Momjian
7566949a97 Update manuals for 6.2 release. 1997-10-01 19:30:59 +00:00
Bruce Momjian
a127aafca7 Update manuals for 6.2 release. 1997-10-01 19:24:21 +00:00
Bruce Momjian
c03c6857b7 Update manuals for 6.2 release. 1997-10-01 19:14:35 +00:00
Bruce Momjian
c83beeff06 Update manuals for 6.2 release. 1997-10-01 19:08:48 +00:00
Thomas G. Lockhart
c7dbd366ba Remove debugging "puts" print statement. 1997-09-24 17:46:14 +00:00
Bruce Momjian
cad3e709fe Fix for backslash quote. 1997-09-23 19:47:59 +00:00
Bruce Momjian
34ec62058a Fix \e and \p after query. 1997-09-19 03:42:39 +00:00
Bruce Momjian
3f365ba0fc Inline memset() as MemSet(). 1997-09-18 20:22:58 +00:00
Bruce Momjian
48fd8b3e8f Cleanup of use of settings as pointer and structure, and ps. 1997-09-13 13:03:41 +00:00
Bruce Momjian
2d7023c8fb No \\connect with usernames AND passwords. 1997-09-12 21:58:03 +00:00
Bruce Momjian
59f6a57e59 Used modified version of indent that understands over 100 typedefs. 1997-09-08 21:56:23 +00:00
Bruce Momjian
319dbfa736 Another PGINDENT run that changes variable indenting and case label indenting. Also static variable indenting. 1997-09-08 02:41:22 +00:00
Bruce Momjian
1ccd423235 Massive commit to run PGINDENT on all *.c and *.h files. 1997-09-07 05:04:48 +00:00
Bruce Momjian
868d708188 Add // comments. 1997-09-05 00:09:47 +00:00
Bruce Momjian
33b028b5b0 Fix syntax error in psql help. 1997-09-04 15:02:56 +00:00
Thomas G. Lockhart
b776831e8b Rearrange scanning code to support extended comments.
Use #define symbols rather than integers for scanning states.
1997-09-01 06:09:53 +00:00
Bruce Momjian
99e9deac73 Manual page renaming. 1997-08-26 17:00:23 +00:00
Bruce Momjian
f8fda03d12 pg_password utility. Cleanup for psql passwords. New datetime contrib stuff for new version. Fix for strutils needing config.h. 1997-08-25 19:41:52 +00:00
Bruce Momjian
7515bb484e Fix for psql pager when no tty, cleanup for vacuum attdisbursion type. 1997-08-22 04:13:18 +00:00
Bruce Momjian
76501c8aed Make psql use pager only when it has a tty. 1997-08-22 00:17:26 +00:00
Bruce Momjian
1d8bbfd2e7 Make functions static where possible, enclose unused functions in #ifdef NOT_USED. 1997-08-19 21:40:56 +00:00
Vadim B. Mikheev
b992e200b8 NOT NULL implementation (submitted by Robson Paniago de Miranda). 1997-08-19 04:46:15 +00:00
Marc G. Fournier
9d90de5de7 Changes so that it actually checks for <readline/history.h>, instead
of assuming it does exist
1997-08-17 00:48:51 +00:00
Bruce Momjian
6ed1715b1f Cleanup for NAMEDATALEN use. 1997-08-03 02:38:47 +00:00
Bruce Momjian
4b965f5758 Fix stout/stderr paging. Do not page \h select, but page \h *. 1997-08-01 04:07:55 +00:00
Bruce Momjian
a67fd49091 Fix psql error output. 1997-08-01 03:33:02 +00:00
Bruce Momjian
8447148aad psql: Add PAGER for \h and \?,\C fix, indices spell fix. 1997-07-24 20:01:33 +00:00
Bruce Momjian
4d8a5efcef Add single quotes to \\h set help 1997-07-24 19:11:53 +00:00
Bruce Momjian
5eb4fadeaa Prevent psql optarg free-ing 1997-07-14 22:08:56 +00:00
Bruce Momjian
43deb7a45f Fox case-sensitivity for \d and allow trailing ; on backslash commands. 1997-06-29 17:29:28 +00:00
Bruce Momjian
1952f15c5c Fix memory leak in psql. 1997-06-29 05:06:43 +00:00
Bruce Momjian
dd2c410616 Allow pg_dump to preserve owners of all objects. 1997-06-20 02:20:26 +00:00
Bruce Momjian
8f846a321c Update psql EXPLAIN help description, from Thomas. 1997-06-12 16:43:08 +00:00
Marc G. Fournier
735bf0b7f2 From: Igor <igor@sba.miami.edu>
Subject: [PATCHES] sequences display in psql

Well, I am away at Progress training (not Postgres!!) and desided to do
this patch during a break. This will allow listing of sequences in
addition to listing of tables and indicies:
\d would should indicies, tables, and sequences
\ds would show sequences only.
1997-06-11 01:03:38 +00:00
Marc G. Fournier
e721e58c03 From: Darren King <aixssd!darrenk@abs.net>
Subject: [PATCHES] psql and large objects fix

Psql was broken by using "Inv[0-9]+" instead of "xin[xv][0-9]+" to not
show large object files.  Been this way for a long time too. Relic of
an older naming convention, perhaps?
1997-06-06 22:05:23 +00:00
Marc G. Fournier
8d1f52ef24 From: Igor <igor@sba.miami.edu>
Subject: [PATCHES] More psql and libpq patches

Well..these would be the last patches until the release (I hope)...
I ran the regression tests while watching psql under purify, and it did
not leak even one byte.

In this patch:

* Plugged a major leak when PSQL reads files for input (either through
  \i options or through -f option)
* Fixed the one remaining leak in PSQL in not clearing PGresult *results
  everywhere it is supposed to. (Thanks Tymm)
* Fixed A small leak in PSQL not clearing all the PGsettings correctly.
* A not-so-obvious (but small) leak in Libpq when PQsetdb fails for any
  reason.
* Added \n to some Libpq error messages to make them easier to digest..
* Finally, added /* PURIFY */ comment to some of the code indicating
  the reason for why it was added/changed...for future developers.
1997-06-06 01:42:02 +00:00
Vadim B. Mikheev
9d14ef9465 SET var TO '...'
^^ - added
1997-06-03 06:19:11 +00:00
Vadim B. Mikheev
cd3f1bcab0 cc1: warnings being treated as errors
psql.c: In function `HandleSlashCmds':
psql.c:1141: warning: `optarg3' might be used uninitialized in this function
psql.c:1157: warning: `optarg3' might be used uninitialized in this function

-> char           *optarg3 = NULL;
1997-06-03 06:17:34 +00:00
Bruce Momjian
09e41a037e Update man and psqlHelp for new SET GEQO=# option. 1997-06-02 14:12:40 +00:00
Marc G. Fournier
541f18558d From: Igor <igor@sba.miami.edu>
Subject: [PATCHES] patch for a memory leak

Well...I screwed up and posted the wrong patch for psql originally..
The patch for that patch wposted below will fix it..
1997-06-02 03:04:50 +00:00
Marc G. Fournier
ff038a5b97 From: Darren King <aixssd!darrenk@abs.net>
Subject: [PATCHES] psql - \dt,\di commands.

I sent this a couple of months ago in re a request by Maxim
Kozin, but I had the patch reversed, creating some confusion
over applying it.

Here's a more complete version.

Adds \dt to list only tables/views and \di to list only
indicies.  \d will still work as before.
1997-06-01 15:53:24 +00:00
Marc G. Fournier
9a5529f4d1 From: Igor <igor@sba.miami.edu>
Subject: [PATCHES] memory leak patches in libpq and psql

A couple of small memory leak patches (detected with Purify) primarily
in libpq.

* Fixed (NULL) border problem in psql (run psql, do \m, then select
  something from a table...row separators will be nulls)
* Fixed memory leak with the abovementioned border not being freed
  properly.
* Fixed memory leak in freePGconn() not freeing conn->port
* Fixed up PQclear() to free parts of PGresult only if these
  parts are not null.
* Fixed a decent memory leak that occured after executing every command
  in psql. PGresult *results was not freed most of the time.

There is still a leak being detected (2 bytes) in readline functions, but
I think this is old readline library. I will install new one and test it.
1997-06-01 15:39:08 +00:00
Bruce Momjian
6c82ae2c02 Add R_PLANS to psql help, and SET cleanup. 1997-06-01 04:53:44 +00:00
Bruce Momjian
6ed9f2f17b DROP agg psql help change from Darren. 1997-06-01 04:32:41 +00:00
Bruce Momjian
098dea8633 Fix core dump on \c. 1997-05-24 14:38:05 +00:00
Bruce Momjian
656d88c611 Fix \c option after breaking it. 1997-05-24 01:45:17 +00:00
Bruce Momjian
449e575595 Only free memory if environment value is replaced. 1997-05-23 01:53:42 +00:00
Bruce Momjian
658f229ac6 Comment on fix added. 1997-05-23 00:20:20 +00:00
Bruce Momjian
148f7203fa Preserve putenv() memory in psql \connect user fix. 1997-05-22 23:57:27 +00:00
Bruce Momjian
65ff0feacf Fix backslash commands broken when \connect user added. 1997-05-22 18:55:40 +00:00
Bruce Momjian
fce2c41b6c Updated pg_dumpall and psql to preserve database owners. 1997-05-21 03:12:23 +00:00
Thomas G. Lockhart
02233addcc Include information for reset, set, and show commands. 1997-05-17 06:16:34 +00:00
Marc G. Fournier
c2ae467300 clean up the bin/*/Makefiles...up version.h to v6.1 instead of v6.0
Remove bin/Makefile.global since it wasn't actually *doing* anything
that Makefile.global hadn't already done
1997-04-26 05:07:12 +00:00
Vadim B. Mikheev
7a2b417d15 Vacuum help changed (ANALYZE). 1997-04-23 06:41:56 +00:00
Marc G. Fournier
f986173e35 Add a \z command to psql that lists off grant/revoke permissions
- if someone can pick a better \? for this, plesae let me know...all
	  the good ones seem taken :(
1997-04-10 11:54:29 +00:00
Marc G. Fournier
c7b40e6058 This commit represents a clean compile with the new templates under
FreeBSD

The Makefile(s) have all been cleaned up such that there is a single
LDFLAGS vs LD_ADD or LDADD or LDFLAGS or LDFLAGS_BE.  The Makefile(s)
should be alot more straightforward then they were before...and
consistent
1997-04-04 10:43:16 +00:00
Vadim B. Mikheev
2b788e0bf5 \h create/drop sequence. 1997-04-02 04:18:26 +00:00
Vadim B. Mikheev
87bc5db412 '\h create index' shows that multi-column indices are available now. 1997-03-26 03:01:29 +00:00
Marc G. Fournier
3a7c93e7f3 From: Dan McGuirk <mcguirk@indirect.com>
Subject: [HACKERS] password authentication

This patch adds support for plaintext password authentication.  To use
it, you add a line like

host         all         0.0.0.0       0.0.0.0           password  pg_pwd.conf


to your pg_hba.conf, where 'pg_pwd.conf' is the name of a file containing
the usernames and password hashes in the format of the first two fields
of a Unix /etc/passwd file.  (Of course, you can use a specific database
name or IP instead.)

Then, to connect with a password through libpq, you use the PQconnectdb()
function, specifying the "password=" tag in the connect string and also
adding the tag "authtype=password".

I also added a command-line switch '-u' to psql that tells it to prompt
for a username and password and use password authentication.
1997-03-12 21:23:16 +00:00
Marc G. Fournier
a5494a2d92 Various patches for nextstep by GregorHoffleit
Replaced NEED_STRDUP by !HAVE_STRDUP
1997-02-13 08:32:20 +00:00
Bruce Momjian
ec4ca05c12 Fix \? syntax for copy command. 1997-02-11 03:11:33 +00:00
Marc G. Fournier
ad6bfe67bd Various fixes suggested by Gregor Hoffleit
Add a check to configure for strdup
Remove all the '-ltermcap' checks from psql/Makefile
Have {psql,pg_dump}/Makefile modified if strdup doesn't exist on the system
1997-02-09 03:23:52 +00:00
Marc G. Fournier
1d8a696fd5 Remove #include "rlstubs.h", since it doesn't exist anymore 1997-01-26 17:27:32 +00:00
Marc G. Fournier
917042f1c6 Remove rlstubs.[ch], since they weren't actually doing anything that couldn't
be #ifdef'd into psql.c itself

From what I can tell, if USE_READLINE is true or false, psql works under
FreeBSD, without configure.  Now to test it *again* under sparc_solaris
with configure and see if it works...
1997-01-25 23:54:08 +00:00
Marc G. Fournier
aa46d53fa4 Okay, this should pretty much clean up the psql/readline/history mess.
Added a README.readline file until configure is integrated to *try* and
explain the way things stand.

Removed a stray configure .in file
1997-01-25 22:52:08 +00:00
Marc G. Fournier
374b2b0639 Why can't everyone be standard? :(
Add some code to make psql happy with a system where there is *no*
history code available, but there is readline code...
1997-01-25 22:16:43 +00:00
Marc G. Fournier
d049cec4f5 Modifications to handle the situation where readline.h exists, but
history.h doesn't...previously, it was assumed that both existed, or
didn't exist...but this assumption fails on the one sparc_solaris box
that I have access to, and could exist in other circumstances
1997-01-25 21:58:08 +00:00
Marc G. Fournier
f389e9dfc2 Change how readline support is included in psql.c ...
See message to hackers@ mailing list concerning this...
1997-01-25 03:51:59 +00:00
Marc G. Fournier
cb31156b86 Have Makefile autoconf'd according to whether the system has
readline and associated libraries...
1997-01-24 02:35:27 +00:00
Bruce Momjian
febfe447a7 Oops, introduced a bug in EOF handling. Fix it. 1997-01-13 02:35:32 +00:00
Bruce Momjian
cac3463649 No EOF from psql when quiet mode. 1997-01-13 02:03:31 +00:00
Bruce Momjian
ce02ccf43d I've noticed that \i filename in 6.0beta prints the input file double-spaced.
Here is a trivial patch to get back the 1.09 behavior; it just removes trailing
newlines before printing the line out with a newline rather than after...


Thomas Lockhart
1997-01-10 20:52:32 +00:00
Marc G. Fournier
ea7a26c84b Fixes:
This corrects the newline handling when using the readline library.

Submitted by: "Martin J. Laubach" <mjl@wwx.vip.at>
1997-01-05 23:46:17 +00:00
Bruce Momjian
24632b0ee0 fix for previous fix 1997-01-02 07:07:32 +00:00
Bruce Momjian
6e2341a48e psql paren. with \r fix. 1997-01-02 06:45:25 +00:00
Bryan Henderson
9b94bcea21 Put $(CURSES_LIB) in Makefile.global to replace similar thing in psql/Makefile. 1996-12-30 23:19:48 +00:00
Bruce Momjian
765dd2a4c0 explain change 1996-12-29 19:31:16 +00:00
Bruce Momjian
2d291ab093 Changed EXPLAIN option names. 1996-12-29 00:53:59 +00:00
Bruce Momjian
cb6cb7745d Here's the final set of patches to 6.0 (sup'd on 27/12/96) that allow a full
gmake of the code without interruption.

There's also some tidy-up of the MAXPATHLEN stuff based on the assumption that
all supported platforms have MAXPATHLEN defined in <sys/param.h>.

(The only unknowns for the above are AIX and IRIX5.)
1996-12-28 02:13:05 +00:00
Bruce Momjian
e8f43854ac pq/signal() portability patch. Also psql copy prompt fix. 1996-12-26 22:08:34 +00:00
Bryan Henderson
7f00f11c01 Fix syntax of \copy in \? display. 1996-12-26 20:56:40 +00:00
Bruce Momjian
b1765f4637 Note the => changes to == after a connect and stays that way on subsequent
database changes.

To fix, apply the following patch:-

Keith Parks.
1996-12-26 17:52:46 +00:00
Vadim B. Mikheev
cbb131570e if (settings->opt.fieldSep);
^ - deleted
                free(settings->opt.fieldSep);
1996-12-14 08:20:18 +00:00
Bruce Momjian
1b929d1749 Postgres95 to PostgreSQL. 1996-12-11 22:58:16 +00:00
Bryan Henderson
9005a38bdb Change portname "sparc" to "sunos4" and change some portname dependencies to
feature dependencies.  Thanks Kurt J. Lidl.
1996-12-04 03:06:33 +00:00
Bruce Momjian
7980b8a5cc Fix for inclusion of new prompt output. 1996-12-01 20:28:39 +00:00
Bruce Momjian
440279e803 Add indicator for in quote or in query to prompt. 1996-11-30 03:41:20 +00:00
Bryan Henderson
93f722536f Whoops, redo Ultrix patch so the other ports still compile. 1996-11-26 07:39:11 +00:00
Bryan Henderson
46d58fba33 Make it compile on Ultrix. Thanks Erik Bertelson. 1996-11-26 03:20:35 +00:00
Bryan Henderson
092c7a6be5 Typecasts, etc. to make compile work on AIX. Thanks Darren King.. 1996-11-24 04:44:24 +00:00
Bruce Momjian
eda3771290 Fix for \g strdup error. 1996-11-22 06:45:14 +00:00
Bryan Henderson
25fe3c7098 Include ctype.h to fix Kurt Lidl's compile problem. 1996-11-22 04:43:48 +00:00
Bruce Momjian
6399c74f17 Fix \g filename. Free allocated memory and don't use memory that has
been freed.
1996-11-20 22:34:36 +00:00
Bruce Momjian
5dd3c5620c Added documentation on new unique index capability. 1996-11-16 05:45:56 +00:00
Bruce Momjian
0365c51e30 Overhaul MainLoop input processing for quotes, comments, backslashes. 1996-11-14 16:08:05 +00:00
Bryan Henderson
b20766ccc4 Eliminate MKDIR, srcdir, objdir. Centralize setting of LIBPQDIR. 1996-11-13 10:36:36 +00:00
Bryan Henderson
bbe89089c8 Add dependency for install. 1996-11-12 06:11:52 +00:00
Marc G. Fournier
64f80c76d8 fix 'conflicting types' errors 1996-11-11 14:55:49 +00:00
Bryan Henderson
6f708e42d1 Makefile simplification: the "bin" chapter 1996-11-11 13:41:36 +00:00
Marc G. Fournier
2bdded3540 Various cleanups from D'Arcy 1996-11-11 12:14:45 +00:00
Bruce Momjian
42a344683a Remove warnings when readline is not used. 1996-11-11 05:55:33 +00:00
Bruce Momjian
aaeef4d17d All external function definitions now have prototypes that are checked. 1996-11-10 03:06:38 +00:00
Bruce Momjian
a0990e1884 Makefile cleanup after reorganization 1996-11-09 06:24:51 +00:00
Bruce Momjian
c9c0e111b8 More compile cleanups 1996-11-08 20:46:33 +00:00
Bruce Momjian
4b2b8592a0 Compile and warning cleanup 1996-11-08 06:02:30 +00:00
Bryan Henderson
7870c5a0d3 Add frontend \copy command. 1996-11-04 09:17:55 +00:00
Bryan Henderson
31e8156fad Continuation of make file simplification; handle libpq.a dependancy. 1996-11-02 09:53:15 +00:00
Bruce Momjian
3a4c2888a1 Removal of bsdi_2_1 port. 1996-11-01 01:47:23 +00:00
Bruce Momjian
1a865b8338 Change display of char(5) to (bp)char 5 so psql \d can
distinguish between char and char(1).
1996-10-14 00:33:47 +00:00
Bruce Momjian
9b1e61b7e9 Changed psql \h command to print commands in three columns.
No more scrolling off the screen.
1996-10-09 00:15:44 +00:00
Bruce Momjian
3a56b21832 Update help for alter table. remove EXTEND function. 1996-10-07 02:32:39 +00:00
Bruce Momjian
4bec96f16f Brought psql help up to date with syntax and manual. 1996-10-03 15:46:31 +00:00
Bruce Momjian
75e2cbcec3 New vacuum option. 1996-10-03 04:20:41 +00:00
Marc G. Fournier
f589ca6800 The following diffs remove the various definitions of dupstr() and replace
all the calls with strdup.

Submitted by: darcy@druid.druid.com (D'Arcy J.M. Cain)
1996-09-16 06:06:17 +00:00
Marc G. Fournier
208a30f23d The patch does several things:
It adds a WITH OIDS option to the copy command, which allows
dumping and loading of oids.

        If a copy command tried to load in an oid that is greater than
its current system max oid, the system max oid is incremented.  No
checking is done to see if other backends are running and have cached
oids.

        pg_dump as its first step when using the -o (oid) option, will
copy in a dummy row to set the system max oid value so as rows are
loaded in, they are certain to be lower than the system oid.

        pg_dump now creates indexes at the end to speed loading


Submitted by:  Bruce Momjian <maillist@candle.pha.pa.us>
1996-08-24 20:49:41 +00:00
Marc G. Fournier
2a23229cb3 BSD$$_derived needs -ltermcap for psql 1996-08-21 04:06:01 +00:00
Julian Assange
99dc4e3b43 command line flag for expanded display '-x' had logic reversed 1996-08-21 00:22:41 +00:00
Marc G. Fournier
1bdbf4092a Bring in changes to READLINE/HISTORY defines 1996-08-20 05:04:13 +00:00
Marc G. Fournier
476ef10913 This patch can be installed as part of 1.02.1 so people can properly
pg_dump and load to 2.0.  I haven't gotten any feedback on whether
people want it, so I am submitting it for others to decide.  I would
recommend an install in 1.02.1.

I had said that the 2.0 pg_dump could dump a 1.02.1 database, but I was
wrong.  The copy is actually performed by the backend, and the 2.0
database will not be able to read 1.02.1 databases because of the new
system columns.

This patch does several things.  It copies nulls out as \N, so they can
be distinguished from '' strings.  It fixes a problem where backslashes
in the input stream were not output as double-backslashes.  Without this
patch, backslashes copied out were deleted upon input, or interpreted as
special characters.  Third, input is now terminated by backslash-period.
This can not be part of a normal input stream.

I tested this by creating a database with all sorts of nulls, backslash,
and period fields and dumped the database and reloaded into a new
database and compared them.

Submitted by: Bruce
1996-08-14 05:44:25 +00:00
Marc G. Fournier
011ee13131 |
|We're all too familiar with psql's "no response from backend" message.
|Users can't tell what this means, and psql continues prompting for
|commands after it even though the backend is dead and no commands can
|succeed.  It eventually dies on a signal when the dead socket fills
|up.  I extended the message to offer a better explanation and made
|psql exit when it finds the backend is dead.
|
|I also added a short message and newline when the user does a ctl-D so
|it doesn't mess up the terminal display.
|
|

Submitted by: Bryan Henderson <bryanh@giraffe.netgate.net>
1996-08-14 04:56:55 +00:00
Marc G. Fournier
1508feb283 Another small patch fix...
Submitted by: Bruce Momjian <maillist@candle.pha.pa.us>
1996-08-10 05:02:53 +00:00
Julian Assange
dfca092633 applied kurt's patch to fix unlikely, but potential, string underflow
problem in psql
1996-08-06 20:23:14 +00:00
Julian Assange
7ef04b25cc added patch from kurt that fixes memory leak (didn't free line buffer
for slash commands)
1996-08-06 00:40:12 +00:00
Marc G. Fournier
4477b6f6c2 Fixes:
updates the psql.1 manual page for \ options
        add row count and ties it to the header option
        updated manual pages and comment for above change
        got \? to display in one screen-full (almost, \? scrolls off top)
        moved \r to \E, and \z to \r (for historical reasons with monitor)
        small code alignment cleanup

Submitted by: Bruce Momjian <maillist@candle.pha.pa.us>
1996-07-31 02:11:23 +00:00
Marc G. Fournier
e5e12f6405 More cleanups by "Kurt J. Lidl" <lidl@va.pubnix.com> 1996-07-30 07:47:58 +00:00
Marc G. Fournier
be19feb14a The decode function in psql.c doesn't return anything, so its
declaration is incorrect.

-Kurt
1996-07-29 20:58:42 +00:00
Marc G. Fournier
7450ea6dfb cosmetic changes: char* x changed to char *x
submitted by: bruce
1996-07-28 07:08:15 +00:00
Marc G. Fournier
0e887c541e reversed bruces patch to getopt() loop about optarg
submitted by: bruce
1996-07-28 06:59:43 +00:00
Julian Assange
ed3240d093 bugfix: if NOREADLINE was not defined and input was not from a tty, then
the getopt() was not executed.
1996-07-28 06:48:42 +00:00
Marc G. Fournier
64b130a8e7 Various fixes required for psql
Submitted by: Bruce
1996-07-27 04:38:22 +00:00
Marc G. Fournier
edb519b14c and now, the long awaited PAGER patches from Bruce...
Submitted by: Bruce Momjian <maillist@candle.pha.pa.us>
1996-07-27 02:55:23 +00:00
Marc G. Fournier
6e077b0ae5 Further modifications for fixing createuser bug...
Submitted by: Rick Weldon <rick@wisetech.com>
1996-07-27 02:40:45 +00:00
Marc G. Fournier
aac483943d fixed usuage of -ltermcap for psql
submitted by: Bruce Momjian <maillist@candle.pha.pa.us>
1996-07-25 20:01:51 +00:00
Julian Assange
76bc8cb97f Large re-write/enhancement. In pg-101 Jolly only included a smaller part
of my (proff) patch. This is the rest of it, with a few, mainly aesthetic
changes. I've removed a lot of redundency from the original code,
added support for the new PQprint() routines in libpq, expanded tables,
and a few generally nifty ways of massaging data in and out of the
backend. Still needs some good stress testing.
1996-07-25 06:46:35 +00:00
Marc G. Fournier
be5bfd54f2 Put in a new FAQ
Merged in Dr. George's src/bin tree (possibly broke monitor/psql in process)
1996-07-23 03:03:43 +00:00
Marc G. Fournier
df43edcf45 Fix for:
>
> We did some testing and found that if we name the table 'Inv' with
> anything appended to it, the table does not appear in the '\d' table list.
> It appears to be the capital I as a table named 'invItemsL' is created
> and displayed properly.
>


- submitted by: Jason Wright <jason@shiloh.vnet.net>
1996-07-20 08:44:45 +00:00
Marc G. Fournier
5feb9dc9df - extend conditional for use of -ltermcap in bsdi/bsdi_2_1 compiles
- submitted by: Bruce Momjian (root@candle.pha.pa.us)
1996-07-20 07:40:03 +00:00
Marc G. Fournier
df1a06ed37 - added -ltermcap to LIBS in bin/psql/Makefile
- submitted by: Bruce Momjian (root@candle.pha.pa.us)
1996-07-19 06:53:40 +00:00
Marc G. Fournier
72f76d38eb libpq and psql.c have been modified to do various things they didn't do
before (plus some optimisations/bug fixes et al).  I've included a small
demo transcript below. Note that all of of the display
functionality/intelligence you see here, can be had merely by calling
the new LIBPQ PQprint() routine with the appropriate arguments/options,
including the HTML3 output guff.


submitted by:  Julian Assange <proff@suburbia.net>
1996-07-18 05:48:57 +00:00
Marc G. Fournier
bf2abf0dae fix: clean up formatting of \d tablename in psql
submitted by: Bruce Momjian (root@candle.pha.pa.us)
1996-07-16 06:58:12 +00:00
Marc G. Fournier
169a5b7670 applied fixes for psql
- \p produces traditional results
	- \r added

submitted by: Bruce Momjian (root@candle.pha.pa.us)
1996-07-16 06:37:28 +00:00
Marc G. Fournier
d31084e9d1 Postgres95 1.01 Distribution - Virgin Sources 1996-07-09 06:22:35 +00:00