Closed igorbarinov closed 6 years ago
Maybe I'm not right
8 weeks
Missed Voting key Mining key Name
7/14, 50.0% 0x2b6e…adc1 0xdb12…ea85 Michael Milirud
4/14, 28.6% 0x0e94…8cf1 0x5b2c…11e5 Marat Pekker
4/14, 28.6% 0x30bd…75aa 0x58ba…34cd John D. Storey
4/14, 28.6% 0x931d…3d37 0x46bc…5aec Lillian Chan
4/14, 28.6% 0x9a1f…a313 0x82e4…c248 Roman Storm
4/14, 28.6% 0xb911…b051 0xf747…62ed Alexey Emelyanov
3/14, 21.5% 0x4a58…85fa 0x4ca0…46a0 Jefferson Flowers
3/14, 21.5% 0x7b43…8d90 0x2346…8d28 Stephen Arsenault
3/14, 21.5% 0xa1d0…cb8c 0x0b55…51d6 Walter Karshat
1/14, 7.2% 0xb494…0489 0x4e20…25b3 Jim O'Regan
0/7, 0.0% 0xb307…a7a1 0xf168…d6e5 Xiaobo Chen
0/9, 0.0% 0xc2de…fad6 0x706b…1c4e Oxana Kunets
0/14, 0.0% 0x33e3…7694 0x7bd5…2392 Adam Kagy
0/14, 0.0% 0x3ce1…b87e 0xde88…e024 Melanie Marsollier
0/14, 0.0% 0x4df3…3135 0xe2ac…0381 John H. LeGassic
0/14, 0.0% 0x7d52…347d 0x063f…4e15 Ilmira Nugumanova
0/14, 0.0% 0xb52d…76d8 0xed2a…1c36 Sherina Yang
0/14, 0.0% 0xc900…bf64 0xcbbc…90c1 Sviataslau Vishneuski
0/14, 0.0% 0xf153…9a96 0xa0b0…b941 Rocco Mancini
4 weeks
Missed Voting key Mining key Name
3/6, 50.0% 0x0e94…8cf1 0x5b2c…11e5 Marat Pekker
3/6, 50.0% 0x2b6e…adc1 0xdb12…ea85 Michael Milirud
3/6, 50.0% 0x7b43…8d90 0x2346…8d28 Stephen Arsenault
3/6, 50.0% 0xa1d0…cb8c 0x0b55…51d6 Walter Karshat
0/6, 0.0% 0x30bd…75aa 0x58ba…34cd John D. Storey
0/6, 0.0% 0x33e3…7694 0x7bd5…2392 Adam Kagy
0/6, 0.0% 0x3ce1…b87e 0xde88…e024 Melanie Marsollier
0/6, 0.0% 0x4a58…85fa 0x4ca0…46a0 Jefferson Flowers
0/6, 0.0% 0x4df3…3135 0xe2ac…0381 John H. LeGassic
0/6, 0.0% 0x7d52…347d 0x063f…4e15 Ilmira Nugumanova
0/6, 0.0% 0x931d…3d37 0x46bc…5aec Lillian Chan
0/6, 0.0% 0x9a1f…a313 0x82e4…c248 Roman Storm
0/6, 0.0% 0xb307…a7a1 0xf168…d6e5 Xiaobo Chen
0/6, 0.0% 0xb494…0489 0x4e20…25b3 Jim O'Regan
0/6, 0.0% 0xb52d…76d8 0xed2a…1c36 Sherina Yang
0/6, 0.0% 0xb911…b051 0xf747…62ed Alexey Emelyanov
0/6, 0.0% 0xc2de…fad6 0x706b…1c4e Oxana Kunets
0/6, 0.0% 0xc900…bf64 0xcbbc…90c1 Sviataslau Vishneuski
0/6, 0.0% 0xf153…9a96 0xa0b0…b941 Rocco Mancini
There are some weird InitiateChange
events around that time, where the set suddenly went down to only two validators:
InitiateChange { parent_hash: 0x3130…4e33, new_set: [0x1092…ebae, 0x7138…57a6] }
I'll investigate in more detail next week. The tool is not checking the parent hash yet, so possibly adding that will filter out InitiateChange
events that didn't go through.
Let's add parameter from which block we'll start crawling?
e.g. on Sokol before HF1 https://github.com/poanetwork/wiki/wiki/HFs-Sokol-2018-01-18 we had a strange behavior with InitiateChange
is it before block 509355
?
Those events with the very small validator sets were later than that:
• #1385657 InitiateChange { parent_hash: 0x3130…4e33, new_set: [0x1092…ebae, 0x7138…57a6] }
• #1385705 InitiateChange { parent_hash: 0x1d29…f61a, new_set: [0x1092…ebae, 0x7138…57a6, 0xe5aa…6b59] }
• #1385727 InitiateChange { parent_hash: 0xefbe…7e0c, new_set: [0x1092…ebae, 0x7138…57a6, 0xe5aa…6b59, 0xa5f6…7709] }
@varasev Hi Vadim, please help us investigate why we had that small validator sets Andreas mentioned in the last comment (on Sokol)
InitiateChange
events in blocks 1385657, 1385705, 1385727 are not related to the current PoaNetworkConsensus
contract that has the address 0x03048F666359CFD3C74a1A5b9a97848BF71d5038
.
It was just my test transactions I made on March 13 in Sokol
network with a small set of test validators.
I'll try to scan InitiateChange
event for the current PoaNetworkConsensus
contract and its previous versions in Sokol
network. We can see previous versions' addresses in https://github.com/poanetwork/poa-chain-spec/blob/sokol/spec.json
I'm curious where did @afck got your test contract address
@afck could you use only PoaNetworkConsensus
contract in the tool?
I've written a small script that shows a history of InitiateChange
event for all three PoaNetworkConsensus
contracts in Sokol
network:
== Contract 0x8bf38d4764929064f2d4d3a56520a76ab3df415b ==
#672:
0xE8DDc5c7A2d2F0D7a9798459c0104fDf5E987ACA
0x82e4e61e7f5139ff0a4157A5Bc687eF42294c248
#194806:
0xE8DDc5c7A2d2F0D7a9798459c0104fDf5E987ACA
0x82e4e61e7f5139ff0a4157A5Bc687eF42294c248
0x23468dB7f4b8Ff4924B0709aB7Ae0971B3Bc8d28
#200641:
0xE8DDc5c7A2d2F0D7a9798459c0104fDf5E987ACA
0x82e4e61e7f5139ff0a4157A5Bc687eF42294c248
0x23468dB7f4b8Ff4924B0709aB7Ae0971B3Bc8d28
0xA0B0D4cCF483b000F0aF59C47A1944668477b941
#205821:
0xE8DDc5c7A2d2F0D7a9798459c0104fDf5E987ACA
0x82e4e61e7f5139ff0a4157A5Bc687eF42294c248
0x23468dB7f4b8Ff4924B0709aB7Ae0971B3Bc8d28
0xA0B0D4cCF483b000F0aF59C47A1944668477b941
0xe2ac1c6843A33f81aE4935E5EF1277a392990381
#212436:
0xE8DDc5c7A2d2F0D7a9798459c0104fDf5E987ACA
0x82e4e61e7f5139ff0a4157A5Bc687eF42294c248
0x23468dB7f4b8Ff4924B0709aB7Ae0971B3Bc8d28
0xA0B0D4cCF483b000F0aF59C47A1944668477b941
0xe2ac1c6843A33f81aE4935E5EF1277a392990381
0xde88a1a783b29a0b476BE28beEF38B4A85c0e024
#267590:
0xE8DDc5c7A2d2F0D7a9798459c0104fDf5E987ACA
0x82e4e61e7f5139ff0a4157A5Bc687eF42294c248
0x23468dB7f4b8Ff4924B0709aB7Ae0971B3Bc8d28
0xA0B0D4cCF483b000F0aF59C47A1944668477b941
0xe2ac1c6843A33f81aE4935E5EF1277a392990381
0xde88a1a783b29a0b476BE28beEF38B4A85c0e024
0x257101F4e39A9ae40B08f7a076Afb2eeb38244Dd
#277841:
0xE8DDc5c7A2d2F0D7a9798459c0104fDf5E987ACA
0x82e4e61e7f5139ff0a4157A5Bc687eF42294c248
0x23468dB7f4b8Ff4924B0709aB7Ae0971B3Bc8d28
0xA0B0D4cCF483b000F0aF59C47A1944668477b941
0xe2ac1c6843A33f81aE4935E5EF1277a392990381
0xde88a1a783b29a0b476BE28beEF38B4A85c0e024
0x257101F4e39A9ae40B08f7a076Afb2eeb38244Dd
0xA46C53bDf50CDd073b79A58455070690Bb5E1Cc1
#306811:
0xE8DDc5c7A2d2F0D7a9798459c0104fDf5E987ACA
0x82e4e61e7f5139ff0a4157A5Bc687eF42294c248
0x23468dB7f4b8Ff4924B0709aB7Ae0971B3Bc8d28
0xA0B0D4cCF483b000F0aF59C47A1944668477b941
0xe2ac1c6843A33f81aE4935E5EF1277a392990381
0xde88a1a783b29a0b476BE28beEF38B4A85c0e024
0x257101F4e39A9ae40B08f7a076Afb2eeb38244Dd
0xA46C53bDf50CDd073b79A58455070690Bb5E1Cc1
0x4E20226355b4464Cf8f3b67Fc318b753A7c125B3
== Contract 0xf5cE3f5D0366D6ec551C74CCb1F67e91c56F2e34 ==
#387289:
0xE8DDc5c7A2d2F0D7a9798459c0104fDf5E987ACA
0x82e4e61e7f5139ff0a4157A5Bc687eF42294c248
0x23468dB7f4b8Ff4924B0709aB7Ae0971B3Bc8d28
0xA0B0D4cCF483b000F0aF59C47A1944668477b941
0xe2ac1c6843A33f81aE4935E5EF1277a392990381
0xde88a1a783b29a0b476BE28beEF38B4A85c0e024
0x4E20226355b4464Cf8f3b67Fc318b753A7c125B3
0xA46C53bDf50CDd073b79A58455070690Bb5E1Cc1
#387289:
0xE8DDc5c7A2d2F0D7a9798459c0104fDf5E987ACA
0x82e4e61e7f5139ff0a4157A5Bc687eF42294c248
0x23468dB7f4b8Ff4924B0709aB7Ae0971B3Bc8d28
0xA0B0D4cCF483b000F0aF59C47A1944668477b941
0xe2ac1c6843A33f81aE4935E5EF1277a392990381
0xde88a1a783b29a0b476BE28beEF38B4A85c0e024
0x4E20226355b4464Cf8f3b67Fc318b753A7c125B3
0xA46C53bDf50CDd073b79A58455070690Bb5E1Cc1
0xdb1207770E0a4258D7A4Ce49aB037f92564feA85
#387293:
0xE8DDc5c7A2d2F0D7a9798459c0104fDf5E987ACA
0x82e4e61e7f5139ff0a4157A5Bc687eF42294c248
0x23468dB7f4b8Ff4924B0709aB7Ae0971B3Bc8d28
0xA0B0D4cCF483b000F0aF59C47A1944668477b941
0xe2ac1c6843A33f81aE4935E5EF1277a392990381
0xde88a1a783b29a0b476BE28beEF38B4A85c0e024
0x4E20226355b4464Cf8f3b67Fc318b753A7c125B3
0xdb1207770E0a4258D7A4Ce49aB037f92564feA85
#387293:
0xE8DDc5c7A2d2F0D7a9798459c0104fDf5E987ACA
0x82e4e61e7f5139ff0a4157A5Bc687eF42294c248
0x23468dB7f4b8Ff4924B0709aB7Ae0971B3Bc8d28
0xA0B0D4cCF483b000F0aF59C47A1944668477b941
0xe2ac1c6843A33f81aE4935E5EF1277a392990381
0xde88a1a783b29a0b476BE28beEF38B4A85c0e024
0x4E20226355b4464Cf8f3b67Fc318b753A7c125B3
0xdb1207770E0a4258D7A4Ce49aB037f92564feA85
0xeD2ACEb63Eb7928e67c854C24F61cF41db311c36
#447755:
0xE8DDc5c7A2d2F0D7a9798459c0104fDf5E987ACA
0x82e4e61e7f5139ff0a4157A5Bc687eF42294c248
0x23468dB7f4b8Ff4924B0709aB7Ae0971B3Bc8d28
0xA0B0D4cCF483b000F0aF59C47A1944668477b941
0xe2ac1c6843A33f81aE4935E5EF1277a392990381
0xde88a1a783b29a0b476BE28beEF38B4A85c0e024
0x4E20226355b4464Cf8f3b67Fc318b753A7c125B3
0xdb1207770E0a4258D7A4Ce49aB037f92564feA85
0xeD2ACEb63Eb7928e67c854C24F61cF41db311c36
0xE0C755279c00A4EAD2c015Ce23fe02973028427b
== Contract 0x03048F666359CFD3C74a1A5b9a97848BF71d5038 ==
#555470:
0xE8DDc5c7A2d2F0D7a9798459c0104fDf5E987ACA
0x82e4e61e7f5139ff0a4157A5Bc687eF42294c248
0x23468dB7f4b8Ff4924B0709aB7Ae0971B3Bc8d28
0xA0B0D4cCF483b000F0aF59C47A1944668477b941
0xe2ac1c6843A33f81aE4935E5EF1277a392990381
0xde88a1a783b29a0b476BE28beEF38B4A85c0e024
0x4E20226355b4464Cf8f3b67Fc318b753A7c125B3
0xdb1207770E0a4258D7A4Ce49aB037f92564feA85
0xeD2ACEb63Eb7928e67c854C24F61cF41db311c36
0xE0C755279c00A4EAD2c015Ce23fe02973028427b
0x4Ca0f1a7B5a2723A9094B7706BaA23C2B8BD46A0
#562574:
0xE8DDc5c7A2d2F0D7a9798459c0104fDf5E987ACA
0x82e4e61e7f5139ff0a4157A5Bc687eF42294c248
0x23468dB7f4b8Ff4924B0709aB7Ae0971B3Bc8d28
0xA0B0D4cCF483b000F0aF59C47A1944668477b941
0xe2ac1c6843A33f81aE4935E5EF1277a392990381
0xde88a1a783b29a0b476BE28beEF38B4A85c0e024
0x4E20226355b4464Cf8f3b67Fc318b753A7c125B3
0xdb1207770E0a4258D7A4Ce49aB037f92564feA85
0xeD2ACEb63Eb7928e67c854C24F61cF41db311c36
0x4Ca0f1a7B5a2723A9094B7706BaA23C2B8BD46A0
0x5B2cf18296B2ABf23288Ef2F9A09C6E1275311e5
#586847:
0xE8DDc5c7A2d2F0D7a9798459c0104fDf5E987ACA
0x82e4e61e7f5139ff0a4157A5Bc687eF42294c248
0x23468dB7f4b8Ff4924B0709aB7Ae0971B3Bc8d28
0xA0B0D4cCF483b000F0aF59C47A1944668477b941
0xe2ac1c6843A33f81aE4935E5EF1277a392990381
0xde88a1a783b29a0b476BE28beEF38B4A85c0e024
0x4E20226355b4464Cf8f3b67Fc318b753A7c125B3
0xdb1207770E0a4258D7A4Ce49aB037f92564feA85
0xeD2ACEb63Eb7928e67c854C24F61cF41db311c36
0x4Ca0f1a7B5a2723A9094B7706BaA23C2B8BD46A0
0x5B2cf18296B2ABf23288Ef2F9A09C6E1275311e5
0x58baD7Cf29428c3D17Cb859f5C580D3C25F134CD
#630737:
0xE8DDc5c7A2d2F0D7a9798459c0104fDf5E987ACA
0x82e4e61e7f5139ff0a4157A5Bc687eF42294c248
0x23468dB7f4b8Ff4924B0709aB7Ae0971B3Bc8d28
0xA0B0D4cCF483b000F0aF59C47A1944668477b941
0xe2ac1c6843A33f81aE4935E5EF1277a392990381
0xde88a1a783b29a0b476BE28beEF38B4A85c0e024
0x4E20226355b4464Cf8f3b67Fc318b753A7c125B3
0xdb1207770E0a4258D7A4Ce49aB037f92564feA85
0xeD2ACEb63Eb7928e67c854C24F61cF41db311c36
0x4Ca0f1a7B5a2723A9094B7706BaA23C2B8BD46A0
0x5B2cf18296B2ABf23288Ef2F9A09C6E1275311e5
0x58baD7Cf29428c3D17Cb859f5C580D3C25F134CD
0xcBbcd5Ac86F9a50e13313633B262e16f695a90c1
#680366:
0xE8DDc5c7A2d2F0D7a9798459c0104fDf5E987ACA
0x82e4e61e7f5139ff0a4157A5Bc687eF42294c248
0x23468dB7f4b8Ff4924B0709aB7Ae0971B3Bc8d28
0xA0B0D4cCF483b000F0aF59C47A1944668477b941
0xe2ac1c6843A33f81aE4935E5EF1277a392990381
0xde88a1a783b29a0b476BE28beEF38B4A85c0e024
0x4E20226355b4464Cf8f3b67Fc318b753A7c125B3
0xdb1207770E0a4258D7A4Ce49aB037f92564feA85
0xeD2ACEb63Eb7928e67c854C24F61cF41db311c36
0x4Ca0f1a7B5a2723A9094B7706BaA23C2B8BD46A0
0x5B2cf18296B2ABf23288Ef2F9A09C6E1275311e5
0x58baD7Cf29428c3D17Cb859f5C580D3C25F134CD
0xcBbcd5Ac86F9a50e13313633B262e16f695a90c1
0x0b55FdBa9e288C23cF3EB04c6f237D3bd0f751d6
#743509:
0xE8DDc5c7A2d2F0D7a9798459c0104fDf5E987ACA
0x82e4e61e7f5139ff0a4157A5Bc687eF42294c248
0x23468dB7f4b8Ff4924B0709aB7Ae0971B3Bc8d28
0xA0B0D4cCF483b000F0aF59C47A1944668477b941
0xe2ac1c6843A33f81aE4935E5EF1277a392990381
0xde88a1a783b29a0b476BE28beEF38B4A85c0e024
0x4E20226355b4464Cf8f3b67Fc318b753A7c125B3
0xdb1207770E0a4258D7A4Ce49aB037f92564feA85
0xeD2ACEb63Eb7928e67c854C24F61cF41db311c36
0x4Ca0f1a7B5a2723A9094B7706BaA23C2B8BD46A0
0x5B2cf18296B2ABf23288Ef2F9A09C6E1275311e5
0x58baD7Cf29428c3D17Cb859f5C580D3C25F134CD
0xcBbcd5Ac86F9a50e13313633B262e16f695a90c1
0x0b55FdBa9e288C23cF3EB04c6f237D3bd0f751d6
0x46bc76E617E72cE6658C199E222C07cBa2Fb5aEc
#879887:
0xE8DDc5c7A2d2F0D7a9798459c0104fDf5E987ACA
0x82e4e61e7f5139ff0a4157A5Bc687eF42294c248
0x23468dB7f4b8Ff4924B0709aB7Ae0971B3Bc8d28
0xA0B0D4cCF483b000F0aF59C47A1944668477b941
0xe2ac1c6843A33f81aE4935E5EF1277a392990381
0xde88a1a783b29a0b476BE28beEF38B4A85c0e024
0x4E20226355b4464Cf8f3b67Fc318b753A7c125B3
0xdb1207770E0a4258D7A4Ce49aB037f92564feA85
0xeD2ACEb63Eb7928e67c854C24F61cF41db311c36
0x4Ca0f1a7B5a2723A9094B7706BaA23C2B8BD46A0
0x5B2cf18296B2ABf23288Ef2F9A09C6E1275311e5
0x58baD7Cf29428c3D17Cb859f5C580D3C25F134CD
0xcBbcd5Ac86F9a50e13313633B262e16f695a90c1
0x0b55FdBa9e288C23cF3EB04c6f237D3bd0f751d6
0x46bc76E617E72cE6658C199E222C07cBa2Fb5aEc
0xf74769d9FFe1Cd17F20b283995CF9e7fA2A262ed
#1128860:
0xE8DDc5c7A2d2F0D7a9798459c0104fDf5E987ACA
0x82e4e61e7f5139ff0a4157A5Bc687eF42294c248
0x23468dB7f4b8Ff4924B0709aB7Ae0971B3Bc8d28
0xA0B0D4cCF483b000F0aF59C47A1944668477b941
0xe2ac1c6843A33f81aE4935E5EF1277a392990381
0xde88a1a783b29a0b476BE28beEF38B4A85c0e024
0x4E20226355b4464Cf8f3b67Fc318b753A7c125B3
0xdb1207770E0a4258D7A4Ce49aB037f92564feA85
0xeD2ACEb63Eb7928e67c854C24F61cF41db311c36
0x4Ca0f1a7B5a2723A9094B7706BaA23C2B8BD46A0
0x5B2cf18296B2ABf23288Ef2F9A09C6E1275311e5
0x58baD7Cf29428c3D17Cb859f5C580D3C25F134CD
0xcBbcd5Ac86F9a50e13313633B262e16f695a90c1
0x0b55FdBa9e288C23cF3EB04c6f237D3bd0f751d6
0x46bc76E617E72cE6658C199E222C07cBa2Fb5aEc
0xf74769d9FFe1Cd17F20b283995CF9e7fA2A262ed
0x8527153b9A747AdCE9fDF4274aFE39211F15E0d3
#1191257:
0xE8DDc5c7A2d2F0D7a9798459c0104fDf5E987ACA
0x82e4e61e7f5139ff0a4157A5Bc687eF42294c248
0x23468dB7f4b8Ff4924B0709aB7Ae0971B3Bc8d28
0xA0B0D4cCF483b000F0aF59C47A1944668477b941
0xe2ac1c6843A33f81aE4935E5EF1277a392990381
0xde88a1a783b29a0b476BE28beEF38B4A85c0e024
0x4E20226355b4464Cf8f3b67Fc318b753A7c125B3
0xdb1207770E0a4258D7A4Ce49aB037f92564feA85
0xeD2ACEb63Eb7928e67c854C24F61cF41db311c36
0x4Ca0f1a7B5a2723A9094B7706BaA23C2B8BD46A0
0x5B2cf18296B2ABf23288Ef2F9A09C6E1275311e5
0x58baD7Cf29428c3D17Cb859f5C580D3C25F134CD
0xcBbcd5Ac86F9a50e13313633B262e16f695a90c1
0x0b55FdBa9e288C23cF3EB04c6f237D3bd0f751d6
0x46bc76E617E72cE6658C199E222C07cBa2Fb5aEc
0xf74769d9FFe1Cd17F20b283995CF9e7fA2A262ed
#1534002:
0xE8DDc5c7A2d2F0D7a9798459c0104fDf5E987ACA
0x82e4e61e7f5139ff0a4157A5Bc687eF42294c248
0x23468dB7f4b8Ff4924B0709aB7Ae0971B3Bc8d28
0xA0B0D4cCF483b000F0aF59C47A1944668477b941
0xe2ac1c6843A33f81aE4935E5EF1277a392990381
0xde88a1a783b29a0b476BE28beEF38B4A85c0e024
0x4E20226355b4464Cf8f3b67Fc318b753A7c125B3
0xdb1207770E0a4258D7A4Ce49aB037f92564feA85
0xeD2ACEb63Eb7928e67c854C24F61cF41db311c36
0x4Ca0f1a7B5a2723A9094B7706BaA23C2B8BD46A0
0x5B2cf18296B2ABf23288Ef2F9A09C6E1275311e5
0x58baD7Cf29428c3D17Cb859f5C580D3C25F134CD
0xcBbcd5Ac86F9a50e13313633B262e16f695a90c1
0x0b55FdBa9e288C23cF3EB04c6f237D3bd0f751d6
0x46bc76E617E72cE6658C199E222C07cBa2Fb5aEc
0xf74769d9FFe1Cd17F20b283995CF9e7fA2A262ed
0x063fE3bAFcf93D099dd7E09b3372641dc5E04e15
#1570386:
0xE8DDc5c7A2d2F0D7a9798459c0104fDf5E987ACA
0x82e4e61e7f5139ff0a4157A5Bc687eF42294c248
0x23468dB7f4b8Ff4924B0709aB7Ae0971B3Bc8d28
0xA0B0D4cCF483b000F0aF59C47A1944668477b941
0xe2ac1c6843A33f81aE4935E5EF1277a392990381
0xde88a1a783b29a0b476BE28beEF38B4A85c0e024
0x4E20226355b4464Cf8f3b67Fc318b753A7c125B3
0xdb1207770E0a4258D7A4Ce49aB037f92564feA85
0xeD2ACEb63Eb7928e67c854C24F61cF41db311c36
0x4Ca0f1a7B5a2723A9094B7706BaA23C2B8BD46A0
0x5B2cf18296B2ABf23288Ef2F9A09C6E1275311e5
0x58baD7Cf29428c3D17Cb859f5C580D3C25F134CD
0xcBbcd5Ac86F9a50e13313633B262e16f695a90c1
0x0b55FdBa9e288C23cF3EB04c6f237D3bd0f751d6
0x46bc76E617E72cE6658C199E222C07cBa2Fb5aEc
0xf74769d9FFe1Cd17F20b283995CF9e7fA2A262ed
0x063fE3bAFcf93D099dd7E09b3372641dc5E04e15
0x7BD556B838a9E330a815a53EF39e04Ff2fDf2392
#2068009:
0xE8DDc5c7A2d2F0D7a9798459c0104fDf5E987ACA
0x82e4e61e7f5139ff0a4157A5Bc687eF42294c248
0x23468dB7f4b8Ff4924B0709aB7Ae0971B3Bc8d28
0xA0B0D4cCF483b000F0aF59C47A1944668477b941
0xe2ac1c6843A33f81aE4935E5EF1277a392990381
0xde88a1a783b29a0b476BE28beEF38B4A85c0e024
0x4E20226355b4464Cf8f3b67Fc318b753A7c125B3
0xdb1207770E0a4258D7A4Ce49aB037f92564feA85
0xeD2ACEb63Eb7928e67c854C24F61cF41db311c36
0x4Ca0f1a7B5a2723A9094B7706BaA23C2B8BD46A0
0x5B2cf18296B2ABf23288Ef2F9A09C6E1275311e5
0x58baD7Cf29428c3D17Cb859f5C580D3C25F134CD
0xcBbcd5Ac86F9a50e13313633B262e16f695a90c1
0x0b55FdBa9e288C23cF3EB04c6f237D3bd0f751d6
0x46bc76E617E72cE6658C199E222C07cBa2Fb5aEc
0xf74769d9FFe1Cd17F20b283995CF9e7fA2A262ed
0x063fE3bAFcf93D099dd7E09b3372641dc5E04e15
0x7BD556B838a9E330a815a53EF39e04Ff2fDf2392
0x706b85eA94221C5f0911a51aD0293e4bBf811C4E
#2144556:
0xE8DDc5c7A2d2F0D7a9798459c0104fDf5E987ACA
0x82e4e61e7f5139ff0a4157A5Bc687eF42294c248
0x23468dB7f4b8Ff4924B0709aB7Ae0971B3Bc8d28
0xA0B0D4cCF483b000F0aF59C47A1944668477b941
0xe2ac1c6843A33f81aE4935E5EF1277a392990381
0xde88a1a783b29a0b476BE28beEF38B4A85c0e024
0x4E20226355b4464Cf8f3b67Fc318b753A7c125B3
0xdb1207770E0a4258D7A4Ce49aB037f92564feA85
0xeD2ACEb63Eb7928e67c854C24F61cF41db311c36
0x4Ca0f1a7B5a2723A9094B7706BaA23C2B8BD46A0
0x5B2cf18296B2ABf23288Ef2F9A09C6E1275311e5
0x58baD7Cf29428c3D17Cb859f5C580D3C25F134CD
0xcBbcd5Ac86F9a50e13313633B262e16f695a90c1
0x0b55FdBa9e288C23cF3EB04c6f237D3bd0f751d6
0x46bc76E617E72cE6658C199E222C07cBa2Fb5aEc
0xf74769d9FFe1Cd17F20b283995CF9e7fA2A262ed
0x063fE3bAFcf93D099dd7E09b3372641dc5E04e15
0x7BD556B838a9E330a815a53EF39e04Ff2fDf2392
0x706b85eA94221C5f0911a51aD0293e4bBf811C4E
0xF168667104e8785Ad9C49dBf713e1AfDe250D6e5
#2536790:
0xE8DDc5c7A2d2F0D7a9798459c0104fDf5E987ACA
0x82e4e61e7f5139ff0a4157A5Bc687eF42294c248
0x23468dB7f4b8Ff4924B0709aB7Ae0971B3Bc8d28
0xA0B0D4cCF483b000F0aF59C47A1944668477b941
0xe2ac1c6843A33f81aE4935E5EF1277a392990381
0xde88a1a783b29a0b476BE28beEF38B4A85c0e024
0x4E20226355b4464Cf8f3b67Fc318b753A7c125B3
0xdb1207770E0a4258D7A4Ce49aB037f92564feA85
0xeD2ACEb63Eb7928e67c854C24F61cF41db311c36
0x4Ca0f1a7B5a2723A9094B7706BaA23C2B8BD46A0
0x5B2cf18296B2ABf23288Ef2F9A09C6E1275311e5
0x58baD7Cf29428c3D17Cb859f5C580D3C25F134CD
0xcBbcd5Ac86F9a50e13313633B262e16f695a90c1
0x0b55FdBa9e288C23cF3EB04c6f237D3bd0f751d6
0x46bc76E617E72cE6658C199E222C07cBa2Fb5aEc
0xf74769d9FFe1Cd17F20b283995CF9e7fA2A262ed
0x063fE3bAFcf93D099dd7E09b3372641dc5E04e15
0x7BD556B838a9E330a815a53EF39e04Ff2fDf2392
0x706b85eA94221C5f0911a51aD0293e4bBf811C4E
0xF168667104e8785Ad9C49dBf713e1AfDe250D6e5
0x96da16d5a75bf79c0dBf9b08274bCf3c4c1f1721
Node.js source code:
const axios = require('axios');
const Web3 = require('web3');
const web3 = new Web3(new Web3.providers.HttpProvider("https://sokol.poa.network"));
main();
async function main() {
let abi;
try {
console.log('Retrieve PoaNetworkConsensus ABI...');
abi = (await axios.get('https://raw.githubusercontent.com/poanetwork/poa-chain-spec/sokol/abis/PoaNetworkConsensus.abi.json')).data;
console.log('');
} catch (err) {
console.log('Cannot read ABI');
return;
}
let contractsAddresses = [
'0x8bf38d4764929064f2d4d3a56520a76ab3df415b',
'0xf5cE3f5D0366D6ec551C74CCb1F67e91c56F2e34',
'0x03048F666359CFD3C74a1A5b9a97848BF71d5038'
];
for (let c = 0; c < contractsAddresses.length; c++) {
const address = contractsAddresses[c];
const instance = new web3.eth.Contract(abi, address);
console.log(`== Contract ${address} ==`);
console.log('');
let events = await instance.getPastEvents('InitiateChange', {fromBlock: 0, toBlock: 'latest'});
for (let i = 0; i < events.length; i++) {
const event = events[i];
console.log(`#${event.blockNumber}:`);
for (let s = 0; s < event.returnValues.newSet.length; s++) {
console.log(` ${event.returnValues.newSet[s]}`);
}
console.log('');
}
}
}
I'm curious where did @afck got your test contract address
Nowhere; I just didn't filter for the contract address at all, so it returned all instances.
But fixing that will still return all InitiateChange
events, including the ones that didn't get finalized. So I'll do #16 instead.
Yes, we can't check if some validators set has been finalized, because ChangeFinalized
event has never been emitted due to Parity limitations.
I think we could use KeysManager.VotingKeyChanged
event to confirm that a specified mining key has been finalized. Because VotingKeyChanged
event may only be emitted if mining key is active (i.e., finalized), and a voting key is always added for a new validator.
VotingKeyChanged
event (with action
parameter equal to "added") is emitted here: https://github.com/poanetwork/poa-network-consensus-contracts/blob/6094198e3789225839b8ab4058a2d89658e9e57d/contracts/KeysManager.sol#L263
Thanks, I'll try it out! That would be a better solution which should even work without --pruning=archive
.
I run the tool with
cargo run -- -c contracts/sokol.json https://sokol.poa.network -v -p "12 weeks"
to get missed ballots per validator. Here are results:some of validators are relatively new, e.g. Oxana Kunets or Xiabo Chen, and I understand why they have not many ballots where they should participate.
Although, some validators, e.g.
Michael Milirud
onboarded before 12 weeks period and should have same number of ballots to participate asRocco Mancini
, orJohn D. Storey
They are old validators but have 16,19,22 ballots.