OSDN Git Service
Peter Eisentraut [Fri, 21 Jul 2006 22:37:37 +0000 (22:37 +0000)]
For automatic dependency tracking, replace our sed hackery with the GCC-
-built-in mechanism through the -MP flag. Adjust the file extensions to
look more like Automake practice. This frees up the .d suffix for use by
DTrace.
Tom Lane [Fri, 21 Jul 2006 20:51:33 +0000 (20:51 +0000)]
Add the full set of comparison functions for type TID, including a btree
opclass. This is not so much because anyone's likely to create an index
on TID, as that sorting TIDs can be useful. Also added max and min
aggregates while at it, so that one can investigate the clusteredness of
a table with queries like SELECT min(ctid), max(ctid) FROM tab WHERE ...
Greg Stark and Tom Lane
Tom Lane [Fri, 21 Jul 2006 00:24:04 +0000 (00:24 +0000)]
Ah, I finally realize why Magnus wanted to add a --bindir option to
pg_regress: there's no other way to cope with testing a relocated
installation. Seems better to call it --psqldir though, since the
only thing we need to find in that case is psql. It'd be better if
we could use find_other_exec, but that's not happening unless we are
willing to install pg_regress alongside psql, which seems unlikely
to happen.
Bruce Momjian [Thu, 20 Jul 2006 18:00:03 +0000 (18:00 +0000)]
Update documentation on GRANT SCEMA USAGE, again.
Tom Lane [Thu, 20 Jul 2006 16:25:30 +0000 (16:25 +0000)]
As a stopgap to get the Windows buildfarm members running again, hot-wire
the check on diff's exit status to check for literally 0 or 1. Someone
should look into why WIFEXITED/WEXITSTATUS don't work for this, but I've
spent more than enough time on it already.
Peter Eisentraut [Thu, 20 Jul 2006 09:30:18 +0000 (09:30 +0000)]
Make pg_config location overridable for pgxs builds.
Tom Lane [Thu, 20 Jul 2006 03:30:58 +0000 (03:30 +0000)]
Print out diff status code when we think there's a hard failure.
May help in debugging behavior on Windows.
Tom Lane [Thu, 20 Jul 2006 02:15:17 +0000 (02:15 +0000)]
Suppress unused-variable compiler warning, per Andrew Dunstan.
Tom Lane [Thu, 20 Jul 2006 02:10:00 +0000 (02:10 +0000)]
Fix pg_regress.c to report tests in a parallel group when they finish,
not when they're started. This mimics a subtle point of the behavior
of the old shell script, and gives better feedback when watching the
tests.
Tom Lane [Thu, 20 Jul 2006 01:16:57 +0000 (01:16 +0000)]
Make pg_regress.c get paths from pg_config_paths.h, instead of -D
switches passed from the Makefile. This looks like it will fix
problem with virtual vs real paths under msys.
Tom Lane [Thu, 20 Jul 2006 00:46:42 +0000 (00:46 +0000)]
Don't try to truncate multixact SLRU files in checkpoints done during xlog
recovery. In the first place, it doesn't work because slru's
latest_page_number isn't set up yet (this is why we've been hearing reports
of strange "apparent wraparound" log messages during crash recovery, but
only from people who'd managed to advance their next-mxact counters some
considerable distance from 0). In the second place, it seems a bit unwise
to be throwing away data during crash recovery anwyway. This latter
consideration convinces me to just disable truncation during recovery,
rather than computing latest_page_number and pushing ahead.
Bruce Momjian [Wed, 19 Jul 2006 18:42:31 +0000 (18:42 +0000)]
Update GRANT USAGE on schema permission description.
Neil Conway [Wed, 19 Jul 2006 17:05:50 +0000 (17:05 +0000)]
pgcrypto merge cleanup:
- Few README fixes
- Keep imath Id string, put $PostgreSQL$ separately.
Patch from Marko Kreen.
Tom Lane [Wed, 19 Jul 2006 17:02:59 +0000 (17:02 +0000)]
Adjust spawn_process() to avoid unnecessary overhead processes: we can
just exec instead of creating a subprocess. This reduces process usage
from four processes per parallel test to two. I have no idea whether
a comparable optimization is possible or useful in the Windows port.
Bruce Momjian [Wed, 19 Jul 2006 17:01:24 +0000 (17:01 +0000)]
Update WIN32 quoting roles documentation.
Tom Lane [Wed, 19 Jul 2006 16:23:17 +0000 (16:23 +0000)]
Adjust pg_regress to print out the exact string given to system() when
'make install' or 'initdb' fails. Also minor simplification of fgets()
usage --- fgets guarantees a trailing null anyway.
Bruce Momjian [Wed, 19 Jul 2006 15:06:06 +0000 (15:06 +0000)]
Add WIN32 compile suggestion to pginclude README.
Tom Lane [Wed, 19 Jul 2006 05:21:57 +0000 (05:21 +0000)]
kill() is declared in <signal.h> per Single Unix Spec.
Tom Lane [Wed, 19 Jul 2006 04:50:57 +0000 (04:50 +0000)]
Tweak command quoting for Windows (I'd forgotten about SYSTEMQUOTE).
Tom Lane [Wed, 19 Jul 2006 04:02:31 +0000 (04:02 +0000)]
Remove unnecessary inclusion of libpq into pg_regress --- overly
enthusiastic copy and paste ...
Tom Lane [Wed, 19 Jul 2006 02:37:00 +0000 (02:37 +0000)]
Rewrite pg_regress as a C program instead of a shell script.
This allows it to be used on Windows without installing mingw
(though you do still need 'diff'), and opens the door to future
improvements such as message localization.
Magnus Hagander and Tom Lane.
Tom Lane [Tue, 18 Jul 2006 22:36:46 +0000 (22:36 +0000)]
copydir() and rmtree() need to use lstat, not stat, to behave as expected
with symlinks. Noted while trying to use rmtree in new C-code pg_regress.
Bruce Momjian [Tue, 18 Jul 2006 22:18:08 +0000 (22:18 +0000)]
The Win32 DEF files that are generated for libpq contain the attribute
"DESCRIPTION", which is actually only allowed for device drivers. The
compilers ignore it with a warning - if we remove them, we get rid of
the warning.
Magnus Hagander
Bruce Momjian [Tue, 18 Jul 2006 19:19:59 +0000 (19:19 +0000)]
Add pginclude testing ideas.
Bruce Momjian [Tue, 18 Jul 2006 18:20:51 +0000 (18:20 +0000)]
Done:
o -Display IN, INOUT, and OUT parameters in \df
Bruce Momjian [Tue, 18 Jul 2006 17:42:01 +0000 (17:42 +0000)]
Mark a few functions as static or NOT_USED.
Tom Lane [Tue, 18 Jul 2006 00:32:42 +0000 (00:32 +0000)]
Make pg_regress a tad simpler and more general-purpose by removing its
code to forcibly drop regressuser[1-4] and regressgroup[1-2]. Instead,
let the privileges.sql test do that for itself (this is made easy by
the recent addition of DROP ROLE IF EXISTS). Per a recent patch proposed
by Joachim Wieland --- the rest of his patch is superseded by the
rewrite into C, but this is a good idea we should adopt.
Bruce Momjian [Mon, 17 Jul 2006 19:37:21 +0000 (19:37 +0000)]
Mention dependency problems caused by pgrminclude on include files.
Neil Conway [Mon, 17 Jul 2006 00:21:23 +0000 (00:21 +0000)]
Improve psql's \df slash command to include the argument names and modes
(OUT or INOUT) of the function. Patch from David Fetter, editorialization
by Neil Conway.
Neil Conway [Sun, 16 Jul 2006 23:59:58 +0000 (23:59 +0000)]
Minor documentation tweak: in the tables of functions and operators,
don't include a space between the function name and the parenthesis
that begins its parameter list, for consistency.
Tom Lane [Sun, 16 Jul 2006 20:28:01 +0000 (20:28 +0000)]
Include libpq/pqcomm.h to ensure we have correct knowledge of
HAVE_STRUCT_SOCKADDR_STORAGE_SS_LEN. Per results of pgcheckdefines.
Tom Lane [Sun, 16 Jul 2006 20:17:04 +0000 (20:17 +0000)]
In a Windows backend, don't build src/port/pgsleep.c's version of
pg_usleep at all. Instead call the replacement function in
port/win32/signal.c by that name. Avoids tricky macro-redefinition
logic and suppresses a compiler warning; furthermore it ensures that
no one can accidentally use the non-signal-aware version of pg_usleep
in a Windows backend.
Tom Lane [Sun, 16 Jul 2006 18:17:14 +0000 (18:17 +0000)]
Ensure that we retry rather than erroring out when send() or recv() return
EINTR; the stats code was failing to do this and so were a couple of places
in the postmaster. The stats code assumed that recv() could not return EINTR
if a preceding select() showed the socket to be read-ready, but this is
demonstrably false with our Windows implementation of recv(), and it may
not be the case on all Unix variants either. I think this explains the
intermittent stats regression test failures we've been seeing, as well
as reports of stats collector instability under high load on Windows.
Backpatch as far as 8.0.
Tom Lane [Sun, 16 Jul 2006 02:44:01 +0000 (02:44 +0000)]
Fix a few places where $Id$ and $Header$ CVS tags had crept into the
source tree. They should all be $PostgreSQL$ of course.
Tom Lane [Sun, 16 Jul 2006 01:35:28 +0000 (01:35 +0000)]
Fix lack of repeat-inclusion guard in win32 substitute sys/socket.h.
I think this explains the 'implicit declaration of function gai_strerror'
warnings visible in the current buildfarm report from snake: if
sys/socket.h is included again after getaddrinfo.h, the file would
merrily undefine the gai_strerror macro.
Tom Lane [Sun, 16 Jul 2006 01:05:23 +0000 (01:05 +0000)]
Put back another not-so-unnecessary #include, per report from Hiroshi Saito.
Tom Lane [Sun, 16 Jul 2006 00:54:22 +0000 (00:54 +0000)]
Fix getDatumCopy(): don't use store_att_byval to copy into a Datum
variable (this accounts for regression failures on PPC64, and in fact
won't work on any big-endian machine). Get rid of hardwired knowledge
about datum size rules; make it look just like datumCopy().
Tom Lane [Sun, 16 Jul 2006 00:52:05 +0000 (00:52 +0000)]
Improve error message wording.
Tom Lane [Sat, 15 Jul 2006 15:47:17 +0000 (15:47 +0000)]
Put back some more not-so-unused-as-all-that #includes. This un-breaks
the EXEC_BACKEND code on my machines, so hopefully it will fix the
Windows buildfarm members.
Tom Lane [Sat, 15 Jul 2006 15:27:14 +0000 (15:27 +0000)]
Fix some pgcrypto portability issues, per Marko Kreen.
Tom Lane [Sat, 15 Jul 2006 03:35:21 +0000 (03:35 +0000)]
Fix some missing inclusions identified with new pgcheckdefines tool.
Tom Lane [Sat, 15 Jul 2006 03:33:14 +0000 (03:33 +0000)]
Fix some makefiles that fail to yield good results from 'make -qp'.
This doesn't really matter for ordinary building of Postgres, but it's
useful for automated checks, such as my just-committed pgcheckdefines.
Tom Lane [Sat, 15 Jul 2006 03:27:42 +0000 (03:27 +0000)]
Create a tool to catch #include omissions that might not result in any
compiler warning, specifically #ifdef or #if defined tests on symbols
that are defined in a file not included. The results are a bit noisy
and require care to interpret, but it's a lot better than no tool at all.
Tom Lane [Fri, 14 Jul 2006 19:05:52 +0000 (19:05 +0000)]
Fix misguided removal of access/tuptoaster.h inclusion, per Kris Jurka.
I'm going to insist on reversion of this entire patch unless pgrminclude
is upgraded to a less broken state, but in the meantime let's get contrib
passing regression again.
Tom Lane [Fri, 14 Jul 2006 17:47:40 +0000 (17:47 +0000)]
In PGP public key tests, encrypt the secret key with AES not CAST5,
so that the test passes with or without OpenSSL. Marko Kreen
Tom Lane [Fri, 14 Jul 2006 16:59:19 +0000 (16:59 +0000)]
Fix another passel of include-file breakage. Kris Jurka, Tom Lane
Tom Lane [Fri, 14 Jul 2006 16:45:43 +0000 (16:45 +0000)]
Add dependency to fix parallel-make race condition. Alexander Dupuy
Bruce Momjian [Fri, 14 Jul 2006 14:59:00 +0000 (14:59 +0000)]
Have find_static skip main() functions.
Bruce Momjian [Fri, 14 Jul 2006 14:52:27 +0000 (14:52 +0000)]
Remove 576 references of include files that were not needed.
Tom Lane [Fri, 14 Jul 2006 05:28:29 +0000 (05:28 +0000)]
Fix a passel of recently-committed violations of the rule 'thou shalt
have no other gods before c.h'. Also remove some demonstrably redundant
#include lines, mostly of <errno.h> which was added to c.h years ago.
Bruce Momjian [Fri, 14 Jul 2006 04:59:30 +0000 (04:59 +0000)]
Revert part of recent include patch not ready for application.
Bruce Momjian [Fri, 14 Jul 2006 04:44:46 +0000 (04:44 +0000)]
Add additional includes needed on some platforms.
Bruce Momjian [Fri, 14 Jul 2006 01:05:14 +0000 (01:05 +0000)]
Move CFLAGS for pginclude to the end of the command line.
Neil Conway [Fri, 14 Jul 2006 00:13:05 +0000 (00:13 +0000)]
Minor doc tweak: replace a "--" with "—".
Neil Conway [Thu, 13 Jul 2006 23:59:47 +0000 (23:59 +0000)]
Reorder the entries in the function section of the manual, to ensure they
are alphabetically ordered. I believe the tables were correctly ordered in
the past, but some of them had subsequently regressed.
Bruce Momjian [Thu, 13 Jul 2006 20:14:12 +0000 (20:14 +0000)]
Move math.h after postgresql.h
Bruce Momjian [Thu, 13 Jul 2006 18:25:09 +0000 (18:25 +0000)]
Skip stripping postgres_fe.h include file.
Bruce Momjian [Thu, 13 Jul 2006 18:01:02 +0000 (18:01 +0000)]
More include file adjustments.
Bruce Momjian [Thu, 13 Jul 2006 17:47:02 +0000 (17:47 +0000)]
More include file adjustments.
Bruce Momjian [Thu, 13 Jul 2006 16:57:31 +0000 (16:57 +0000)]
Adjust /contrib for new include file contents.
Bruce Momjian [Thu, 13 Jul 2006 16:49:20 +0000 (16:49 +0000)]
Allow include files to compile own their own.
Strip unused include files out unused include files, and add needed
includes to C files.
The next step is to remove unused include files in C files.
Bruce Momjian [Thu, 13 Jul 2006 16:39:20 +0000 (16:39 +0000)]
Improve pginclude tools to process include file usage by other include files.
Neil Conway [Thu, 13 Jul 2006 15:09:57 +0000 (15:09 +0000)]
Remove trailing comma from CreateStmtLikeOption enum definition. This
is harmless, but it causes a warning with Tru64's cc.
Peter Eisentraut [Thu, 13 Jul 2006 14:44:33 +0000 (14:44 +0000)]
Be consistent about not using ECHO_N/ECHO_C (seems unnecessary on Linux).
Neil Conway [Thu, 13 Jul 2006 04:52:51 +0000 (04:52 +0000)]
Fix C++-style comment.
Neil Conway [Thu, 13 Jul 2006 04:15:25 +0000 (04:15 +0000)]
"Annual" pgcrypto update from Marko Kreen:
Few cleanups and couple of new things:
- add SHA2 algorithm to older OpenSSL
- add BIGNUM math to have public-key cryptography work on non-OpenSSL
build.
- gen_random_bytes() function
The status of SHA2 algoritms and public-key encryption can now be
changed to 'always available.'
That makes pgcrypto functionally complete and unless there will be new
editions of AES, SHA2 or OpenPGP standards, there is no major changes
planned.
Bruce Momjian [Wed, 12 Jul 2006 16:28:27 +0000 (16:28 +0000)]
Fix pgrminclude to work for stripping include files.
Bruce Momjian [Wed, 12 Jul 2006 15:37:10 +0000 (15:37 +0000)]
Update schema USAGE permission description.
Joe Conway [Wed, 12 Jul 2006 02:31:56 +0000 (02:31 +0000)]
Clean up for warning:
fe-auth.c:573: warning: passing argument 1 of 'free' discards qualifiers
from pointer target type
pg_krb5_authname used to return a (const char *) to memory allocated by
krb. Somewhere along the lines this was changed so that a copy was
made, returned, and freed instead. However the const modifier was never
removed.
Alvaro Herrera [Tue, 11 Jul 2006 21:21:59 +0000 (21:21 +0000)]
Apply entab fix from Marko Kreen for these problems:
- halt.c did not include stdlib.h, thus missed exit() prototype
- Makefile ignores BINDIR for install.
- Makefile calls install with user/group args, thus failing for regular user.
While trying it I noticed that the Makefile does not support VPATH builds ...
Tom Lane [Tue, 11 Jul 2006 21:05:57 +0000 (21:05 +0000)]
Tweak fillfactor code as per my recent proposal. Fix nbtsort.c so that
it can handle small fillfactors for ordinary-sized index entries without
failing on large ones; fix nbtinsert.c to distinguish leaf and nonleaf
pages; change the minimum fillfactor to 10% for all index types.
Bruce Momjian [Tue, 11 Jul 2006 20:51:25 +0000 (20:51 +0000)]
Improve pginclude tests.
Bruce Momjian [Tue, 11 Jul 2006 20:12:29 +0000 (20:12 +0000)]
Improve pginclude compile flags.
Bruce Momjian [Tue, 11 Jul 2006 19:52:12 +0000 (19:52 +0000)]
Update pginclude documentation.
Teodor Sigaev [Tue, 11 Jul 2006 19:49:14 +0000 (19:49 +0000)]
Add support to GIN for =(anyarray,anyarray) operation
Bruce Momjian [Tue, 11 Jul 2006 19:45:16 +0000 (19:45 +0000)]
Have pgrminclude process include files too.
Bruce Momjian [Tue, 11 Jul 2006 19:34:34 +0000 (19:34 +0000)]
Add $CFLAGS support to pgrminclude.
Bruce Momjian [Tue, 11 Jul 2006 19:31:29 +0000 (19:31 +0000)]
Move pgrminclude debug code to be more effective.
Bruce Momjian [Tue, 11 Jul 2006 19:30:05 +0000 (19:30 +0000)]
Improve shell script wrapping.
Bruce Momjian [Tue, 11 Jul 2006 19:25:41 +0000 (19:25 +0000)]
Add comments to pgrminclude.
Neil Conway [Tue, 11 Jul 2006 19:11:26 +0000 (19:11 +0000)]
Correct the description of the pg_get_viewdef() function. Do some nearby
SGML cleanup: sort table entries alphabetically.
Bruce Momjian [Tue, 11 Jul 2006 18:26:11 +0000 (18:26 +0000)]
Alphabetically order reference to include files, "S"-"Z".
Bruce Momjian [Tue, 11 Jul 2006 17:26:59 +0000 (17:26 +0000)]
Alphabetically order reference to include files, "N" - "S".
Bruce Momjian [Tue, 11 Jul 2006 17:04:13 +0000 (17:04 +0000)]
Alphabetically order reference to include files, "G" - "M".
Bruce Momjian [Tue, 11 Jul 2006 17:02:16 +0000 (17:02 +0000)]
Add URL of code presentation to developers FAQ.
Teodor Sigaev [Tue, 11 Jul 2006 16:55:34 +0000 (16:55 +0000)]
GIN improvements
- Replace sorted array of entries in maintenance_work_mem to binary tree,
this should improve create performance.
- More precisely calculate allocated memory, eliminate leaks
with user-defined extractValue()
- Improve wordings in tsearch2
Bruce Momjian [Tue, 11 Jul 2006 16:35:33 +0000 (16:35 +0000)]
Sort reference of include files, "A" - "F".
Tom Lane [Tue, 11 Jul 2006 16:14:50 +0000 (16:14 +0000)]
Remove no-longer-needed configure test for krb5_encrypt(), per Jim Gates.
Teodor Sigaev [Tue, 11 Jul 2006 16:00:44 +0000 (16:00 +0000)]
Fix bug corrupting query in gist consistent function.
Thank to Mario Weilguni <mweilguni@sime.com> to discover a bug.
Tom Lane [Tue, 11 Jul 2006 14:25:09 +0000 (14:25 +0000)]
Reverse inclusion order of <ws2tcpip.h> and <winsock2.h>, per Dave Page.
Bruce Momjian [Tue, 11 Jul 2006 13:54:25 +0000 (13:54 +0000)]
Allow each C include file to compile on its own by including any needed
header files.
Bruce Momjian [Tue, 11 Jul 2006 02:01:24 +0000 (02:01 +0000)]
Add libpq include directory to script.
Tom Lane [Mon, 10 Jul 2006 22:10:39 +0000 (22:10 +0000)]
Fix ALTER TABLE to check pre-existing NOT NULL constraints when rewriting
a table. Otherwise a USING clause that yields NULL can leave the table
violating its constraint (possibly there are other cases too). Per report
from Alexander Pravking.
Bruce Momjian [Mon, 10 Jul 2006 22:06:11 +0000 (22:06 +0000)]
Allow /contrib include files to compile on their own.
Bruce Momjian [Mon, 10 Jul 2006 21:03:58 +0000 (21:03 +0000)]
Add #include code to prevent multiple inclusion.
Bruce Momjian [Mon, 10 Jul 2006 18:53:29 +0000 (18:53 +0000)]
Move pthread-win32.h to /port, modify bcc/msvc makefiles.
Bruce Momjian [Mon, 10 Jul 2006 18:40:16 +0000 (18:40 +0000)]
Remove a few baby-C macros in fuzzystrmatch. Add a few missing includes.
Bruce Momjian [Mon, 10 Jul 2006 18:39:32 +0000 (18:39 +0000)]
Improve compile line for tool.
Bruce Momjian [Mon, 10 Jul 2006 17:13:34 +0000 (17:13 +0000)]
Update usage documention for pginclude
Bruce Momjian [Mon, 10 Jul 2006 17:11:43 +0000 (17:11 +0000)]
Add $CFLAGS handling to pgcompinclude.