On Mon, Mar 14, 2011 at 1:45 PM, Marshall Schor <[email protected]> wrote:
> I think I may have found a way to have the individual pipelines created by > the > MultiprocessingAnalysisEngine stop sharing the UIMA contexts. This would > alleviate the CasMultiplier issue, but at a cost of changing the behavior > for > existing users of this facility - in that "external resources" managed by > UIMA > would no longer be shared across the multiple pipelines. > > An alternative would be to document this behavior and warn against using > this > facility with Cas Multipliers. > > Any preferences? I think I'm slightly in favor of no longer implicitly > sharing > UIMA Context across multiple pipelines. > > I think it should be possible (although perhaps more difficult to implement) for the CAS Multipliers to have different UimaContexts but without sharing a ResourceManager. This would fix the CAS Multiplier issue without changing the sharing of external resources. I'm a bit leery of having external resources not be shared. If someone has large resources they may be relying on them not being replicated among pipelines. I would prefer to stay backwards compatible on this. If we feel we need to address a potential problem with non-thread-safe resources, we could consider adding a deployment option to allow the user to explicitly request non-shared resources. -Adam
