Commit Graph

7963 Commits

Author SHA1 Message Date
Tom Lane
39ee0f55d7 Fix relation-to-view conversion so that it doesn't try to convert a plain
relation to a view when you create an ON INSERT/UPDATE/DELETE rule ...
2000-09-12 20:38:09 +00:00
Tom Lane
367bc8f1af Update expected/horology-no-DST-before-1970.out for new horology test.
There are still two out-of-date variants for horology; shame shame.
2000-09-12 20:11:23 +00:00
Tom Lane
3bfbe6991a Clean up compiler warning. 2000-09-12 19:41:40 +00:00
Tom Lane
d49a73bbc2 Suppress compile warnings caused by failure to use PG_RETURN macro. 2000-09-12 19:39:42 +00:00
Bruce Momjian
339ce34b87 As if my JDBC patch hasn't already caused enough grief, there is now a
one-line change necessary. Due to the Mark Holloman "New Relkind for
Views" patch, my support for views in the driver will need to be updated
to match. The change to DatabaseMetaData.getTableTypes[][] is as
follows:

-    {"VIEW",           "(relkind='r' and relhasrules='t' and relname !~
'^pg_' and relname !~ '^xinv')"},
+    {"VIEW",           "(relkind='v' and relname !~ '^pg_' and relname
!~ '^xinv')"},

Christopher Cain
2000-09-12 18:56:04 +00:00
Tom Lane
cdc7170ebe Remove incorrect extra heap_close when deleting a builtin function. 2000-09-12 16:48:55 +00:00
Bruce Momjian
b3fe924f2f Update FAQ. 2000-09-12 15:47:20 +00:00
Vadim B. Mikheev
8e95321476 Btree WAL records. 2000-09-12 06:07:52 +00:00
Thomas G. Lockhart
0d93504c40 Add regression tests for date, time, and time with time zone types.
Modify date->timestamp conversion to use mktime().
 This should do better than before around Daylight Savings Time
 transitions.
2000-09-12 05:42:20 +00:00
Thomas G. Lockhart
4d745dadc9 Modify date->timestamp conversion to use mktime().
This should do better than before around Daylight Savings Time
 transitions.
2000-09-12 05:41:37 +00:00
Thomas G. Lockhart
3bb28381d3 Consolidate FAQ and README info on character sets into new chapter. 2000-09-12 05:37:09 +00:00
Thomas G. Lockhart
e7ac7dc689 Update to refer to more recent stylesheets in my home directory.
These stylesheets are pretty old, but the 15x series crashes FreeBSD jade.
2000-09-12 05:36:06 +00:00
Thomas G. Lockhart
1cd042d353 Clean up markup to be more correct.
From "He Weiping (Laser Henry)" <laser@zhengmai.com.cn>.
2000-09-12 05:34:28 +00:00
Thomas G. Lockhart
2ceee7a22b Fix inconsistancies in field names. From Tom Samplonius <tom@sdf.com>. 2000-09-12 05:30:06 +00:00
Bruce Momjian
aebfaf7861 Attached is a patch that prevents a NullPointerException in the JDBC
driver if the translations files have not been properly installed.  (We
carefully avoided installing the translations file in a controlled
environment here specifically to test for such a bug. :-)

See attached description for more details.

William
--
William Webber                               william@peopleweb.net.au
2000-09-12 05:18:25 +00:00
Bruce Momjian
7f171b599a This patch implements the following command:
ALTER TABLE <tablename> OWNER TO <username>

Only a superuser may execute the command.

--
Mark Hollomon
mhh@mindspring.com
2000-09-12 05:09:57 +00:00
Bruce Momjian
65edb54186 Attached are a patch to allow the charset encoding used by the JDBC
driver to be set, and a description of said patch.  Please refer to
the latter for more information.

William
--
William Webber                               william@peopleweb.net.au
2000-09-12 04:58:50 +00:00
Bruce Momjian
4f5cdadf03 Applied to jdbc1 and jdbc2.
This is a patch which lets the DatabaseMetaData return the object type
when getTables(....) is called.  It does not really fix any bug, but it
fills in some functionality that should be there anyway.  The diff
included here is off of the CVS as of just now :)

