The transaction log for database 'TEST_ARCHIVE' is full. To find out why space in the log cannot be reused, see the log_reuse_wait_desc column in sys.databases
The message is plain and simple there is not enough space on drive where log file is present to accommodate information related to delete of 240 million records and as good practice even if you have space you should not delete all records in one go.
The first thing I would check is autogrowth of log file for database test_archive it should NOT BE IN PERCENTAGE. If it is so change it to MB if you want to take starting value take 200-300 MB
Second thing is when you delete rows every row deletion would be logged in full recovery model( you did not tell us recovery model so I assumed) so it is bound to increase log file. You must delete in batches I cannot tell you exact count but start with
30K to 40K in one shot. After you are done with delete operation perform Transaction log backup.
If the recovery model is simple again delete in batches and add manual checkpoint command in the delete script. Perhaps if you run checkpoint command twice it would be better.
NO NEED TO CHANGE RECOVERY MODEL IN ANY CASE