[ http://issues.apache.org/jira/browse/DERBY-337?page=comments#action_12313102 ]
Satheesh Bandaram commented on DERBY-337: ----------------------------------------- Submitted this patch. I do see you have changed RoutineAliasInfo, a serialized java object that is saved in the disk. Please run some soft upgrade tests, to make sure procedures/functions created in 10.0 are still usable in 10.1 in soft upgrade. I think new fields and new methods you have added for RoutineAliasInfo may still make it compatible with 10.0 versions, but we definitely need to check. Sending java\engine\org\apache\derby\catalog\types\RoutineAliasInfo.java Sending java\testing\org\apache\derbyTesting\functionTests\master\DerbyNet\dblook_test_net.out Sending java\testing\org\apache\derbyTesting\functionTests\master\DerbyNetClient\dblook_test_net.out Sending java\testing\org\apache\derbyTesting\functionTests\master\dblook_test.out Sending java\testing\org\apache\derbyTesting\functionTests\tests\tools\dblook_makeDB.sql Sending java\testing\org\apache\derbyTesting\functionTests\tests\tools\dblook_makeDB_2.sql Adding java\tools\org\apache\derby\impl\tools\dblook\DB_Alias.java Deleting java\tools\org\apache\derby\impl\tools\dblook\DB_StoredProcedure.java Sending java\tools\org\apache\derby\loc\toolsmessages.properties Sending java\tools\org\apache\derby\tools\dblook.java Transmitting file data ......... Committed revision 189650. [bandaram:satheesh] > dblook doesn't generate SQL statements for SQL functions. > --------------------------------------------------------- > > Key: DERBY-337 > URL: http://issues.apache.org/jira/browse/DERBY-337 > Project: Derby > Type: Bug > Components: Tools > Versions: 10.0.2.0 > Environment: All platforms. > Reporter: Satheesh Bandaram > Assignee: A B > Priority: Critical > Fix For: 10.1.0.0 > Attachments: derby-337.patch, derby-337.stat > > DBLOOK schema dumping tool doesn't emit SQL statements for functions. It > covers procedures and all other database objects, but not funtions. Here is > an example I tried: > [bandaram:satheesh] java org.apache.derby.tools.dblook -d 'jdbc:derby:tdb' > -- Timestamp: 2005-06-05 09:41:20.603 > -- Source database is: tdb > -- Connection URL is: jdbc:derby:tdb > -- appendLogs: false > -- ---------------------------------------------- > -- DDL Statements for tables > -- ---------------------------------------------- > CREATE TABLE "APP"."T" ("I" INTEGER); > At this point, the database has only one table 'T'. Now create a function: > C:\DerbyCode\bug>java -Dij.protocol=jdbc:derby: org.apache.derby.tools.ij > ij version 10.1 > ij> connect 'tdb'; > ij> create function gatp(SCH VARCHAR(128), TBL VARCHAR(128)) RETURNS > VARCHAR(100 > 0) > EXTERNAL NAME > 'org.apache.derbyTesting.functionTests.util.TestPropertyInfo.getAllTableProperties' > LANGUAGE JAVA PARAMETER STYLE JAVA; > 0 rows inserted/updated/deleted > ij> quit; > Now try dblook. Should show a function, but doesn't. > [bandaram:satheesh] java org.apache.derby.tools.dblook -d 'jdbc:derby:tdb' > -- Timestamp: 2005-06-05 09:41:20.603 > -- Source database is: tdb > -- Connection URL is: jdbc:derby:tdb > -- appendLogs: false > -- ---------------------------------------------- > -- DDL Statements for tables > -- ---------------------------------------------- > CREATE TABLE "APP"."T" ("I" INTEGER); > Now create a procedure: > C:\DerbyCode\bug>java -Dij.protocol=jdbc:derby: org.apache.derby.tools.ij > ij version 10.1 > ij> connect 'tdb'; > ij> create procedure insertAsciiColumn( stmtText varchar( 256), colNumber > int) P > ARAMETER STYLE JAVA LANGUAGE JAVA MODIFIES SQL DATA > EXTERNAL NAME > 'org.apache.derbyTesting.functionTests.util.StreamUtil.insertAsc > iiColumn'; > 0 rows inserted/updated/deleted > ij> > DBLOOK output include newly created procedure, but still not function > statement. > [bandaram:satheesh] java org.apache.derby.tools.dblook -d 'jdbc:derby:tdb' > -- Timestamp: 2005-06-05 09:43:09.5 > -- Source database is: tdb > -- Connection URL is: jdbc:derby:tdb > -- appendLogs: false > -- ---------------------------------------------- > -- DDL Statements for stored procedures > -- ---------------------------------------------- > CREATE PROCEDURE "APP"."INSERTASCIICOLUMN" (IN STMTTEXT VARCHAR(256),IN > COLNUMBE > R INTEGER) LANGUAGE JAVA PARAMETER STYLE JAVA MODIFIES SQL DATA EXTERNAL NAME > 'o > rg.apache.derbyTesting.functionTests.util.StreamUtil.insertAsciiColumn' ; > -- ---------------------------------------------- > -- DDL Statements for tables > -- ---------------------------------------------- > CREATE TABLE "APP"."T" ("I" INTEGER); -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira
