Commit Graph

15418 Commits

Author SHA1 Message Date
Tom Lane
b89140a7ec Do honest transformation and preprocessing of LIMIT/OFFSET clauses,
instead of the former kluge whereby gram.y emitted already-transformed
expressions.  This is needed so that Params appearing in these clauses
actually work correctly.  I suppose some might claim that the side effect
of 'SELECT ... LIMIT 2+2' working is a new feature, but I say this is
a bug fix.
2003-07-03 19:07:54 +00:00
Tom Lane
455891bf96 Code review for UPDATE tab SET col = DEFAULT patch ... whack it around
so it has some chance of working in rules ...
2003-07-03 16:34:26 +00:00
Michael Meskes
7b1885bf98 Fixed initialization bug and added postgres_fe.h to pgtypeslib. 2003-07-02 07:57:36 +00:00
Tom Lane
b837c99210 Support polymorphic functions in plpgsql. Along the way, replace
linked-list search of function cache with hash-table lookup.
By Joe Conway.
2003-07-01 21:47:09 +00:00
Bruce Momjian
cc3002313f Fix ecpg typo --- change ;; to ;. 2003-07-01 19:58:23 +00:00
Tom Lane
e3b1b6c0cd Aggregates can be polymorphic, using polymorphic implementation functions.
It also works to create a non-polymorphic aggregate from polymorphic
functions, should you want to do that.  Regression test added, docs still
lacking.  By Joe Conway, with some kibitzing from Tom Lane.
2003-07-01 19:10:53 +00:00
Tom Lane
02b5d8e371 Dept. of second thoughts: supporting inlining of polymorphic SQL functions
takes only a few more lines of code than preventing it, so might as well
support it.
2003-07-01 19:07:02 +00:00
Tom Lane
dc8dec6a70 Fix documentation comment about restricted environments, per Kevin Jacobs. 2003-07-01 13:52:29 +00:00
Tom Lane
e0016db7d2 STRENGH => STRENGTH, per Jon Jensen. 2003-07-01 13:49:47 +00:00
Michael Meskes
2bdd2e5dcf Use ISO dates in pgtypeslib by default.
Applied patch by Philip Yarra to fix some thread issues.
Added a new data type "decimal" which is mostly the same as our
	"numeric" but uses a fixed length array to store the digits. This is
	for compatibility with Informix and maybe others.
2003-07-01 12:40:52 +00:00
Tom Lane
f973b74583 Department of second thoughts: even if we can't run the full parser on
a SQL function with polymorphic inputs, we can at least run the raw
parser to catch silly syntactic errors.
2003-07-01 01:28:32 +00:00
Peter Eisentraut
c5faf2cf3c Translation update 2003-07-01 00:05:49 +00:00
Tom Lane
d6d07a0eea SQL functions can have arguments and results declared ANYARRAY or
ANYELEMENT.  The effect is to postpone typechecking of the function
body until runtime.  Documentation is still lacking.

Original patch by Joe Conway, modified to postpone type checking
by Tom Lane.
2003-07-01 00:04:39 +00:00
Peter Eisentraut
71e9f3b07f Change EXECUTE INTO to CREATE TABLE AS EXECUTE. 2003-07-01 00:04:31 +00:00
Dave Cramer
df08f5c003 patches by Kim Ho to fix
getByte, getSort if input has decimal or whitespace
setObject if object is a BIT
boolean not on list of SQLKeywords
2003-06-30 21:10:55 +00:00
Tom Lane
ede1734cf8 Update contrib/Makefile's list of subdirectories that it does not try
to build.
2003-06-30 20:02:53 +00:00
Tom Lane
142cb7b3f4 Put back inappropriately-removed entry for earthdistance subdirectory. 2003-06-30 19:58:57 +00:00
Tom Lane
6115224448 Rename plpython to plpythonu, and update documentation to reflect its
now-untrusted status.
2003-06-30 18:31:42 +00:00
Tom Lane
219e29784d Add GUC option log_error_verbosity to control which fields of error
reports get put into the postmaster log.  Options are TERSE, DEFAULT,
VERBOSE, with the same behavior as implemented on the client side in
libpq.
2003-06-30 16:47:02 +00:00
Barry Lind
a3cac5a3bf Minor jdbc doc updates submitted by Kris Jurka
Modified Files:
 	sgml/jdbc.sgml
2003-06-30 16:39:42 +00:00
Barry Lind
9af05a9d10 Patches applied:
1) Patch from Kris Jurka to fix IPv6 parsing of the jdbc URL
	2) Patch from Kris Jurka to fix an ArrayIndexOutOfBounds error
	   when calling moveToCurrentRow while currentRow is "beforeFirst"
	3) Patch from Kim Ho to fix add some bounds checking in setMaxRows(),
	   setQueryTimeout(), setFetchSize()

 Modified Files:
 	jdbc/org/postgresql/Driver.java.in
 	jdbc/org/postgresql/errors.properties
 	jdbc/org/postgresql/jdbc1/AbstractJdbc1Statement.java
 	jdbc/org/postgresql/jdbc2/AbstractJdbc2ResultSet.java
 	jdbc/org/postgresql/jdbc2/AbstractJdbc2Statement.java
2003-06-30 16:38:30 +00:00
Tom Lane
835bb975d8 Restructure building of join relation targetlists so that a join plan
node emits only those vars that are actually needed above it in the
plan tree.  (There were comments in the code suggesting that this was
done at some point in the dim past, but for a long time we have just
made join nodes emit everything that either input emitted.)  Aside from
being marginally more efficient, this fixes the problem noted by Peter
Eisentraut where a join above an IN-implemented-as-join might fail,
because the subplan targetlist constructed in the latter case didn't
meet the expectation of including everything.
Along the way, fix some places that were O(N^2) in the targetlist
length.  This is not all the trouble spots for wide queries by any
means, but it's a step forward.
2003-06-29 23:05:05 +00:00
Michael Meskes
cf883ea95c - Made sure Informix style decimal vars are initialized. They use a
fixed amount of digits and not an allocated one. So we have to work
  around. PostgreSQL numeric type remains the same.
- In INFORMIX_SE mode with autcommit set, make all cursors be "with
  hold". Is this really they way SE behaves?
2003-06-29 16:52:58 +00:00
Peter Eisentraut
4355d4fb21 Information schema views for group privileges, some corrections on column
privileges.
2003-06-29 15:14:41 +00:00
Peter Eisentraut
ae20518c7e It was comparing the wrong pair of columns, which triggered the previously
mentioned bug.
2003-06-29 10:18:26 +00:00
Peter Eisentraut
823bd7d129 Add missing PO files from last commit. 2003-06-29 10:13:13 +00:00
Michael Meskes
9aeb1eff24 Just another sync. 2003-06-29 09:25:19 +00:00
Tom Lane
bee217924d Support expressions of the form 'scalar op ANY (array)' and
'scalar op ALL (array)', where the operator is applied between the
lefthand scalar and each element of the array.  The operator must
yield boolean; the result of the construct is the OR or AND of the
per-element results, respectively.

Original coding by Joe Conway, after an idea of Peter's.  Rewritten
by Tom to keep the implementation strictly separate from subqueries.
2003-06-29 00:33:44 +00:00
Peter Eisentraut
df7618020b Merge PO file updates from 7.3 branch. 2003-06-28 22:31:01 +00:00
Peter Eisentraut
2f80f81e5e Make information schema aware of arrays.
The view element_types is currently not functional, awaiting some fixes in
the planner (reported on -hackers).
2003-06-28 20:50:08 +00:00
Bruce Momjian
c1fad341b4 Add:
> * Automatically place fixed-width, NOT NULL columns first in a table
2003-06-28 18:05:12 +00:00
Bruce Momjian
e8902f00cc Group ISBN/ISSN definitions. 2003-06-28 00:36:40 +00:00
Tom Lane
f9ebf36970 Update psql for some features of new FE/BE protocol. There is a
client-side AUTOCOMMIT mode now: '\set AUTOCOMMIT off' supports
SQL-spec commit behavior.  Get rid of LO_TRANSACTION hack --- the
LO operations just work now, using libpq's ability to track the
transaction status.  Add a VERBOSE variable to control verboseness
of error message display, and add a %T prompt-string code to show
current transaction-block status.  Superuser state display in the
prompt string correctly follows SET SESSION AUTHORIZATION commands.
Control-C works to get out of COPY IN state.
2003-06-28 00:12:40 +00:00
Tom Lane
ea20397b79 When using new protocol, PQexec can get out of a COPY IN or COPY OUT
state by itself, so do so.
2003-06-28 00:06:01 +00:00
Bruce Momjian
bf75f1a063 Adjust pgtest grep. 2003-06-27 22:04:50 +00:00
Bruce Momjian
757b718476 Update pgtest to use 'gmake check'. 2003-06-27 21:46:20 +00:00
Tom Lane
ea886339b8 Add is_superuser parameter reporting, soon to be used by psql. 2003-06-27 19:08:38 +00:00
Bruce Momjian
3e0bdfadc3 Document kernel changes needed for BSD/OS 4.3. 2003-06-27 18:20:50 +00:00
Tom Lane
7f1249a8d2 Fix compile warnings. 2003-06-27 17:07:03 +00:00
Tom Lane
7dc5472d48 Missing calls to PQclear in large_obj.c and describe.c.
Greg Sabino Mullane
2003-06-27 16:55:23 +00:00
Peter Eisentraut
b256f24264 First batch of object rename commands. 2003-06-27 14:45:32 +00:00
Bruce Momjian
5bac7d11dd Remove as duplicate:
< * Improve performance for queries with many columns
2003-06-27 04:35:41 +00:00
Bruce Momjian
7e741ba39c Add:
> * Improve performance for queries with many columns
2003-06-27 02:48:44 +00:00
Tom Lane
b3c0551eda Create real array comparison functions (that use the element datatype's
comparison functions), replacing the highly bogus bitwise array_eq.  Create
a btree index opclass for ANYARRAY --- it is now possible to create indexes
on array columns.
Arrange to cache the results of catalog lookups across multiple array
operations, instead of repeating the lookups on every call.
Add string_to_array and array_to_string functions.
Remove singleton_array, array_accum, array_assign, and array_subscript
functions, since these were for proof-of-concept and not intended to become
supported functions.
Minor adjustments to behavior in some corner cases with empty or
zero-dimensional arrays.

Joe Conway (with some editorializing by Tom Lane).
2003-06-27 00:33:26 +00:00
Tom Lane
0c985ab5a8 Add comment pointing out that XLByteToPrevSeg macro is not broken. 2003-06-26 18:23:07 +00:00
Michael Meskes
4505653e54 Added just another compatibility level for Informix. 2003-06-26 11:37:05 +00:00
Bruce Momjian
b143210639 Wrap LONG_LONG_MIN redfinition around HAVE_LONG_LONG_INT_64. 2003-06-26 01:45:04 +00:00
Bruce Momjian
095a0c83d5 Fix compile problem for missing LONG_LONG_MIN on BSD/OS. 2003-06-26 01:33:23 +00:00
Bruce Momjian
9279a802c4 Add:
> * Create improved PostgreSQL introductory documentation for the PHP
>   manuals (Rory)
2003-06-25 21:56:55 +00:00
Bruce Momjian
ae81bb3cdc sync 2003-06-25 21:55:44 +00:00