----------------------------------------------------------------
Travis Bauer | CS Grad Student | IU |www.cs.indiana.edu/~trbauer
----------------------------------------------------------------
2000-09-12 04:51:43 +00:00
Bruce Momjian
264c068207 This patch implements a different "relkind"
for views. Views are now have a "relkind" of
RELKIND_VIEW instead of RELKIND_RELATION.

Also, views no longer have actual heap storage
files.

The following changes were made

1. CREATE VIEW sets the new relkind

2. The executor complains if a DELETE or
        INSERT references a view.

3. DROP RULE complains if an attempt is made
        to delete a view SELECT rule.

4. CREATE RULE "_RETmytable" AS ON SELECT TO mytable DO INSTEAD ...
        1. checks to make sure mytable is empty.
        2. sets the relkind to RELKIND_VIEW.
        3. deletes the heap storage files.
5. LOCK myview is not allowed. :)


6. the regression test type_sanity was changed to
        account for the new relkind value.

7. CREATE INDEX ON myview ... is not allowed.

8. VACUUM myview is not allowed.
        VACUUM automatically skips views when do the entire
        database.

9. TRUNCATE myview is not allowed.


THINGS LEFT TO THINK ABOUT

o pg_views

o pg_dump

o pgsql (\d \dv)
o Do we really want to be able to inherit from views?

o Is 'DROP TABLE myview' OK?

--
Mark Hollomon
2000-09-12 04:49:17 +00:00
Bruce Momjian
c0af8babe3 autoconf 2000-09-12 04:43:21 +00:00
Bruce Momjian
7ef9db82aa Attached is a small patch that fixes a small "bug" with specifying the
souce directory of OpenSSL as argument to the --with-openssl - argument.

./configure --with-openssl=/tmp/openssl-0.9.5/ - the libcrypto.a is in
the
"base" directory, not lib/.

Also, there's 2-3 typo fixes to the documentation for SSL - it should be
"server.crt", not "server.cert".

Dominic J. Eidson
2000-09-12 04:41:17 +00:00
Bruce Momjian
1da2feea83 Previous patch backed out.
Here is a patch against CVS (without my earlier patch)
to disallow

LOCK x

if x is a view.

It does not use the SPI interface.

--
Mark Hollomon
2000-09-12 04:33:18 +00:00
Bruce Momjian
7361e91ab7 This patch is for the TODO item
* Disallow LOCK on view

src/backend/commands/command.c is the only affected file

--
Mark Hollomon
2000-09-12 04:30:08 +00:00
Bruce Momjian
5c6fa5ee32 This patch, when applied in src/pl will unbreak plperl in
7.0.2 release. Sorry, if that's fixed ages ago - I don't track
development versions of PostgreSQL.

Patch is just a little bit tested (some valid functions created and
successfully run as well as some erroneous ones created and emitted proper
error messages when used).

My platform is FreeBSD 5.0-CURRENT (with perl 5.6.0 provided in the
base system).

Alex Kapranoff
2000-09-12 04:28:30 +00:00
Bruce Momjian
879639b5be This patch for the 7.0.2 JDBC interface addresses four issues I
encountered while getting my reporting tool up and running with the
driver. All changes are in the DatabaseMetaData class.

Problem: The getDatabaseProductVersion() method was returning "6.5.2"
Resolution: Changed it to return "7.0.2"

Problem: A call to getTables() with an unsupported table type (in the
String array) resulted in a malformed SQL statement and subsequent
parsing error
Resolution: Unsupported table types are now ignored without error

Problem: In a getTables() call, tables and views were both returned by
the "TABLE" table type, and the "VIEW" table type was unsupported
Resolution: Changed the "TABLE" type to return only physical tables and
added support for the "VIEW" table type (returning only views)

Problem: The getIdentifierQuoteString() method was returning null
Resolution: This method now returns a double-quote

