SystemTransactions/TransactionNotificationFixture.cs, ShouldNotifyAfterDistributedTransactionWithOwnConnection(): It doesn't seem important for this test to use two connection and sessions - the important part is the use of TransactionScope. So use just one connection, to avoid problems with sqlite and others which don't support simultaneous connections.
Fix WhereSubqueryTests.CategoriesWithFirstProductIsNotDiscouned for configurations where linq database is generated.
WhereSubqueryTests: Test case naming to reflect purpose of test.
NH3641/TestFixture.cs: Order cleanup deletes. (Try to fix test failure due to referential constraint on MySQL on the build server (unable to reproduce locally)).
NH3316/ByCodeFixture.cs: Escape column name which is a keyword in at least Firebird.
TransactionNotificationFixture: ShouldNotifyAfterDistributedTransactionWithOwnConnection(): Transaction completion may happen asynchronously, so allow some delay. Affects some drivers.
Merge branch '3.4.x'