btccom / btcpool-ABANDONED

backend of pool.btc.com
https://pool.btc.com
MIT License
639 stars 408 forks source link

eth_getWork extension fields for BTCPool的疑问 #376

Closed rocqina closed 5 years ago

rocqina commented 5 years ago

原生的eth_getWork没有那么多返回值,这个是btcpool自己修改了全节点有更多返回数据的版本吧。这个和原生eth_getWork的区别是什么,毕竟原生的处理逻辑通过别的接口也可以获取那些数据。还有就是我们ETH现在出现空块的情况比较多,请教有没有一些建议

de1acr0ix commented 5 years ago

我们的处理逻辑里面包含了一些判断需要除去原始 eth_getWork 字段之外的一些内容,比如 gas used/limit 以及叔块数量等等,这些都是待挖区块的参数。虽然确实有其它 RPC 可以获取这些内容并且我们其实是调用了的,但是获取待挖区块参数的 RPC 已经被标记为 deprecated 了,所以我们自行修改了 eth_getWork 接口增加了这些参数。

另外一个方面是,我们自行修改的接口还提供了 RLP 编码的区块头,并且我们自己的 sserver 目前提供了一个功能可以在区块头的 extra data 字段后面为每一个用户添加不同的内容,这样每一个用户的挖矿任务均不相同,这可以防止一些特殊的攻击。

我们修改的 geth 和 parity 代码都是公开的,可以在 https://github.com/btccom/go-ethereumhttps://github.com/btccom/parity-ethereum 找到(对应分支都带有 btcpool 后缀)。

rocqina commented 5 years ago

明白,感谢,geth和pairty两个版本,用你们改的v1.9.2和v2.5.7最新版可以吗?还有就是请教大佬,因为eth是没有办法构建空块的,所以我们挖出来的空块比例高,是不是我们全节点同步消息有些问题,没有拉取到更多的交易进来,所以请求pending的块任务的时候,里面没有交易,导致挖出来的是空块

de1acr0ix commented 5 years ago

这两个版本是可以的,这两个软件还是有一些区别的。

空块任务过多可能是你说的原因,但是这很不常见,你可以 geth attach 进入节点的控制台,然后调用 txpool.status 来查看内存池是否交易量很少来确认。另一个可能的原因则是我们以前版本的代码实际上存在一些 bug 导致空块判断错误,建议你重新构建最新版本的矿池代码进行测试。

rocqina commented 5 years ago

好的,我之前理解是需要两个类型全节点,parity notify走Parity,rpc拉取走geth。如果只有一个geth就没有办法获得新块的推送,但是貌似如果只有parity既可以有新块推送也可以rpc定时拉取到,但是有性能问题。大神上面的回复,是也同时连接2个类型的全节点吗,还是只有一个geth也够了

de1acr0ix commented 5 years ago

Geth 现在也支持新任务通知,可以使用 miner.notify 这个命令行参数指定。

rocqina commented 5 years ago

f53e62c731cf3bb3ad0ce4a40820992d3b92d388,我用的是8月21号的版本,代码也算是很新的版本。我检查了全节点的交易池,pending4000多,queue500多,看起来也没什么问题。因为我们也不是每个块都是空块,但是50%出得块是空块,这个很奇怪。

rocqina commented 5 years ago

image 空块的概率如图

de1acr0ix commented 5 years ago

我建议你贴一下 gwmaker 和 jobmaker 的日志(去掉最后的 header 字段),以及使用的 geth 和 parity 版本(以及是否是用了我们的 fork 版本)。

rocqina commented 5 years ago

