[ 
https://issues.apache.org/jira/browse/VALIDATOR-390?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16729043#comment-16729043
 ] 

Sergey Ponomarev commented on VALIDATOR-390:
--------------------------------------------

Hi, I checked the code and it looks like that the FastHashMap is the only used 
from commons-collections.
I have a project with a dependency hell and I don't want to have the 
commons-collections in my classpath.
So I tried to replace the FastHashMap with regular HashMap and at least tests 
passed.
See my commit
https://github.com/apache/commons-validator/commit/bbd74a7c5a26e44797c0dae312b341b9f3f809fc
This change hides FastHashMap field from protected to private so the change is 
breakable. We can minimize impact by leaving the field protected by change 
definition to just a Map instead of FastHashMap.

So here two things:
1. Do we really need some special class FastHashMap? From what I understood 
from it's javadoc it's similar to ConcurentHashMap. Is any real performance 
advantages to use it instead of java.util.HashMap which is probably warmed by 
JIT compiler?
2. Why tests passed, maybe we should improve coverage?
3. So how about to remove commons-collection dependency at all? If you are ok 
to remove it then the change may be also breakable for projects who use it 
transitively. 

> Upgrade to Commons Collections 4.x
> ----------------------------------
>
>                 Key: VALIDATOR-390
>                 URL: https://issues.apache.org/jira/browse/VALIDATOR-390
>             Project: Commons Validator
>          Issue Type: Improvement
>            Reporter: Jake Brownell
>            Priority: Minor
>
> Commons Validator 1.5 now uses Java 1.6. Commons Collections 4.0/4.1 has the 
> same Java requirement.
> I noticed that CV seems to be the only one of many third party dependencies 
> in my project that requires CC 3.2.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to