Large number of row deletes fails with 'out of log space'
If there is a FULL recovery model - you need to schedule the regular transaction log backups
If not (your case) - try to run your statements in smaller bulks, instead of one huge transaction
and finally the most like the your problem - place your begin tran/commit inside the loop