Christopher Cain
2000-09-12 04:16:59 +00:00
Bruce Momjian
0ba0e32172 O.K. -
Here's the multibyte aware version of my patch to fix the truncation
of the rulename autogenerated during a CREATE VIEW. I've modified all
the places in the backend that want to construct the rulename to use
the MakeRetrieveViewRuleName(), where I put the #ifdef MULTIBYTE, so
that's the only place that knows how to construct a view rulename. Except
pg_dump, where I replicated the code, since it's a standalone binary.

The only effect the enduser will see is that views with names len(name)
> NAMEDATALEN-4 will fail to be created, if the derived rulename clases
with an existing rule: i.e. the user is trying to create two views with
long names whose first difference is past NAMEDATALEN-4 (but before
NAMEDATALEN: that'll error out after the viewname truncation.) In no
case will the user get left with a table without a view rule, as the
current code does.

Ross Reedstrom
2000-09-12 04:15:58 +00:00
Bruce Momjian
b1777d5f99 Irix fix:
The regression tests abstime, horology, int2, int4, and tinterval fail
by default.  They will pass if comparison is made to one of the
variant expected/*.out files.

(A related problem is that the geometry test fails.  This seems to be
just a matter of FP precision but more rigorous inspection is needed.
No existing expected/geometry-*.out variant matches.)


Pete Forman
2000-09-12 04:12:47 +00:00
Thomas G. Lockhart
2c2a9a0fab Define ZIP rather than GZIP.
Define ZIPSUFFIX to allow substitution of something other than gzip.
2000-09-12 03:47:36 +00:00
Vadim B. Mikheev
b09bd214aa This is temporal place holder for Relation File Node till
reloid.version/unique_id file naming is not implemented
2000-09-10 00:06:52 +00:00
Bruce Momjian
c44ed0fb79 Update FAQ. 2000-09-08 19:15:23 +00:00
Peter Eisentraut
da06bc1d40 Make building scripts kind of consistent in look and feel, kind of immune
to parallel make, kind of resistent to corruption due to incomplete builds.
2000-09-08 18:29:28 +00:00
Vadim B. Mikheev
f2bfe8a24c Heap redo/undo (except for tuple moving used by vacuum). 2000-09-07 09:58:38 +00:00
Tatsuo Ishii
c18c321365 Fix psql crash. If MULTIBYTE is enabled, \l+ dumps core due to
SQL buffer in listAllDbs is just too small.
2000-09-07 04:55:27 +00:00
Peter Eisentraut
ffd9aaa0a9 A bit of cleanup after SSL patch. Add it to config file, improve
documentation.
2000-09-06 19:54:52 +00:00
Peter Eisentraut
6dc249610a Code cleanup of user name and user id handling in the backend. The current
user is now defined in terms of the user id, the user name is only computed
upon request (for display purposes). This is kind of the opposite of the
previous state, which would maintain the user name and compute the user id
for permission checks.

Besides perhaps saving a few cycles (integer vs string), this now creates a
single point of attack for changing the user id during a connection, for
purposes of "setuid" functions, etc.
2000-09-06 14:15:31 +00:00
Jan Wieck
daf1e3a702 Added functions
quote_ident(text) returns text
    quote_literal(text) returns text

These are handy to build up properly quoted query strings
for the new PL/pgSQL EXECUTE functionality to submit
dynamic DDL statements.

Jan
2000-09-05 20:25:14 +00:00
Peter Eisentraut
d7f1e11026 GZIP vs ZIP variable naming messed up 2000-09-05 18:45:38 +00:00
Jan Wieck
c59077dd7b GET DIAGNOSTICS statement to PL/pgSQL to access SPI_processed
and SPI_return values. Patch from Philip Warner.

Jan
2000-09-05 09:02:18 +00:00
Peter Eisentraut
4bfb75aece Change initdb to not delete PGDATA directory unless it was created by
initdb itself. Refuse to run on existing but non-empty PGDATA directory.
2000-09-01 13:15:27 +00:00
Peter Eisentraut
424f0edcb8 Fix relative path references so that make knowns which dependencies refer
to one another. Sort out builddir vs srcdir variable namings. Remove some
now obsoleted make variables.
2000-08-31 16:12:35 +00:00
Jan Wieck
d4266620e1 Added EXECUTE command to PL/pgSQL for execution of
dynamic SQL and utility statements.

Jan
2000-08-31 13:26:16 +00:00
Tom Lane
16dc9bafb7 AbortOutOfAnyTransaction() just before backend exit, to ensure that
resources are cleaned up if the user disconnected mid-transaction.
Great thanks to Hiroshi for pointing out what should have been obvious...
2000-08-30 20:30:06 +00:00
Bruce Momjian
7bc654bb16 SSL patch from Magnus 2000-08-30 14:54:24 +00:00
Hiroshi Inoue
3498ea8308 Improve the following.
=# create table t (id int4 unique);
NOTICE:  CREATE TABLE/UNIQUE will create implicit index 't_id_key' for table 't'
 =# begin;
 query: drop table t;
NOTICE:  Caution: DROP TABLE cannot be rolled back, so don't abort now
NOTICE:  Caution: DROP INDEX cannot be rolled back, so don't abort now
 =# rollback;
 =# drop table t;
NOTICE:  mdopen: couldn't open t: No such file or directory
NOTICE:  RelationIdBuildRelation: smgropen(t): No such file or directory
NOTICE:  mdopen: couldn't open t: No such file or directory
NOTICE:  mdopen: couldn't open t: No such file or directory
NOTICE:  mdopen: couldn't open t_id_key: No such file or directory
NOTICE:  RelationIdBuildRelation: smgropen(t_id_key): No such file or directory
NOTICE:  mdopen: couldn't open t: No such file or directory
NOTICE:  RelationIdBuildRelation: smgropen(t): No such file or directory
NOTICE:  mdopen: couldn't open t: No such file or directory
ERROR:  cannot open relation t
2000-08-30 08:48:55 +00:00
Bruce Momjian
67cd018e77 Startup is actually start-up. 2000-08-29 20:02:09 +00:00
Tom Lane
883d1cc1cc Include kernel error message in failed-to-open file reports. 2000-08-29 16:40:19 +00:00
Peter Eisentraut
ef6164de1d Revert removal of signed, volatile, and signal handler arg type tests. 2000-08-29 09:36:51 +00:00
Bruce Momjian
dffd8cac3d * to_char:
- full support for IW (ISO week) and vice versa conversion for IW too
    (the to_char 'week' support is now complete and I hope correct).

  Thomas, I use for IW code from timestamp.c, for this I create separate
  function date2isoweek() from original 'case DTK_WEEK:' code in the
  timestamp_part(). I mean will better use one code for same feature in
  date_part() and in to_char(). The isoweek2date() is added to timestamp.c
  too. Right?

  IMHO in 7.1 will all to_char's features complete. It is cca 41 templates
  for date/time and cca 21 for numbers.

 * to_ascii:

   - gcc, is it correct now? :-)


  In the patch is documentation for to_char's IW and for to_ascii().

                                                        Karel
2000-08-29 04:41:48 +00:00
Bruce Momjian
d4f626507c This is mostly the same as an earlier patch I
didn't hear anything about, but which would
have broken with the function manager changes
anyway.

Well, this patch checks that a unique constraint
of some form (unique or pk) is on the referenced
columns of an FK constraint and that the columns
in the referencing table exist at creation time.
The former is to move closer to SQL compatibility
and the latter is in answer to a bug report.
I also added a basic check of this functionality
to the alter table and foreign key regression
tests.

Stephan Szabo
sszabo@bigpanda.com
2000-08-29 04:20:47 +00:00
Bruce Momjian
c51041f4ba Here is a patch against the same cvs tree as the SSL patch (Aug 20).
I hope I didn't mess the SGML up too bad, but somebody should definitly
look that over. I tried to steal as much as I could from around :-)

This patch updates:
* Installation instructions (paragraph on how to compile with openssl)
* Documentation of pg_hba.conf (added "hostssl" record docs)
* Libpq documentation (added connection option, documentation of
  PQgetssl() function)
* Add section on SSL to "Server Runtime Environment"

If you beleive any particular area needs more attention, please let me know.

//Magnus
2000-08-29 04:15:43 +00:00