Provide JRuby support for model iterating#10
Conversation
Includes the following enhancement: - Loads the correct FFI implementation for your ruby engine. - Initialize the librdf_world pointer at require time to avoid thread-safey issues during lazy initialization. - When JRuby, disable raptor's URI interning feature because it is not thread-safe. This was accomplished by calling raptor functions to configure a raptor_world without the uri interning feature. Issues with these enhancements: - Requires the caller to create a Redlander::Model per thread to avoid additional threading issues encountered in librdf (related to librdf_free_stream and librdf_node_normalize). - JRuby tests segfault related to librdf_parser pointers.
|
This commit enables concurrent access to librdf storage through Redlander::Model. The caller is required to create a Thoughts? |
|
Thank you for the contribution, and sorry for my delay in responding to it. First, I'm absolutely fine with creating However, I'm somewhat concerned with initializing You also do not have a finalizer defined for And 2 more things :-)
|
Includes the following enhancement:
thread-safey issues during lazy initialization.
thread-safe. This was accomplished by calling raptor functions to
configure a raptor_world without the uri interning feature.
Issues with these enhancements:
additional threading issues encountered in librdf (related to
librdf_free_stream and librdf_node_normalize).