Commit Graph

16992 Commits

Author SHA1 Message Date
Tom Lane 0cb117eb33 Repair some problems in bgwriter start/stop logic. In particular, don't
allow the bgwriter to start before the startup subprocess has finished
... it tends to crash otherwise.  (The same problem may have existed for
the checkpointer, I'm not entirely sure.)  Remove some code that was
redundant because the bgwriter is handled as a member of the backend list.
2004-02-11 22:25:02 +00:00
Bruce Momjian 3b6bf0c07d Add:
> 	o Disallow dropping of an inherited constraint
2004-02-11 22:04:35 +00:00
Bruce Momjian c6f0559371 Check and set thread-safe functions separately, rather than as a single
variable.

Remove thread locking for non-thread-safe functions, instead throw a
compile error.

Platforms will have to re-run tools/thread to record their thread
safety.
2004-02-11 21:44:06 +00:00
Bruce Momjian 15b330b648 Properly set NEED_REENTRANT_FUNCS for threaded libpq/ecpg.
Without this patch, no thread locking or *_r functions were being used.
2004-02-11 17:29:01 +00:00
Bruce Momjian ac4ad7bf2c Does not apply anymore:
< * Make blind writes go through the file descriptor cache
2004-02-11 17:04:04 +00:00
Tom Lane 94a67cce7e No need to link libpq into these programs ... 2004-02-10 23:24:13 +00:00
Neil Conway e29d8f3c34 SGML markup improvements. 2004-02-10 20:51:39 +00:00
Tom Lane 127ea18f48 Add configure support for determining UINT64_FORMAT, the appropriate
snprintf format for uint64 items.
2004-02-10 19:55:45 +00:00
Bruce Momjian feed7cf1c1 More clearly describe why PQinSend returns false for non-threaded libpq. 2004-02-10 15:21:24 +00:00
Bruce Momjian fd44e2fb14 Add URL for most current version. 2004-02-10 15:16:36 +00:00
Tom Lane 0eb6951915 Repair missing inclusions of -lintl for shared libraries. 2004-02-10 07:26:25 +00:00
Tom Lane d1587f1f5b Looks like we need <unistd.h> for select() on Darwin. 2004-02-10 04:23:03 +00:00
Tom Lane 58f337a343 Centralize implementation of delay code by creating a pg_usleep()
subroutine in src/port/pgsleep.c.  Remove platform dependencies from
miscadmin.h and put them in port.h where they belong.  Extend recent
vacuum cost-based-delay patch to apply to VACUUM FULL, ANALYZE, and
non-btree index vacuuming.

By the way, where is the documentation for the cost-based-delay patch?
2004-02-10 03:42:45 +00:00
Tom Lane 87bd956385 Restructure smgr API as per recent proposal. smgr no longer depends on
the relcache, and so the notion of 'blind write' is gone.  This should
improve efficiency in bgwriter and background checkpoint processes.
Internal restructuring in md.c to remove the not-very-useful array of
MdfdVec objects --- might as well just use pointers.
Also remove the long-dead 'persistent main memory' storage manager (mm.c),
since it seems quite unlikely to ever get resurrected.
2004-02-10 01:55:27 +00:00
Neil Conway f06e79525a Win32 signals cleanup. Patch by Magnus Hagander, with input from Claudio
Natoli and Bruce Momjian (and some cosmetic fixes from Neil Conway).
Changes:

    - remove duplicate signal definitions from pqsignal.h

    - replace pqkill() with kill() and redefine kill() in Win32

    - use ereport() in place of fprintf() in some error handling in
      pqsignal.c

    - export pg_queue_signal() and make use of it where necessary

    - add a console control handler for Ctrl-C and similar handling
      on Win32

    - do WaitForSingleObjectEx() in CHECK_FOR_INTERRUPTS() on Win32;
      query cancelling should now work on Win32

    - various other fixes and cleanups
2004-02-08 22:28:57 +00:00
Bruce Momjian 04e82e5008 Add mention of the developer's FAQ. 2004-02-08 03:16:31 +00:00
Bruce Momjian 9534fd73d8 Add mention of PostgreSQL as a community project. 2004-02-08 03:09:12 +00:00
Bruce Momjian 9f361350d7 Add PITR web page:
< * Point-in-time data recovery using backup and write-ahead log
< * Create native Win32 port, http://momjian.postgresql.org/main/writings/pgsql/win32.html
> * Point-in-time data recovery using backup and write-ahead log,
>   http://momjian.postgresql.org/main/writings/pgsql/project/pitr.html
> * Create native Win32 port, http://momjian.postgresql.org/main/writings/pgsql/project/win32.html
2004-02-08 01:17:09 +00:00
Tom Lane 2d330199c4 Add missing dependency, per Wade Klaver. 2004-02-07 07:20:12 +00:00
Jan Wieck f425b605f4 Cost based vacuum delay feature.
Jan
2004-02-06 19:36:18 +00:00
Joe Conway 687d7cf355 Documentation for generate_series() functions committed a few days ago. 2004-02-05 22:54:36 +00:00
Jan Wieck 8d09e25693 Backing out the background writer sync() option.
Jan
2004-02-04 01:24:53 +00:00
Neil Conway e66fcce672 Use memmove() rather than memcpy() in set_var_from_var(). If this function
is asked to assign a variable to itself, it will result in doing a
memcpy() on an entirely-overlapping memory range, which results in
undefined behavior according to ANSI C. That said, it is unlikely to
actually do anything bad on any sane libc, but this keeps valgrind quiet.
2004-02-04 01:11:47 +00:00
Tom Lane d3917186b2 pwd 2004-02-03 17:52:55 +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 39d715bee6 Add:
> * Make pg_restore continue after errors, so it acts more like pg_dump scripts
2004-02-03 16:53:56 +00:00
Joe Conway 12661642c8 Add function (actually an int4 and an int8 version) that generates
a series of numbers, optionally using an explicit step size other
than the default value (one). Use function in the information_schema
to replace hard-wired knowledge of INDEX_MAX_KEYS. initdb forced due
to pg_proc change. Documentation update still needed -- will be
committed separately.
2004-02-03 08:29:57 +00:00
Bruce Momjian 9dac52649d Win32 adjustments for dirmod and configure/configure.in. 2004-02-02 22:20:33 +00:00
Tom Lane 67aa1962b7 autoconf run. 2004-02-02 18:35:45 +00:00
Bruce Momjian 011ad7efec Set only LC_ALL for sort in tags creation. 2004-02-02 17:29:32 +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
Neil Conway 9e218af7ed Fix a read of uninitialized memory in next_token() of hba.c, spotted via
valgrind: a buffer passed to strncmp() had to be NUL-terminated. Original
report and patch from Dennis Bjorkland, some cleanup by Andrew Dunstan,
and finally some editorializing from Neil Conway.
2004-02-02 16:58:30 +00:00
Bruce Momjian 4c29e21578 Adjustments for Win32-specific rename code, and add include file. 2004-02-02 16:37:46 +00:00
Bruce Momjian 98a5284170 Move win32 changes from configure to configure.in, per Tom, autoconf
run.
2004-02-02 16:00:49 +00:00
Tom Lane 6f295328e5 Do not let external specification of CFLAGS stop us from adding
-fno-strict-aliasing.
2004-02-02 04:07:18 +00:00
Tom Lane 9fe097577e Avoid generating invalid character encoding sequences in make_greater_string.
Not sure how this mistake evaded detection for so long.
2004-02-02 03:07:08 +00:00
Neil Conway b8362d465d Use Tcl_PutEnv() in place of putenv() in libpgtcl, as the latter can
apparently corrupt the Tcl runtime. Per suggestion from Michael
Brusser <michael@synchronicity.com>
2004-02-02 00:35:08 +00:00
Bruce Momjian d9d2ca8e8e Adjust rename on Win32 to only link to temp name while holding lock,
then release locks and loop over renaming to active file name.
2004-02-02 00:17:23 +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
Bruce Momjian 10bb17e334 Set locale to C before doing sort in make_ctags. 2004-02-01 23:11:33 +00:00
Tom Lane e1826d037a Update char_length() example for new semantics. 2004-02-01 06:55:07 +00:00
Tom Lane f27976c85b Make length() disregard trailing spaces in char(n) values, per discussion
some time ago and recent patch from Gavin Sherry.  Update documentation
to point out that trailing spaces are insignificant in char(n).
2004-02-01 06:27:48 +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 7b2cf1713d Micro-opt: replace calls like
appendStringInfo(buf, "%s", str);
with
    appendStringInfoString(buf, str);
as the latter form is slightly faster.
2004-01-31 05:09:41 +00:00
Tom Lane d4fd7d85f3 Fix text_position to not scan past end of source string in multibyte
case, per report from Korea PostgreSQL Users' Group.  Also do some
cosmetic cleanup in nearby code.
2004-01-31 00:45:21 +00:00
Tom Lane a3c969d522 Fix debug elog message to agree with name of its routine. 2004-01-30 22:44:21 +00:00
Bruce Momjian 5ee2ae2049 Remove sleep() and use single PG_SLEEP call for Win32 signal handling
and consistency.

Change PG_USLEEP to use SleepEx() for signal interuptability.
2004-01-30 15:57:04 +00:00
Bruce Momjian 777babeced Add:
<
> * Allow libpq to return information about prepared queries
2004-01-30 11:11:07 +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