git.postgresql.org Git - postgresql.git/log
Might want to initialize the gettext library, if we're going to do all that
translation work.
Translation update
Tom Lane [2004年10月18日 22:00:42 +0000 (22:00 +0000)]
Add PQprepare/PQsendPrepared functions to libpq to support preparing
statements without necessarily specifying the datatypes of their parameters.
Abhijit Menon-Sen with some help from Tom Lane.
Remove use of "miscadmin.h" in port C files and remove test for frontend
in miscadmin.h.
New translation
Translation updates
New translation
Updated SQL key words table
The attached patch fixes psql's win32 frontend-only build, by using
pg_strcasecmp in variables.c, and #ifdef'ing out PostmasterPid in
miscadmin.h.
Dave Page
Force rebuild.
Improve indentation of sublists:
< The proper solution to this will probably the use of a master/slave
< replication solution like Sloney and a connection pooling tool like
< pgpool.
> The proper solution to this will probably the use of a master/slave
> replication solution like Sloney and a connection pooling tool like
> pgpool.
114,
116c114,116
< You can use any of the master/slave replication servers to use a
< standby server for data warehousing. To allow read/write queries to
< multiple servers, you need multi-master replication like pgcluster.
> You can use any of the master/slave replication servers to use a
> standby server for data warehousing. To allow read/write queries to
> multiple servers, you need multi-master replication like pgcluster.
166,
167c166,167
< Currently large objects entries do not have owners. Permissions can
< only be set at the pg_largeobject table level.
> Currently large objects entries do not have owners. Permissions can
> only be set at the pg_largeobject table level.
173c173
< This requires the TOAST column to be stored EXTERNAL.
> This requires the TOAST column to be stored EXTERNAL.
359,
360c359,360
< One complexity is whether moving a schema should move all existing
< schema objects or just define the location for future object creation.
> One complexity is whether moving a schema should move all existing
> schema objects or just define the location for future object creation.
364,
365c364,365
< Currently non-global system tables must be in the default database
< schema. Global system tables can never be moved.
> Currently non-global system tables must be in the default database
> schema. Global system tables can never be moved.
371,
375c371,375
< This might require some background daemon to maintain clustering
< during periods of low usage. It might also require tables to be only
< paritally filled for easier reorganization. Another idea would
< be to create a merged heap/index data file so an index lookup would
< automatically access the heap data too.
> This might require some background daemon to maintain clustering
> during periods of low usage. It might also require tables to be only
> paritally filled for easier reorganization. Another idea would
> be to create a merged heap/index data file so an index lookup would
> automatically access the heap data too.
379,
380c379,380
< To do this, determine the ideal cluster index for each system
< table and set the cluster setting during initdb.
> To do this, determine the ideal cluster index for each system
> table and set the cluster setting during initdb.
385,
386c385,386
< This requires the use of a savepoint before each COPY line is
< processed, with ROLLBACK on COPY failure.
> This requires the use of a savepoint before each COPY line is
> processed, with ROLLBACK on COPY failure.
395,
398c395,398
< This requires using the row ctid to map cursor rows back to the
< original heap row. This become more complicated if WITH HOLD cursors
< are to be supported because WITH HOLD cursors have a copy of the row
< and no FOR UPDATE lock.
> This requires using the row ctid to map cursor rows back to the
> original heap row. This become more complicated if WITH HOLD cursors
> are to be supported because WITH HOLD cursors have a copy of the row
> and no FOR UPDATE lock.
405,
406c405,406
< Because WITH HOLD cursors exist outside transactions, this allows
< them to be listed so they can be closed.
> Because WITH HOLD cursors exist outside transactions, this allows
> them to be listed so they can be closed.
413,
415c413,415
< This is useful for returning the auto-generated key for an INSERT.
< One complication is how to handle rules that run as part of
< the insert.
> This is useful for returning the auto-generated key for an INSERT.
> One complication is how to handle rules that run as part of
> the insert.
422c422
< This is basically the same as SET search_path.
> This is basically the same as SET search_path.
426,
427c426,427
< This requires a checking function to be called after the server
< configuration file is read.
> This requires a checking function to be called after the server
> configuration file is read.
432c432
< Currently only constants are supported.
> Currently only constants are supported.
438,
439c438,439
< This requires the cached PL/PgSQL byte code to be invalidated when
< an object referenced in the function is changed.
> This requires the cached PL/PgSQL byte code to be invalidated when
> an object referenced in the function is changed.
512,
513c512,513
< Document differences between ecpg and the SQL standard and
< information about the Informix-compatibility module.
> Document differences between ecpg and the SQL standard and
> information about the Informix-compatibility module.
Synced parser
Update Japanese FAQ.
Jun Kuwamura
Update wording:
* Allow a database in tablespace t1 with tables created in tablespace t2
to be used as a template for a new database created with default
tablespace t2
All objects in the default database tablespace must have default tablespace
specifications. This is because new databases are created by copying
directories. If you mix default tablespace tables and tablespace-specified
tables in the same directory, creating a new database from such a mixed
directory would create a new database with tables that had incorrect
explicit tablespaces. To fix this would require modifying pg_class in the
newly copied database, which we don't currently do.
Add:
>
> * Allow a database in tablespace t1 with tables created in tablespace t2
> to be used as a template for a new database created with default
> tablespace t2
>
> All objects in the default database tablespace must have default tablespace
> specifications. This is because new databases are created by copying
> directories. If you mix default tablespace tables and tablespace-specified
> tables in the same directory, creating a new database from such a mixed
> directory would create a new database with tables that had incorrect
> explicit tablespaces. To fix this would require modifying pg_class in the
> newly copied database, which we don't currently do.
Trivial fix: remove a pointless cast.
Tom Lane [2004年10月18日 00:20:41 +0000 (00:20 +0000)]
Tweak pg_dump to handle default tablespaces correctly --- same logic
as the corrected pg_get_indexdef code.
Better document win32_open and its ability to allow concurrent
unlink/rename().
Fix some typos.
Tom Lane [2004年10月17日 23:09:31 +0000 (23:09 +0000)]
Make the standard stopword files be sought relative to share_dir, so
that a tsearch2 installation can be relocatable.
Tom Lane [2004年10月17日 22:01:51 +0000 (22:01 +0000)]
Allow background writing to be shut down by setting limit values to zero.
This does not disable the bgwriter process: it still has to wake up often
enough to collect fsync requests from backends in a timely fashion. But
it responds to the recent gripe about not being able to prevent the disk
from being spun up constantly.
Tom Lane [2004年10月17日 21:17:27 +0000 (21:17 +0000)]
pg_get_indexdef() didn't do quite the right thing with identifying
an index's tablespace.
New translation
New translation
Translation update
Translation updates
Adjust message
Tom Lane [2004年10月17日 20:47:21 +0000 (20:47 +0000)]
Give a more user-friendly error message in situation where CREATE DATABASE
specifies a new default tablespace and the template database already has
some tables in that tablespace. There isn't any way to solve this fully
without modifying the clone database's pg_class contents, so for now the
best we can do is issue a better error message.
Tom Lane [2004年10月17日 20:02:26 +0000 (20:02 +0000)]
Make locale_messages_assign() really work on Windows; the prior hack
only covered the case of assigning "", and failed to recognize that
actually setlocale(LC_MESSAGES,...) does not work at all on this platform.
Magnus Hagander, some code prettification by Tom Lane.
Tom Lane [2004年10月16日 22:52:55 +0000 (22:52 +0000)]
Remove dllist.c from libpq. It's overkill for what libpq needs; we can
just stick a list-link into struct PGnotify instead. Result is a smaller
faster and more robust library (mainly because we reduce the number of
malloc's and free's involved in notify processing), plus less pollution
of application link-symbol namespace.
Tom Lane [2004年10月16日 21:50:02 +0000 (21:50 +0000)]
Include dllist.c directly instead of assuming that libpq will provide it.
Whack some semblance of project-conventions-conformance into pg_autovacuum.h.
Tom Lane [2004年10月16日 21:16:36 +0000 (21:16 +0000)]
Give a more user-friendly error message in case where a table is created
in a schema whose default tablespace has been dropped.
Tom Lane [2004年10月16日 20:10:57 +0000 (20:10 +0000)]
Generate the various .def files for libpq DLLs from a single list of
exportable functions. The .def files are removed from CVS, but will
still be present in distribution tarballs, since we can't assume that
Windows boxes will have sed.
Tom Lane [2004年10月16日 19:08:38 +0000 (19:08 +0000)]
Limit NBuffers and some related values to INT_MAX / BLCKSZ, to prevent
arithmetic overflow during initial sizing calculations. This is not
water-tight but it should avoid the grossest sorts of failures.
Tom Lane [2004年10月16日 18:57:26 +0000 (18:57 +0000)]
Give the ResourceOwner mechanism full responsibility for releasing buffer
pins at end of transaction, and reduce AtEOXact_Buffers to an Assert
cross-check that this was done correctly. When not USE_ASSERT_CHECKING,
AtEOXact_Buffers is a complete no-op. This gets rid of an O(NBuffers)
bottleneck during transaction commit/abort, which recent testing has shown
becomes significant above a few tens of thousands of shared buffers.
Tom Lane [2004年10月16日 18:05:07 +0000 (18:05 +0000)]
Remove BufferLocks[] array in favor of a single pointer to the buffer
(if any) currently waited for by LockBufferForCleanup(), which is all
that we were using it for anymore. Saves some space and eliminates
proportional-to-NBuffers slowdown in UnlockBuffers().
Fix Cygwin using of pg_ctl by not usig START.
Reini Urban
Export only required symbols in libpq on Win32.
Magnus Hagander
Allow pg_ctl to determine the server is up when getting a request for a
password.
Make password error message a #define and use it consistently.
Sean Chittenden
Tom Lane [2004年10月15日 22:40:29 +0000 (22:40 +0000)]
Repair possible failure to update hint bits back to disk, per
http://archives.postgresql.org/pgsql-hackers/2004-10/msg00464.php.
This fix is intended to be permanent: it moves the responsibility for
calling SetBufferCommitInfoNeedsSave() into the tqual.c routines,
eliminating the requirement for callers to test whether t_infomask changed.
Also, tighten validity checking on buffer IDs in bufmgr.c --- several
routines were paranoid about out-of-range shared buffer numbers but not
about out-of-range local ones, which seems a tad pointless.
The previous build rules caused each binary to be re-linked on every
"make", even if nothing had changed. With this patch, it's only relinked
if it's actually updated.
//Magnus
PS. Yes, the old buildrule for the .rc file is still needed, as it's
used by pgevent.rc (or any other binary in the future that would need
it's own .rc file)
Magnus Hagander
I have attached 5 patches (split up for ease of review) to plperl.c.
1. Two minor cleanups:
- We don't need to call hv_exists+hv_fetch; we should just check the
return value of hv_fetch.
- newSVpv("undef",0) is the string "undef", not a real undef.
2. This should fix the bug Andrew Dunstan described in a recent -hackers
post. It replaces three bogus "eval_pv(key, 0)" calls with newSVpv,
and eliminates another redundant hv_exists+hv_fetch pair.
3. plperl_build_tuple_argument builds up a string of Perl code to create
a hash representing the tuple. This patch creates the hash directly.
4. Another minor cleanup: replace a couple of av_store()s with av_push.
5. Analogous to #3 for plperl_trigger_build_args. This patch removes the
static sv_add_tuple_value function, which does much the same as two
other utility functions defined later, and merges the functionality
into plperl_hash_from_tuple.
I have tested the patches to the best of my limited ability, but I would
appreciate it very much if someone else could review and test them too.
(Thanks to Andrew and David Fetter for their help with some testing.)
Abhijit Menon-Sen
This patch clarifies the usage of references in PL/Perl :)
David Fetter
Have log_duration only output when log_statement has printed the query.
This handles the new multiple log_statement values.
Ed L.
Update wording.
Update heading of Cygwin FAQ to be Cygwin-specific.
New wording on the three standards.
> This lets you do something like:
>
> ./configure LDFLAGS=-static-libgcc LDFLAGS_SL=-static-libgcc
>
> to produce binaries that do not depend on libgcc_s.so at all.
Oliver Jowett
Allow psql booleans to use OFF or off.
Michael Paesold
Fix pg_ctl -D handling for Win32:
C:\msys1円.0\home\y-asaba>pg_ctl -D data restart
waiting for postmaster to shut down...LOG: received smart shutdown
request.
LOG: shutting down
LOG: database system is shut down
done
postmaster stopped
postmaster starting
C:\msys1円.0\home\y-asaba>postmaster.exe: invalid argument: "'-D'"
Try "postmaster.exe --help" for more information.
Yoshiyuki Asaba
Add full path in error report for version mismatch of binaries.
psql code cleanup:
- refactor a bunch of code to call a separate function print_msg() which
checks whether "silent mode" is enabled before printing an error
message.
- rename "silence_mode" to "silent_mode", which IMHO makes more sense
- make the error messages we emit in "waiting" mode more consistent; I
believe this fixes a recent error message regression
Update mingw faq.
Update Win32 fAQ.
Add:
> * Allow libpq to access SQLSTATE so pg_ctl can test for connection failure
>
> This would be used for checking if the server is up.
>
Typo cleanup.
Update standards names.
Update 2003 as an official standard.
Add 'int' cast for getpid() because some Solaris releases return long
for getpid().
Add:
<
> * Prevent inet cast to cidr if the unmasked bits are not zero, or
> zero bits
Add "draft".
Reorder links.
More URL updates.
Update markup.
New urls.
Working improvement.
Fix markup.
Add standards URL's.
pg_restore wording improvement, per Peter.
Enable service use by Cygwin of pg_ctl.
Allow compiles for Cygwin /contrib modules.
Reini Urban
Enable static lib builds on Win32 and Cygwin.
Cleanup some unnecessary void * casts when using pfree() in contrib/xml
and contrib/xml2
More minor cosmetic improvements:
- remove another senseless "extern" keyword that was applied to a
function definition
- change a foo more function signatures from "some_type foo()" to
"some_type foo(void)"
- rewrite another K&R style function definition
- make the type of the "action" function pointer in the KeyWord struct
in src/backend/utils/adt/formatting.c more precise
Unbreak regression tests (Peter's recent checkin to executor/spi.c did
not update some error message text).
Add:
> * Add RESET CONNECTION command to reset all session state
329a331,334
> This would include resetting of all variables (RESET ALL), dropping of
> all temporary tables, removal of any NOTIFYs, etc. This could be used
> for connection pooling. We could also change RESET ALL to have this
> functionality.
Clarify pg_restore --help wording.
Update Cygwin build to not use DLLINIT, per Cygwin report from Reini
Urban
Message style revisions
New translation
Translation updates
Translation update
Tom Lane [2004年10月12日 15:44:15 +0000 (15:44 +0000)]
plpgsql EXIT construct forgot to downcase or quote-strip its identifier
argument, leading to label matching failures at run-time. Per report from
Patrick Fiche. Also, fix it so that an unrecognized label argument draws
a more useful error message than 'syntax error'.
Fix vpath build break, induced by Bruce's recent commit.
Fix a copy-and-paste error: give a distinct memory context a distinct
name, mainly for debugging purposes.
Tom Lane [2004年10月12日 01:49:48 +0000 (01:49 +0000)]
Update reference to pgsql-server.
Add some pg_config_path.h dependencies for places that include
pg_config_paths.h outside of /src/port.
Tom Lane [2004年10月11日 23:27:23 +0000 (23:27 +0000)]
Use -fPIC not -fpic for BSDen on Sparc. Also switch from
$(LD) -x -Bshareable to $(CC) -shared on OpenBSD (I suspect this
should be carried over to the other two as well, but will refrain
pending suggestions from people who actually use those platforms).
Per Stefan Kaltenbrunner.
Tom Lane [2004年10月11日 22:57:00 +0000 (22:57 +0000)]
Fix OR-index-scan planner to recognize that a partial index is usable
for scanning one term of an OR clause if the index's predicate is implied
by that same OR clause term (possibly in conjunction with top-level WHERE
clauses). Per recent example from Dawid Kuroczko,
http://archives.postgresql.org/pgsql-performance/2004-10/msg00095.php
Also, fix a very long-standing bug in index predicate testing, namely the
bizarre ordering of decomposition of predicate and restriction clauses.
AFAICS the correct way is to break down the predicate all the way, and
then for each component term see if you can prove it from the entire
restriction set. The original coding had a purely-implementation-artifact
distinction between ANDing at the top level and ANDing below that, and
proceeded to get the decomposition order wrong everywhere below the top
level, with the result that even slightly complicated AND/OR predicates
could not be proven. For instance, given
create index foop on foo(f2) where f1=42 or f1=1
or (f1 = 11 and f2 = 55);
the old code would fail to match this index to the query
select * from foo where f1 = 11 and f2 = 55;
when it obviously ought to match.
Use native Cygwin symlinks so tablespaces work on Win95/98/ME which
don't support junction points. Doesn't affect native Win32.
Tom Lane [2004年10月11日 19:32:19 +0000 (19:32 +0000)]
Another try at making plpython autoconfiguration work correctly. Use a
-L spec rather than assuming libpython is in the standard search path
(this returns to the way 7.4 did it). But check the distutils output
to see if it looks like Python has built a shared library, and if so
link with that instead of the probably-not-shared library found in
configdir.
Tom Lane [2004年10月11日 17:24:41 +0000 (17:24 +0000)]
Fix pg_indexes view so that it shows the index's tablespace not the
parent table's tablespace, as per gripe from Michael Kleiser. Choose
a more plausible column order for this view and pg_tables. Update
documentation of these views, which was missed in original patch.
Fix typo in comment.
Cosmetic improvements/code cleanup:
- replace some function signatures of the form "some_type foo()" with
"some_type foo(void)"
- replace a few instances of a literal 0 being used as a NULL pointer;
there are more instances of this in the code, but I just fixed a few
- in src/backend/utils/mb/wstrncmp.c, replace K&R style function
declarations with ANSI style, remove use of 'register' keyword
- remove an "extern" modifier that was applied to a function definition
(rather than a declaration)
Tom Lane [2004年10月10日 19:07:55 +0000 (19:07 +0000)]
Un-break plpython build for non-Windows platforms.
Tom Lane [2004年10月10日 16:13:03 +0000 (16:13 +0000)]
Remove gratuitous editorialization on rpath.
Tom Lane [Sat, 9 Oct 2004 23:13:22 +0000 (23:13 +0000)]
Adjust configuration-files GUC behavior as per my recent proposal.
The vars are renamed to data_directory, config_file, hba_file, and
ident_file, and are guaranteed to be set to accurate absolute paths
during postmaster startup.
This commit does not yet do anything about hiding path values from
non-superusers.
Translation improvement
Add win32 version information for pg_config Makefile.
Make getpid() use %d consistently for printing.
This is the main PostgreSQL git repository.
RSS
Atom