@@ -631,14 +631,25 @@ (sqlite3:execute tdb "DELETE FROM test_steps;") (sqlite3:execute tdb "DELETE FROM test_data;") (sqlite3:finalize! tdb))))) ;; -(define (db:delete-test-records db test-id) - (sqlite3:execute db "DELETE FROM test_steps WHERE test_id=?;" test-id) - (sqlite3:execute db "DELETE FROM test_data WHERE test_id=?;" test-id) - (sqlite3:execute db "DELETE FROM tests WHERE id=?;" test-id)) +(define (db:delete-test-records db tdb test-id) + (if tdb + (begin + (sqlite3:execute tdb "DELETE FROM test_steps;") + (sqlite3:execute tdb "DELETE FROM test_data;"))) + ;; (sqlite3:execute db "DELETE FROM tests WHERE id=?;" test-id)) + (if db + (begin + (sqlite3:execute db "DELETE FROM test_steps WHERE test_id=?;" test-id) + (sqlite3:execute db "DELETE FROM test_data WHERE test_id=?;" test-id) + (sqlite3:execute db "UPDATE tests SET state='DELETED',status='n/a' WHERE test_id=?;" test-id)))) + +(define (db:delete-old-deleted-test-records db) + (let ((targtime (- (current-seconds)(* 30 24 60 60)))) ;; one month in the past + (sqlite3:exectute db "DELETE FROM tests WHERE state='DELETED' AND event_time