In particular storeTree calls nodeConverter.clearNodesMapping() and that causes NPEs if other concurrent operations are using the mappings.
Apart from that, in general, since the converter's node mappings are maps with no explicit provisions for multithreading, spurious errors may occur.
Of course a workaround is to create a new client for each thread, but that requires re-registering all the languages, we don't have a way to cache and reuse those.
In particular
storeTree
callsnodeConverter.clearNodesMapping()
and that causes NPEs if other concurrent operations are using the mappings. Apart from that, in general, since the converter's node mappings are maps with no explicit provisions for multithreading, spurious errors may occur.Of course a workaround is to create a new client for each thread, but that requires re-registering all the languages, we don't have a way to cache and reuse those.