I have an integration test that does a transaction rollback at the end. Recently I added an HQL command to the test. As soon as I did that, many of the other writes in the test began to be committed to the database, as if the HQL command had caused the transaction to be committed. The Rollback command is called at the end, and does not throw an exception, but the data gets committed anyway. Is there any way an HQL command could cause a transaction to commit itself?
The error does not occur if I use a SQL command rather than an HQL command.
Environment: ASP.Net, NHibernate, Oracle.