framed-data / overseer

Overseer is a library for building and running data pipelines in Clojure.
Eclipse Public License 1.0
97 stars 10 forks source link

Validate user-provided job graphs #17

Closed andrewberls closed 9 years ago

andrewberls commented 9 years ago

Previously, if a user attempted to assert a graph that did not fully specify all dependencies such as

{:bar [:quux]}

(here, where :quux is not specified in the graph), bar's dependencies would be incorrectly asserted and rejected by Datomic. Now, graphs are validated before reaching Datomic, and the previous example would cause an AssertionError. For this example to work, the user must specify

{:quux []
 :bar [:quux]}
unforced commented 9 years ago

:+1: