New transactionPeriodicallyCommit state

This provides a new option for periodically committing which will commit the user transaction. It is the client's responsibility to detect that the transaction is no longer open, and create a new one.
After discussing offline, none of the other SETs do case-insensitive so no need here.