[ https://issues.apache.org/jira/browse/DERBY-6075?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13601067#comment-13601067 ]
Knut Anders Hatlen commented on DERBY-6075: ------------------------------------------- Committed the 13a patch to trunk, revision 1455902. > Use modern collections in impl/sql/compile > ------------------------------------------ > > Key: DERBY-6075 > URL: https://issues.apache.org/jira/browse/DERBY-6075 > Project: Derby > Issue Type: Bug > Components: SQL > Affects Versions: 10.10.0.0 > Reporter: Knut Anders Hatlen > Assignee: Knut Anders Hatlen > Priority: Minor > Attachments: d6075-10a-aggregate-vectors.diff, > d6075-11a-remaining-vectors.diff, d6075-12a-stack.diff, > d6075-13a-unused-properties.diff, d6075-1a-CollectNodesVisitor.diff, > d6075-2a-bindExpression.diff, d6075-3a-javadoc.diff, > d6075-4a-parameterList.diff, d6075-5a-ordering.diff, > d6075-6a-DMLModStatementNode.diff, d6075-7a-more-signatures.diff, > d6075-8a-local-hashtables.diff, d6075-9a-hashtable-fields.diff > > > The code in the org.apache.derby.impl.sql.compile package predates the Java > Collections Framework and uses old-style collections like java.util.Vector > and java.util.Hashtable. Since the old-style collection classes are used in > many method signatures, it's difficult to use modern collection classes when > adding new code. > I suggest we switch to using interfaces (like java.util.List and > java.util.Map) instead of specific classes in the signatures, so that we have > more flexibility in choosing the right collection class for the job. > Only changing the signatures would allow us to continue using Vector and > Hashtable, since they implement the interfaces. However, I think it would be > good to switch to ArrayList and HashMap in a second step. The instances in > impl/sql/compile are not shared between threads, so we don't need the > synchronization provided by the old-style classes. Switching to > unsynchronized classes may make compilation slightly faster. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira