Delete more aggressively.

git-svn-id: https://www.unprompted.com/svn/projects/tildefriends/trunk@4370 ed5197a5-7fde-0310-b194-c3ffbd925b24
This commit is contained in:
Cory McWilliams 2023-07-27 03:04:49 +00:00
parent afde69b5d9
commit d21d7e4add

View File

@ -1152,12 +1152,13 @@ static void _tf_ssb_rpc_delete_blobs_work(uv_work_t* work)
{ {
return; return;
} }
int64_t start_ns = uv_hrtime();
sqlite3* db = tf_ssb_acquire_db_writer(ssb); sqlite3* db = tf_ssb_acquire_db_writer(ssb);
sqlite3_stmt* statement; sqlite3_stmt* statement;
int64_t now = (int64_t)time(NULL) * 1000ULL; int64_t now = (int64_t)time(NULL) * 1000ULL;
int64_t timestamp = now - age * 1000ULL; int64_t timestamp = now - age * 1000ULL;
const int k_limit = 256; const int k_limit = 256;
bool deleted = false; int deleted = 0;
if (sqlite3_prepare(db, if (sqlite3_prepare(db,
"DELETE FROM blobs WHERE blobs.id IN (" "DELETE FROM blobs WHERE blobs.id IN ("
" SELECT blobs.id FROM blobs " " SELECT blobs.id FROM blobs "
@ -1177,7 +1178,7 @@ static void _tf_ssb_rpc_delete_blobs_work(uv_work_t* work)
{ {
tf_printf("_tf_ssb_rpc_delete_blobs_work: %d rows\n", sqlite3_changes(db)); tf_printf("_tf_ssb_rpc_delete_blobs_work: %d rows\n", sqlite3_changes(db));
} }
deleted = sqlite3_changes(db) != 0; deleted = sqlite3_changes(db);
} }
} }
else else
@ -1185,10 +1186,11 @@ static void _tf_ssb_rpc_delete_blobs_work(uv_work_t* work)
tf_printf("prepare failed: %s\n", sqlite3_errmsg(db)); tf_printf("prepare failed: %s\n", sqlite3_errmsg(db));
} }
tf_ssb_release_db_writer(ssb, db); tf_ssb_release_db_writer(ssb, db);
int64_t duration_ms = (uv_hrtime() - start_ns) / 1000000LL;
tf_printf("Deleted %d blobs in %d ms.\n", deleted, (int)duration_ms);
if (deleted) if (deleted)
{ {
_tf_ssb_rpc_start_delete_blobs(ssb, 60 * 1000); _tf_ssb_rpc_start_delete_blobs(ssb, (int)duration_ms);
} }
} }