git.postgresql.org Git - postgresql.git/log

git projects / postgresql.git / log
? search:
summary | shortlog | log | commit | commitdiff | tree
first ⋅ prev ⋅ next
postgresql.git
19 years agoUpdate catalog version for INET additions.
commit | commitdiff | tree
Bruce Momjian [2006年2月11日 16:28:56 +0000 (16:28 +0000)]
Update catalog version for INET additions.

19 years agoDone:
commit | commitdiff | tree
Bruce Momjian [2006年2月11日 03:33:36 +0000 (03:33 +0000)]
Done:

> * -Allow INET + INT8 to increment the host part of the address or

19 years agoAdd INET/CIDR operators: and, or, not, plus int8, minus int8, and inet
commit | commitdiff | tree
Bruce Momjian [2006年2月11日 03:32:41 +0000 (03:32 +0000)]
Add INET/CIDR operators: and, or, not, plus int8, minus int8, and inet
minus inet.

Stephen R. van den Berg

19 years agoClean up signedness warnings and 64-bit bugs in recent psql printing
commit | commitdiff | tree
Tom Lane [2006年2月10日 22:29:06 +0000 (22:29 +0000)]
Clean up signedness warnings and 64-bit bugs in recent psql printing
patch. Martijn van Oosterhout and Tom Lane

19 years agoMake it possible to run initdb from an admin account on Windows,
commit | commitdiff | tree
Tom Lane [2006年2月10日 22:05:42 +0000 (22:05 +0000)]
Make it possible to run initdb from an admin account on Windows,
by giving up admin privileges (only works if newer than NT4).

Magnus

19 years agoEnable pg_ctl to give up admin privileges when starting the server under
commit | commitdiff | tree
Tom Lane [2006年2月10日 22:00:59 +0000 (22:00 +0000)]
Enable pg_ctl to give up admin privileges when starting the server under
Windows (if newer than NT4, else works same as before).

Magnus

19 years agoCheck that SID is enabled while checking for Windows admin privileges.
commit | commitdiff | tree
Tom Lane [2006年2月10日 21:52:21 +0000 (21:52 +0000)]
Check that SID is enabled while checking for Windows admin privileges.
Magnus

19 years agoChange search for default operator classes so that it examines all opclasses
commit | commitdiff | tree
Tom Lane [2006年2月10日 19:01:12 +0000 (19:01 +0000)]
Change search for default operator classes so that it examines all opclasses
regardless of the current schema search path. Since CREATE OPERATOR CLASS
only allows one default opclass per datatype regardless of schemas, this
should have minimal impact, and it fixes problems with failure to find a
desired opclass while restoring dump files. Per discussion at
http://archives.postgresql.org/pgsql-hackers/2006-02/msg00284.php.
Remove now-redundant-or-unused code in typcache.c and namespace.c,
and backpatch as far as 8.0.

19 years agoClean up some signedness warnings.
commit | commitdiff | tree
Tom Lane [2006年2月10日 15:57:58 +0000 (15:57 +0000)]
Clean up some signedness warnings.

19 years agoFix psql after newline patch for calloc(0).
commit | commitdiff | tree
Bruce Momjian [2006年2月10日 15:48:05 +0000 (15:48 +0000)]
Fix psql after newline patch for calloc(0).

Kris Jurka

19 years agoFix fallout from psql line-wrapping patch.
commit | commitdiff | tree
Tom Lane [2006年2月10日 15:47:44 +0000 (15:47 +0000)]
Fix fallout from psql line-wrapping patch.

19 years agoAllow "'" symbol in affixes ("'s" affix in english): it was diallowed during
commit | commitdiff | tree
Teodor Sigaev [2006年2月10日 12:56:14 +0000 (12:56 +0000)]
Allow "'" symbol in affixes ("'s" affix in english): it was diallowed during
multibyte support work.
Add line number to error output during affix file parsing.

19 years agoFix up remaining library checks.
commit | commitdiff | tree
Peter Eisentraut [2006年2月10日 11:35:47 +0000 (11:35 +0000)]
Fix up remaining library checks.

19 years agorenew output of regression test accordingly to
commit | commitdiff | tree
Teodor Sigaev [2006年2月10日 11:18:40 +0000 (11:18 +0000)]
renew output of regression test accordingly to
http://archives.postgresql.org/pgsql-committers/2006-02/msg00089.php

19 years agoDone:
commit | commitdiff | tree
Bruce Momjian [2006年2月10日 04:14:17 +0000 (04:14 +0000)]
Done:

< o Allow multi-line column values to align in the proper columns
> o -Allow multi-line column values to align in the proper columns

19 years agoAllow psql multi-line column values to align in the proper columns
commit | commitdiff | tree
Bruce Momjian [2006年2月10日 00:39:04 +0000 (00:39 +0000)]
Allow psql multi-line column values to align in the proper columns

If the second output column value is 'a\nb', the 'b' should appear
in the second display column, rather than the first column as it
does now.

Change libpq's PQdsplen() to return more useful values.

