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

Fixed CORE-3211 - String truncation occurs when selecting from a view containing NOT IN inside

This commit is contained in:
asfernandes 2010-11-04 01:03:40 +00:00
parent fb53d4334e
commit f3277d0775
2 changed files with 2 additions and 1 deletions

View File

@ -1887,6 +1887,7 @@ BoolExprNode* RseBoolNode::convertNeqAllToNotAny(thread_db* tdbb, CompilerScratc
andNode->arg2 = rseBoolNode; andNode->arg2 = rseBoolNode;
RseNode* newInnerRse = innerRse->clone(); RseNode* newInnerRse = innerRse->clone();
newInnerRse->ignoreDbKey(tdbb, csb, csb->csb_view);
rseBoolNode = FB_NEW(csb->csb_pool) RseBoolNode(csb->csb_pool, blr_any); rseBoolNode = FB_NEW(csb->csb_pool) RseBoolNode(csb->csb_pool, blr_any);
rseBoolNode->rse = PAR_make_node(tdbb, 1); rseBoolNode->rse = PAR_make_node(tdbb, 1);

View File

@ -242,7 +242,7 @@ RelationSourceNode* RelationSourceNode::copy(thread_db* tdbb, NodeCopier& copier
newSource->view = view; newSource->view = view;
CompilerScratch::csb_repeat* element = CMP_csb_element(copier.csb, newSource->stream); CompilerScratch::csb_repeat* element = CMP_csb_element(copier.csb, newSource->stream);
element->csb_relation = (jrd_rel*) newSource->relation; element->csb_relation = newSource->relation;
element->csb_view = newSource->view; element->csb_view = newSource->view;
element->csb_view_stream = copier.remap[0]; element->csb_view_stream = copier.remap[0];