I0924 03:56:45.430801 63 GwMaker.cc:106] submit to Kafka msg len: 517 I0924 03:56:46.344266 63 GwMaker.cc:199] getwork len=18164, msg: [{"jsonrpc":"2.0","id":1,"result":{"difficulty":"0x8d03947d8c489","extraData":"0x686f6e676b6f6e672f7777772e6f6b706f6f6c2e746f702f","gasLimit":"0x98367f","gasUsed":"0x97e688","hash":null,"logsBloom":"0x0845d25866a431ea325ac6d4eb4cced6af119caa5208a27f01120db2b0a621847c21427160327b3ac41b2eaf0611a5ab014854bf1f48d501423ec8bba5fbe0960812e210f40b9005d9f0d74e818162ac44076c45883a4567bf0684698df2163c3d69e28824f64302120a33c93e8d14002f6412798d22980c630a435efcc370c064a6014d42544312c0c82dbda4bbccc623c5feb5e99... I0924 03:56:46.344388 63 GwMakerEth.cc:222] chain: ETH, topic: EthRawGw, parent: 0xc59550a48057014501bd3aef3d60e6f7fd0d1c89de392fb194bd593c288d80c3, target: 0x0000000000001d0bf8c21f22cb74ff075a62bef6e3ed778d295a35fbb0879e82, hHash: 0xac715f5616186c38846705c014e351ed3f266fb71707890a77772f9fb08b5986, sHash: 0x6ececa12c1a7ebdb2f1c9e9c026e3408e7545b7ae951e9eeb226484f587f978d, height: 8609522, uncles: 0, transactions: 240, gasUsedPercent: 99.7948, btcpoolExtensionFields: false I0924 03:56:46.344542 63 GwMaker.cc:106] submit to Kafka msg len: 517 I0924 03:56:46.848085 63 GwMaker.cc:199] getwork len=9746, msg: [{"jsonrpc":"2.0","id":1,"result":{"difficulty":"0x8d03d47d8c489","extraData":"0x686f6e676b6f6e672f7777772e6f6b706f6f6c2e746f702f","gasLimit":"0x981073","gasUsed":"0x97dbce","hash":null,"logsBloom":"0x0805502000081368000aa6c11b0442820205980a4008a00112408080a0e201881008000060024808444802061600b18d000010a98f44c4084035401108d84084081422408012110503248448e041e2004403640088300045250082008e009218a8080200288304000088404a60a011000004004889208009420041508905a0002080002440404110c001290020880a000145da95609... I0924 03:56:46.848189 63 GwMakerEth.cc:222] chain: ETH, topic: EthRawGw, parent: 0xac14c67eac9824e2b5dead4d70668c2d5df5ae9fb658b27aae523be718d555c7, target: 0x0000000000001d0beb93497145bea820056e42c64a6dcc9169be859541013e03, hHash: 0x61198ee6e7fd8bd54357208a03b0af394e44dd5400a5e4233301aaf37dcdf386, sHash: 0x6ececa12c1a7ebdb2f1c9e9c026e3408e7545b7ae951e9eeb226484f587f978d, height: 8609523, uncles: 0, transactions: 118, gasUsedPercent: 99.8648, btcpoolExtensionFields: false I0924 03:56:46.848243 63 GwMaker.cc:106] submit to Kafka msg len: 517 I0924 03:56:47.351832 63 GwMaker.cc:199] getwork len=9746, msg: [{"jsonrpc":"2.0","id":1,"result":{"difficulty":"0x8d03d47d8c489","extraData":"0x686f6e676b6f6e672f7777772e6f6b706f6f6c2e746f702f","gasLimit":"0x981073","gasUsed":"0x97dbce","hash":null,"logsBloom":"0x0805502000081368000aa6c11b0442820205980a4008a00112408080a0e201881008000060024808444802061600b18d000010a98f44c4084035401108d84084081422408012110503248448e041e2004403640088300045250082008e009218a8080200288304000088404a60a011000004004889208009420041508905a0002080002440404110c001290020880a000145da95609... I0924 03:56:47.352483 63 GwMakerEth.cc:222] chain: ETH, topic: EthRawGw, parent: 0xac14c67eac9824e2b5dead4d70668c2d5df5ae9fb658b27aae523be718d555c7, target: 0x0000000000001d0beb93497145bea820056e42c64a6dcc9169be859541013e03, hHash: 0x61198ee6e7fd8bd54357208a03b0af394e44dd5400a5e4233301aaf37dcdf386, sHash: 0x6ececa12c1a7ebdb2f1c9e9c026e3408e7545b7ae951e9eeb226484f587f978d, height: 8609523, uncles: 0, transactions: 118, gasUsedPercent: 99.8648, btcpoolExtensionFields: false I0924 03:56:47.352540 63 GwMaker.cc:106] submit to Kafka msg len: 517 I0924 03:56:47.856087 63 GwMaker.cc:199] getwork len=9746, msg: [{"jsonrpc":"2.0","id":1,"result":{"difficulty":"0x8d03d47d8c489","extraData":"0x686f6e676b6f6e672f7777772e6f6b706f6f6c2e746f702f","gasLimit":"0x981073","gasUsed":"0x97dbce","hash":null,"logsBloom":"0x0805502000081368000aa6c11b0442820205980a4008a00112408080a0e201881008000060024808444802061600b18d000010a98f44c4084035401108d84084081422408012110503248448e041e2004403640088300045250082008e009218a8080200288304000088404a60a011000004004889208009420041508905a0002080002440404110c001290020880a000145da95609... I0924 03:56:47.856199 63 GwMakerEth.cc:222] chain: ETH, topic: EthRawGw, parent: 0xac14c67eac9824e2b5dead4d70668c2d5df5ae9fb658b27aae523be718d555c7, target: 0x0000000000001d0beb93497145bea820056e42c64a6dcc9169be859541013e03, hHash: 0x61198ee6e7fd8bd54357208a03b0af394e44dd5400a5e4233301aaf37dcdf386, sHash: 0x6ececa12c1a7ebdb2f1c9e9c026e3408e7545b7ae951e9eeb226484f587f978d, height: 8609523, uncles: 0, transactions: 118, gasUsedPercent: 99.8648, btcpoolExtensionFields: false I0924 03:56:47.856248 63 GwMaker.cc:106] submit to Kafka msg len: 517 I0924 03:56:48.359844 63 GwMaker.cc:199] getwork len=9746, msg: [{"jsonrpc":"2.0","id":1,"result":{"difficulty":"0x8d03d47d8c489","extraData":"0x686f6e676b6f6e672f7777772e6f6b706f6f6c2e746f702f","gasLimit":"0x981073","gasUsed":"0x97dbce","hash":null,"logsBloom":"0x0805502000081368000aa6c11b0442820205980a4008a00112408080a0e201881008000060024808444802061600b18d000010a98f44c4084035401108d84084081422408012110503248448e041e2004403640088300045250082008e009218a8080200288304000088404a60a011000004004889208009420041508905a0002080002440404110c001290020880a000145da95609... I0924 03:56:48.360129 63 GwMakerEth.cc:222] chain: ETH, topic: EthRawGw, parent: 0xac14c67eac9824e2b5dead4d70668c2d5df5ae9fb658b27aae523be718d555c7, target: 0x0000000000001d0beb93497145bea820056e42c64a6dcc9169be859541013e03, hHash: 0x61198ee6e7fd8bd54357208a03b0af394e44dd5400a5e4233301aaf37dcdf386, sHash: 0x6ececa12c1a7ebdb2f1c9e9c026e3408e7545b7ae951e9eeb226484f587f978d, height: 8609523, uncles: 0, transactions: 118, gasUsedPercent: 99.8648, btcpoolExtensionFields: false I0924 03:56:48.360188 63 GwMaker.cc:106] submit to Kafka msg len: 517 I0924 03:56:48.863584 63 GwMaker.cc:199] getwork len=9746, msg: [{"jsonrpc":"2.0","id":1,"result":{"difficulty":"0x8d03d47d8c489","extraData":"0x686f6e676b6f6e672f7777772e6f6b706f6f6c2e746f702f","gasLimit":"0x981073","gasUsed":"0x97dbce","hash":null,"logsBloom":"0x0805502000081368000aa6c11b0442820205980a4008a00112408080a0e201881008000060024808444802061600b18d000010a98f44c4084035401108d84084081422408012110503248448e041e2004403640088300045250082008e009218a8080200288304000088404a60a011000004004889208009420041508905a0002080002440404110c001290020880a000145da95609... I0924 03:56:48.863762 63 GwMakerEth.cc:222] chain: ETH, topic: EthRawGw, parent: 0xac14c67eac9824e2b5dead4d70668c2d5df5ae9fb658b27aae523be718d555c7, target: 0x0000000000001d0beb93497145bea820056e42c64a6dcc9169be859541013e03, hHash: 0x61198ee6e7fd8bd54357208a03b0af394e44dd5400a5e4233301aaf37dcdf386, sHash: 0x6ececa12c1a7ebdb2f1c9e9c026e3408e7545b7ae951e9eeb226484f587f978d, height: 8609523, uncles: 0, transactions: 118, gasUsedPercent: 99.8648, btcpoolExtensionFields: false I0924 03:56:48.863859 63 GwMaker.cc:106] submit to Kafka msg len: 517 I0924 03:56:50.368468 63 GwMaker.cc:199] getwork len=10091, msg: [{"jsonrpc":"2.0","id":1,"result":{"difficulty":"0x8d03d47d8c489","extraData":"0x686f6e676b6f6e672f7777772e6f6b706f6f6c2e746f702f","gasLimit":"0x981073","gasUsed":"0x97d993","hash":null,"logsBloom":"0x08045020000c1368800a86c01b04408002039c0a4008a01112400080a0e28380102800026000680a404a02060401a18d000010a88f40400040b4401108d8c084009422009022110503248408c001e2004203640088300045250083008e009218a8080200ae8214000808425a60e1090028040048893098081200415209058000008040a440406110c0002900218848000045da85629... I0924 03:56:50.368604 63 GwMakerEth.cc:222] chain: ETH, topic: EthRawGw, parent: 0xac14c67eac9824e2b5dead4d70668c2d5df5ae9fb658b27aae523be718d555c7, target: 0x0000000000001d0beb93497145bea820056e42c64a6dcc9169be859541013e03, hHash: 0x26ddd1f2886235630ee1a4164ca7b04fd337a6be616fedf7a05e6221baf09471, sHash: 0x6ececa12c1a7ebdb2f1c9e9c026e3408e7545b7ae951e9eeb226484f587f978d, height: 8609523, uncles: 0, transactions: 123, gasUsedPercent: 99.859, btcpoolExtensionFields: false I0924 03:56:50.368652 63 GwMaker.cc:106] submit to Kafka msg len: 517 I0924 03:56:50.368468 63 GwMaker.cc:199] getwork len=10091, msg: [{"jsonrpc":"2.0","id":1,"result":{"difficulty":"0x8d03d47d8c489","extraData":"0x686f6e676b6f6e672f7777772e6f6b706f6f6c2e746f702f","gasLimit":"0x981073","gasUsed":"0x97d993","hash":null,"logsBloom":"0x08045020000c1368800a86c01b04408002039c0a4008a01112400080a0e28380102800026000680a404a02060401a18d000010a88f40400040b4401108d8c084009422009022110503248408c001e2004203640088300045250083008e009218a8080200ae8214000808425a60e1090028040048893098081200415209058000008040a440406110c0002900218848000045da85629... I0924 03:56:50.368604 63 GwMakerEth.cc:222] chain: ETH, topic: EthRawGw, parent: 0xac14c67eac9824e2b5dead4d70668c2d5df5ae9fb658b27aae523be718d555c7, target: 0x0000000000001d0beb93497145bea820056e42c64a6dcc9169be859541013e03, hHash: 0x26ddd1f2886235630ee1a4164ca7b04fd337a6be616fedf7a05e6221baf09471, sHash: 0x6ececa12c1a7ebdb2f1c9e9c026e3408e7545b7ae951e9eeb226484f587f978d, height: 8609523, uncles: 0, transactions: 123, gasUsedPercent: 99.859, btcpoolExtensionFields: false I0924 03:56:50.368652 63 GwMaker.cc:106] submit to Kafka msg len: 517 I0924 03:56:50.882405 63 GwMaker.cc:199] getwork len=10091, msg: [{"jsonrpc":"2.0","id":1,"result":{"difficulty":"0x8d03d47d8c489","extraData":"0x686f6e676b6f6e672f7777772e6f6b706f6f6c2e746f702f","gasLimit":"0x981073","gasUsed":"0x97d993","hash":null,"logsBloom":"0x08045020000c1368800a86c01b04408002039c0a4008a01112400080a0e28380102800026000680a404a02060401a18d000010a88f40400040b4401108d8c084009422009022110503248408c001e2004203640088300045250083008e009218a8080200ae8214000808425a60e1090028040048893098081200415209058000008040a440406110c0002900218848000045da85629... I0924 03:56:50.882555 63 GwMakerEth.cc:222] chain: ETH, topic: EthRawGw, parent: 0xac14c67eac9824e2b5dead4d70668c2d5df5ae9fb658b27aae523be718d555c7, target: 0x0000000000001d0beb93497145bea820056e42c64a6dcc9169be859541013e03, hHash: 0x26ddd1f2886235630ee1a4164ca7b04fd337a6be616fedf7a05e6221baf09471, sHash: 0x6ececa12c1a7ebdb2f1c9e9c026e3408e7545b7ae951e9eeb226484f587f978d, height: 8609523, uncles: 0, transactions: 123, gasUsedPercent: 99.859, btcpoolExtensionFields: false I0924 03:56:50.882611 63 GwMaker.cc:106] submit to Kafka msg len: 517 I0924 03:56:51.387971 63 GwMaker.cc:199] getwork len=10091, msg: [{"jsonrpc":"2.0","id":1,"result":{"difficulty":"0x8d03d47d8c489","extraData":"0x686f6e676b6f6e672f7777772e6f6b706f6f6c2e746f702f","gasLimit":"0x981073","gasUsed":"0x97d993","hash":null,"logsBloom":"0x08045020000c1368800a86c01b04408002039c0a4008a01112400080a0e28380102800026000680a404a02060401a18d000010a88f40400040b4401108d8c084009422009022110503248408c001e2004203640088300045250083008e009218a8080200ae8214000808425a60e1090028040048893098081200415209058000008040a440406110c0002900218848000045da85629... I0924 03:56:51.388149 63 GwMakerEth.cc:222] chain: ETH, topic: EthRawGw, parent: 0xac14c67eac9824e2b5dead4d70668c2d5df5ae9fb658b27aae523be718d555c7, target: 0x0000000000001d0beb93497145bea820056e42c64a6dcc9169be859541013e03, hHash: 0x26ddd1f2886235630ee1a4164ca7b04fd337a6be616fedf7a05e6221baf09471, sHash: 0x6ececa12c1a7ebdb2f1c9e9c026e3408e7545b7ae951e9eeb226484f587f978d, height: 8609523, uncles: 0, transactions: 123, gasUsedPercent: 99.859, btcpoolExtensionFields: false I0924 03:56:51.388207 63 GwMaker.cc:106] submit to Kafka msg len: 517 I0924 03:56:51.891623 63 GwMaker.cc:199] getwork len=10091, msg: [{"jsonrpc":"2.0","id":1,"result":{"difficulty":"0x8d03d47d8c489","extraData":"0x686f6e676b6f6e672f7777772e6f6b706f6f6c2e746f702f","gasLimit":"0x981073","gasUsed":"0x97d993","hash":null,"logsBloom":"0x08045020000c1368800a86c01b04408002039c0a4008a01112400080a0e28380102800026000680a404a02060401a18d000010a88f40400040b4401108d8c084009422009022110503248408c001e2004203640088300045250083008e009218a8080200ae8214000808425a60e1090028040048893098081200415209058000008040a440406110c0002900218848000045da85629... I0924 03:56:51.891710 63 GwMakerEth.cc:222] chain: ETH, topic: EthRawGw, parent: 0xac14c67eac9824e2b5dead4d70668c2d5df5ae9fb658b27aae523be718d555c7, target: 0x0000000000001d0beb93497145bea820056e42c64a6dcc9169be859541013e03, hHash: 0x26ddd1f2886235630ee1a4164ca7b04fd337a6be616fedf7a05e6221baf09471, sHash: 0x6ececa12c1a7ebdb2f1c9e9c026e3408e7545b7ae951e9eeb226484f587f978d, height: 8609523, uncles: 0, transactions: 123, gasUsedPercent: 99.859, btcpoolExtensionFields: false I0924 03:56:51.891767 63 GwMaker.cc:106] submit to Kafka msg len: 517 I0924 03:56:52.395335 63 GwMaker.cc:199] getwork len=10091, msg: [{"jsonrpc":"2.0","id":1,"result":{"difficulty":"0x8d03d47d8c489","extraData":"0x686f6e676b6f6e672f7777772e6f6b706f6f6c2e746f702f","gasLimit":"0x981073","gasUsed":"0x97d993","hash":null,"logsBloom":"0x08045020000c1368800a86c01b04408002039c0a4008a01112400080a0e28380102800026000680a404a02060401a18d000010a88f40400040b4401108d8c084009422009022110503248408c001e2004203640088300045250083008e009218a8080200ae8214000808425a60e1090028040048893098081200415209058000008040a440406110c0002900218848000045da85629... I0924 03:56:52.395459 63 GwMakerEth.cc:222] chain: ETH, topic: EthRawGw, parent: 0xac14c67eac9824e2b5dead4d70668c2d5df5ae9fb658b27aae523be718d555c7, target: 0x0000000000001d0beb93497145bea820056e42c64a6dcc9169be859541013e03, hHash: 0x26ddd1f2886235630ee1a4164ca7b04fd337a6be616fedf7a05e6221baf09471, sHash: 0x6ececa12c1a7ebdb2f1c9e9c026e3408e7545b7ae951e9eeb226484f587f978d, height: 8609523, uncles: 0, transactions: 123, gasUsedPercent: 99.859, btcpoolExtensionFields: false I0924 03:56:52.395530 63 GwMaker.cc:106] submit to Kafka msg len: 517 I0924 03:56:52.898960 63 GwMaker.cc:199] getwork len=9815, msg: [{"jsonrpc":"2.0","id":1,"result":{"difficulty":"0x8d03d47d8c489","extraData":"0x686f6e676b6f6e672f7777772e6f6b706f6f6c2e746f702f","gasLimit":"0x981073","gasUsed":"0x97fd26","hash":null,"logsBloom":"0x0824502000041169000a86c00b04488002019c0a4048a01100020080a0f28180102000026000600a080a02061407a19c000010a80f40701460b4401900d8408400902208902b1007012484088000e20042026400883c0045270082008c001218080802082e8214000008624828e10808a82400488930980812000150080180000080501c40406110c008290421884800c0059a85609... I0924 03:56:52.899281 63 GwMakerEth.cc:222] chain: ETH, topic: EthRawGw, parent: 0xac14c67eac9824e2b5dead4d70668c2d5df5ae9fb658b27aae523be718d555c7, target: 0x0000000000001d0beb93497145bea820056e42c64a6dcc9169be859541013e03, hHash: 0x753ff850fdcfb9118991dcd74b5f0a0e36afcd683cedbb9c169c9482ef7a6651, sHash: 0x6ececa12c1a7ebdb2f1c9e9c026e3408e7545b7ae951e9eeb226484f587f978d, height: 8609523, uncles: 0, transactions: 119, gasUsedPercent: 99.9504, btcpoolExtensionFields: false I0924 03:56:52.899423 63 GwMaker.cc:106] submit to Kafka msg len: 517 I0924 03:56:53.409863 63 GwMaker.cc:199] getwork len=9815, msg: [{"jsonrpc":"2.0","id":1,"result":{"difficulty":"0x8d03d47d8c489","extraData":"0x686f6e676b6f6e672f7777772e6f6b706f6f6c2e746f702f","gasLimit":"0x981073","gasUsed":"0x97fd26","hash":null,"logsBloom":"0x0824502000041169000a86c00b04488002019c0a4048a01100020080a0f28180102000026000600a080a02061407a19c000010a80f40701460b4401900d8408400902208902b1007012484088000e20042026400883c0045270082008c001218080802082e8214000008624828e10808a82400488930980812000150080180000080501c40406110c008290421884800c0059a85609... I0924 03:56:53.410912 63 GwMakerEth.cc:222] chain: ETH, topic: EthRawGw, parent: 0xac14c67eac9824e2b5dead4d70668c2d5df5ae9fb658b27aae523be718d555c7, target: 0x0000000000001d0beb93497145bea820056e42c64a6dcc9169be859541013e03, hHash: 0x753ff850fdcfb9118991dcd74b5f0a0e36afcd683cedbb9c169c9482ef7a6651, sHash: 0x6ececa12c1a7ebdb2f1c9e9c026e3408e7545b7ae951e9eeb226484f587f978d, height: 8609523, uncles: 0, transactions: 119, gasUsedPercent: 99.9504, btcpoolExtensionFields: false I0924 03:56:53.413985 63 GwMaker.cc:106] submit to Kafka msg len: 517 I0924 03:56:54.924963 63 GwMaker.cc:199] getwork len=9815, msg: [{"jsonrpc":"2.0","id":1,"result":{"difficulty":"0x8d03d47d8c489","extraData":"0x686f6e676b6f6e672f7777772e6f6b706f6f6c2e746f702f","gasLimit":"0x981073","gasUsed":"0x97fd26","hash":null,"logsBloom":"0x0824502000041169000a86c00b04488002019c0a4048a01100020080a0f28180102000026000600a080a02061407a19c000010a80f40701460b4401900d8408400902208902b1007012484088000e20042026400883c0045270082008c001218080802082e8214000008624828e10808a82400488930980812000150080180000080501c40406110c008290421884800c0059a85609... gwmaker.INFO

rocqina commented 5 years ago

I0924 03:45:28.327726 92 JobMakerEth.cc:105] remove timeout work: 2019-09-24 03:43:58|1569296638, height:8609458, headerHash:0x0832b703c9aaf756dc520aaafdcc9254419d0c70732fb6b2ecbf141bafe0add5

I0924 03:45:29.346537 92 JobMakerEth.cc:105] remove timeout work: 2019-09-24 03:43:59|1569296639, height:8609458, headerHash:0x559a2df9701066a3ac07e564cf0819761dfd9b3d619742635f7258e0ce13081d I0924 03:45:29.346961 92 JobMakerEth.cc:105] remove timeout work: 2019-09-24 03:43:59|1569296639, height:8609458, headerHash:0xc87c61226adee9d4787f3568621658d4f452eabed7795b488816e890765be191

