diff options
author | Bruce Momjian <bruce@momjian.us> | 2002-08-13 20:40:44 +0000 |
---|---|---|
committer | Bruce Momjian <bruce@momjian.us> | 2002-08-13 20:40:44 +0000 |
commit | 46bb23ac016714065711cf2a780e080c7310d66e (patch) | |
tree | 24c508c5c37af724da039332f60dbf31039993a5 /src | |
parent | f8b4a2e0f0a0dd7d1cefd53d8048bfb58f33bd37 (diff) | |
download | postgresql-46bb23ac016714065711cf2a780e080c7310d66e.tar.gz postgresql-46bb23ac016714065711cf2a780e080c7310d66e.zip |
Change NAMEDATALEN to 64, INDEX_MAX_KEYS/MAX_FUNC_ARGS to 32, per discussion on hackers.
Diffstat (limited to 'src')
-rw-r--r-- | src/bin/psql/command.c | 4 | ||||
-rw-r--r-- | src/include/catalog/catversion.h | 4 | ||||
-rw-r--r-- | src/include/pg_config.h.in | 4 | ||||
-rw-r--r-- | src/include/postgres_ext.h | 4 | ||||
-rw-r--r-- | src/interfaces/jdbc/org/postgresql/errors.properties | 2 | ||||
-rw-r--r-- | src/interfaces/jdbc/org/postgresql/util/Serialize.java | 12 | ||||
-rw-r--r-- | src/test/regress/expected/name.out | 88 | ||||
-rw-r--r-- | src/test/regress/sql/name.sql | 18 |
8 files changed, 69 insertions, 67 deletions
diff --git a/src/bin/psql/command.c b/src/bin/psql/command.c index 9be47a90c91..e483863bbb0 100644 --- a/src/bin/psql/command.c +++ b/src/bin/psql/command.c @@ -3,7 +3,7 @@ * * Copyright 2000-2002 by PostgreSQL Global Development Group * - * $Header: /cvsroot/pgsql/src/bin/psql/command.c,v 1.75 2002/08/10 03:56:23 tgl Exp $ + * $Header: /cvsroot/pgsql/src/bin/psql/command.c,v 1.76 2002/08/13 20:40:44 momjian Exp $ */ #include "postgres_fe.h" #include "command.h" @@ -1513,7 +1513,7 @@ editFile(const char *fname) sys = malloc(strlen(editorName) + strlen(fname) + 32 + 1); if (!sys) return false; - sprintf(sys, "exec %s %s", editorName, fname); + snprintf(sys, 32, "exec %s %s", editorName, fname); result = system(sys); if (result == -1) psql_error("could not start editor %s\n", editorName); diff --git a/src/include/catalog/catversion.h b/src/include/catalog/catversion.h index 792b2858f1d..8f06566e77c 100644 --- a/src/include/catalog/catversion.h +++ b/src/include/catalog/catversion.h @@ -37,7 +37,7 @@ * Portions Copyright (c) 1996-2002, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * - * $Id: catversion.h,v 1.147 2002/08/09 16:45:14 tgl Exp $ + * $Id: catversion.h,v 1.148 2002/08/13 20:40:44 momjian Exp $ * *------------------------------------------------------------------------- */ @@ -53,6 +53,6 @@ */ /* yyyymmddN */ -#define CATALOG_VERSION_NO 200208091 +#define CATALOG_VERSION_NO 200208131 #endif diff --git a/src/include/pg_config.h.in b/src/include/pg_config.h.in index 01d5465ad84..ea91f79e324 100644 --- a/src/include/pg_config.h.in +++ b/src/include/pg_config.h.in @@ -8,7 +8,7 @@ * or in pg_config.h afterwards. Of course, if you edit pg_config.h, then your * changes will be overwritten the next time you run configure. * - * $Id: pg_config.h.in,v 1.26 2002/07/31 17:19:54 tgl Exp $ + * $Id: pg_config.h.in,v 1.27 2002/08/13 20:40:44 momjian Exp $ */ #ifndef PG_CONFIG_H @@ -162,7 +162,7 @@ * switch statement in fmgr_oldstyle() in src/backend/utils/fmgr/fmgr.c. * But consider converting such functions to new-style instead... */ -#define INDEX_MAX_KEYS 16 +#define INDEX_MAX_KEYS 32 #define FUNC_MAX_ARGS INDEX_MAX_KEYS /* diff --git a/src/include/postgres_ext.h b/src/include/postgres_ext.h index 3249ce4350b..d4e5b4ebbfa 100644 --- a/src/include/postgres_ext.h +++ b/src/include/postgres_ext.h @@ -15,7 +15,7 @@ * use header files that are otherwise internal to Postgres to interface * with the backend. * - * $Id: postgres_ext.h,v 1.10 2002/04/30 19:53:03 tgl Exp $ + * $Id: postgres_ext.h,v 1.11 2002/08/13 20:40:44 momjian Exp $ * *------------------------------------------------------------------------- */ @@ -41,6 +41,6 @@ typedef unsigned int Oid; * * NOTE that databases with different NAMEDATALEN's cannot interoperate! */ -#define NAMEDATALEN 32 +#define NAMEDATALEN 64 #endif diff --git a/src/interfaces/jdbc/org/postgresql/errors.properties b/src/interfaces/jdbc/org/postgresql/errors.properties index 26ff2f724b2..d03673351b1 100644 --- a/src/interfaces/jdbc/org/postgresql/errors.properties +++ b/src/interfaces/jdbc/org/postgresql/errors.properties @@ -61,7 +61,7 @@ postgresql.res.colname:The column name {0} not found. postgresql.res.colrange:The column index is out of range. postgresql.res.nextrequired:Result set not positioned properly, perhaps you need to call next(). postgresql.serial.interface:You cannot serialize an interface. -postgresql.serial.namelength:Class & Package name length cannot be longer than 32 characters. {0} is {1} characters. +postgresql.serial.namelength:Class & Package name length cannot be longer than 64 characters. {0} is {1} characters. postgresql.serial.noclass:No class found for {0} postgresql.serial.table:The table for {0} is not in the database. Contact the DBA, as the database is in an inconsistent state. postgresql.serial.underscore:Class names may not have _ in them. You supplied {0}. diff --git a/src/interfaces/jdbc/org/postgresql/util/Serialize.java b/src/interfaces/jdbc/org/postgresql/util/Serialize.java index f1f12520baa..8898e1ecf4e 100644 --- a/src/interfaces/jdbc/org/postgresql/util/Serialize.java +++ b/src/interfaces/jdbc/org/postgresql/util/Serialize.java @@ -57,7 +57,7 @@ import java.sql.*; * There are a number of limitations placed on the java class to be * used by Serialize: * <ul> - * <li>The class name must be less than 32 chars long and must be all lowercase. + * <li>The class name must be less than 64 chars long and must be all lowercase. * This is due to limitations in Postgres about the size of table names. * The name must be all lowercase since table names in Postgres are * case insensitive and the relname is stored in lowercase. Unless some @@ -577,7 +577,7 @@ public class Serialize * * Because of this, a Class name may not have _ in the name.<p> * Another limitation, is that the entire class name (including packages) - * cannot be longer than 32 characters (a limit forced by PostgreSQL). + * cannot be longer than 64 characters (a limit forced by PostgreSQL). * * @param name Class name * @return PostgreSQL table name @@ -590,16 +590,16 @@ public class Serialize if (name.indexOf("_") > -1) throw new PSQLException("postgresql.serial.underscore"); - // Postgres table names can only be 32 character long. - // Reserve 1 char, so allow only up to 31 chars. + // Postgres table names can only be 64 character long. + // Reserve 1 char, so allow only up to 63 chars. // If the full class name with package is too long // then just use the class name. If the class name is // too long throw an exception. // - if ( name.length() > 31 ) + if ( name.length() > 63 ) { name = name.substring(name.lastIndexOf(".") + 1); - if ( name.length() > 31 ) + if ( name.length() > 63 ) throw new PSQLException("postgresql.serial.namelength", name, new Integer(name.length())); } return name.replace('.', '_'); diff --git a/src/test/regress/expected/name.out b/src/test/regress/expected/name.out index ea9a6e6f64d..ce876c4eb39 100644 --- a/src/test/regress/expected/name.out +++ b/src/test/regress/expected/name.out @@ -19,86 +19,86 @@ SELECT name 'name string' = name 'name string ' AS "False"; -- -- CREATE TABLE NAME_TBL(f1 name); -INSERT INTO NAME_TBL(f1) VALUES ('ABCDEFGHIJKLMNOP'); -INSERT INTO NAME_TBL(f1) VALUES ('abcdefghijklmnop'); +INSERT INTO NAME_TBL(f1) VALUES ('1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQR'); +INSERT INTO NAME_TBL(f1) VALUES ('1234567890abcdefghijklmnopqrstuvwxyz1234567890abcdefghijklmnopqr'); INSERT INTO NAME_TBL(f1) VALUES ('asdfghjkl;'); INSERT INTO NAME_TBL(f1) VALUES ('343f%2a'); INSERT INTO NAME_TBL(f1) VALUES ('d34aaasdf'); INSERT INTO NAME_TBL(f1) VALUES (''); -INSERT INTO NAME_TBL(f1) VALUES ('1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ'); +INSERT INTO NAME_TBL(f1) VALUES ('1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ'); SELECT '' AS seven, NAME_TBL.*; seven | f1 --------+--------------------------------- - | ABCDEFGHIJKLMNOP - | abcdefghijklmnop +-------+----------------------------------------------------------------- + | 1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQ + | 1234567890abcdefghijklmnopqrstuvwxyz1234567890abcdefghijklmnopq | asdfghjkl; | 343f%2a | d34aaasdf | - | 1234567890ABCDEFGHIJKLMNOPQRSTU + | 1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQ (7 rows) -SELECT '' AS six, c.f1 FROM NAME_TBL c WHERE c.f1 <> 'ABCDEFGHIJKLMNOP'; +SELECT '' AS six, c.f1 FROM NAME_TBL c WHERE c.f1 <> '1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQR'; six | f1 ------+--------------------------------- - | abcdefghijklmnop +-----+----------------------------------------------------------------- + | 1234567890abcdefghijklmnopqrstuvwxyz1234567890abcdefghijklmnopq | asdfghjkl; | 343f%2a | d34aaasdf | - | 1234567890ABCDEFGHIJKLMNOPQRSTU -(6 rows) +(5 rows) -SELECT '' AS one, c.f1 FROM NAME_TBL c WHERE c.f1 = 'ABCDEFGHIJKLMNOP'; +SELECT '' AS one, c.f1 FROM NAME_TBL c WHERE c.f1 = '1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQR'; one | f1 ------+------------------ - | ABCDEFGHIJKLMNOP -(1 row) +-----+----------------------------------------------------------------- + | 1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQ + | 1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQ +(2 rows) -SELECT '' AS three, c.f1 FROM NAME_TBL c WHERE c.f1 < 'ABCDEFGHIJKLMNOP'; +SELECT '' AS three, c.f1 FROM NAME_TBL c WHERE c.f1 < '1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQR'; three | f1 --------+--------------------------------- - | 343f%2a +-------+---- | - | 1234567890ABCDEFGHIJKLMNOPQRSTU -(3 rows) +(1 row) -SELECT '' AS four, c.f1 FROM NAME_TBL c WHERE c.f1 <= 'ABCDEFGHIJKLMNOP'; +SELECT '' AS four, c.f1 FROM NAME_TBL c WHERE c.f1 <= '1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQR'; four | f1 -------+--------------------------------- - | ABCDEFGHIJKLMNOP - | 343f%2a +------+----------------------------------------------------------------- + | 1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQ | - | 1234567890ABCDEFGHIJKLMNOPQRSTU -(4 rows) + | 1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQ +(3 rows) -SELECT '' AS three, c.f1 FROM NAME_TBL c WHERE c.f1 > 'ABCDEFGHIJKLMNOP'; +SELECT '' AS three, c.f1 FROM NAME_TBL c WHERE c.f1 > '1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQR'; three | f1 --------+------------------ - | abcdefghijklmnop +-------+----------------------------------------------------------------- + | 1234567890abcdefghijklmnopqrstuvwxyz1234567890abcdefghijklmnopq | asdfghjkl; + | 343f%2a | d34aaasdf -(3 rows) +(4 rows) -SELECT '' AS four, c.f1 FROM NAME_TBL c WHERE c.f1 >= 'ABCDEFGHIJKLMNOP'; +SELECT '' AS four, c.f1 FROM NAME_TBL c WHERE c.f1 >= '1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQR'; four | f1 -------+------------------ - | ABCDEFGHIJKLMNOP - | abcdefghijklmnop +------+----------------------------------------------------------------- + | 1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQ + | 1234567890abcdefghijklmnopqrstuvwxyz1234567890abcdefghijklmnopq | asdfghjkl; + | 343f%2a | d34aaasdf -(4 rows) + | 1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQ +(6 rows) SELECT '' AS seven, c.f1 FROM NAME_TBL c WHERE c.f1 ~ '.*'; seven | f1 --------+--------------------------------- - | ABCDEFGHIJKLMNOP - | abcdefghijklmnop +-------+----------------------------------------------------------------- + | 1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQ + | 1234567890abcdefghijklmnopqrstuvwxyz1234567890abcdefghijklmnopq | asdfghjkl; | 343f%2a | d34aaasdf | - | 1234567890ABCDEFGHIJKLMNOPQRSTU + | 1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQ (7 rows) SELECT '' AS zero, c.f1 FROM NAME_TBL c WHERE c.f1 !~ '.*'; @@ -108,11 +108,13 @@ SELECT '' AS zero, c.f1 FROM NAME_TBL c WHERE c.f1 !~ '.*'; SELECT '' AS three, c.f1 FROM NAME_TBL c WHERE c.f1 ~ '[0-9]'; three | f1 --------+--------------------------------- +-------+----------------------------------------------------------------- + | 1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQ + | 1234567890abcdefghijklmnopqrstuvwxyz1234567890abcdefghijklmnopq | 343f%2a | d34aaasdf - | 1234567890ABCDEFGHIJKLMNOPQRSTU -(3 rows) + | 1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQ +(5 rows) SELECT '' AS two, c.f1 FROM NAME_TBL c WHERE c.f1 ~ '.*asdf.*'; two | f1 diff --git a/src/test/regress/sql/name.sql b/src/test/regress/sql/name.sql index 882364fba8a..bcf3ac90feb 100644 --- a/src/test/regress/sql/name.sql +++ b/src/test/regress/sql/name.sql @@ -14,9 +14,9 @@ SELECT name 'name string' = name 'name string ' AS "False"; CREATE TABLE NAME_TBL(f1 name); -INSERT INTO NAME_TBL(f1) VALUES ('ABCDEFGHIJKLMNOP'); +INSERT INTO NAME_TBL(f1) VALUES ('1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQR'); -INSERT INTO NAME_TBL(f1) VALUES ('abcdefghijklmnop'); +INSERT INTO NAME_TBL(f1) VALUES ('1234567890abcdefghijklmnopqrstuvwxyz1234567890abcdefghijklmnopqr'); INSERT INTO NAME_TBL(f1) VALUES ('asdfghjkl;'); @@ -26,22 +26,22 @@ INSERT INTO NAME_TBL(f1) VALUES ('d34aaasdf'); INSERT INTO NAME_TBL(f1) VALUES (''); -INSERT INTO NAME_TBL(f1) VALUES ('1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ'); +INSERT INTO NAME_TBL(f1) VALUES ('1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ'); SELECT '' AS seven, NAME_TBL.*; -SELECT '' AS six, c.f1 FROM NAME_TBL c WHERE c.f1 <> 'ABCDEFGHIJKLMNOP'; +SELECT '' AS six, c.f1 FROM NAME_TBL c WHERE c.f1 <> '1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQR'; -SELECT '' AS one, c.f1 FROM NAME_TBL c WHERE c.f1 = 'ABCDEFGHIJKLMNOP'; +SELECT '' AS one, c.f1 FROM NAME_TBL c WHERE c.f1 = '1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQR'; -SELECT '' AS three, c.f1 FROM NAME_TBL c WHERE c.f1 < 'ABCDEFGHIJKLMNOP'; +SELECT '' AS three, c.f1 FROM NAME_TBL c WHERE c.f1 < '1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQR'; -SELECT '' AS four, c.f1 FROM NAME_TBL c WHERE c.f1 <= 'ABCDEFGHIJKLMNOP'; +SELECT '' AS four, c.f1 FROM NAME_TBL c WHERE c.f1 <= '1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQR'; -SELECT '' AS three, c.f1 FROM NAME_TBL c WHERE c.f1 > 'ABCDEFGHIJKLMNOP'; +SELECT '' AS three, c.f1 FROM NAME_TBL c WHERE c.f1 > '1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQR'; -SELECT '' AS four, c.f1 FROM NAME_TBL c WHERE c.f1 >= 'ABCDEFGHIJKLMNOP'; +SELECT '' AS four, c.f1 FROM NAME_TBL c WHERE c.f1 >= '1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQR'; SELECT '' AS seven, c.f1 FROM NAME_TBL c WHERE c.f1 ~ '.*'; |