Bug on PlatformImplBase.java of /src/org/apache/ddlutils/platform
-----------------------------------------------------------------

                 Key: DDLUTILS-270
                 URL: https://issues.apache.org/jira/browse/DDLUTILS-270
             Project: DdlUtils
          Issue Type: Bug
          Components: Core (No specific database)
    Affects Versions: 1.0
            Reporter: Sean Xiong
            Assignee: Thomas Dudziak


Bug found in Method protected HashMap toColumnValues(SqlDynaProperty[] 
properties, DynaBean bean).

Description: exception will thrown in the case of tables with composite primary 
keys and the pk columns are in different types. 

Use case throw exception: Table 'Employee' has a composite primary key with the 
combination of two columns: {int: emplyeeid, string LastName}. 
                                        Exception may thrown because of the 
keyset and values stored in Hashmap may disordered and give the value of 
"LastName" to the key of "emplyid";  

Reason: Hashmap is used at here for storage and the items stored in Hashmap are 
not sorted properly.

/**
     * Derives the column values for the given dyna properties from the dyna 
bean.
     * 
     * @param properties The properties
     * @param bean       The bean
     * @return The values indexed by the column names
     */
    protected HashMap toColumnValues(SqlDynaProperty[] properties, DynaBean 
bean)
    {
        HashMap result = new HashMap();

        for (int idx = 0; idx < properties.length; idx++)
        {
            result.put(properties[idx].getName(),
                       bean == null ? null : 
bean.get(properties[idx].getName()));
        }
        return result;
    }

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to