sszuev commented on issue #1961: URL: https://github.com/apache/jena/issues/1961#issuecomment-1643880486
> It is better than MRSW that ReadWriteLock provides (multiple readers OR a single writer). An iterator blocks writers or is inconsistent and may cause CCE. `ReadWriteLockingGraph` solution does not prevent iteration of existing iterators even someone forget to close some iterator (and note: all iterators detached from the graph, so low memory leaks probability), but it is prevent creation new iterators, during `releaseToSnapshot` the only one processed iterator is blocked for iteration (I think there could be a solution how to overcome this limitation + I see some more improvements) I would not compare `GraphTxn` and `ReadWriteLockingGraph`, they have different scopes and usage. `GraphTxn` is great but complicated and transaction-oriented, `ReadWriteLockingGraph` is simple and lightweight, could be used as an concurrent collection. > Jena already has GraphTxn. Can this be used? I think ONT-API library users can use `GraphTxn` as a base graph (ONT-API is just an enhanced wrapper). But that's not what ONT-API was created for. > From the Jena project point of view, it's not desirable to add implementations that support one or two uses if there is a way to use the general machinery. Ok, I got the point. If it is final resolution the issue may be closed. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
