Commit Graph

1884 Commits

Author SHA1 Message Date
Peter Eisentraut 3ab5aa02f8 Build scanner output when making a distribution. 2004-03-09 19:47:05 +00:00
Bruce Momjian f0f4e82f45 The win32 port backend will require the functionality provided by
canonicalize_path. Patch moves it from initdb.c to port/path.c.

Claudio Natoli
2004-03-09 04:49:02 +00:00
Bruce Momjian d91acf8401 Win32:
* Mostly, casting etc to remove compilation warnings in win32 only code.

* main.c: set _IONBF to stdout/stderr under win32 (under win32, _IOLBF
defaults to full buffering)

* pg_resetxlog/Makefile: ensures dirmod.o gets cleaned (got bitten by
this when, after "make clean"ing, switching compilation between Ming +
Cygwin)

Claudio Natoli
2004-03-05 01:11:04 +00:00
Tom Lane 9e733eab69 Modify pg_dump so that the preferred dump order is by name within
object types, rather than by OID.  This should help ensure consistent
dump output from databases that are logically the same but have different
histories, per recent discussion about 'diffing' databases.  The patch
is bulky because of renaming of fields, but not very complicated.
Also, do some tweaking to cause BLOB restoration to be done in a better
order, and clean up pg_restore's textual output to exactly match pg_dump.
2004-03-03 21:28:55 +00:00
Tom Lane 0c6e97db47 Always schema-qualify the name of a function referenced in CREATE CAST.
The former coding failed if the cast function was not in the pg_catalog
schema.  How'd this escape detection?
2004-03-02 21:14:44 +00:00
Bruce Momjian b57cbb4ef0 Add missing sprompt.obj psql usage for Borland compiler, per private
report from krizsan.

Backpatch to 7.4.X.
2004-03-02 15:17:16 +00:00
Dennis Bjorklund 303f4649a2 Translation updates 2004-02-28 17:17:48 +00:00
Dennis Bjorklund b8d518c17d Translation update 2004-02-28 11:05:12 +00:00
Dennis Bjorklund 90aac56562 Translation updates 2004-02-28 11:00:06 +00:00
Dennis Bjorklund ef6e54d78b Translation updates 2004-02-28 10:52:06 +00:00
Tom Lane 58e705320e Implement dollar-quoting in the backend lexer and psql. Documentation
is still lacking, as is support in plpgsql and other places, but this is
the basic feature.  Patch by Andrew Dunstan, some tweaking by Tom Lane.
Also, enable %option nodefault in these two lexers, and patch some gaps
revealed thereby.
2004-02-24 21:45:18 +00:00
Tom Lane 92bec9a0bc Cause pg_dump to emit a 'SET client_encoding' command at the start of
any restore operation, thereby ensuring that dumped data is interpreted
the same way it was dumped even if the target database has a different
encoding.  Per suggestions from Pavel Stehule and others.  Also,
simplify scheme for handling check_function_bodies ... we may as well
just set that at the head of the script.
2004-02-24 03:35:19 +00:00
Tom Lane 4b39aa3a7c Re-implement psql's input scanning to use a flex-generated lexer, as per
recent discussion.  The lexer is used for both SQL command text and
backslash commands.  The purpose of this change is to make it easier to
track the behavior of the backend's SQL lexer --- essentially identical
flex rules are now used by psql.  Also, this cleans up a lot of very
squirrelly code in mainloop.c and command.c.  The flex code is somewhat
bulkier than the removed code, but should be lots easier to maintain.
2004-02-19 19:40:09 +00:00
Bruce Momjian 1f17316a3d Here is an updated version of the win32 readdir patch.
1) Now puts in exactly the same change as the current-cvs mingw code
does. (see
http://cvs.sourceforge.net/viewcvs.py/mingw/runtime/mingwex/dirent.c?r1=
1.3&r2=1.4, second part of the patch).

2) Updates both xlog.c and slru.c in backend/access/transam/

3) Also updates pg_resetxlog, which also uses readdir() and checks the
errno value after the loop.