I0924 03:45:29.347132 92 JobMaker.cc:127] handleMsg returns true, new stratum job I0924 03:45:29.347190 92 JobMaker.cc:139] new EthJob job: {"jobId":6740078128774774785,"chain":"FOUNDATION","height":8609465,"parent":"0xc33ec6a66a38b52b34a278e3e16be910255bbfef8fe372fdae56205d89a39a7b","networkTarget":"0x0000000000001d210405165d272bf15957e67fb1854a2bfdf853394bc84714a3","headerHash":"0x7938fd694a31b4821978757215f5dceac0156de4cadde1a7b454102a969a0d47","sHash":"0x6ececa12c1a7ebdb2f1c9e9c026e3408e7545b7ae951e9eeb226484f587f978d","uncles":0,"transactions":312,"gasUsedPercent":99.971680,"rpcAddress":"http://210.1.2.179:7013","rpcUserPwd":"ethblockuser123!:ethblockuser123!","rskNetworkTarget":"0x0000000000001d210405165d272bf15957e67fb1854a2bfdf853394bc84714a3","rskBlockHashForMergedMining":"0x7938fd694a31b4821978757215f5dceac0156de4cadde1a7b454102a969a0d47","rskFeesForMiner":"","rskdRpcAddress":"","rskdRpcUserPwd":"","isRskCleanJob":false}

