Implement time-based cache invalidation for dataset description cache
Nobody has claimed this yet.
Assessment
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Newbie friendliness
- 45/100
- Issue type
- Feature
- Clarity
- Mostly clear
- Activity status
- Stale
- Tech stack
- python
- Domain
- data, machine-learning
Research direction
Start at _get_dataset_description and inspect the TODO and existing handling of description.xml and force_refresh_cache=True. Determine the intended cache age and verify that old cached descriptions refresh while recent ones remain usable; done means dataset metadata is no longer reused indefinitely.
Written by the indexing model from the issue text.
Description
### Problem
The function _get_dataset_description caches the dataset description (description.xml) to disk, but the cache is never invalidated.
Dataset descriptions contain metadata such as dataset status (active, deactivated, etc.), which may change over time on the OpenML server. Because the cached description file is reused indefinitely, users may receive stale metadata if the local cache is old.
There is also a TODO comment in the code suggesting that this cache should invalidate itself after some time.
Expected Behavior
Cached dataset descriptions should be refreshed periodically to ensure that metadata reflects the current state on the server.
Current Behavior
Once description.xml is downloaded and cached, it is reused indefinitely unless the cache directory is manually deleted or force_refresh_cache=True is used.
- Dominant language
- Python
- Stars
- 361
- Forks
- 296
- PR merge metrics
- No merged PRs in 30d
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from openml/openml-python
-
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
openml/openml-python#1749 ·
-
Difficulty 1/5 Under an hour Newbie friendliness 92/100
openml/openml-python#1746 ·
-
Documentation Good First Issue
Difficulty 2/5 1-3 hours Newbie friendliness 74/100
openml/openml-python#1708 · 6 comments ·
-
Good First Issue module:Run testing
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
openml/openml-python#1646 · 7 comments · 2 reactions ·
-
Good First Issue module:Data testing
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
openml/openml-python#1644 · 4 comments ·
All issues in openml/openml-python
Similar issues
-
enhancement
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
canonical/paas-charm#368 · 1 comment ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
-
tech debt
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
-
Difficulty 1/5 Under an hour Newbie friendliness 90/100
StevenBlack/hosts#3256 ·
-
Difficulty 1/5 Under an hour Newbie friendliness 90/100
qualcomm/qai-appbuilder#275 ·