Thread: Patch to fix getIndex for forte's transparent persistence

Patch to fix getIndex for forte's transparent persistence

From
"Dave Cramer"
Date:
Patch applied will It will be in beta3

Thanks,

Dave

Index:
./pgsql/src/interfaces/jdbc/org/postgresql/jdbc2/DatabaseMetaData.java
===================================================================
RCS file:
/projects/cvsroot/pgsql/src/interfaces/jdbc/org/postgresql/jdbc2/Databas
eMetaData.java,v
retrieving revision 1.44
diff -c -r1.44 DatabaseMetaData.java
***
./pgsql/src/interfaces/jdbc/org/postgresql/jdbc2/DatabaseMetaData.java
2001/11/09 02:57:50    1.44
---
./pgsql/src/interfaces/jdbc/org/postgresql/jdbc2/DatabaseMetaData.java
2001/11/13 19:13:39
***************
*** 2903,2910 ****
                  tuple[0] = "".getBytes();
                  tuple[1] = "".getBytes();
                  tuple[2] = r.getBytes(1);
!                 tuple[3] = r.getBoolean(2) ?
"f".getBytes(): "t".getBytes();
!                 tuple[4] = null;
                  tuple[5] = r.getBytes(3);
                  tuple[6] = r.getBoolean(4) ?

Integer.toString(tableIndexClustered).getBytes():
--- 2903,2910 ----
                  tuple[0] = "".getBytes();
                  tuple[1] = "".getBytes();
                  tuple[2] = r.getBytes(1);
!                         tuple[3] = r.getBoolean(2) ?
"false".getBytes(): "true".getBytes();
!                          tuple[4] = null;
                  tuple[5] = r.getBytes(3);
                  tuple[6] = r.getBoolean(4) ?

Integer.toString(tableIndexClustered).getBytes():
***************
*** 2913,2919 ****

Integer.toString(tableIndexOther).getBytes();
                  tuple[7] = Integer.toString(i +
1).getBytes();
                  java.sql.ResultSet columnNameRS =
connection.ExecSQL("select a.attname FROM pg_attribute a WHERE (a.attnum
= " + columnOrdinals[i] + ") AND (a.attrelid = " + r.getInt(9) + ")");
!                 columnNameRS.next();
                  tuple[8] = columnNameRS.getBytes(1);
                  tuple[9] = null;  // sort sequence ???
                  tuple[10] = r.getBytes(7);    //
inexact
--- 2913,2922 ----

Integer.toString(tableIndexOther).getBytes();
                  tuple[7] = Integer.toString(i +
1).getBytes();
                  java.sql.ResultSet columnNameRS =
connection.ExecSQL("select a.attname FROM pg_attribute a WHERE (a.attnum
= " + columnOrdinals[i] + ") AND (a.attrelid = " + r.getInt(9) + ")");
!                 if(columnNameRS.next())
!                                    tuple[8] =
columnNameRS.getBytes(1);
!                                 else
!                                    tuple[8] = "".getBytes();
                  tuple[8] = columnNameRS.getBytes(1);
                  tuple[9] = null;  // sort sequence ???
                  tuple[10] = r.getBytes(7);    //
inexact