I0924 03:45:31.914309 92 JobMaker.cc:127] handleMsg returns true, new stratum job I0924 03:45:31.914376 92 JobMaker.cc:139] new EthJob job: {"jobId":6740078137364709377,"chain":"FOUNDATION","height":8609466,"parent":"0xc33ec6a66a38b52b34a278e3e16be910255bbfef8fe372fdae56205d89a39a7b","networkTarget":"0x0000000000001d1d531a6475a4dd93fd8cb066f3149f4a4f37122aebffcc2f80","headerHash":"0x21d2f637e1d9b4301491433799547954e95d25d8acb68cfa389a6e65103665d4","sHash":"0x6ececa12c1a7ebdb2f1c9e9c026e3408e7545b7ae951e9eeb226484f587f978d","uncles":0,"transactions":312,"gasUsedPercent":99.971680,"rpcAddress":"http://210.1.2.179:7013","rpcUserPwd":"ethblockuser123!:ethblockuser123!","rskNetworkTarget":"0x0000000000001d1d531a6475a4dd93fd8cb066f3149f4a4f37122aebffcc2f80","rskBlockHashForMergedMining":"0x21d2f637e1d9b4301491433799547954e95d25d8acb68cfa389a6e65103665d4","rskFeesForMiner":"","rskdRpcAddress":"","rskdRpcUserPwd":"","isRskCleanJob":false}

