Bug #105616 Saved corrupt version of COPY_FRAGREQ
Submitted: 17 Nov 2021 14:38 Modified: 17 Nov 2021 15:52
Reporter: Mikael Ronström Email Updates:
Status: Verified Impact on me:
None 
Category:MySQL Cluster: Cluster (NDB) storage engine Severity:S3 (Non-critical)
Version:8.0.23 OS:Any
Assigned to: CPU Architecture:Any

[17 Nov 2021 14:38] Mikael Ronström
Description:
When receiving COPY_FRAGREQ we sometimes put the signal into a queue.
We do this by copying the signal object into a stored object.
However we could sometimes use the signal object to send another signal
before this happens. This leads to saving a corrupt signal that is later
sent and causes a crash in the system restart.

How to repeat:
testNodeRestart -n ChangeNumLDMsNR T1 D2

Suggested fix:
Save a copy of the CopyFragReq object from the signal object
and let the pointer point to this static object rather than to
the signal object such as in execCREATE_TAB_REQ in DbtuxMeta.cpp.
[17 Nov 2021 15:52] MySQL Verification Team
Thanks for the report Mikael,

all best
Bogdan