Can't get PreVote request when running two KMS
yulidai opened this issue · comments
1. Purpose
Just to test some special cases
2. Test Description
I'm running two group of one-kms-with-one-validator
, Two KMS use the same priv_validator_key.json
. One block per four heights.
In order to avoid DOUBLE SIGN, I let one of the two KMS only sign the odd height and the other only sign the even height.
3. Testing Result
Logs of the KMS with odd height only
02:58:36 [info] [ld_test@tcp://127.0.0.1:26659] signed PreCommit:<nil> at h/r/s 127/0/6 (0 ms)
02:58:41 [warn] failed to sign prop, h/r : 128/0
02:58:44 [warn] failed to sign vote, h/t/r : 128/1/0
02:58:47 [warn] failed to sign vote, h/t/r : 128/2/0
02:58:50 [warn] failed to sign vote, h/t/r : 128/2/1
02:58:53 [info] [ld_test@tcp://127.0.0.1:26659] signed PreCommit:<nil> at h/r/s 129/0/6 (0 ms)
02:58:57 [warn] failed to sign vote, h/t/r : 130/1/0
02:59:00 [warn] failed to sign vote, h/t/r : 130/2/0
Logs of the KMS with even height only
02:58:35 [warn] failed to sign vote, h/t/r : 127/1/0
02:58:38 [warn] failed to sign vote, h/t/r : 127/2/0
02:58:44 [info] [ld_test@tcp://127.0.0.1:16659] signed Proposal:878ACD4FD0 at h/r/s 128/0/3 (0 ms)
02:58:44 [info] [ld_test@tcp://127.0.0.1:16659] signed PreCommit:<nil> at h/r/s 128/0/6 (0 ms)
02:58:45 [info] [ld_test@tcp://127.0.0.1:16659] signed PreVote:3062FAFF5A at h/r/s 128/1/6 (0 ms)
02:58:45 [info] [ld_test@tcp://127.0.0.1:16659] signed PreCommit:3062FAFF5A at h/r/s 128/1/6 (0 ms)
02:58:51 [warn] failed to sign vote, h/t/r : 129/1/0
02:58:54 [warn] failed to sign vote, h/t/r : 129/2/0
02:58:57 [info] [ld_test@tcp://127.0.0.1:16659] signed PreCommit:<nil> at h/r/s 130/0/6 (0 ms)
4. Problem
You will never receive PreVote's signature request except when it comes out of Proposal
. And Proposal
never succeed.
Why does this strange phenomenon occur that every height's signature is not independent?
Maybe it's tendermint's problem? But I haven't found any information for a long time.
This is definitely an unsupported configuration. No idea why the behavior is the way it is, but I'd agree it's probably something on the Tendermint side.