We are running OrientDB in plocal mode exclusively, and according to a doc page I read today the default isolation level is serializable, which is more than sufficient.
If reads do indeed not require a transaction, i.e. a OrientGraphNoTx, then it would be interesting how that class is intended to behave under concurrent access, as the documentation refers to "one transaction per thread". That would imply that if there is no transaction, we are free to execute parallel reads on the same graph instance, but thats just my interpretation.
You are absolutely correct about the threat of future problems when relying on undocumented behaviour. This is exactly why I ask this question, in fact our application is running fine right now with concurrent reads on the same graph.