Subject Re: Incorrect handling of null within view
Author Adam
> This is exactly the bug that I solved five years ago. I remember having
> asked Arno or Dmitry in the last three years if one of their DSQL
changes
> would defeat the fix and they said NO. At least I now know that
undoing my
> change (that was marking view fields as nullable) was bad idea.
> :-(
>
> DSQL cache doesn't have enough information to decide, hence it's safe to
> simply tell it that any view field can be nullable. This solves problems
> with having left joins, views based on views, etc.
>
> C.
>

Yeah, that happens to all of us at some stage. Resolved bugs that are
reintroduced somewhere.

I think the rule is that any field involved on the right side of a
left join, any field involved on the left side of a right join, and
any field involved on either side of an outer join must be nullable. I
don't know enough as to whether the engine has this information at the
time it is needed. I also don't know whether simply telling it that
any field is nullable will have other unintended consequences.

If anyone is interested, the issue is in the tracker:
http://tracker.firebirdsql.org/browse/CORE-871

Adam