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

Fixed CORE-2822: Error "no current row for fetch operation" when subquery includes a non-trivial derived table.

This commit is contained in:
dimitr 2010-01-22 14:05:46 +00:00
parent 4c4f0ae7c2
commit ccac0eac72

View File

@ -250,11 +250,9 @@ bool OPT_computable(CompilerScratch* csb, const jrd_nod* node, SSHORT stream,
for (ptr = rse->rse_relation, end = ptr + rse->rse_count; ptr < end && result; ptr++)
{
if ((*ptr)->nod_type != nod_rse)
if (!OPT_computable(csb, (*ptr), stream, idx_use, allowOnlyCurrentStream))
{
if (!OPT_computable(csb, (*ptr), stream, idx_use, allowOnlyCurrentStream)) {
result = false;
}
result = false;
}
}
@ -1136,9 +1134,7 @@ void OptimizerRetrieval::findDependentFromStreams(const jrd_nod* node,
const jrd_nod* const* end;
for (ptr = rse->rse_relation, end = ptr + rse->rse_count; ptr < end; ptr++)
{
if ((*ptr)->nod_type != nod_rse) {
findDependentFromStreams(*ptr, streamList);
}
findDependentFromStreams(*ptr, streamList);
}
// Check value expression, if any