I0924 03:45:32.423228 92 JobMakerEth.cc:105] remove timeout work: 2019-09-24 03:44:02|1569296642, height:8609458, headerHash:0x84433465a896776f7c615ad37fdccd7200f80f0883247b35524e3a94a66f236d I0924 03:45:32.423249 92 JobMakerEth.cc:105] remove timeout work: 2019-09-24 03:44:02|1569296642, height:8609458, headerHash:0x0d10219cd1db9fe7ce95d5f8030a1cef3a15007df677d3ee9212b42483c091cc I0924 03:45:32.423265 92 JobMakerEth.cc:105] remove timeout work: 2019-09-24 03:44:02|1569296642, height:8609458, headerHash:0x56b5a9783f96c80124a91f40a9db8cbd8b25d01b957700923f84fa03496b981c

I0924 03:45:35.456749 92 JobMakerEth.cc:105] remove timeout work: 2019-09-24 03:44:05|1569296645, height:8609458, headerHash:0xdda8fb01fc147afb4992ef9fd67a33702686269778c3a2769ae44293535e403d I0924 03:45:35.456779 92 JobMakerEth.cc:105] remove timeout work: 2019-09-24 03:44:05|1569296645, height:8609458, headerHash:0xa06221aa15e9e9d7426c872cade54ba32234ea3f1304202003ff7c4de07cc0ce I0924 03:45:35.456801 92 JobMakerEth.cc:105] remove timeout work: 2019-09-24 03:44:05|1569296645, height:8609458, headerHash:0x8ea0189a48bce3bf99e3618d9ec0223709d0a28186dd491eb9df1a8cb465dfcf

I0924 03:45:37.498296 92 JobMakerEth.cc:105] remove timeout work: 2019-09-24 03:44:07|1569296647, height:8609458, headerHash:0x32f202e148eaf71b94081cd1eb0661aef313e27118e690874d70d388681688f1 I0924 03:45:37.499600 92 JobMaker.cc:121] received EthRawGw message len: 517 I0924 03:45:38.009433 92 JobMakerEth.cc:105] remove timeout work: 2019-09-24 03:44:08|1569296648, height:8609458, headerHash:0xe726dcec8d0c4c9450a814e4af64bf100cf27932d4f2c2d2beac7810dde814ba I0924 03:45:38.009464 92 JobMakerEth.cc:105] remove timeout work: 2019-09-24 03:44:08|1569296648, height:8609458, headerHash:0xc965d63cb0c870fb78062065c5b2189e9b9717c8d1c365e5fbd67f827fbd34c6

I0924 03:45:41.082386 92 JobMakerEth.cc:105] remove timeout work: 2019-09-24 03:44:11|1569296651, height:8609458, headerHash:0x3401493189c9d296599e729a4f2b09a5957325e24c0e1154eb0586f462354d29 I0924 03:45:41.082412 92 JobMakerEth.cc:105] remove timeout work: 2019-09-24 03:44:11|1569296651, height:8609458, headerHash:0xdeecadbecffa895392501336e73d947c53f4fa673a468184092c28637731e3e2 I0924 03:45:41.082430 92 JobMakerEth.cc:105] remove timeout work: 2019-09-24 03:44:11|1569296651, height:8609458, headerHash:0x81e0d2ed0ed37be33c25075d48e04bb8ba1cf4492cef1d91a5f4c160f527ee6e

I0924 03:45:44.153884 92 JobMakerEth.cc:105] remove timeout work: 2019-09-24 03:44:14|1569296654, height:8609458, headerHash:0x4bd1c4ac44bc5005da690f60cb63fe62a4aa0d6859e4f7f9f2acd7dd72fb3e91 I0924 03:45:44.153966 92 JobMakerEth.cc:105] remove timeout work: 2019-09-24 03:44:14|1569296654, height:8609458, headerHash:0x5e862a9c5e828cd74827cfb51247a40d66c9c47e0d7f42536ed62562cdb34b3e I0924 03:45:44.153990 92 JobMakerEth.cc:105] remove timeout work: 2019-09-24 03:44:14|1569296654, height:8609458, headerHash:0x2a866df6c7747167b20f786e598178f276e85aecbfeae6a7435ebcff39b38618

