llnl / llnl/scr

API to query status of async flushed datasets

Open
#476 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
C
Stars
108
Forks
37
PR merge metrics
No merged PRs in 30d

Description

One application team has requested an ability to check when an async flush is complete and a way to know whether it succeeded or not. Really, there may be a similar need even for a sync flush.

One mechanism would be to provide an API allowing users to query the status of their datasets. In addition to flush status, there might be other information that one might be interested in:
- Provide a list of all known datasets. As one big list or one at a time? If providing one name at a time, like ``readdir``, how to iterate through that list?
- Include flags assigned to dataset when it was created? ``SCR_FLAG_CHECKPOINT | SCR_FLAG_OUTPUT``
- Is dataset in cache or on parallel file system?
- If in cache, should we provide the actual cache directory ``SCR_CACHE_BASE``?
- SCR internals like dataset id, timestamp, byte counts, etc.

This is related to https://github.com/LLNL/scr/issues/390

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

No files, tests, or entry points are named. Start by reviewing related issue 390 and the existing SCR flush and dataset interfaces. Done would require a decided, documented API scope for querying datasets and reporting flush status and success.

Written by the indexing model from the issue text.

Assessment

Tech stack
c
Domain
api, data, distributed-systems
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.