Spaces:
Runtime error
Runtime error
Commit
Β·
1a35a11
1
Parent(s):
6d7c674
protect submission db with lock
Browse files- src/submission/submit.py +15 -9
src/submission/submit.py
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
|
|
| 1 |
import time
|
| 2 |
from datetime import datetime, timezone, timedelta
|
| 3 |
import os
|
|
@@ -23,6 +24,8 @@ MIN_WAIT_TIME_PER_USER_HRS = 0.1 # TODO set to 24 for production
|
|
| 23 |
RATE_LIMIT_WINDOW_HRS = 24
|
| 24 |
MAX_SUBMISSIONS_PER_WINDOW = 10
|
| 25 |
|
|
|
|
|
|
|
| 26 |
|
| 27 |
def add_new_solutions(
|
| 28 |
lbdb: F1Data,
|
|
@@ -35,10 +38,11 @@ def add_new_solutions(
|
|
| 35 |
is_warmup_dataset: bool,
|
| 36 |
ensure_all_present: bool = False,
|
| 37 |
):
|
| 38 |
-
|
| 39 |
-
|
| 40 |
-
|
| 41 |
-
|
|
|
|
| 42 |
|
| 43 |
logger.info(f"Found {len(submitted_ids)} submissions")
|
| 44 |
|
|
@@ -115,11 +119,13 @@ def add_new_solutions(
|
|
| 115 |
}
|
| 116 |
|
| 117 |
ds = Dataset.from_pandas(submission_df).map(add_info)
|
| 118 |
-
|
| 119 |
-
|
| 120 |
-
|
| 121 |
-
|
| 122 |
-
|
|
|
|
|
|
|
| 123 |
|
| 124 |
return styled_message(
|
| 125 |
"Your request has been submitted to the evaluation queue!\n"
|
|
|
|
| 1 |
+
import threading
|
| 2 |
import time
|
| 3 |
from datetime import datetime, timezone, timedelta
|
| 4 |
import os
|
|
|
|
| 24 |
RATE_LIMIT_WINDOW_HRS = 24
|
| 25 |
MAX_SUBMISSIONS_PER_WINDOW = 10
|
| 26 |
|
| 27 |
+
submission_lock = threading.Lock()
|
| 28 |
+
|
| 29 |
|
| 30 |
def add_new_solutions(
|
| 31 |
lbdb: F1Data,
|
|
|
|
| 38 |
is_warmup_dataset: bool,
|
| 39 |
ensure_all_present: bool = False,
|
| 40 |
):
|
| 41 |
+
with submission_lock:
|
| 42 |
+
try:
|
| 43 |
+
submitted_ids = get_dataset_config_names(SUBMISSIONS_REPO, token=TOKEN)
|
| 44 |
+
except (DatasetNotFoundError, FileNotFoundError):
|
| 45 |
+
submitted_ids = []
|
| 46 |
|
| 47 |
logger.info(f"Found {len(submitted_ids)} submissions")
|
| 48 |
|
|
|
|
| 119 |
}
|
| 120 |
|
| 121 |
ds = Dataset.from_pandas(submission_df).map(add_info)
|
| 122 |
+
|
| 123 |
+
with submission_lock:
|
| 124 |
+
ds.push_to_hub(
|
| 125 |
+
SUBMISSIONS_REPO,
|
| 126 |
+
submission_id,
|
| 127 |
+
private=True,
|
| 128 |
+
)
|
| 129 |
|
| 130 |
return styled_message(
|
| 131 |
"Your request has been submitted to the evaluation queue!\n"
|