Item12967: '= undefined' condition not working when table row is missing.
Priority: Urgent
Current State: No Action Required
Released In: n/a
Target Release:
For example, if I have a condition such as:
"META:WORKFLOW.name=undefined"
for consistency with the old style of search, this condition should match any topic that does not contain a META:WORKFLOW line. However it will not, because the topic has no row in the WORKFLOW table.
Note that:
"META:WORKFLOW.name=''"
would also have worked in the default query algorithm, though that is clearly wrong if the workflow is not defined. The =undefined method needs to work, though.
--
CrawfordCurrie - 18 Jul 2014
This is tricky. The database is built lazily, with no foreknowledge of what tables need to be populated for topics. So a topic that has no META:WORKFLOW line never appears in the META:WORKFLOW table.
My gut suggests that the current behaviour is correct; if you want to test a field, there should be a reasonable expectation that the field is present in some form.
--
CrawfordCurrie - 18 Jul 2014
I think this has to be accepted as a known limitation.
--
CrawfordCurrie - 12 Aug 2014