DatabaseMetaData getDatabaseMajorVersion() and getDatabaseMinorVersion() return 
software version rather than database version
-----------------------------------------------------------------------------------------------------------------------------

                 Key: DERBY-4255
                 URL: https://issues.apache.org/jira/browse/DERBY-4255
             Project: Derby
          Issue Type: Bug
          Components: JDBC
    Affects Versions: 10.5.1.1, 10.4.2.0, 10.3.3.0, 10.2.2.0, 10.1.3.1, 10.6.0.0
            Reporter: Kathey Marsden


The javadoc for 
DatabaseMetaData.getDatabaseMajorVersion() and getDatabaseMinorVersion() says 
they should retrieve the version number of the underlying database, so for soft 
upgraded databases this should be the database format version not the current 
software version which it currently does.  getDatabaseProductVersion should 
continue to return the current software version.


To reproduce create a database wombat with 10.1 with ij and then run the 
program below with 10.5.

import java.sql.*;

public class TestDBMetaDatabaseVersion {

    public static void main(String[] args) throws Exception{
        Class.forName("org.apache.derby.jdbc.EmbeddedDriver").newInstance();
        Connection conn = DriverManager.getConnection("jdbc:derby:wombat");
        DatabaseMetaData dmd = conn.getMetaData();
        System.out.println("getDatabaseMajorVersion():" + 
dmd.getDatabaseMajorVersion());
        System.out.println("getDatabaseMinorVersion():" + 
dmd.getDatabaseMinorVersion());
        System.out.println("getDatabseProductVersion():"  + 
dmd.getDatabaseProductVersion());
        
    }

}


The output shows:
getDatabaseMajorVersion():10
getDatabaseMinorVersion():5
getDatabseProductVersion():10.5.1.2 - (777744M)

The first two are incorrect and should show 10.1



-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to