Dear Maintainer,
I deployed a private chain using BSC. Due to the initial lack of validator nodes, I modified the INIT_VALIDATORSET_BYTESvariable and INIT_NUM_OF_CABINETSvariable in the BSCValidatorSet.solcontract as per the instructions. Specifically, I set INIT_NUM_OF_CABINETSto 3 (matching the number of validators I launched), and used the validators.extraValidatorByteslist printed by node scripts/generate-genesis.jsfor INIT_VALIDATORSET_BYTES. After startup, the three nodes produced blocks normally, and all block data appeared correct. However, when crossing UTC midnight (00:00:00), the following error occurred:
apply message failed msg= err="invalid opcode: INVALID" from=0xC2AE016880b37904066901e9Cd872E7Fb6b104e6 to=0x0000000000000000000000000000000000001000
Here, the fromaddress corresponds to the active validator at that time, while the toaddress is the validator system contract address. What might be causing this issue?
I did not manually modify or update the validator list bytecode in genesis.json; it was automatically generated using node scripts/generate-genesis.js. Could this require manual replacement with the latest bytecode of the 0x0000000000000000000000000000000000001000 system contract?