> Note: this changes the PQdsplen function, it can now return zero or
> minus one which was not possible before. It doesn't appear anyone is
> actually using the functions other than psql but it is a change. The
> functions are not actually documentated anywhere so it's not like we're
> breaking a defined interface. The new semantics follow the Unicode
> standard.

BACKWARD COMPATIBLE CHANGE.

The only user-visible change I saw in the regression tests is that a
SELECT * on a table where all the columns have been dropped doesn't
return a blank line like before. This seems like a step forward.

Martijn van Oosterhout

19 years agoThis fixes pg_dump so that when using the '-O' no owners option it does
commit | commitdiff | tree
Bruce Momjian [Thu, 9 Feb 2006 20:52:13 +0000 (20:52 +0000)]
This fixes pg_dump so that when using the '-O' no owners option it does
not print the owner name in the object comment.

eg:

--
-- Name: actor; Type: TABLE; Schema: public; Owner: chriskl; Tablespace:
--

Becomes:

--
-- Name: actor; Type: TABLE; Schema: public; Owner: -; Tablespace:
--

This makes it far easier to do 'user independent' dumps. Especially for
distribution to third parties.

Christopher Kings-Lynne

19 years agoProvide the libpq error message when PQputline or PQendcopy fails.
commit | commitdiff | tree
Tom Lane [Thu, 9 Feb 2006 18:28:29 +0000 (18:28 +0000)]
Provide the libpq error message when PQputline or PQendcopy fails.

19 years ago1 Fix bug with very short word: prefix and suffix might be overlapped,
commit | commitdiff | tree
Teodor Sigaev [Thu, 9 Feb 2006 18:04:20 +0000 (18:04 +0000)]
1 Fix bug with very short word: prefix and suffix might be overlapped,
sorry but fix can't be applyed to previous version: it's require
refill tsvector...
2 Small optimize of load time for huge dictionaries
3 use palloc instead of malloc during load dict file

19 years agoUse "bitwise" rather than "binary for AND/OR descriptions in \d, to
commit | commitdiff | tree
Bruce Momjian [Thu, 9 Feb 2006 14:53:51 +0000 (14:53 +0000)]
Use "bitwise" rather than "binary for AND/OR descriptions in \d, to
match SGML documentation.

19 years agoC++ comments are verboten. Per gripe from Kris Jurka.
commit | commitdiff | tree
Tom Lane [Thu, 9 Feb 2006 07:22:22 +0000 (07:22 +0000)]
C++ comments are verboten. Per gripe from Kris Jurka.

19 years agoReject out-of-range dates in date_in().
commit | commitdiff | tree
Tom Lane [Thu, 9 Feb 2006 03:39:17 +0000 (03:39 +0000)]
Reject out-of-range dates in date_in().

Kris Jurka

19 years agoFix broken non-YYDEBUG case.
commit | commitdiff | tree
Tom Lane [Thu, 9 Feb 2006 00:56:57 +0000 (00:56 +0000)]
Fix broken non-YYDEBUG case.

19 years ago Added just another test case.
commit | commitdiff | tree
Michael Meskes [Wed, 8 Feb 2006 09:10:05 +0000 (09:10 +0000)]
Added just another test case.
Fixed missing continuation line character.
Do not translate $-quoting.
Bit field notation belongs to a variable not a variable list.
Output of line number only done by one function.

19 years agoRemove ancient hack to work around a peculiarity of libcurses on HPUX.
commit | commitdiff | tree
Tom Lane [Tue, 7 Feb 2006 17:36:13 +0000 (17:36 +0000)]
Remove ancient hack to work around a peculiarity of libcurses on HPUX.
Since we now use libtermcap in preference to libcurses, no need for hack
anymore.

19 years agoSource code cleanup.
commit | commitdiff | tree
Bruce Momjian [Tue, 7 Feb 2006 17:04:04 +0000 (17:04 +0000)]
Source code cleanup.

19 years agoI think that NUMERIC datatype has a problem in the performance that
commit | commitdiff | tree
Bruce Momjian [Tue, 7 Feb 2006 16:03:50 +0000 (16:03 +0000)]
I think that NUMERIC datatype has a problem in the performance that
the format on Tuple(Numeric) and the format to calculate(NumericVar)
are different. I understood that to reduce I/O. However, when many
comparisons or calculations of NUMERIC are executed, the conversion
of Numeric and NumericVar becomes a bottleneck.

It is profile result when "create index on NUMERIC column" is executed:

% cumulative self self total
time seconds seconds calls s/call s/call name
17.61 10.27 10.27 34542006 0.00 0.00 cmp_numerics
11.90 17.21 6.94 34542006 0.00 0.00 comparetup_index
7.42 21.54 4.33 71102587 0.00 0.00 AllocSetAlloc
7.02 25.64 4.09 69084012 0.00 0.00 set_var_from_num
4.87 28.48 2.84 69084012 0.00 0.00 alloc_var
4.79 31.27 2.79 142205745 0.00 0.00 AllocSetFreeIndex
4.55 33.92 2.65 34542004 0.00 0.00 cmp_abs
4.07 36.30 2.38 71101189 0.00 0.00 AllocSetFree
3.83 38.53 2.23 69084012 0.00 0.00 free_var