Magnus Hagander
2004-02-17 03:45:17 +00:00
Tom Lane 69946411d3 Add hooks for type-specific calculation of ANALYZE statistics. Idea and
coding by Mark Cave-Ayland, some kibitzing by Tom Lane.  initdb forced
due to new column in pg_type.
2004-02-12 23:41:04 +00:00
Bruce Momjian 4a1c29f87e Improve \? wording, remove 'internal'. 2004-02-12 19:58:16 +00:00
Peter Eisentraut c60128e54b Translation updates 2004-02-12 19:19:32 +00:00
Tom Lane c3c09be34b Commit the reasonably uncontroversial parts of J.R. Nield's PITR patch, to
wit: Add a header record to each WAL segment file so that it can be reliably
identified.  Avoid splitting WAL records across segment files (this is not
strictly necessary, but makes it simpler to incorporate the header records).
Make WAL entries for file creation, deletion, and truncation (as foreseen but
never implemented by Vadim).  Also, add support for making XLOG_SEG_SIZE
configurable at compile time, similarly to BLCKSZ.  Fix a couple bugs I
introduced in WAL replay during recent smgr API changes.  initdb is forced
due to changes in pg_control contents.
2004-02-11 22:55:26 +00:00
Tom Lane 94a67cce7e No need to link libpq into these programs ... 2004-02-10 23:24:13 +00:00
Tom Lane 2d330199c4 Add missing dependency, per Wade Klaver. 2004-02-07 07:20:12 +00:00
Tom Lane 391c3811a2 Rename SortMem and VacuumMem to work_mem and maintenance_work_mem.
Make btree index creation and initial validation of foreign-key constraints
use maintenance_work_mem rather than work_mem as their memory limit.
Add some code to guc.c to allow these variables to be referenced by their
old names in SHOW and SET commands, for backwards compatibility.
2004-02-03 17:34:04 +00:00
Bruce Momjian bd2a8078d3 > src/backend/commands/user.c file has some parse error at repalloc(),
palloc()$

Fixed.  Thanks.

> src/backend/postmaster/pgstat.c miss
> #include "tcop/tcopprot.h" line.

Fixed.

> src/utils/dllinit.c wrong include header line at MinGW.
> #include <cygwin/version.h> must be not included

Fixed.

> by the way,
> I can't compile eccp because I used lower version bison.

> and bin/pg_resetxlog too. in this case I can't find what's wrong.

Fixed.
2004-02-02 17:21:08 +00:00
Bruce Momjian e5e5a323ca Briefly,
* configure + Makefile changes
 * shared memory attaching in EXEC_BACKEND case (+ minor fix for apparent
cygwin bug under cygwin/EXEC_BACKEND case only)
 * PATH env var separator differences
 * missing win32 rand functions added
 * placeholder replacements for sync etc under port.h


To those who are really interested, and there are a few of you: the attached
patch + file will allow the source base to be compiled (and, for some
definition, "run") under MingW, with the following caveats (I wanted to
first properly fix all but the last of these, but y'all won't quit asking
for a patch :-):

        * child death: SIGCHLD not yet sent, so as a minimum, you'll need to
put in some sort of delay after StartupDatabase, and handle setting
StartupPID to 0 etc (ie. the stuff the reaper() signal function is supposed
to do)

        * dirmod.c: comment out the elog calls

        * dfmgr.c: some hackage required to substitute_libpath_macro

        * slru/xact.c: comment out the errno checking after the readdir
(fixed by next version of MingW)

Again, this is only if you *really* want to see postgres compile and start,
and is a nice leg-up for working on the other Win32 TODO list items. Just
don't expect too much else from it at this point...


