Skip to content

Commit 291da02

Browse files
authored
fix: preview cache invalidation (#40)
1 parent e6e55ab commit 291da02

File tree

1 file changed

+11
-3
lines changed

1 file changed

+11
-3
lines changed

lavender_data/server/dataset/preview.py

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -196,9 +196,10 @@ def refine_value_previewable(value: Any):
196196

197197

198198
def refine_sample_previewable(sample: dict[str, Any]):
199+
refined = {}
199200
for key in sample.keys():
200-
sample[key] = refine_value_previewable(sample[key])
201-
return sample
201+
refined[key] = refine_value_previewable(sample[key])
202+
return refined
202203

203204

204205
def preview_dataset(
@@ -262,12 +263,19 @@ def preview_dataset_task(
262263
start_time = time.time()
263264
try:
264265
samples = preview_dataset(dataset_id, offset, limit)
265-
# cache for 60 minutes
266266
cache.hset(f"preview:{dataset_id}", preview_id, serialize_list(samples))
267267
except Exception as e:
268268
logger.exception(f"Failed to preview dataset {dataset_id}: {e}")
269269
cache.set(f"preview:{dataset_id}:{preview_id}:error", str(e), ex=3 * 60)
270270
raise e
271+
272+
try:
273+
# cache for 60 minutes
274+
cache.expire(f"preview:{dataset_id}", 60 * 60)
275+
except Exception as e:
276+
logger.warning(f"Failed to expire preview {dataset_id}: {e}")
277+
raise e
278+
271279
end_time = time.time()
272280
logger.info(
273281
f"Previewed dataset {dataset_id} {offset}-{offset+limit-1} in {end_time - start_time:.2f}s"

0 commit comments

Comments
 (0)