@Override protected void doBegin() { try { if ( managedConnection != null ) { throw new TransactionException( "Already have an associated managed connection" ); } managedConnection = transactionCoordinator().getJdbcCoordinator().getLogicalConnection().getConnection(); wasInitiallyAutoCommit = managedConnection.getAutoCommit(); LOG.debugv( "initial autocommit status: {0}", wasInitiallyAutoCommit ); if ( wasInitiallyAutoCommit ) { LOG.debug( "disabling autocommit" ); managedConnection.setAutoCommit( false ); } } catch( SQLException e ) { throw new TransactionException( "JDBC begin transaction failed: ", e ); } isDriver = transactionCoordinator().takeOwnership(); }
@Override protected void doBegin() { try { if ( managedConnection != null ) { throw new TransactionException( "Already have an associated managed connection" ); } managedConnection = transactionCoordinator().getJdbcCoordinator().getLogicalConnection().getConnection(); wasInitiallyAutoCommit = managedConnection.getAutoCommit(); LOG.debugv( "initial autocommit status: {0}", wasInitiallyAutoCommit ); if ( wasInitiallyAutoCommit ) { LOG.debug( "disabling autocommit" ); managedConnection.setAutoCommit( false ); } } catch( SQLException e ) { throw new TransactionException( "JDBC begin transaction failed: ", e ); } isDriver = transactionCoordinator().takeOwnership(); }
@Override protected void afterTransactionBegin() { transactionCoordinator().pulse(); if ( !transactionCoordinator().isSynchronizationRegistered() ) { isDriver = transactionCoordinator().takeOwnership(); } applyTimeout(); transactionCoordinator().sendAfterTransactionBeginNotifications( this ); transactionCoordinator().getTransactionContext().afterTransactionBegin( this ); }
@Override protected void afterTransactionBegin() { transactionCoordinator().pulse(); if ( !transactionCoordinator().isSynchronizationRegistered() ) { isDriver = transactionCoordinator().takeOwnership(); } applyTimeout(); transactionCoordinator().sendAfterTransactionBeginNotifications( this ); transactionCoordinator().getTransactionContext().afterTransactionBegin( this ); }