Closed nsheff closed 5 months ago
Additional info: Confirmed it is just for the filebackend.
Found it:
if record_identifier in filter_condition["value"]:
should be
if record_identifier == filter_condition["value"]:
I'm failing a couple of tests with this change so I need to investigate that.
This is fixed
Can you add in a test that mimics the above? Like, have two samples named sample1
and sample
, so one is a prefix of the other, and show you can retrieve them both correctly?
Might be good to see if this solves https://github.com/pepkit/looper/issues/470 (which should probably move to pipestat)
Yes, I already added that test
I can confirm the fix is working correctly in my hands, thanks.
If I have two record identifiers that share a common prefix, pipestat will return the value for the shorter one even when you request the longer one.
This may be the root of this problem I found earlier in looper: https://github.com/pepkit/looper/issues/470
Watch this:
Create pipestatmanager object
Here's my
seqcol_pipestat_schema.yaml
Report/retrieve results is broken if you use similar sample names:
And continuing:
It seems that if anything matches the first prefix of the sample, it will return that somehow. This is a critical bug.
The problem is with retrieval, not with reporting, because the file itself is actually correct, it shows: