Не знаю, какая у вас используется база, но очистка лога, особенно по критерию, выливается в оператор DELETE, который и выполняет "подъём" Ваших 1.8Гб в память, проверку допустимости операции и т.д. и т.п. стандартным образом. Большинство данных из кэша базы уходят на диск, процессор на 100% загружен, диски жужжат...
Короче, в Oracle есть операция TRUNCATE TABLE, которая очищает таблицу полностью без лишних действий и проверок, но (!) никаких критериев. В MS SQL есть ли что-то подобное я не знаю, пусть выскажутся специалисты.
В противном случае очистку надо запускать на ночь или выходные и не запускать болезнь до летального исхода