If you kill active transaction, MSSQL does need rollback to guarantee the data consistence. I think it's lesson. Whenever we kill a session, first of all, we should be very carefully check the complete percentage in sys.dm_exec_requestes and evaluate the rollback time.. Sometimes, maybe it just needs 2 more minutes to finish, but 20 hours to rollback.
GASQL.com - Focus on Database and Cloud