8
0
mirror of https://github.com/FirebirdSQL/firebird.git synced 2025-01-24 07:23:03 +01:00

bugfix: OUTER JOINs and no current record for fetch operation, caused by previous optimizer change

This commit is contained in:
arnobrinkman 2002-12-28 00:20:45 +00:00
parent 05ea293e73
commit 7e2b62528a

View File

@ -569,18 +569,18 @@ RSB OPT_compile(TDBB tdbb,
else
rse->rse_aggregate = aggregate = NULL;
/* mark the previous used streams (sub-rse's) as active */
for (i = 1; i <= used_streams[0]; i++) {
csb->csb_rpt[used_streams[i]].csb_flags |= csb_active;
}
/* outer joins require some extra processing */
if (rse->rse_jointype != blr_inner)
rsb = gen_outer(tdbb, opt_, rse, rivers_stack, &sort, &project);
else {
/* mark the previous used streams (sub-rse's) as active */
for (i = 1; i <= used_streams[0]; i++) {
csb->csb_rpt[used_streams[i]].csb_flags |= csb_active;
}
/* attempt to form joins in decreasing order of desirability */
gen_join(tdbb, opt_, streams, &rivers_stack, &sort, &project,