Hi,
Here's a quick update. V 3.0 M1 (alpha) will be released in a few days with some important notes. It's not feature complete yet, but it will include (among other things) two important improvements:
- the new SQL engine: we changed a little bit the query APIs and completely rewrote the internal mechanisms of execution planning and query execution. The query parser is the same as the strict parser of v 2.2, so the language is the same, apart from some small changes and additions (eg. now we have a DISTINCT keyword for projections)
- remote transactions: until v 2.2 all the transactions were executed on the client and transferred to the server only at commit time, so any SQL statement during a transaction was executed on the server and outside of the transaction itself. In V 3.0 we added management of remote transactions: tx are still executed on the client, but as soon as an SQL statement is executed, the transaction is flushed to the server (not yet committed of course), so the SQL statement will run inside current transaction.
So the answer to your original question is finally YES, in 3.0 we will have remote transactions, SQL inside transactions and a consistent behavior of remote and plocal instances.
About details and docs, many things will be updated in next few days and released with the M1
Thanks!
Luigi