Claudio Natoli
2004-02-02 00:11:31 +00:00
Neil Conway 08b0e60563 Fix a probably-harmless read of uninitialized memory in mkdir_p(), to
silence a valgrind warning.
2004-01-31 22:10:00 +00:00
Neil Conway 25b8b69eec Remove a superfluous semi-colon. 2004-01-31 21:18:00 +00:00
Neil Conway 940b87e722 Fix (debatable) spelling mistake in a comment: 'concatenate' is the usual
term, not 'catenate'.
2004-01-29 12:34:59 +00:00
Tom Lane 18f9d7c74e Make USING and WITH optional to bring the syntax of \copy into exact
agreement with what the backend grammar actually accepts (which is a
bit looser than what its documentation claims).  Per report from Bill
Moran, though I did not use his patch since it removed all the
undocumented flexibility that the code historically had and the backend
still has.
2004-01-28 22:14:04 +00:00
Tom Lane c77f363384 Ensure that close() and fclose() are checked for errors, at least in
cases involving writes.  Per recent discussion about the possibility
of close-time failures on some filesystems.  There is a TODO item for
this, too.
2004-01-26 22:35:32 +00:00
Neil Conway e10bb0518a More fallout from the recent psql patch: rename xmalloc and friends to
pg_malloc, to avoid linker failures on same platforms.
2004-01-25 03:07:22 +00:00
Neil Conway 6f046b9d9f Revert the change to print.c, as this breaks src/bin/scripts. The proper
way to fix this is probably implementing safe memory handling functions
once in a static lib and then using that in the various client apps,
but for the moment I've just reverted the change to un-break the tree.
2004-01-24 20:43:26 +00:00
Neil Conway 610d33c194 This patch makes some of the memory manipulation performed by psql a
little more sane. Some parts of the code was using a static function
xmalloc() that did safe memory allocation (where "safe" means "bail
out on OOM"), but most of it was just invoking calloc() or malloc()
directly. Now almost everything invokes xmalloc() or xcalloc().
2004-01-24 19:38:49 +00:00
Peter Eisentraut cd1702dc3a Translation update 2004-01-22 21:13:32 +00:00
Tom Lane 5ad7d65da4 Fix incorrect dumping of database LOCATION from 7.0.* servers.
Per report from Mattias Kregert.
2004-01-22 19:09:32 +00:00
Tom Lane 4d2e94ef04 Ensure fflush(stdout) happens in all cases, per gripe from Jon Sablatnig. 2004-01-21 22:05:44 +00:00
Tom Lane 04cc4e18dd Implement '\copy from -' to support reading copy data from the same
source the \copy came from.  Also, fix prompting logic so that initial
and per-line prompts appear for all cases of reading from an interactive
terminal.  Patch by Mark Feit, with some kibitzing by Tom Lane.
2004-01-20 23:48:56 +00:00
Tom Lane 18f7a8e262 This is a patch to support readline prompts which contain non-printing
characters, as for fancy colorized prompts.  This was nearly a direct
lift from bash-2.05b's lib/readline/display.c, per guidance from Chet Ramey.

Reece Hart
2004-01-20 19:49:34 +00:00
Peter Eisentraut 90d14654d6 Translation update 2004-01-18 14:54:24 +00:00
Dennis Bjorklund 01d320d421 Translation updates 2004-01-14 12:14:01 +00:00
Dennis Bjorklund d233e5cecc Mark string for translation. 2004-01-11 19:10:49 +00:00
Dennis Bjorklund e6cd5d586e Translation updates 2004-01-11 06:55:10 +00:00
Dennis Bjorklund 28ee773acb Translation updates 2004-01-11 06:50:27 +00:00
Peter Eisentraut cf4c925dd4 Translation updates 2004-01-10 22:18:28 +00:00
Dennis Bjorklund 15a5440dc5 Translation updates 2004-01-10 09:09:40 +00:00
Bruce Momjian f9b29b8023 Make non-wait pg_ctl start/stop message more accurate. 2004-01-10 02:55:14 +00:00
Bruce Momjian a620a760ed Allow BEGIN WORK to specify transaction isolation level, like START
TRANSACTION.
2004-01-10 02:21:08 +00:00
Bruce Momjian 5c0d0a2399 Have psql help show \w parameter as requied. 2004-01-09 21:15:51 +00:00
Bruce Momjian 55a92063a7 Allow psql to handle tilde user expansion for file names.
Zach Irmen
2004-01-09 21:12:20 +00:00
Dennis Bjorklund a76c86c7c1 Translation updates 2004-01-09 20:36:00 +00:00
Tom Lane ccdeed7011 Fix incorrect SQL syntax emitted when -E is given without -P.
Report and fix from Martin Pitt.
2004-01-09 00:15:11 +00:00
Dennis Bjorklund 002cafe7a4 Translation updates 2004-01-08 10:47:40 +00:00
Dennis Bjorklund b68021c240 Translation updates 2004-01-08 08:36:50 +00:00
Dennis Bjorklund 504983859d Translation updates 2004-01-07 21:51:13 +00:00
Tom Lane 6400d69d87 pg_dump support for function parameter names. 2004-01-07 00:44:21 +00:00
Peter Eisentraut 35b1fe122c Translation updates 2004-01-05 19:15:48 +00:00
Tom Lane 9a4ef0c562 Fix ReadOffset() to work correctly when off_t is wider than int. 2004-01-04 04:02:15 +00:00
Tom Lane b3c3b5464d Do an explicit fflush after writing a progress message with puts.
This ensures stdout is kept in sync with messages on stderr.
Per report from Olaf Ferger.
2004-01-01 19:27:15 +00:00
Bruce Momjian a922472a2a Supress non-temp schemas from psql \dn display. 2003-12-23 23:13:14 +00:00
Tom Lane cd2ad9b944 Fix a number of places where reconfiguring with a different installation
prefix would fail, because the new path did not get propagated to where
it needed to be.  Note this would fail even with --enable-depend.
2003-12-23 21:56:21 +00:00
Tom Lane 358d032f98 Fix compile warning. 2003-12-23 21:50:38 +00:00
Peter Eisentraut f39748a70f Forbid REVOKE on untrusted languages, and don't dump privileges of
untrusted languages (in case they sneak in).
2003-12-19 14:21:56 +00:00
Peter Eisentraut 9a1cab4391 Add missing $(X). 2003-12-19 11:54:25 +00:00
Peter Eisentraut b40b3306fa Remove pg_id. 2003-12-17 18:44:09 +00:00
Peter Eisentraut 3a613816a0 New translation 2003-12-11 22:03:05 +00:00
Tom Lane 918b158743 Work around naming conflict between zlib and OpenSSL by tweaking inclusion
order.  Remove some unnecessary #includes (that duplicate c.h).
2003-12-08 16:39:05 +00:00
Tom Lane 649c1a11e6 One more pass at reducing the cost of pg_dump's new implementation:
reduce the number of times TopoSort() has to be executed by trying to
extract multiple dependency loops from each pass, instead of only one.
This saves about another factor of ten on the regression database.
This could be considered as another exercise in grokking Fred Brooks'
maxim: Representation *is* the essence of programming.
2003-12-07 05:44:50 +00:00
Tom Lane 7bb11a93e1 Speed up findObjectByCatalogId() to get rid of the other salient
bottleneck in the new pg_dump code.
2003-12-07 03:14:01 +00:00
Tom Lane 79273cc7d2 Replace not-very-bright implementation of topological sort with a better
one (use a priority heap to keep track of items ready to output, instead
of searching the input array each time).  This brings the runtime of
pg_dump back to about what it was in 7.4.
2003-12-06 22:55:11 +00:00
Tom Lane 005a1217fb Massive overhaul of pg_dump: make use of dependency information from
pg_depend to determine a safe dump order.  Defaults and check constraints
can be emitted either as part of a table or domain definition, or
separately if that's needed to break a dependency loop.  Lots of old
half-baked code for controlling dump order removed.
2003-12-06 03:00:16 +00:00
Peter Eisentraut 5bcdb4ccc1 Fix some small errors. 2003-12-02 10:24:37 +00:00
Bruce Momjian 2712ca771d Fix initdb use of mkdir_p().
Andrew Dunstan
2003-12-01 23:15:47 +00:00
Bruce Momjian 8c4af96fb0 This makes help like this:
\lo_export LOBOID FILE
   \lo_import FILE [COMMENT]
   \lo_list
   \lo_unlink LOBOID    large object operations

Instead of not saying anything about what arguments are required.

Christopher Kings-Lynne
2003-12-01 22:34:48 +00:00
Bruce Momjian 8bb60b6423 attached is a patch that adds display of the groups a user belongs to to
\du and a \dg command to psql. It's against 7.4beta5.

Markus Bertheau <twanger@bluetwanger.de>
2003-12-01 22:21:54 +00:00
Bruce Momjian 35ddc2edee This patch reduces some unsightly #ifdefs, and fixes two typos in
comments in the psql code. This doesn't make any functional change, so
feel free to save it for 7.5

Neil Conway
2003-12-01 22:14:40 +00:00
Bruce Momjian abd5d75c4c This patch finishes off the work that I did with making view
definitions use pretty printing.

It does:

* Pretty index predicates
* Pretty rule definitions
* Uppercases PRIMARY KEY and UNIQUE to be consistent with CHECK and
FOREIGN KEY
* View rules are improved to match table rules:


Christopher Kings-Lynne
2003-12-01 22:11:06 +00:00
Bruce Momjian 7ce9b7c0d8 This patch adds a new GUC var, "default_with_oids", which follows the
proposal for eventually deprecating OIDs on user tables that I posted
earlier to pgsql-hackers. pg_dump now always specifies WITH OIDS or
WITHOUT OIDS when dumping a table. The documentation has been updated.

Neil Conway
2003-12-01 22:08:02 +00:00
PostgreSQL Daemon 55b113257c make sure the $Id tags are converted to $PostgreSQL as well ... 2003-11-29 22:41:33 +00:00
PostgreSQL Daemon 969685ad44 $Header: -> $PostgreSQL Changes ... 2003-11-29 19:52:15 +00:00
Peter Eisentraut dc69cc1097 New translation 2003-11-25 19:19:21 +00:00
Peter Eisentraut c95f54c5e0 More adjustment of error messages 2003-11-25 19:18:26 +00:00
Tom Lane e91e640b80 Avoid using string literal with embedded newline. 2003-11-24 17:25:14 +00:00
Peter Eisentraut 040e1cef91 Make the messages and the options parsing a bit more standard. 2003-11-23 22:17:59 +00:00
Peter Eisentraut 4f581e0072 Add maintainer-clean target. 2003-11-23 21:42:13 +00:00
Peter Eisentraut e2d9066527 Add NLS support. 2003-11-23 21:41:30 +00:00
Tom Lane 42ce74bf17 COMMENT ON casts, conversions, languages, operator classes, and
large objects.  Dump all these in pg_dump; also add code to pg_dump
user-defined conversions.  Make psql's large object code rely on
the backend for inserting/deleting LOB comments, instead of trying to
hack pg_description directly.  Documentation and regression tests added.

Christopher Kings-Lynne, code reviewed by Tom
2003-11-21 22:32:49 +00:00
Bruce Momjian 25487b12d0 Add FreeBSD mention for initdb.c. 2003-11-17 20:35:28 +00:00
Peter Eisentraut 7397819f78 Translation updates 2003-11-14 23:59:12 +00:00
Tom Lane 5945283599 Try to improve error handling for failures of backend subprocess. 2003-11-14 18:32:34 +00:00
Tom Lane 81e51ddc14 Add fflush() before popen() calls; avoids any possible problem with
double or out-of-sequence output with child process.
2003-11-14 17:30:41 +00:00
Tom Lane 0104fc11b9 Add missing logic to handle fixing permissions on an already-existing
data directory.  Also fix handling of error conditions associated with
data directory checking step (can't use a boolean to distinguish four
possible result states...)
2003-11-14 17:19:35 +00:00
Peter Eisentraut 0a203594a9 Translation updates 2003-11-14 02:08:17 +00:00
Tom Lane 18f58a048e Preliminary code review for C version of initdb. Re-centralize handling
of option switches for backend, fix handling of COPY from data files so
that we won't have the newline-after-\. issue back again, add back some
comments and printouts lost from the shell script, etc.  Still needs work
for error handling; in particular the shell version worked much more
nicely for the case of a postgres executable that fails on invocation.
2003-11-13 23:46:31 +00:00
Tom Lane c7bfc7df0a Silly to copy sprompt.c from src/port when we're linking libpgport anyway. 2003-11-13 20:30:37 +00:00
Bruce Momjian 90823299ad pgindent new initdb.c from Tom. 2003-11-13 20:12:47 +00:00
Bruce Momjian ad89c2ae25 Add owner description to initdb C code.
Andrew Dunstan
2003-11-13 15:01:40 +00:00
Tom Lane 9a9890d842 Add fflush() calls so that I'm-about-to-do-this messages actually
come out before the action is done.
2003-11-13 01:36:00 +00:00
Tom Lane 88dd65ae9f Fix lack of optreset. 2003-11-13 01:09:24 +00:00
Tom Lane 27e8ef0535 AcceptResult() was missing a case for PGRES_EMPTY_QUERY --- probably
my fault.  Adding it fixes bogus message display when reading a block
comment at the end of a script file.
2003-11-12 22:53:16 +00:00
Bruce Momjian 1060c4c4c4 Move system_views.sql into backend/catalog, per Tom. 2003-11-11 01:58:23 +00:00
Bruce Momjian 0ca6939c10 Updated version of initdb with "rmdir/del" call on Win32.
Other cleanups as discussed.
2003-11-10 22:52:10 +00:00
Bruce Momjian 279598bb71 Add C version of initdb, from Andrew Dunstan.
This is his original version with a binary rmdir() we might need in the
future.

I will commit an update version with cleanups shortly.
2003-11-10 22:51:16 +00:00