Details
-
Bug
-
Status: Done
-
Minor
-
Resolution: Done
-
None
-
None
-
None
Description
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.
Attachments
Issue Links
- links to