You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@uima.apache.org by "Richard Eckart de Castilho (Jira)" <de...@uima.apache.org> on 2021/09/22 07:45:00 UTC

[jira] [Created] (UIMA-6385) Potential resource key clash in environments with multiple classloaders

Richard Eckart de Castilho created UIMA-6385:
------------------------------------------------

             Summary: Potential resource key clash in environments with multiple classloaders
                 Key: UIMA-6385
                 URL: https://issues.apache.org/jira/browse/UIMA-6385
             Project: UIMA
          Issue Type: Bug
          Components: uimaFIT
            Reporter: Richard Eckart de Castilho
            Assignee: Richard Eckart de Castilho
             Fix For: 3.2.1uimaFIT


The {{ExternalResourceFactory}} internally generates a unique key for each resource using the method {{ExternalResourceFactory.uniqueResourceKey(String)}}. This method internally uses a static thread-safe counter which is increased for each resource. 

However, if we are in an environment where multiple instances of uimaFIT exists, e.g. within PEARs or OSGI environments, then it is possible that the same unique key is produced by two uimaFIT instances. It would also be possible that these keys both end up in the same resource manager and then the resources would override each other.

A solution for this could be to also include some unique uimaFIT instance ID in the unique key, e.g. the {{System.identityHashCode(DISAMBIGUATOR)}}.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)