The create index command executes many comparisons of Numeric values.
Functions other than comparetup_index spent a lot of cycles for
conversion from Numeric to NumericVar.

An attached patch enables the comparison of Numeric values without
executing conversion to NumericVar. The execution time of that SQL
becomes half.

o Test SQL (index_test table has 1,000,000 tuples)
create index index_test_idx on index_test(num_col);

o Test results (executed the test five times)
(1)PentiumIII
original: 39.789s 36.823s 36.737s 37.752s 37.019s
patched : 18.560s 19.103s 18.830s 18.408s 18.853s
4.07 36.30 2.38 71101189 0.00 0.00 AllocSetFree
3.83 38.53 2.23 69084012 0.00 0.00 free_var

The create index command executes many comparisons of Numeric values.
Functions other than comparetup_index spent a lot of cycles for
conversion from Numeric to NumericVar.

An attached patch enables the comparison of Numeric values without
executing conversion to NumericVar. The execution time of that SQL
becomes half.

o Test SQL (index_test table has 1,000,000 tuples)
create index index_test_idx on index_test(num_col);

o Test results (executed the test five times)
(1)PentiumIII
original: 39.789s 36.823s 36.737s 37.752s 37.019s
patched : 18.560s 19.103s 18.830s 18.408s 18.853s

(2)Pentium4
original: 16.349s 14.997s 12.979s 13.169s 12.955s
patched : 7.005s 6.594s 6.770s 6.740s 6.828s

(3)Itanium2
original: 15.392s 15.447s 15.350s 15.370s 15.417s
patched : 7.413s 7.330s 7.334s 7.339s 7.339s

(4)Ultra Sparc
original: 64.435s 59.336s 59.332s 58.455s 59.781s
patched : 28.630s 28.666s 28.983s 28.744s 28.595s

Atsushi Ogawa

19 years agoRemove question mark:
commit | commitdiff | tree
Bruce Momjian [Tue, 7 Feb 2006 14:49:17 +0000 (14:49 +0000)]
Remove question mark:

< * %Disallow changing default expression of a SERIAL column?
> * %Disallow changing default expression of a SERIAL column

19 years agoMake --version option print fixed program name.
commit | commitdiff | tree
Peter Eisentraut [Tue, 7 Feb 2006 11:36:36 +0000 (11:36 +0000)]
Make --version option print fixed program name.

19 years agoRemove some checks for libraries that no one can identify. We'll see how
commit | commitdiff | tree
Peter Eisentraut [Tue, 7 Feb 2006 11:22:41 +0000 (11:22 +0000)]
Remove some checks for libraries that no one can identify. We'll see how
that works out...

19 years agoSplit up wal-logging items:
commit | commitdiff | tree
Bruce Momjian [Tue, 7 Feb 2006 02:08:08 +0000 (02:08 +0000)]
Split up wal-logging items:

< * Allow control over which tables are WAL-logged [walcontrol]
> * Allow WAL logging to be turned off for a table, but the table
> might be dropped or truncated during crash recovery [walcontrol]
< commit. To do this, only a single writer can modify the table, and
< writes must happen only on new pages. Readers can continue accessing
< the table. This would affect COPY, and perhaps INSERT/UPDATE too.
< Another option is to avoid transaction logging entirely and truncate
< or drop the table on crash recovery. These should be implemented
< using ALTER TABLE, e.g. ALTER TABLE PERSISTENCE [ DROP | TRUNCATE |
< STABLE | DEFAULT ]. Tables using non-default logging should not use
< referential integrity with default-logging tables, and tables using
< stable logging probably can not have indexes. One complexity is
< the handling of indexes on TOAST tables.
> commit. This should be implemented using ALTER TABLE, e.g. ALTER
> TABLE PERSISTENCE [ DROP | TRUNCATE | DEFAULT ]. Tables using
> non-default logging should not use referential integrity with
> default-logging tables. A table without dirty buffers during a
> crash could perhaps avoid the drop/truncate.
>
> * Allow WAL logging to be turned off for a table, but the table would
> avoid being truncated/dropped [walcontrol]
>
> To do this, only a single writer can modify the table, and writes
> must happen only on new pages so the new pages can be removed during
> crash recovery. Readers can continue accessing the table. Such
> tables probably cannot have indexes. One complexity is the handling
> of indexes on TOAST tables.

19 years agoFix HTML alignment in PQprint.
commit | commitdiff | tree
Bruce Momjian [Tue, 7 Feb 2006 00:26:15 +0000 (00:26 +0000)]
Fix HTML alignment in PQprint.

Christoph Zwerschke

19 years agoImprove the tests to see if ScalarArrayOpExpr is strict. Original coding
commit | commitdiff | tree
Tom Lane [Mon, 6 Feb 2006 22:21:12 +0000 (22:21 +0000)]
Improve the tests to see if ScalarArrayOpExpr is strict. Original coding
would basically punt in all cases for 'foo <> ALL (array)', which resulted
in a performance regression for NOT IN compared to what we were doing in
8.1 and before. Per report from Pavel Stehule.

