I think you're right. Although there's certainly some confused terminology in regards to this. For example, NHibernate in Action, says things like this:
We’ve noted that the call to Commit() synchronizes the ISession state with the database. This is called flushing, a process you automatically trigger when you use the NHibernate ITransaction API.
Flushing the ISession state to the database at the end of a database transaction is required in order to make the changes durable and is the common case
If flush() doesn't commit (I admit, if it did it would seem pointless), I still wish they wouldn't word things like that. It looks like they have a process called 'flushing' but which is not necessarily done by calling 'flush()'.
Still, I've learnt more by answering questions wrongly in the last few days, than I have in weeks of reading books. So thanks for putting up with me.
Last edited by PandaWood on Sat Jul 12, 2008 10:39 am, edited 1 time in total.
|