DOYUNG YOON created S2GRAPH-230:

             Summary: ResourceManager onEvict cause segmentation fault with 
                 Key: S2GRAPH-230
             Project: S2Graph
          Issue Type: Bug
          Components: s2core
            Reporter: DOYUNG YOON

Current implementation causes the segmentation fault when the query on edges 
that bind to custom EdgeFetcher, more specifically AnnoyModelFetcher with 
cacheTTLInSecs as -1.

cacheTTLInSecs -1 means we initialize EdgeFetcher instance instead of using 
local cached instance. 

SafeUpdateCache put newly instantiated EdgeFetcher instance into guava cache, 
then call `onEvict` method defined in ResourceManager, which immediately call 
close() on Annoy4s JNI library, which causes the segmentation fault.

One quick fix on this issue is scheduling EdgeFetcher's close method in a short 
period of time delay in the background.

This message was sent by Atlassian JIRA

Reply via email to