keksmd opened a new issue, #974:
URL: https://github.com/apache/incubator-graphar/issues/974

   ### Describe the enhancement requested
   
   Add a dataset validator that checks a published GraphAr dataset against the 
format rules instead of failing later inside a reader. Given a graph URI it 
reports concrete, located issues: metadata that does not describe the files on 
storage, chunk counts that disagree with the declared chunk size, offset chunks 
that are not monotonic, and adjacency chunks that reference vertices outside 
the declared count.
   
   Component(s): Java
   
   ## Scope
   
   - Add `graphar-validator` with a `DatasetValidator` that walks metadata and 
storage and returns a `ValidationReport` of located `ValidationIssue` values.
   - Depend only on `graphar-info`, `graphar-core`, `graphar-io-api` and 
`graphar-storage-api`, so validation stays independent of any one format or 
backend.
   - Add tests over deliberately corrupted datasets: missing chunk file, wrong 
chunk count, non-monotonic offsets, out-of-range vertex id.
   
   ## Non-goals
   
   No repair or migration of a broken dataset, no reader facade, no new format 
backend, and no validation of user payload semantics beyond what the GraphAr 
format itself states.
   
   ## Compatibility and acceptance
   
   A canonical dataset from the `testing` fixtures must validate clean; each 
corrupted fixture must produce exactly the issue that describes it, with the 
offending path. Java 11 compatible.
   
   ## Dependency order
   
   Its tests build datasets through the write path, so this slice depends on 
`graphar-core` (#967, PR #968), a merged format backend (#964), and the write 
facade (#973). It should land last of the four.
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to