Fix for large objects - Mailing list pgsql-patches

From Bruce Momjian
Subject Fix for large objects
Date
Msg-id 200102092226.RAA24420@candle.pha.pa.us
Whole thread Raw
List pgsql-patches
I have applied the following patch to remove the assumption that
xinv/xinx files are large objects.  They are now all stored in
pg_largeobject, so there is no query anymore that dumps out a list of
them.  Do we need to find another way to handle a large object listing
from jdbc?

Also, should we remove jbdc/postgresql now that we have org/postgresql
working?

--
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman@candle.pha.pa.us               |  (610) 853-3000
  +  If your life is a hard drive,     |  830 Blythe Avenue
  +  Christ can be your backup.        |  Drexel Hill, Pennsylvania 19026
? config.log
? config.cache
? config.status
? GNUmakefile
? src/Makefile.custom
? src/GNUmakefile
? src/Makefile.global
? src/log
? src/crtags
? src/backend/port/Makefile
? src/include/config.h
? src/include/stamp-h
Index: src/interfaces/jdbc/org/postgresql/jdbc1/DatabaseMetaData.java
===================================================================
RCS file: /home/projects/pgsql/cvsroot/pgsql/src/interfaces/jdbc/org/postgresql/jdbc1/DatabaseMetaData.java,v
retrieving revision 1.11
diff -c -r1.11 DatabaseMetaData.java
*** src/interfaces/jdbc/org/postgresql/jdbc1/DatabaseMetaData.java    2001/01/24 09:22:01    1.11
--- src/interfaces/jdbc/org/postgresql/jdbc1/DatabaseMetaData.java    2001/02/09 22:20:40
***************
*** 1617,1624 ****
     * </ol>
     *
     * <p>The valid values for the types parameter are:
!    * "TABLE", "INDEX", "LARGE OBJECT", "SEQUENCE", "SYSTEM TABLE" and
!    * "SYSTEM INDEX"
     *
     * @param catalog a catalog name; For org.postgresql, this is ignored, and
     * should be set to null
--- 1617,1623 ----
     * </ol>
     *
     * <p>The valid values for the types parameter are:
!    * "TABLE", "INDEX", "SEQUENCE", "SYSTEM TABLE" and "SYSTEM INDEX"
     *
     * @param catalog a catalog name; For org.postgresql, this is ignored, and
     * should be set to null
