| 5335 | } |
| 5336 | |
| 5337 | void ForNode::checkRecordUpdated(thread_db* tdbb, Request* request, record_param* rpb) const |
| 5338 | { |
| 5339 | jrd_rel* relation = rpb->rpb_relation; |
| 5340 | if (!(marks & MARK_MERGE) || relation->isVirtual() || relation->rel_file || relation->rel_view_rse) |
| 5341 | return; |
| 5342 | |
| 5343 | ImpureMerge* impure = request->getImpure<ImpureMerge>(impureOffset); |
| 5344 | |
| 5345 | if (!impure->recUpdated) |
| 5346 | return; |
| 5347 | |
| 5348 | if (impure->recUpdated->test(rpb->rpb_number.getValue())) |
| 5349 | Arg::Gds(isc_merge_dup_update).raise(); |
| 5350 | } |
| 5351 | |
| 5352 | void ForNode::setRecordUpdated(thread_db* tdbb, Request* request, record_param* rpb) const |
| 5353 | { |