I0924 03:45:46.192924 92 JobMakerEth.cc:105] remove timeout work: 2019-09-24 03:44:16|1569296656, height:8609459, headerHash:0x238119b8e37354950b43c9d650f8479ac5f095ed0fb3db6d58f0a24307a802ae I0924 03:45:46.192950 92 JobMakerEth.cc:105] remove timeout work: 2019-09-24 03:44:16|1569296656, height:8609459, headerHash:0xd220dbf13717b129a3bb9a3d63e8a6dd394fa338840eb0d2459c55aee78e0de8 I0924 03:45:46.192971 92 JobMakerEth.cc:105] remove timeout work: 2019-09-24 03:44:16|1569296656, height:8609459, headerHash:0x31b10eb7f606e7f7cc1ef84a6d93ed58c0bb4bf20365b47a0a202283b9cf7515 I0924 03:45:49.252396 92 JobMakerEth.cc:44] add work, height: 8609466, header: 0x8632293cc04ec5d1fe9297fe834c44cdfd6ccaddaffebafd476ad83d9aedc5a7, from: http://210.1.2.179:7013 I0924 03:45:49.252457 92 JobMakerEth.cc:105] remove timeout work: 2019-09-24 03:44:19|1569296659, height:8609459, headerHash:0xfff55eb4a8971410730a76529785c1ae09e56486f7c1c59f43cff66dc22502e8 I0924 03:45:49.252485 92 JobMakerEth.cc:105] remove timeout work: 2019-09-24 03:44:19|1569296659, height:8609459, headerHash:0xffb144ee78f58ec4aa1bffc1aeb700be9cff041059b4cf2eb3fe6003dda309fa

I0924 03:45:50.271158 92 JobMakerEth.cc:105] remove timeout work: 2019-09-24 03:44:20|1569296660, height:8609459, headerHash:0x1dc6b0e9b0dd5e0efc1f8367fb2f80ebb722f37dae36dfbec08cc0f4fe9aff15 I0924 03:45:50.271198 92 JobMakerEth.cc:105] remove timeout work: 2019-09-24 03:44:20|1569296660, height:8609460, headerHash:0xc78687159fdb12c913cf08302f9eb6a4ab3cfb2ef971fdf428bb3c9a1b90f6dc

I0924 03:45:51.290235 92 JobMaker.cc:139] new EthJob job: {"jobId":6740078223264055297,"chain":"FOUNDATION","height":8609466,"parent":"0x06d126bdc86a039b50947cfd981e4fb5088b6da5fbd53d1c9b2e83de52d6647b","networkTarget":"0x0000000000001d1d531a6475a4dd93fd8cb066f3149f4a4f37122aebffcc2f80","headerHash":"0x716c19d51b50b85f1d564344e3a61a7f2460575e5a5d33b90f308662e86ff250","sHash":"0x6ececa12c1a7ebdb2f1c9e9c026e3408e7545b7ae951e9eeb226484f587f978d","uncles":0,"transactions":271,"gasUsedPercent":99.896172,"rpcAddress":"http://210.1.2.179:7013","rpcUserPwd":"ethblockuser123!:ethblockuser123!","rskNetworkTarget":"0x0000000000001d1d531a6475a4dd93fd8cb066f3149f4a4f37122aebffcc2f80","rskBlockHashForMergedMining":"0x716c19d51b50b85f1d564344e3a61a7f2460575e5a5d33b90f308662e86ff250","rskFeesForMiner":"","rskdRpcAddress":"","rskdRpcUserPwd":"","isRskCleanJob":false}

I0924 03:45:52.309913 92 JobMakerEth.cc:105] remove timeout work: 2019-09-24 03:44:22|1569296662, height:8609460, headerHash:0x5c4302a6287645e65e2fe3c37d317009c72c4121c45a2d731f1d71d4a1cb2ad3

I0924 03:45:53.327971 92 JobMakerEth.cc:105] remove timeout work: 2019-09-24 03:44:23|1569296663, height:8609460, headerHash:0x453275f57deadf473cbb386bb6bc2db3db7a473d622f89bc38a722e89c925a68 I0924 03:45:53.328019 92 JobMakerEth.cc:105] remove timeout work: 2019-09-24 03:44:23|1569296663, height:8609460, headerHash:0xa8ebe65cbcb635a5129d34e860a13acff16854bd037ac5619fe30ea657b0688e

I0924 03:45:54.347213 92 JobMakerEth.cc:105] remove timeout work: 2019-09-24 03:44:24|1569296664, height:8609460, headerHash:0x520574a8c3ba7fe037f2869baeff9db46d9436b941daaa1636b1cc65d4fb0b7c I0924 03:45:54.347235 92 JobMakerEth.cc:105] remove timeout work: 2019-09-24 03:44:24|1569296664, height:8609460, headerHash:0x04bfadb55ffea08d7a3381f39508d121223ff2a4e54df4ca21c29435b9746e08 I0924 03:45:54.856925 92 JobMaker.cc:121] received EthRawGw message len: 517 job maker.INFO,去掉了header

rocqina commented 5 years ago

用的是原生的geth1.8.23的版本,没用parity。新块通知之前没用起来,打算用--miner.notify='http://xxxx:xxxx/notify' 这个加到geth的启动命令上

de1acr0ix commented 5 years ago

其实从日志里就能看出一个比较大的问题了。

"height":8609465,"parent":"0xc33ec6a66a38b52b34a278e3e16be910255bbfef8fe372fdae56205d89a39a7b"
......
"height":8609466,"parent":"0xc33ec6a66a38b52b34a278e3e16be910255bbfef8fe372fdae56205d89a39a7b"

两个不同的块高是不可能有相同的上一区块哈希的,这说明 eth_getBlockByNumber 用参数 pending 获取待挖区块的功能不稳定,有时候会获取到上一个区块的字段。这时矿池获得的任务很可能是一个空任务,但是根据这个 RPC 的返回值我们就会认为它不空,之后获取到填充了交易的任务时也不会立刻下发了。要解决这个问题,换用我们 fork 的 geth/parity 就可以了。

rocqina commented 5 years ago

eth_getBlockByNumber 用参数 pending 获取待挖区块的功能不稳定,这是原生eth的程序bug吗?如果用原生eth岂不是挖矿都是有空块多的问题。btccom fork的geth,是通过什么思路解决这个bug的?

rocqina commented 5 years ago

还有关于不同的高度,父块hash相同,初步推测,是不是eth_getBlockByNumber 和eth_getWork 不同步导致,两边高度不一样,job的高度被eth_getWork 覆盖了,但是数据用的还是eth_getBlockByNumber 的数据,导致了高度不一样,但是父块的hash相同导致的,我看到日志里面block height mis-matched between getBlockByNumber(pending) and getWork()非常多

