We implement sync, commit and rollback to follow transaction semantic. When a transaction clears a cache, the global cache is cleared only when the transaction is committed meanwhile the transaction will use a cache for itself only. We remove _nocache option because the sync, commit and rollback operate only for the transaction. issue7975 review53521002