Hello Group,
I am currently trying to build an object layer in Go on top of KC, and I have a few questions regarding transactions and concurrency.
1) There seems to be nothing stopping me from performing multiple get/set/cursor etc operations concurrently. Is it safe?
2) The begin transaction functions don't return a context or transaction pointer or anything like that. How do I know which transaction I am operating in?
3) If there is only one transaction per open database, does that mean that it's safe to open the same database multiple times in the same process, once for each thread?
4) When I tried to begin two transactions in a row in a single thread, the second begin locked the process. This suggests that I can only begin one transaction per thread, or per open database, or something else... what is the case? :O
These questions overlap a bit, but that just illustrates my confusion, I think.
regards,
Martin