de1acr0ix commented 5 years ago

矿池调用 eth_getBlockByNumbereth_getWork 是用的同一个 HTTP 请求的批处理调用,但是节点其实会拆分两个调用,它们可能发生在不同的 goroutine 或者线程中,所以确实是存在同步问题的。矿池代码中存在一些任务发送优化逻辑,比如我们判断当前一个任务为空而新任务不空时则立刻发送,这时就无法起作用了(如果完全没有这些逻辑反而是不会有问题了)。矿池 fork 的节点是扩展了 eth_getWork 调用,使其返回更多内容。

rocqina commented 5 years ago

还有一个问题想问一下,如果系统存在多个矿工的sessionid是一样的情况,现在btccom版本的geth,会有什么问题吗?因为原生节点不存在处理sessionid的问题。对于nicehash协议的eth矿工,截取两个字节从3个字节的sessionid作为extranonce,这个extranonce,不同的矿工很容易出现相同的情况。尽管分配id的时候跳间隔,但是还是会有相同的可能。这地方是不是只有结算有影响,fork后的全节点的改动对于爆块下发任务没什么影响,我想确认一下。

de1acr0ix commented 5 years ago

还有一个问题想问一下,如果系统存在多个矿工的sessionid是一样的情况,现在btccom版本的geth,会有什么问题吗?因为原生节点不存在处理sessionid的问题。对于nicehash协议的eth矿工,截取两个字节从3个字节的sessionid作为extranonce,这个extranonce,不同的矿工很容易出现相同的情况。尽管分配id的时候跳间隔,但是还是会有相同的可能。这地方是不是只有结算有影响,fork后的全节点的改动对于爆块下发任务没什么影响,我想确认一下。

这个问题和改版的 geth 并没有什么关系,而是历史遗留问题。Session ID 相同时实际矿工应该是自己用随机值来填充剩下的字节,所以冲突情况并不多,真的出现冲突情况时会在统计模块中剔除。然而,如果 btcpool 决定不再支持原始的 geth 则这种情况反而就可以解决了,我们完全可以使用四个字节的 Session ID 来填充 extra data 字段,从而使每个矿工的任务完全不一样。

rocqina commented 5 years ago

好的,感谢

rocqina commented 5 years ago

