I am a newbie so I unfortuantelly can't answer your question, but I would 
like to ask why do you have to perform reads in a transaction? Do you use 
REPEATABLE READS isolation level?

Dne středa 2. září 2015 9:59:00 UTC+2 Alan47 napsal(a):
>
> Hello everyone,
>
>
> *Detailed explanation of the situation*
> we are currently in the process of migrating a project that previously 
> used Titan to OrientDB. We are facing some issues regarding concurrency. In 
> Titan, several threads could perform read operations on a single 
> transaction without any problems. The OrientDB manual states that each 
> thread should have its own OrientGraph instance. This is hard for us to 
> manage, as we are using OrientDB as the backend for a web application. Such 
> an environment runs a lot of threads, some of them long-running (e.g. 
> threads managed by Tomcat), others short-lived (e.g spawned by 
> collection.parallelStream()). Any solution involving a ThreadLocal is 
> problematic because there is no clean way to clean it up again and closing 
> the OrientGraph instance. Also, opening transactions in OrientDB seems to 
> have a considerable performance overhead, which means that we have to keep 
> a transaction open and perform several reads on it to minimize the 
> transaction creation overhead. But this is only possible if we can be sure 
> that it is safe to have multiple concurrent reads on a single OrientDB 
> instance. Is that the case?
>
> *TL;DR (Short version)*
> Is it safe to perform concurrent reads on an OrientGraph instance, 
> provided that no write operations occur on that instance?
>
>
> Thanks,
>
>
> Alan
>

-- 

--- 
You received this message because you are subscribed to the Google Groups 
"OrientDB" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to