File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -543,8 +543,11 @@ bool HashJoin::refetchRecord(thread_db* /*tdbb*/) const
543543 return true ;
544544}
545545
546- WriteLockResult HashJoin::lockRecord (thread_db* /* tdbb*/ ) const
546+ WriteLockResult HashJoin::lockRecord (thread_db* tdbb) const
547547{
548+ if (m_joinType == SEMI_JOIN || m_joinType == ANTI_JOIN)
549+ return m_leader.source ->lockRecord (tdbb);
550+
548551 status_exception::raise (Arg::Gds (isc_record_lock_not_supp));
549552}
550553
Original file line number Diff line number Diff line change @@ -247,8 +247,11 @@ bool NestedLoopJoin::refetchRecord(thread_db* /*tdbb*/) const
247247 return true ;
248248}
249249
250- WriteLockResult NestedLoopJoin::lockRecord (thread_db* /* tdbb*/ ) const
250+ WriteLockResult NestedLoopJoin::lockRecord (thread_db* tdbb) const
251251{
252+ if (m_joinType == SEMI_JOIN || m_joinType == ANTI_JOIN)
253+ return m_args.front ()->lockRecord (tdbb);
254+
252255 status_exception::raise (Arg::Gds (isc_record_lock_not_supp));
253256}
254257
You can’t perform that action at this time.
0 commit comments