@de1acr0ix 发现一个问题,用了分叉的geth,即使btccom实现的eth_getWork,仍然会在一个块的开始出现transactions:0的任务,过几条才会有交易被填充进来,这个现象是正常的吗? I0929 06:12:11.329555 10119 GwMakerEth.cc:222] chain: ETH, topic: EthRawGw, parent: 0xf39c01f75b2d4a62d58a4f9d3708b83f290af40fc4b2c111c853cd6a54cd7231, target: 0x0000000000001ce108443b653aa6d2b0b531a01d0ca5409cf3d6c84af7e1f78f, hHash: 0x78b071ff14715f147ec82584bff50bfbaf80e437e8689fe0a92b6fc37d25dbfe, sHash: 0xac6abc95142a6435f2b813e9cfdcf84b379e1fb39d103baf353d33ce0ad8fa2b, height: 8642043, uncles: 0, transactions: 0, gasUsedPercent: 0, btcpoolExtensionFields: true I0929 06:12:18.520591 10118 GwMakerEth.cc:222] chain: ETH, topic: EthRawGw, parent: 0x925a8a82c542748f9cdd1c6b1b6831142e717e25f11caaae8d7ea9a5c323eac6, target: 0x0000000000001cdd5f91f158c75fc426f75c85019ede04512271e3bab24c89ed, hHash: 0x2aa8f962899dabe7512509a3c80b6a9f412333ea04f3c224d8585f4396ba39dd, sHash: 0xac6abc95142a6435f2b813e9cfdcf84b379e1fb39d103baf353d33ce0ad8fa2b, height: 8642044, uncles: 0, transactions: 0, gasUsedPercent: 0, btcpoolExtensionFields: true I0929 06:12:32.194353 10118 GwMakerEth.cc:222] chain: ETH, topic: EthRawGw, parent: 0x132881c42f332fb0ba0d34c92728cf093dc4221711f22b3edb2eec8156b5d161, target: 0x0000000000001cdd528d45df90267c355899718067a963835652314262c36b48, hHash: 0x62f2a70bb58157bdfe7f29ec5c4758f5549e281c4ad463bca6771c9740200481, sHash: 0xac6abc95142a6435f2b813e9cfdcf84b379e1fb39d103baf353d33ce0ad8fa2b, height: 8642045, uncles: 0, transactions: 0, gasUsedPercent: 0, btcpoolExtensionFields: true I0929 06:12:32.491694 10119 GwMakerEth.cc:222] chain: ETH, topic: EthRawGw, parent: 0x132881c42f332fb0ba0d34c92728cf093dc4221711f22b3edb2eec8156b5d161, target: 0x0000000000001cdd528d45df90267c355899718067a963835652314262c36b48, hHash: 0x62f2a70bb58157bdfe7f29ec5c4758f5549e281c4ad463bca6771c9740200481, sHash: 0xac6abc95142a6435f2b813e9cfdcf84b379e1fb39d103baf353d33ce0ad8fa2b, height: 8642045, uncles: 0, transactions: 0, gasUsedPercent: 0, btcpoolExtensionFields: true I0929 06:13:08.810293 10118 GwMakerEth.cc:222] chain: ETH, topic: EthRawGw, parent: 0x7821a31b75e3e512326ddc046bcbd8d5b11992093954ca94e22f16a826873463, target: 0x0000000000001ce81c8e780269ddee10cb8f046f1b0304e1e7539f04cb1c8174, hHash: 0xd823cc8da5af58a73bf9677e122afa5548800e4c09276e447c8339c771c6f529, sHash: 0xac6abc95142a6435f2b813e9cfdcf84b379e1fb39d103baf353d33ce0ad8fa2b, height: 8642046, uncles: 0, transactions: 0, gasUsedPercent: 0, btcpoolExtensionFields: true I0929 06:13:26.117008 10118 GwMakerEth.cc:222] chain: ETH, topic: EthRawGw, parent: 0x8e62cbe9745f9272fb455a61045ef4e43e9c36141b13804a818e16635ccb6895, target: 0x0000000000001cebacf417a01f7678766d2ce33c298d9d085215308600d9301a, hHash: 0xd4533f16dda69a899f91a57bd5dc741ea8a5899e7c2980cb51242b5d527ef751, sHash: 0xac6abc95142a6435f2b813e9cfdcf84b379e1fb39d103baf353d33ce0ad8fa2b, height: 8642047, uncles: 0, transactions: 0, gasUsedPercent: 0, btcpoolExtensionFields: true I0929 06:13:36.301354 10118 GwMakerEth.cc:222] chain: ETH, topic: EthRawGw, parent: 0x5fae6dab12ce79bd22dbb0fbb00959f2f247242d184bcc8a88c696f3a66bbf58, target: 0x0000000000001ceb9fe28256680abf15c9a776c82d6f8245b552d882c94b9783, hHash: 0x723683e14a4459601e09c4ab2fc3f7f74aa922d2361d6abc62cbab672dc3f12a, sHash: 0xac6abc95142a6435f2b813e9cfdcf84b379e1fb39d103baf353d33ce0ad8fa2b, height: 8642048, uncles: 0, transactions: 0, gasUsedPercent: 0, btcpoolExtensionFields: true I0929 06:13:47.694984 10118 GwMakerEth.cc:222] chain: ETH, topic: EthRawGw, parent: 0x388f19df30c91607703d11a2e85b447603fadd39e9311c7d88f4d932f3e95e9e, target: 0x0000000000001ceb92d0f8dc48556c9b56dbcc5cbc88e9fcebcdb65e0d27d8f5, hHash: 0x8744ffef59b00420adf5536e556a4e7761b6e5501d586969d20148e8e65f500e, sHash: 0xac6abc95142a6435f2b813e9cfdcf84b379e1fb39d103baf353d33ce0ad8fa2b, height: 8642049, uncles: 0, transactions: 0, gasUsedPercent: 0, btcpoolExtensionFields: true I0929 06:13:59.728860 10118 GwMakerEth.cc:222] chain: ETH, topic: EthRawGw, parent: 0x6d6c6df38c6330cb39fee422d691d5f089f9247d421593f66a46c46bc966fde4, target: 0x0000000000001ceb85bf7b31b053a5183fd26499da51400bc324a296063b302f, hHash: 0x34a5699bda0609e6e743e23f4f9fdc6adc04d90b73253a3ff9a7bcda1a688337, sHash: 0xac6abc95142a6435f2b813e9cfdcf84b379e1fb39d103baf353d33ce0ad8fa2b, height: 8642050, uncles: 0, transactions: 0, gasUsedPercent: 0, btcpoolExtensionFields: true I0929 06:14:20.954355 10118 GwMakerEth.cc:222] chain: ETH, topic: EthRawGw, parent: 0x4342f49b08fc5614f64cc73d83b6fc50c38b007043226973f566c671e0c531ee, target: 0x0000000000001cef168f38dbe0c62ba2b2416283e8cf0371932bbdf20a78d249, hHash: 0xdfa5052932cad0db3b94be0460377e375f1a88b6abe02a65ca09be7e5b6bad20, sHash: 0xac6abc95142a6435f2b813e9cfdcf84b379e1fb39d103baf353d33ce0ad8fa2b, height: 8642051, uncles: 0, transactions: 0, gasUsedPercent: 0, btcpoolExtensionFields: true I0929 06:14:31.533033 10118 GwMakerEth.cc:222] chain: ETH, topic: EthRawGw, parent: 0xf271417f40f3fc093103045d86fe45b64788e3f300a22463fd7e657d8e453de0, target: 0x0000000000001cef097a8ddbf1fc51f22d9bb230e6e9af3f9c5c52a54cc0061e, hHash: 0xe3ba2166fdfd8479ac16498c5ccf5fd21c18285f9c6b29b2103d21f4af078f30, sHash: 0xac6abc95142a6435f2b813e9cfdcf84b379e1fb39d103baf353d33ce0ad8fa2b, height: 8642052, uncles: 0, transactions: 0, gasUsedPercent: 0, btcpoolExtensionFields: true I0929 06:14:57.749379 10118 GwMakerEth.cc:222] chain: ETH, topic: EthRawGw, parent: 0xba50523a832cde8cd74afd6ea4018690be64eefdac5f12536ab4a5cbb318075e, target: 0x0000000000001cf29ab7a2dca2a099c61beee1a6e26259baeb9164caef55449a, hHash: 0x23930b84a0a69c66bbab5da7f28696bb823a1f3d5910726cc7e4627c87984806, sHash: 0xac6abc95142a6435f2b813e9cfdcf84b379e1fb39d103baf353d33ce0ad8fa2b, height: 8642053, uncles: 0, transactions: 0, gasUsedPercent: 0, btcpoolExtensionFields: true I0929 06:14:59.210290 10118 GwMakerEth.cc:222] chain: ETH, topic: EthRawGw, parent: 0x15590eb01a63cf215fd5a8a2e31cdcee7fda08cbf80537fa5b5ce383f9a9eae4, target: 0x0000000000001ceeefc3741c0c82295364ffaeee360d940639b54161f892304d, hHash: 0x543808943e43799eee341cf6755b8bf0b9075c9c08e5dd0ce2c8d962b4634af3, sHash: 0xac6abc95142a6435f2b813e9cfdcf84b379e1fb39d103baf353d33ce0ad8fa2b, height: 8642054, uncles: 0, transactions: 0, gasUsedPercent: 0, btcpoolExtensionFields: true I0929 06:14:59.251015 10119 GwMakerEth.cc:222] chain: ETH, topic: EthRawGw, parent: 0x15590eb01a63cf215fd5a8a2e31cdcee7fda08cbf80537fa5b5ce383f9a9eae4, target: 0x0000000000001ceeefc3741c0c82295364ffaeee360d940639b54161f892304d, hHash: 0x543808943e43799eee341cf6755b8bf0b9075c9c08e5dd0ce2c8d962b4634af3, sHash: 0xac6abc95142a6435f2b813e9cfdcf84b379e1fb39d103baf353d33ce0ad8fa2b, height: 8642054, uncles: 0, transactions: 0, gasUsedPercent: 0, btcpoolExtensionFields: true

de1acr0ix commented 5 years ago

首先 geth 导入区块之后一定会先生成一个空块任务,然后再填充交易生成非空块的任务。这实际上是对于挖矿的一种优化,因为填充交易需要相对不短的时间(数十毫秒到数百毫秒级别)。

这个日志看起来很不正常,是过滤了非空区块任务吗?一般来讲每个块高都会有若干个任务,第一个是空块,然后在几十到几百毫秒的区间出现第二个非空的任务。如果这就是完整的日志,那么需要查看一下 geth 的日志来看看任务生成的情况。

rocqina commented 5 years ago

这是我过滤的,正常一两条之后就有填充交易的了。因为我发现还有空块的情况,所以确认一下这个现象

de1acr0ix commented 5 years ago

正常情况就是一条空块之后再接着一条已经填充交易的任务,两者间隔一般就是几十毫秒。实际爆块时,空块数量应该少于10%(这是一个粗略估计)。