***************
*** 1721,1730 ****
    //
    // IMPORTANT: the query must be enclosed in ( )
    private static final String getTableTypes[][] = {
!     {"TABLE",        "(relkind='r' and relhasrules='f' and relname !~ '^pg_' and relname !~ '^xinv')"},
!     {"VIEW",        "(relkind='v' and relname !~ '^pg_' and relname !~ '^xinv')"},
!     {"INDEX",        "(relkind='i' and relname !~ '^pg_' and relname !~ '^xinx')"},
!     {"LARGE OBJECT",    "(relkind='r' and relname ~ '^xinv')"},
      {"SEQUENCE",    "(relkind='S' and relname !~ '^pg_')"},
      {"SYSTEM TABLE",    "(relkind='r' and relname ~ '^pg_')"},
      {"SYSTEM INDEX",    "(relkind='i' and relname ~ '^pg_')"}
--- 1720,1728 ----
    //
    // IMPORTANT: the query must be enclosed in ( )
    private static final String getTableTypes[][] = {
!     {"TABLE",        "(relkind='r' and relhasrules='f' and relname !~ '^pg_')"},
!     {"VIEW",        "(relkind='v' and relname !~ '^pg_')"},
!     {"INDEX",        "(relkind='i' and relname !~ '^pg_')"},
      {"SEQUENCE",    "(relkind='S' and relname !~ '^pg_')"},
      {"SYSTEM TABLE",    "(relkind='r' and relname ~ '^pg_')"},
      {"SYSTEM INDEX",    "(relkind='i' and relname ~ '^pg_')"}
Index: src/interfaces/jdbc/org/postgresql/jdbc2/DatabaseMetaData.java
===================================================================
RCS file: /home/projects/pgsql/cvsroot/pgsql/src/interfaces/jdbc/org/postgresql/jdbc2/DatabaseMetaData.java,v
retrieving revision 1.11
diff -c -r1.11 DatabaseMetaData.java
*** src/interfaces/jdbc/org/postgresql/jdbc2/DatabaseMetaData.java    2001/01/24 09:22:01    1.11
--- src/interfaces/jdbc/org/postgresql/jdbc2/DatabaseMetaData.java    2001/02/09 22:20:42
***************
*** 1617,1624 ****
     * </ol>
     *
     * <p>The valid values for the types parameter are:
!    * "TABLE", "INDEX", "LARGE OBJECT", "SEQUENCE", "SYSTEM TABLE" and
!    * "SYSTEM INDEX"
     *
     * @param catalog a catalog name; For org.postgresql, this is ignored, and
     * should be set to null
--- 1617,1623 ----
     * </ol>
     *
     * <p>The valid values for the types parameter are:
!    * "TABLE", "INDEX", "SEQUENCE", "SYSTEM TABLE" and "SYSTEM INDEX"
     *
     * @param catalog a catalog name; For org.postgresql, this is ignored, and
     * should be set to null
***************
*** 1721,1730 ****
    //
    // IMPORTANT: the query must be enclosed in ( )
    private static final String getTableTypes[][] = {
!     {"TABLE",        "(relkind='r' and relhasrules='f' and relname !~ '^pg_' and relname !~ '^xinv')"},
!     {"VIEW",        "(relkind='v' and relname !~ '^pg_' and relname !~ '^xinv')"},
!     {"INDEX",        "(relkind='i' and relname !~ '^pg_' and relname !~ '^xinx')"},
!     {"LARGE OBJECT",    "(relkind='r' and relname ~ '^xinv')"},
      {"SEQUENCE",    "(relkind='S' and relname !~ '^pg_')"},
      {"SYSTEM TABLE",    "(relkind='r' and relname ~ '^pg_')"},
      {"SYSTEM INDEX",    "(relkind='i' and relname ~ '^pg_')"}
--- 1720,1728 ----
    //
    // IMPORTANT: the query must be enclosed in ( )
    private static final String getTableTypes[][] = {
!     {"TABLE",        "(relkind='r' and relhasrules='f' and relname !~ '^pg_')"},
!     {"VIEW",        "(relkind='v' and relname !~ '^pg_')"},
!     {"INDEX",        "(relkind='i' and relname !~ '^pg_')"},
      {"SEQUENCE",    "(relkind='S' and relname !~ '^pg_')"},
      {"SYSTEM TABLE",    "(relkind='r' and relname ~ '^pg_')"},
      {"SYSTEM INDEX",    "(relkind='i' and relname ~ '^pg_')"}
Index: src/interfaces/jdbc/postgresql/jdbc1/DatabaseMetaData.java
===================================================================
RCS file: /home/projects/pgsql/cvsroot/pgsql/src/interfaces/jdbc/postgresql/jdbc1/DatabaseMetaData.java,v
retrieving revision 1.4
diff -c -r1.4 DatabaseMetaData.java
*** src/interfaces/jdbc/postgresql/jdbc1/DatabaseMetaData.java    2000/06/12 22:36:14    1.4
--- src/interfaces/jdbc/postgresql/jdbc1/DatabaseMetaData.java    2001/02/09 22:20:43
***************
*** 1617,1624 ****
     * </ol>
     *
     * <p>The valid values for the types parameter are:
!    * "TABLE", "INDEX", "LARGE OBJECT", "SEQUENCE", "SYSTEM TABLE" and
!    * "SYSTEM INDEX"
     *
     * @param catalog a catalog name; For postgresql, this is ignored, and
     * should be set to null
--- 1617,1623 ----
     * </ol>
     *
     * <p>The valid values for the types parameter are:
!    * "TABLE", "INDEX", "SEQUENCE", "SYSTEM TABLE" and "SYSTEM INDEX"
     *
     * @param catalog a catalog name; For postgresql, this is ignored, and
     * should be set to null
***************
*** 1706,1714 ****
    //
    // IMPORTANT: the query must be enclosed in ( )
    private static final String getTableTypes[][] = {
!     {"TABLE",        "(relkind='r' and relname !~ '^pg_' and relname !~ '^xinv')"},
!     {"INDEX",        "(relkind='i' and relname !~ '^pg_' and relname !~ '^xinx')"},
!     {"LARGE OBJECT",    "(relkind='r' and relname ~ '^xinv')"},
      {"SEQUENCE",    "(relkind='S' and relname !~ '^pg_')"},
      {"SYSTEM TABLE",    "(relkind='r' and relname ~ '^pg_')"},
      {"SYSTEM INDEX",    "(relkind='i' and relname ~ '^pg_')"}
--- 1705,1712 ----
    //
    // IMPORTANT: the query must be enclosed in ( )
    private static final String getTableTypes[][] = {
!     {"TABLE",        "(relkind='r' and relname !~ '^pg_')"},
!     {"INDEX",        "(relkind='i' and relname !~ '^pg_')"},
      {"SEQUENCE",    "(relkind='S' and relname !~ '^pg_')"},
      {"SYSTEM TABLE",    "(relkind='r' and relname ~ '^pg_')"},
      {"SYSTEM INDEX",    "(relkind='i' and relname ~ '^pg_')"}
Index: src/interfaces/jdbc/postgresql/jdbc2/DatabaseMetaData.java
===================================================================
RCS file: /home/projects/pgsql/cvsroot/pgsql/src/interfaces/jdbc/postgresql/jdbc2/DatabaseMetaData.java,v
retrieving revision 1.4
diff -c -r1.4 DatabaseMetaData.java
*** src/interfaces/jdbc/postgresql/jdbc2/DatabaseMetaData.java    2000/06/12 22:36:16    1.4
--- src/interfaces/jdbc/postgresql/jdbc2/DatabaseMetaData.java    2001/02/09 22:20:44
***************
*** 1617,1624 ****
     * </ol>
     *
     * <p>The valid values for the types parameter are:
!    * "TABLE", "INDEX", "LARGE OBJECT", "SEQUENCE", "SYSTEM TABLE" and
!    * "SYSTEM INDEX"
     *
     * @param catalog a catalog name; For postgresql, this is ignored, and
     * should be set to null
--- 1617,1623 ----
     * </ol>
     *
     * <p>The valid values for the types parameter are:
!    * "TABLE", "INDEX", "SEQUENCE", "SYSTEM TABLE" and "SYSTEM INDEX"
     *
     * @param catalog a catalog name; For postgresql, this is ignored, and
     * should be set to null
***************
*** 1706,1714 ****
    //
    // IMPORTANT: the query must be enclosed in ( )
    private static final String getTableTypes[][] = {
!     {"TABLE",        "(relkind='r' and relname !~ '^pg_' and relname !~ '^xinv')"},
!     {"INDEX",        "(relkind='i' and relname !~ '^pg_' and relname !~ '^xinx')"},
!     {"LARGE OBJECT",    "(relkind='r' and relname ~ '^xinv')"},
      {"SEQUENCE",    "(relkind='S' and relname !~ '^pg_')"},
      {"SYSTEM TABLE",    "(relkind='r' and relname ~ '^pg_')"},
      {"SYSTEM INDEX",    "(relkind='i' and relname ~ '^pg_')"}
--- 1705,1712 ----
    //
    // IMPORTANT: the query must be enclosed in ( )
    private static final String getTableTypes[][] = {
!     {"TABLE",        "(relkind='r' and relname !~ '^pg_')"},
!     {"INDEX",        "(relkind='i' and relname !~ '^pg_')"},
      {"SEQUENCE",    "(relkind='S' and relname !~ '^pg_')"},
      {"SYSTEM TABLE",    "(relkind='r' and relname ~ '^pg_')"},
      {"SYSTEM INDEX",    "(relkind='i' and relname ~ '^pg_')"}

pgsql-patches by date:

Previous
From: Bruce Momjian
Date:
Subject: Re: Re: [HACKERS] Open 7.1 items
Next
From: Bruce Momjian
Date:
Subject: Fix for ODBC close