Skip to content

Commit 84b9cd5

Browse files
zmurdahlerlend
authored andcommitted
Bug#33387443 Forced shutdown of data node immediately after completion of restart
Allow LQHKEYREQ to old nodes (<8.0.18) to be sent to both DBLQH and DBSPJ from DBTC. Reviewed-by: Ole John Aske <[email protected]>
1 parent 168a806 commit 84b9cd5

File tree

1 file changed

+14
-1
lines changed

1 file changed

+14
-1
lines changed

storage/ndb/src/kernel/blocks/dbtc/DbtcMain.cpp

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4887,7 +4887,20 @@ void Dbtc::sendlqhkeyreq(Signal* signal,
48874887
else
48884888
{
48894889
jamDebug();
4890-
ndbrequire(refToMain(TBRef) == DBLQH);
4890+
/*
4891+
* LQHKEYREQ signals to query threads should use virtual block V_QUERY
4892+
* not address DBQLQH directly.
4893+
*
4894+
* The receiver will select an appropriate DBLQH or DBQLQH instance.
4895+
*
4896+
* All node versions (>=8.0.23) supporting virtual query blocks also
4897+
* support fragmented LQHKEYREQ and should not end up in this else
4898+
* branch.
4899+
*
4900+
* Only DBSPJ and DBLQH are intended receivers for LQHKEYREQ signals to
4901+
* old nodes (<8.0.18) not supporting fragmented LQHKEYREQ.
4902+
*/
4903+
ndbrequire(refToMain(TBRef) == DBLQH || refToMain(TBRef) == DBSPJ);
48914904
sendSignal(TBRef, GSN_LQHKEYREQ, signal,
48924905
nextPos + LqhKeyReq::FixedSignalLength, JBB,
48934906
&handle);

0 commit comments

Comments
 (0)