Closed Zethson closed 2 weeks ago
Do you mean if ln.track()
wasn't run, load()
works?
Correct
@falexwolf I think this is related to the inter-instance tracking, why is the artifact being saved in this case?
You can only load an artifact if it's saved; otherwise, there is no way to track lineage.
The bug here is independent of data lineage but related to not being able to save the artifact. I thought we're meanwhile able to transfer artifacts across instances with mismatching schemas? I'm surprised this doesn't work.
I know this is hard to test but we should add a test for a target instance whose schema modules is neither a strict super nor a strict subset of the source instance.
Looking at the below line in the traceback I believe we in fact don't have a general problem, just a coverage problem for edge cases:
208 if not labels.exists():
Likely, this case isn't covered in the tests and this leads to the bug.
But saving an artifact works without ln.track()
, so I think the issue is in the tracking.
Should be fixed here and added tests: https://github.com/laminlabs/lamindb/pull/2132
Report
results in
The
get
works but theload()
errors. Only whentrack()
is on.Version information
No response