19 years agoCheck number of affixes to prevent core dump with zero number of affixes
commit | commitdiff | tree
Teodor Sigaev [Mon, 6 Feb 2006 15:45:34 +0000 (15:45 +0000)]
Check number of affixes to prevent core dump with zero number of affixes

19 years agoFix PQprint HTML tag, "centre" -> "center".
commit | commitdiff | tree
Bruce Momjian [Mon, 6 Feb 2006 02:23:07 +0000 (02:23 +0000)]
Fix PQprint HTML tag, "centre" -> "center".

19 years agoFix pg_restore to properly discard COPY data when trying to continue
commit | commitdiff | tree
Tom Lane [Sun, 5 Feb 2006 20:58:47 +0000 (20:58 +0000)]
Fix pg_restore to properly discard COPY data when trying to continue
after an error in a COPY statement. Formerly it thought the COPY data
was SQL commands, and got quite confused.

Stephen Frost

19 years agoFix typo in configuration docs.
commit | commitdiff | tree
Bruce Momjian [Sun, 5 Feb 2006 18:19:14 +0000 (18:19 +0000)]
Fix typo in configuration docs.

Devrim GUNDUZ

19 years agoImprove my initial, rather hacky implementation of joins to append
commit | commitdiff | tree
Tom Lane [Sun, 5 Feb 2006 02:59:17 +0000 (02:59 +0000)]
Improve my initial, rather hacky implementation of joins to append
relations: fix the executor so that we can have an Append plan on the
inside of a nestloop and still pass down outer index keys to index scans
within the Append, then generate such plans as if they were regular
inner indexscans. This avoids the need to evaluate the outer relation
multiple times.

19 years agoUpdate PL/pgSQL trigger example to be clearer about how to "merge" data
commit | commitdiff | tree
Bruce Momjian [Sun, 5 Feb 2006 02:47:53 +0000 (02:47 +0000)]
Update PL/pgSQL trigger example to be clearer about how to "merge" data
into a table.

Jim C. Nasby

19 years agoFix constraint exclusion to work in inherited UPDATE/DELETE queries
commit | commitdiff | tree
Tom Lane [Sat, 4 Feb 2006 23:03:20 +0000 (23:03 +0000)]
Fix constraint exclusion to work in inherited UPDATE/DELETE queries
... in fact, it will be applied now in any query whatsoever. I'm still
a bit concerned about the cycles that might be expended in failed proof
attempts, but given that CE is turned off by default, it's the user's
choice whether to expend those cycles or not. (Possibly we should
change the simple bool constraint_exclusion parameter to something
more fine-grained?)

19 years agoFix broken markup.
commit | commitdiff | tree
Tom Lane [Sat, 4 Feb 2006 22:38:39 +0000 (22:38 +0000)]
Fix broken markup.

19 years agoAdded C bit fields to ecpg parser
commit | commitdiff | tree
Michael Meskes [Sat, 4 Feb 2006 20:54:44 +0000 (20:54 +0000)]
Added C bit fields to ecpg parser
Added some default rules to lexer
Added log output to prepare statement
Added some more stuff to a test case

19 years agoDROP IF EXISTS for ROLE/USER/GROUP
commit | commitdiff | tree
Andrew Dunstan [Sat, 4 Feb 2006 19:06:47 +0000 (19:06 +0000)]
DROP IF EXISTS for ROLE/USER/GROUP

19 years agoIssue a warning if a change-on-restart-only postgresql.conf value is
commit | commitdiff | tree
Peter Eisentraut [Sat, 4 Feb 2006 12:50:47 +0000 (12:50 +0000)]
Issue a warning if a change-on-restart-only postgresql.conf value is
modified and the server config files are reloaded

19 years agoUpdate walcontrol item:
commit | commitdiff | tree
Bruce Momjian [Sat, 4 Feb 2006 03:23:21 +0000 (03:23 +0000)]
Update walcontrol item:

< * Allow control over which tables are WAL-logged
> * Allow control over which tables are WAL-logged [walcontrol]
1038c1038,1039
< stable logging probably can not have indexes. [walcontrol]
> stable logging probably can not have indexes. One complexity is
> the handling of indexes on TOAST tables.

19 years agoAdd to TODO.detail/walcontrol.
commit | commitdiff | tree
Bruce Momjian [Sat, 4 Feb 2006 03:22:36 +0000 (03:22 +0000)]
Add to TODO.detail/walcontrol.

19 years agoIn ecpg, automatically double single quotes in $$ strings because
commit | commitdiff | tree
Bruce Momjian [Sat, 4 Feb 2006 02:32:38 +0000 (02:32 +0000)]
In ecpg, automatically double single quotes in $$ strings because
internally $$ strings are converted to single-quote strings.

In ecpg, output newlines in commands using standard C escapes, rather
than using literal newlines, which is not portable.

19 years agoUpdate Makefile for new thread_test location.
commit | commitdiff | tree
Bruce Momjian [Sat, 4 Feb 2006 01:04:20 +0000 (01:04 +0000)]
Update Makefile for new thread_test location.

19 years agoMove thread_test directory from /tools to /test so source-only tarballs
commit | commitdiff | tree
Bruce Momjian [Sat, 4 Feb 2006 01:00:02 +0000 (01:00 +0000)]
Move thread_test directory from /tools to /test so source-only tarballs
have the directory for the configure test.

19 years agoFirst attempt at removing some AC_CHECK_LIB(foo, main) calls.
commit | commitdiff | tree
Peter Eisentraut [Sat, 4 Feb 2006 00:42:54 +0000 (00:42 +0000)]
First attempt at removing some AC_CHECK_LIB(foo, main) calls.

19 years agoTeach planner to convert simple UNION ALL subqueries into append relations,
commit | commitdiff | tree
Tom Lane [Fri, 3 Feb 2006 21:08:49 +0000 (21:08 +0000)]
Teach planner to convert simple UNION ALL subqueries into append relations,
thereby sharing code with the inheritance case. This puts the UNION-ALL-view
approach to partitioned tables on par with inheritance, so far as constraint
exclusion is concerned: it works either way. (Still need to update the docs
to say so.) The definition of "simple UNION ALL" is a little simpler than
I would like --- basically the union arms can only be SELECT * FROM foo
--- but it's good enough for partitioned-table cases.

19 years agoUpdate tested AIX memset platforms.
commit | commitdiff | tree
Bruce Momjian [Fri, 3 Feb 2006 13:56:20 +0000 (13:56 +0000)]
Update tested AIX memset platforms.

19 years agoAllow MEMSET_LOOP_LIMIT to be set on a per-platform basis, and turn off
commit | commitdiff | tree
Bruce Momjian [Fri, 3 Feb 2006 13:53:15 +0000 (13:53 +0000)]
Allow MEMSET_LOOP_LIMIT to be set on a per-platform basis, and turn off
MemSet on AIX by setting MEMSET_LOOP_LIMIT to zero.

Add optimization to skip MemSet tests in MEMSET_LOOP_LIMIT == 0 case and
just call memset() directly.

19 years agoUpdate random() usage so ranges are inclusive/exclusive as required.
commit | commitdiff | tree
Bruce Momjian [Fri, 3 Feb 2006 12:45:47 +0000 (12:45 +0000)]
Update random() usage so ranges are inclusive/exclusive as required.

19 years agoPrevent COPY from using newline or carriage return as delimiter or null.
commit | commitdiff | tree
Bruce Momjian [Fri, 3 Feb 2006 12:41:07 +0000 (12:41 +0000)]
Prevent COPY from using newline or carriage return as delimiter or null.
Disallow backslash as the delimiter in non-CVS mode.

David Fetter

19 years agoImprove tab whitespace in file.
commit | commitdiff | tree
Bruce Momjian [Fri, 3 Feb 2006 05:38:35 +0000 (05:38 +0000)]
Improve tab whitespace in file.

Add comment about $$ and '' SCONST strings.

19 years agoMore spacing cleanups.
commit | commitdiff | tree
Bruce Momjian [Thu, 2 Feb 2006 03:51:41 +0000 (03:51 +0000)]
More spacing cleanups.

19 years agoSource code alignment fixes for preproc.y.
commit | commitdiff | tree
Bruce Momjian [Wed, 1 Feb 2006 22:16:36 +0000 (22:16 +0000)]
Source code alignment fixes for preproc.y.

19 years agoMore alignment improvements.
commit | commitdiff | tree
Bruce Momjian [Wed, 1 Feb 2006 20:57:39 +0000 (20:57 +0000)]
More alignment improvements.

19 years agoMake pgc.l source code alignment consistent.
commit | commitdiff | tree
Bruce Momjian [Wed, 1 Feb 2006 20:56:44 +0000 (20:56 +0000)]
Make pgc.l source code alignment consistent.

19 years agoAdd:
commit | commitdiff | tree
Bruce Momjian [Wed, 1 Feb 2006 17:32:45 +0000 (17:32 +0000)]
Add:

> * Allow statistics collector information to be pulled from the collector
> process directly, rather than requiring the collector to write a
> filesystem file twice a second?

19 years agoAdd code comment about Linux stack randomization and shared memory.
commit | commitdiff | tree
Bruce Momjian [Wed, 1 Feb 2006 16:00:06 +0000 (16:00 +0000)]
Add code comment about Linux stack randomization and shared memory.

19 years agoFix const cast in get_progname().
commit | commitdiff | tree
Bruce Momjian [Wed, 1 Feb 2006 12:41:45 +0000 (12:41 +0000)]
Fix const cast in get_progname().

Backpatch.

19 years agoSet progname early in the postmaster/postgres binary, rather than doing
commit | commitdiff | tree
Bruce Momjian [Wed, 1 Feb 2006 00:31:59 +0000 (00:31 +0000)]
Set progname early in the postmaster/postgres binary, rather than doing
it later. This fixes a problem where EXEC_BACKEND didn't have progname
set, causing a segfault if log_min_messages was set below debug2 and our
own snprintf.c was being used.

