Views containing NULL value could not be updated correctly.
Some of them were fixed in prevous commits but there were
other issues left in the following situation. (Issue #31)
When NULL is in group keys of aggregate views.
When non-null value and null are inserted simultanously.
This commit fixes these issues by replacing tuple matching
condition "a=b" by "a=b or (a is null and b is null)".
Regression tests for these situation are added, too.
In passing, apply_delta was refactored especially around
aggregate functions handling.
Views containing NULL value could not be updated correctly. Some of them were fixed in prevous commits but there were other issues left in the following situation. (Issue #31)
This commit fixes these issues by replacing tuple matching condition "a=b" by "a=b or (a is null and b is null)". Regression tests for these situation are added, too.
In passing, apply_delta was refactored especially around aggregate functions handling.