Try putting your CFTRY / CFCATCH around the outside of the CFTRANSACTION ... the error handler is not triggering your roll-back, I would guess.
<cftry> <!---//Starting Transaction -----------------------------------------> <cftransaction> <!---//QUERY1 Insert ----> <cfquery name="insertDAP" datasource="#data2#"> INSERT STATEMENT 1 </cfquery> <!---//QUERY2 Insert --------> <cfquery name="insertMW" datasource="#data2#"> INSERT STATEMENT 2 </cfquery> </cftransaction> <!---//CFCATCH for Database errors ----------------------------------> <!--- note, no rollback here, just let the transaction fail above if there was an error ---> <cfcatch type="database"> <cflog text="Error Code: #cfcatch.ErrorCode#, Error Message: #cfcatch.Message#, Detail: #cfcatch.Detail#, Extended Info: #cfcatch.ExtendedInfo#, Root Cause: , Type: #cfcatch.Type#, Native Error Code: #cfcatch.NativeErrorCode#, SQL State: #cfcatch.SQLState#, SQL: #cfcatch.SQL#, Querry Error: " type="Error" file="SI_ATP.log" application="yes"> </cfcatch> </cftry> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~| Want to reach the ColdFusion community with something they want? Let them know on the House of Fusion mailing lists Archive: http://www.houseoffusion.com/groups/cf-talk/message.cfm/messageid:325037 Subscription: http://www.houseoffusion.com/groups/cf-talk/subscribe.cfm Unsubscribe: http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=89.70.4