Also alway strdup() progname.

Backpatch to 8.1.X and 8.0.X.

19 years agoMove items:
commit | commitdiff | tree
Bruce Momjian [Wed, 1 Feb 2006 00:07:26 +0000 (00:07 +0000)]
Move items:

> * Add SQL99 WITH clause to SELECT
> * Add SQL99 WITH RECURSIVE to SELECT
< * Add SQL99 WITH clause to SELECT
< * Add SQL99 WITH RECURSIVE to SELECT

19 years agoAdd:
commit | commitdiff | tree
Bruce Momjian [Wed, 1 Feb 2006 00:03:09 +0000 (00:03 +0000)]
Add:

>
> o Prevent tab completion of SET TRANSACTION from querying the
> database and therefore preventing the transaction isolation
> level from being set.
>
> Currently, SET <tab> causes a database lookup to check all
> supported session variables. This query causes problems
> because setting the transaction isolation level must be the
> first statement of a transaction.

19 years agoAllow %TYPE to be used with SETOF, per gripe from Murat Tasan.
commit | commitdiff | tree
Tom Lane [2006年1月31日 22:40:03 +0000 (22:40 +0000)]
Allow %TYPE to be used with SETOF, per gripe from Murat Tasan.

19 years agoRestructure planner's handling of inheritance. Rather than processing
commit | commitdiff | tree
Tom Lane [2006年1月31日 21:39:25 +0000 (21:39 +0000)]
Restructure planner's handling of inheritance. Rather than processing
inheritance trees on-the-fly, which pretty well constrained us to considering
only one way of planning inheritance, expand inheritance sets during the
planner prep phase, and build a side data structure that can be consulted
later to find which RTEs are members of which inheritance sets. As proof of
concept, use the data structure to plan joins against inheritance sets more
efficiently: we can now use indexes on the set members in inner-indexscan
joins. (The generated plans could be improved further, but it'll take some
executor changes.) This data structure will also support handling UNION ALL
subqueries in the same way as inheritance sets, but that aspect of it isn't
finished yet.

19 years agoRemoved single quotes from connect to example.
commit | commitdiff | tree
Michael Meskes [2006年1月31日 13:32:20 +0000 (13:32 +0000)]
Removed single quotes from connect to example.

19 years agoFix ALTER COLUMN TYPE bug: it sometimes tried to drop UNIQUE or PRIMARY KEY
commit | commitdiff | tree
Tom Lane [2006年1月30日 16:18:58 +0000 (16:18 +0000)]
Fix ALTER COLUMN TYPE bug: it sometimes tried to drop UNIQUE or PRIMARY KEY
constraints before FOREIGN KEY constraints that depended on them. Originally
reported by Neil Conway on 29-Jun-2005. Patch by Nakano Yoshihisa.

19 years agoWhen building a bitmap scan, must copy the bitmapqualorig expression tree
commit | commitdiff | tree
Tom Lane [2006年1月29日 18:55:48 +0000 (18:55 +0000)]
When building a bitmap scan, must copy the bitmapqualorig expression tree
to avoid sharing substructure with the lower-level indexquals. This is
currently only an issue if there are SubPlans in the indexquals, which is
uncommon but not impossible --- see bug #2218 reported by Nicholas Vinen.
We use the same kluge for indexqual vs indexqualorig in the index scans
themselves ... would be nice to clean this up someday.

19 years agoFix Assert that's no longer correct now that RowCompareExpr is indexable.
commit | commitdiff | tree
Tom Lane [2006年1月29日 17:40:00 +0000 (17:40 +0000)]
Fix Assert that's no longer correct now that RowCompareExpr is indexable.

19 years agoFix code that checks to see if an index can be considered to match the query's
commit | commitdiff | tree
Tom Lane [2006年1月29日 17:27:42 +0000 (17:27 +0000)]
Fix code that checks to see if an index can be considered to match the query's
requested sort order. It was assuming that build_index_pathkeys always
generates a pathkey per index column, which was not true if implied equality
deduction had determined that two index columns were effectively equated to
each other. Simplest fix seems to be to install an option that causes
build_index_pathkeys to support this behavior as well as the original one.
Per report from Brian Hirt.

19 years agoUndo perl's nasty locale setting on Windows. Since we can't do that as
commit | commitdiff | tree
Andrew Dunstan [2006年1月28日 16:20:31 +0000 (16:20 +0000)]
Undo perl's nasty locale setting on Windows. Since we can't do that as
elsewhere by setting the environment appropriately, we make perl do it
right after interpreter startup by calling its POSIX::setlocale().

19 years agoPer a bug report from Theo Schlossnagle, plperl_return_next() leaks
commit | commitdiff | tree
Neil Conway [2006年1月28日 03:28:15 +0000 (03:28 +0000)]
Per a bug report from Theo Schlossnagle, plperl_return_next() leaks
memory in the executor's per-query memory context. It also inefficient:
it invokes get_call_result_type() and TupleDescGetAttInMetadata() for
every call to return_next, rather than invoking them once (per PL/Perl
function call) and memoizing the result.

