That's what I did many years ago (maybe 2008/2009)... I thought that this has worked some time ago, but right now the maps are always empty for the next analysis engine.
I will clean up my test bed and will point to a reproducible example. Where do I disable the JCas caching (just in case I did that by accident)? Rigth now, the information is always recreated in Ruta, but that is what I want to avoid in future, at least for some use cases. I have to remember to still support the remote scenario then. Best, Peter Am 24.08.2015 um 16:11 schrieb Marshall Schor: > I think you're on the right track. > > You can add additional fields to your generated JCas cover class, such as > something like a Java Hash Map. > Provided your users haven't disabled the JCas caching, this will work. > > Some caveats: > > In the general UIMA design, any particular part of a pipeline is supposed to > be > "remotable" - that is, converted to a service call to an external service. > When > this is done, the CAS is "serialized" to the remote. This serialization won't > serialize any of the additional custom fields you may have added to your > JCasGen'd cover class definition. One way around this is to have a fall-back > which recreates the info if not present. > > The same "serialization" issue applies if you manually serialize the Cas to > some > file. > > Would this approach fit your situation? If not, please explain a bit more > detail (e.g., why it doesn't fit... :-) ). > > -Marshall > > > On 8/24/2015 9:53 AM, Peter Klügl wrote: >> Hi, >> >> first of all, thanks Marshall :-) >> >> Am 24.08.2015 um 15:08 schrieb Marshall Schor: >>> I assume you talking about this.svd.useFSCache :-) This has been disabled >>> for as >>> long as I can recall. >>> [...] >>> >>> There is currently no option to cache FSs for just some types, other than to >>> create a JCas cover class for those types and run with JCas enabled. >> Let me rephrase it: Is it a realistic option for us to introduce >> something like that? >> >> What do you mean with the second part of the sentence? I am currently >> looking for ways to share information for the same CAS between analysis >> engines. Should it be possible to use normal java fields of JCas cover >> classes for this purpose? My annotations are recreated all the time and >> thus I am loosing the field values ... >> >> Best, >> >> Peter >> >> >>> -Marshall >>> >>> On 8/24/2015 7:42 AM, Peter Klügl wrote: >>>> Hi, >>>> >>>> what is the current status on FS caching in svd? The comment says that >>>> it is not maintained. If activated, an NPE is thrown because the fsArray >>>> was never initialized. This could be solved by initializing it with a >>>> non-empty array. (I could create an issue and fix it, if wanted). >>>> >>>> In my current (extremely restricted) test bed, the memory consumption >>>> and runtime drop both by about 30% with fs caching. >>>> >>>> I do not have a overview yet: Could there be problems with other parts >>>> of UIMA if we use the caching? >>>> >>>> with a big Ruta hat on: >>>> Is it an option for us to active the caching on the fly for a specific >>>> type only? >>>> >>>> Best, >>>> >>>> Peter >>>> >>>> >>>>
