Closed torpedro closed 7 years ago
The error is caused by the way this expression system works. The EqualsExpression checks equality for valueIds where the GenericExpressionValue checks the actual value. The update (line 46 to 50) inserts data into the delta, not the main storage. But the EqualsExpression uses only on the main dictionary to find the valueId and the GenericExpressionValue looks for all plain values in main and delta. The system is not designed to work properly with values in the delta storage. But there is another expression system coming: https://github.com/hyrise/hyrise/pull/320
To fix this, you could just include a merge in the test case: http://nopaste.linux-dev.org/?374857
Added a test for this. This test fails in the current state. I assume for this test to pass the EqualsExpression needs to be fixed.