This patch makes the following changes:

- refactor the code to include all the "per PL/Perl function call" data
inside a single struct, "current_call_data". This means we don't need to
save and restore N pointers for every recursive call into PL/Perl, we
can just save and restore one.

- lookup the return type metadata needed by plperl_return_next() once,
and then stash it in "current_call_data", so as to avoid doing the
lookup for every call to return_next.

- create a temporary memory context in which to evaluate the return
type's input functions. This memory context is reset for each call to
return_next.

The patch appears to fix the memory leak, and substantially reduces
the overhead imposed by return_next.

19 years agoTweak initdb to reduce verbosity of progress messages, by printing just
commit | commitdiff | tree
Tom Lane [2006年1月27日 19:01:15 +0000 (19:01 +0000)]
Tweak initdb to reduce verbosity of progress messages, by printing just
one 'creating subdirectories' message instead of one per subdirectory.
The original decision to print something for each subdirectory was made
when there were only one or two of 'em; we have way too many now.
Per discussion.

19 years agoSnowball multibyte. It's a pity, but snowball sources is very diferent for multibyte and
commit | commitdiff | tree
Teodor Sigaev [2006年1月27日 16:32:31 +0000 (16:32 +0000)]
Snowball multibyte. It's a pity, but snowball sources is very diferent for multibyte and
singlebyte encodings, so we should have snowball for every encodings.

I hope that finalize multibyte support work in tsearch2, but testing is needed...

19 years agoSuppress signed-vs-unsigned-char warning.
commit | commitdiff | tree
Tom Lane [2006年1月26日 18:08:10 +0000 (18:08 +0000)]
Suppress signed-vs-unsigned-char warning.

19 years agoFix display of whole-row Var appearing at the top level of a SELECT list.
commit | commitdiff | tree
Tom Lane [2006年1月26日 17:08:19 +0000 (17:08 +0000)]
Fix display of whole-row Var appearing at the top level of a SELECT list.
While we normally prefer the notation "foo.*" for a whole-row Var, that does
not work at SELECT top level, because in that context the parser will assume
that what is wanted is to expand the "*" into a list of separate target
columns, yielding behavior different from a whole-row Var. We have to emit
just "foo" instead in that context. Per report from Sokolov Yura.

19 years agoUpdate btree_gist for CIDR/INET changes --- there's really no need to
commit | commitdiff | tree
Tom Lane [2006年1月26日 04:22:36 +0000 (04:22 +0000)]
Update btree_gist for CIDR/INET changes --- there's really no need to
have a separate set of CIDR code here, either.

19 years agoDone:
commit | commitdiff | tree
Bruce Momjian [2006年1月26日 02:50:11 +0000 (02:50 +0000)]
Done:

< * %Prevent INET cast to CIDR if the unmasked bits are not zero, or
< zero the bits
< * %Prevent INET cast to CIDR from dropping netmask, SELECT '1.1.1.1'::inet::cidr
> * -Zero umasked bits in conversion from INET cast to CIDR
> * -Prevent INET cast to CIDR from dropping netmask, SELECT '1.1.1.1'::inet::cidr

19 years agoClean up the INET-vs-CIDR situation. Get rid of the internal is_cidr flag
commit | commitdiff | tree
Tom Lane [2006年1月26日 02:35:51 +0000 (02:35 +0000)]
Clean up the INET-vs-CIDR situation. Get rid of the internal is_cidr flag
and rely exclusively on the SQL type system to tell the difference between
the types. Prevent creation of invalid CIDR values via casting from INET
or set_masklen() --- both of these operations now silently zero any bits
to the right of the netmask. Remove duplicate CIDR comparison operators,
letting the type rely on the INET operators instead.

19 years agoRemove the no-longer-useful HashItem/HashItemData level of structure.
commit | commitdiff | tree
Tom Lane [2006年1月25日 23:26:11 +0000 (23:26 +0000)]
Remove the no-longer-useful HashItem/HashItemData level of structure.
Same motivation as for BTItem.

19 years agoRemove the no-longer-useful BTItem/BTItemData level of structure, and
commit | commitdiff | tree
Tom Lane [2006年1月25日 23:04:21 +0000 (23:04 +0000)]
Remove the no-longer-useful BTItem/BTItemData level of structure, and
just refer to btree index entries as plain IndexTuples, which is what
they have been for a very long time. This is mostly just an exercise
in removing extraneous notation, but it does save a palloc/pfree cycle
per index insertion.

19 years agoRemove unnecessary PQconsumeInput call from PQputCopyData; it's redundant
commit | commitdiff | tree
Tom Lane [2006年1月25日 20:44:32 +0000 (20:44 +0000)]
Remove unnecessary PQconsumeInput call from PQputCopyData; it's redundant
because pqSendSome will absorb input data anytime it'd be forced to block.
Avoiding a kernel call per PQputCopyData call helps COPY speed materially.

Alon Goldshuv

19 years agoAllow row comparisons to be used as indexscan qualifications.
commit | commitdiff | tree
Tom Lane [2006年1月25日 20:29:24 +0000 (20:29 +0000)]
Allow row comparisons to be used as indexscan qualifications.
This completes the project to upgrade our handling of row comparisons.

19 years agoUpdate regression error message for NUMERIC range overflow. Display "1"
commit | commitdiff | tree
Bruce Momjian [2006年1月25日 18:20:22 +0000 (18:20 +0000)]
Update regression error message for NUMERIC range overflow. Display "1"
instead of "10^0".

19 years agoUpdate regression error message for NUMERIC range overflow. Display "1"
commit | commitdiff | tree
Bruce Momjian [2006年1月25日 18:15:03 +0000 (18:15 +0000)]
Update regression error message for NUMERIC range overflow. Display "1"
instead of 10^0.

19 years agoImprove error message when NUMERIC precision is exceeded.
commit | commitdiff | tree
Bruce Momjian [2006年1月25日 17:54:14 +0000 (17:54 +0000)]
Improve error message when NUMERIC precision is exceeded.

19 years agoFix unportable usage of socklen_t: should use ACCEPT_TYPE_ARG3 macro
commit | commitdiff | tree
Tom Lane [2006年1月24日 16:38:42 +0000 (16:38 +0000)]
Fix unportable usage of socklen_t: should use ACCEPT_TYPE_ARG3 macro
provided by configure, instead. Per bug #2205.

19 years ago- Synced parser and keyword list.
commit | commitdiff | tree
Michael Meskes [2006年1月24日 11:01:38 +0000 (11:01 +0000)]
- Synced parser and keyword list.
- Added another test case.

19 years agoInstead of using a numberOfRequiredKeys count to distinguish required
commit | commitdiff | tree
Tom Lane [2006年1月23日 22:31:41 +0000 (22:31 +0000)]
Instead of using a numberOfRequiredKeys count to distinguish required
and non-required keys in a btree index scan, mark the required scankeys
with private flag bits SK_BT_REQFWD and/or SK_BT_REQBKWD. This seems
at least marginally clearer to me, and it eliminates a wired-into-the-
data-structure assumption that required keys are consecutive. Even though
that assumption will remain true for the foreseeable future, having it
in there makes the code seem more complex than necessary.

19 years agoPrototype fix for typo.
commit | commitdiff | tree
Bruce Momjian [2006年1月23日 21:49:39 +0000 (21:49 +0000)]
Prototype fix for typo.

19 years agoUse is_cidr in INET/CIDR structure, rather than the generic 'type'.
commit | commitdiff | tree
Bruce Momjian [2006年1月23日 21:45:47 +0000 (21:45 +0000)]
Use is_cidr in INET/CIDR structure, rather than the generic 'type'.

19 years agoImprove wording of descriptions of SIGHUP GUC parameters, as per my
commit | commitdiff | tree
Tom Lane [2006年1月23日 18:16:41 +0000 (18:16 +0000)]
Improve wording of descriptions of SIGHUP GUC parameters, as per my
suggestion a couple days ago. Fix some cases in which the documentation
neglected to mention any restriction on when a parameter can be set.
Try to be consistent about calling parameters parameters; use the term
option only for command-line switches.

19 years agoFix typeing as Tom suggest
commit | commitdiff | tree
Teodor Sigaev [2006年1月23日 14:24:06 +0000 (14:24 +0000)]
Fix typeing as Tom suggest

19 years agoDone:
commit | commitdiff | tree
Bruce Momjian [2006年1月23日 02:59:27 +0000 (02:59 +0000)]
Done:

< o Allow an alias to be provided for the target table in
< UPDATE/DELETE
<
< This is not SQL-spec but many DBMSs allow it.
<
> o -Allow an alias to be provided for the target table in
> UPDATE/DELETE (Neil)

19 years agoImprove note about not using the target table name in the SET clause.
commit | commitdiff | tree
Tom Lane [2006年1月22日 20:34:11 +0000 (20:34 +0000)]
Improve note about not using the target table name in the SET clause.
It's not related to whether an alias is used or not.

19 years agoFix alias-for-target-table-of-UPDATE-or-DELETE patch so that alias can
commit | commitdiff | tree
Tom Lane [2006年1月22日 20:03:16 +0000 (20:03 +0000)]
Fix alias-for-target-table-of-UPDATE-or-DELETE patch so that alias can
be any ColId other than 'SET', rather than only IDENT as originally.
Per discussion.

19 years agoAllow an optional alias for the target table to be specified for UPDATE
commit | commitdiff | tree
Neil Conway [2006年1月22日 05:20:35 +0000 (05:20 +0000)]
Allow an optional alias for the target table to be specified for UPDATE
and DELETE. If specified, the alias must be used instead of the full
table name. Also, the alias currently cannot be used in the SET clause
of UPDATE.

Patch from Atsushi Ogawa, various editorialization by Neil Conway.
Along the way, make the rowtypes regression test pass if add_missing_from
is enabled, and add a new (skeletal) regression test for DELETE.

next
This is the main PostgreSQL git repository.
RSS Atom

AltStyle によって変換されたページ (->オリジナル) /