Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

transactionCount sometimes not incrementing #719

Closed
ethers opened this issue Apr 14, 2015 · 9 comments
Closed

transactionCount sometimes not incrementing #719

ethers opened this issue Apr 14, 2015 · 9 comments

Comments

@ethers
Copy link
Member

ethers commented Apr 14, 2015

On develop 8db7b23

transactionCount sometimes not incrementing. Notes below in the log. count starts at 4ff, tx is sent, count is still 4ff even after 20 minutes later. This may be hard to repro, the count incremented well from 1238 (decimal) until 1279 (0x4ff).

count is 4ff

state_object.go:202] 29d33c02a200937995e632c4597b4dca8e503978: #73 1003604501170000000130575 (- 0)
I0414 14:25:36.479547   17580 state_object.go:194] 2e9bd804a61255b2cc7106f915ed59af5fbf63cd: #0 0 (+ 0)
2015/04/14 14:25:36 [RPC] Reply: *interface {} %!s(*interface {}=0xc208f86830)
2015/04/14 14:25:36 [RPC] Generated response: *rpc.RpcSuccessResponse &{a407b0ff-4686-4902-a901-0a6b4974ce72 2.0 0x00000000af22adca5a00ea77b26e222efad29ab9915ffb2fb26db80783b33a25}
2015/04/14 14:25:36 [RPC] Sending payload: {
    "id": "a407b0ff-4686-4902-a901-0a6b4974ce72",
    "jsonrpc": "2.0",
    "result": "0x00000000af22adca5a00ea77b26e222efad29ab9915ffb2fb26db80783b33a25"
}
I0414 14:25:36.484074   17580 api.go:42] eth_getTransactionCount ["0xcd2a3d9f938e13cd947ec05abc7fe734df8dd826", "pending"]
2015/04/14 14:25:36 [RPC] Reply: *interface {} %!s(*interface {}=0xc20b92a8f0)
2015/04/14 14:25:36 [RPC] Generated response: *rpc.RpcSuccessResponse &{b7880576-3bdd-485c-8ec9-52bd428c83d6 2.0 0x4ff}
2015/04/14 14:25:36 [RPC] Sending payload: {
    "id": "b7880576-3bdd-485c-8ec9-52bd428c83d6",
    "jsonrpc": "2.0",
    "result": "0x4ff"
}
I0414 14:25:36.489344   17580 api.go:42] eth_getTransactionCount ["0xcd2a3d9f938e13cd947ec05abc7fe734df8dd826", "pending"]
2015/04/14 14:25:36 [RPC] Reply: *interface {} %!s(*interface {}=0xc20bacad90)
2015/04/14 14:25:36 [RPC] Generated response: *rpc.RpcSuccessResponse &{9d362ad1-3944-4140-b753-d7b6b9b601f1 2.0 0x4ff}
2015/04/14 14:25:36 [RPC] Sending payload: {
    "id": "9d362ad1-3944-4140-b753-d7b6b9b601f1",
    "jsonrpc": "2.0",
    "result": "0x4ff"
}
I0414 14:25:36.493883   17580 api.go:42] eth_blockNumber null
2015/04/14 14:25:36 [RPC] Reply: *interface {} %!s(*interface {}=0xc21dfdf980)
2015/04/14 14:25:36 [RPC] Generated response: *rpc.RpcSuccessResponse &{1630708d-ae39-494f-a8ac-e708e4cc9352 2.0 0x183d9}
2015/04/14 14:25:36 [RPC] Sending payload: {
    "id": "1630708d-ae39-494f-a8ac-e708e4cc9352",
    "jsonrpc": "2.0",
    "result": "0x183d9"
}
I0414 14:25:36.496327   17580 api.go:42] eth_getBlockByNumber ["0x183d9", false]
2015/04/14 14:25:36 [RPC] Reply: *interface {} %!s(*interface {}=0xc21dfdfc40)
2015/04/14 14:25:36 [RPC] Generated response: *rpc.RpcSuccessResponse &{3d5c7970-8f0a-486d-ae0a-25ed735b1bde 2.0 %!s(*rpc.BlockRes=&{false 0xc2228ce080 0xc2228ce520 0xc2228ce580 0xc2228ce5c0 0xc2228ce600 0xc2228ce640 0xc2228ce680 0xc2228ce6e0 0xc2228ce7c0 0xc2228ce800 0xc2228ce8c0 0xc2228cea40 0xc2228ceac0 0xc2228ceae0 <nil> 0xc2228ceb20 0xc2228ceb60 [] []})}
2015/04/14 14:25:36 [RPC] Sending payload: {
    "id": "3d5c7970-8f0a-486d-ae0a-25ed735b1bde",
    "jsonrpc": "2.0",
    "result": {
        "number": "0x183d9",
        "hash": "0x53d23c725ea6fcfb5128471e4d4cceba4867a259e025227e317fee3204d8c571",
        "parentHash": "0x9cccd374b4e6eac413c6ab1d542d9427a54041a449c9049df812f5b5e1552b67",
        "nonce": "0x000000000024bab8",
        "sha3Uncles": "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347",
        "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",
        "transactionsRoot": "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421",
        "stateRoot": "0xdd4a1570c6079bb7c69c1c8f06f9f0afb9ce521d711a010c56593c085f087459",
        "miner": "0x00c5496af02445bd74e10299513915755b7e4a88",
        "difficulty": "0x6d8540",
        "totalDifficulty": "0x474d60d984",
        "size": "0x202",
        "extraData": "0x",
        "gasLimit": "0x2fefd8",
        "minGasPrice": null,
        "gasUsed": "0x0",
        "timestamp": "0x552d85a1",
        "transactions": [],
        "uncles": []
    }
}


**send tx.  but count will still be 4ff**

I0414 14:25:36.499934   17580 api.go:42] eth_sendTransaction [{"from": "0xcd2a3d9f938e13cd947ec05abc7fe734df8dd826", "gas": "0x2dc6c0", "value": "0x0", "to": "0x2e9bd804a61255b2cc7106f915ed59af5fbf63cd", "data": "0xd2d2b0b700000000000000000000000000000000000000000000000000000000000001900000000000000000000000000000000000000000000000000000000000000005010000001fab18090a0100668d3de0b0b2424bd2f931e0164687d077234ddd2b00000000349ca4021e76a2e468c21c7f71b42cc79d424ff6ea951f754774718f7d671d78424d8e49ffff001df3543c09010000001f6b2fa9b5ab406d0d1d11a22c8b9954c4f965a38ebd820f54f8bb3700000000f2a44cea81e876b8adc93ec52301b9b5fecde4011b2e2680a5668f60cf97400b334f8e49ffff001d23422f3301000000cafff4fc209284ba69b3ba48af9996b0e8e7c76f36baf9d049de47840000000060193f172b245086b54a9c75c28c2f15c4a9f3ae2b202d4854678a5eb2b1aad0ca548e49ffff001d291132280100000020302523296c552a29856ff2383b66522be69965ab50237be311005c0000000025755cd9389c7ccde8240a564a69ed8ff9beb7b3e800ca0812112de62c156c7519598e49ffff001d4e3f1c150100000034ecdb1504a6b05cb1e3c4c5564f41a141a3b6d5390cc5794af305820000000076ffbaad619f55a4ed47ad91fff95bf54aea564f5267ad192bf307b96fc5962e3f5a8e49ffff001d1076ac04", "gasPrice": "0x9184e72a000"}]
I0414 14:25:36.501884   17580 transaction_pool.go:142] (t) 6364326133643966 => 2e9bd804 (0x668bb0) 916775265bb5a19662c0e5d791a1b198d87723014f64f33a8d44e449f8191f06
I0414 14:25:36.502220   17580 state_object.go:238] 0000000000000000000000000000000000000000: gas (+ 3141592)
2015/04/14 14:25:36 [RPC] Reply: *interface {} %!s(*interface {}=0xc20b20e2c0)
2015/04/14 14:25:36 [RPC] Generated response: *rpc.RpcSuccessResponse &{971e6bcb-4a90-4a98-8634-38b1f975faa1 2.0 0x916775265bb5a19662c0e5d791a1b198d87723014f64f33a8d44e449f8191f06}
2015/04/14 14:25:36 [RPC] Sending payload: {
    "id": "971e6bcb-4a90-4a98-8634-38b1f975faa1",
    "jsonrpc": "2.0",
    "result": "0x916775265bb5a19662c0e5d791a1b198d87723014f64f33a8d44e449f8191f06"
}
I0414 14:25:36.568570   17580 state_object.go:202] cd2a3d9f938e13cd947ec05abc7fe734df8dd826: #1278 1606938044258990275541962092341162601506277768668690209252901 (- 30000000000000000000)
I0414 14:25:36.569208   17580 state_object.go:202] cd2a3d9f938e13cd947ec05abc7fe734df8dd826: #1279 1606938044258990275541962092341162601506277768668690209252901 (- 0)
I0414 14:25:36.569238   17580 state_object.go:194] 2e9bd804a61255b2cc7106f915ed59af5fbf63cd: #0 0 (+ 0)
I0414 14:25:36.571301   17580 state_object.go:202] 2e9bd804a61255b2cc7106f915ed59af5fbf63cd: #0 0 (- 0)
I0414 14:25:36.571324   17580 state_object.go:194] 0000000000000000000000000000000000000004: #0 1 (+ 0)
I0414 14:25:36.571774   17580 state_object.go:202] 2e9bd804a61255b2cc7106f915ed59af5fbf63cd: #0 0 (- 0)
I0414 14:25:36.571793   17580 state_object.go:194] 0000000000000000000000000000000000000004: #0 1 (+ 0)
I0414 14:25:36.572048   17580 state_object.go:202] 2e9bd804a61255b2cc7106f915ed59af5fbf63cd: #0 0 (- 0)
I0414 14:25:36.572071   17580 state_object.go:194] 2e9bd804a61255b2cc7106f915ed59af5fbf63cd: #0 0 (+ 0)
I0414 14:25:36.575412   17580 state_object.go:202] 2e9bd804a61255b2cc7106f915ed59af5fbf63cd: #0 0 (- 0)
I0414 14:25:36.575441   17580 state_object.go:194] 0000000000000000000000000000000000000004: #0 1 (+ 0)
I0414 14:25:36.575708   17580 state_object.go:202] 2e9bd804a61255b2cc7106f915ed59af5fbf63cd: #0 0 (- 0)
I0414 14:25:36.575730   17580 state_object.go:194] 2e9bd804a61255b2cc7106f915ed59af5fbf63cd: #0 0 (+ 0)
I0414 14:25:36.576442   17580 state_object.go:202] 2e9bd804a61255b2cc7106f915ed59af5fbf63cd: #0 0 (- 0)
I0414 14:25:36.576468   17580 state_object.go:194] 0000000000000000000000000000000000000002: #0 1 (+ 0)
I0414 14:25:36.576772   17580 state_object.go:202] 2e9bd804a61255b2cc7106f915ed59af5fbf63cd: #0 0 (- 0)
I0414 14:25:36.576795   17580 state_object.go:194] 0000000000000000000000000000000000000002: #0 1 (+ 0)
I0414 14:25:36.579292   17580 state_object.go:202] 2e9bd804a61255b2cc7106f915ed59af5fbf63cd: #0 0 (- 0)
I0414 14:25:36.579319   17580 state_object.go:194] 2e9bd804a61255b2cc7106f915ed59af5fbf63cd: #0 0 (+ 0)
I0414 14:25:36.584194   17580 state_object.go:202] 2e9bd804a61255b2cc7106f915ed59af5fbf63cd: #0 0 (- 0)
I0414 14:25:36.584233   17580 state_object.go:194] 0000000000000000000000000000000000000004: #0 1 (+ 0)
I0414 14:25:36.584855   17580 state_object.go:202] 2e9bd804a61255b2cc7106f915ed59af5fbf63cd: #0 0 (- 0)
I0414 14:25:36.584882   17580 state_object.go:194] 0000000000000000000000000000000000000004: #0 1 (+ 0)
I0414 14:25:36.585335   17580 state_object.go:202] 2e9bd804a61255b2cc7106f915ed59af5fbf63cd: #0 0 (- 0)
I0414 14:25:36.585360   17580 state_object.go:194] 2e9bd804a61255b2cc7106f915ed59af5fbf63cd: #0 0 (+ 0)
I0414 14:25:36.589545   17580 state_object.go:202] 2e9bd804a61255b2cc7106f915ed59af5fbf63cd: #0 0 (- 0)
I0414 14:25:36.589573   17580 state_object.go:194] 0000000000000000000000000000000000000004: #0 1 (+ 0)
I0414 14:25:36.590057   17580 state_object.go:202] 2e9bd804a61255b2cc7106f915ed59af5fbf63cd: #0 0 (- 0)
I0414 14:25:36.590073   17580 state_object.go:194] 2e9bd804a61255b2cc7106f915ed59af5fbf63cd: #0 0 (+ 0)
I0414 14:25:36.591051   17580 state_object.go:202] 2e9bd804a61255b2cc7106f915ed59af5fbf63cd: #0 0 (- 0)
I0414 14:25:36.591074   17580 state_object.go:194] 0000000000000000000000000000000000000002: #0 1 (+ 0)
I0414 14:25:36.591583   17580 state_object.go:202] 2e9bd804a61255b2cc7106f915ed59af5fbf63cd: #0 0 (- 0)
I0414 14:25:36.591605   17580 state_object.go:194] 0000000000000000000000000000000000000002: #0 1 (+ 0)
I0414 14:25:36.594429   17580 state_object.go:202] 2e9bd804a61255b2cc7106f915ed59af5fbf63cd: #0 0 (- 0)
I0414 14:25:36.594457   17580 state_object.go:194] 2e9bd804a61255b2cc7106f915ed59af5fbf63cd: #0 0 (+ 0)
I0414 14:25:36.598099   17580 transaction_pool.go:168] Known transaction (91677526)
I0414 14:25:36.598987   17580 state_object.go:202] 2e9bd804a61255b2cc7106f915ed59af5fbf63cd: #0 0 (- 0)
I0414 14:25:36.599018   17580 state_object.go:194] 0000000000000000000000000000000000000004: #0 1 (+ 0)
I0414 14:25:36.599639   17580 state_object.go:202] 2e9bd804a61255b2cc7106f915ed59af5fbf63cd: #0 0 (- 0)
I0414 14:25:36.599664   17580 state_object.go:194] 0000000000000000000000000000000000000004: #0 1 (+ 0)
I0414 14:25:36.600439   17580 state_object.go:202] 2e9bd804a61255b2cc7106f915ed59af5fbf63cd: #0 0 (- 0)
I0414 14:25:36.600471   17580 state_object.go:194] 2e9bd804a61255b2cc7106f915ed59af5fbf63cd: #0 0 (+ 0)
I0414 14:25:36.604669   17580 state_object.go:202] 2e9bd804a61255b2cc7106f915ed59af5fbf63cd: #0 0 (- 0)
I0414 14:25:36.604707   17580 state_object.go:194] 0000000000000000000000000000000000000004: #0 1 (+ 0)
I0414 14:25:36.606093   17580 state_object.go:202] 2e9bd804a61255b2cc7106f915ed59af5fbf63cd: #0 0 (- 0)
I0414 14:25:36.606159   17580 state_object.go:194] 2e9bd804a61255b2cc7106f915ed59af5fbf63cd: #0 0 (+ 0)
I0414 14:25:36.607834   17580 state_object.go:202] 2e9bd804a61255b2cc7106f915ed59af5fbf63cd: #0 0 (- 0)
I0414 14:25:36.607866   17580 state_object.go:194] 0000000000000000000000000000000000000002: #0 1 (+ 0)
I0414 14:25:36.608901   17580 state_object.go:202] 2e9bd804a61255b2cc7106f915ed59af5fbf63cd: #0 0 (- 0)
I0414 14:25:36.608944   17580 state_object.go:194] 0000000000000000000000000000000000000002: #0 1 (+ 0)
I0414 14:25:36.614046   17580 state_object.go:202] 2e9bd804a61255b2cc7106f915ed59af5fbf63cd: #0 0 (- 0)
I0414 14:25:36.614111   17580 state_object.go:194] 2e9bd804a61255b2cc7106f915ed59af5fbf63cd: #0 0 (+ 0)
I0414 14:25:36.622260   17580 state_object.go:202] 2e9bd804a61255b2cc7106f915ed59af5fbf63cd: #0 0 (- 0)
I0414 14:25:36.622299   17580 state_object.go:194] 0000000000000000000000000000000000000004: #0 1 (+ 0)
I0414 14:25:36.623193   17580 state_object.go:202] 2e9bd804a61255b2cc7106f915ed59af5fbf63cd: #0 0 (- 0)
I0414 14:25:36.623216   17580 state_object.go:194] 0000000000000000000000000000000000000004: #0 1 (+ 0)
I0414 14:25:36.623857   17580 state_object.go:202] 2e9bd804a61255b2cc7106f915ed59af5fbf63cd: #0 0 (- 0)
I0414 14:25:36.623874   17580 state_object.go:194] 2e9bd804a61255b2cc7106f915ed59af5fbf63cd: #0 0 (+ 0)
I0414 14:25:36.630332   17580 state_object.go:202] 2e9bd804a61255b2cc7106f915ed59af5fbf63cd: #0 0 (- 0)
I0414 14:25:36.630414   17580 state_object.go:194] 0000000000000000000000000000000000000004: #0 1 (+ 0)
I0414 14:25:36.631679   17580 state_object.go:202] 2e9bd804a61255b2cc7106f915ed59af5fbf63cd: #0 0 (- 0)
I0414 14:25:36.631723   17580 state_object.go:194] 2e9bd804a61255b2cc7106f915ed59af5fbf63cd: #0 0 (+ 0)
I0414 14:25:36.633285   17580 state_object.go:202] 2e9bd804a61255b2cc7106f915ed59af5fbf63cd: #0 0 (- 0)
I0414 14:25:36.633325   17580 state_object.go:194] 0000000000000000000000000000000000000002: #0 1 (+ 0)
I0414 14:25:36.634799   17580 state_object.go:202] 2e9bd804a61255b2cc7106f915ed59af5fbf63cd: #0 0 (- 0)
I0414 14:25:36.634860   17580 state_object.go:194] 0000000000000000000000000000000000000002: #0 1 (+ 0)
I0414 14:25:36.637791   17580 state_object.go:202] 2e9bd804a61255b2cc7106f915ed59af5fbf63cd: #0 0 (- 0)
I0414 14:25:36.637815   17580 state_object.go:194] 2e9bd804a61255b2cc7106f915ed59af5fbf63cd: #0 0 (+ 0)
I0414 14:25:36.642269   17580 state_object.go:202] 2e9bd804a61255b2cc7106f915ed59af5fbf63cd: #0 0 (- 0)
I0414 14:25:36.642306   17580 state_object.go:194] 0000000000000000000000000000000000000004: #0 1 (+ 0)
I0414 14:25:36.643259   17580 state_object.go:202] 2e9bd804a61255b2cc7106f915ed59af5fbf63cd: #0 0 (- 0)
I0414 14:25:36.643282   17580 state_object.go:194] 0000000000000000000000000000000000000004: #0 1 (+ 0)
I0414 14:25:36.652866   17580 state_object.go:202] 2e9bd804a61255b2cc7106f915ed59af5fbf63cd: #0 0 (- 0)
I0414 14:25:36.652917   17580 state_object.go:194] 2e9bd804a61255b2cc7106f915ed59af5fbf63cd: #0 0 (+ 0)
I0414 14:25:36.658035   17580 state_object.go:202] 2e9bd804a61255b2cc7106f915ed59af5fbf63cd: #0 0 (- 0)
I0414 14:25:36.658073   17580 state_object.go:194] 0000000000000000000000000000000000000004: #0 1 (+ 0)
I0414 14:25:36.659033   17580 state_object.go:202] 2e9bd804a61255b2cc7106f915ed59af5fbf63cd: #0 0 (- 0)
I0414 14:25:36.659065   17580 state_object.go:194] 2e9bd804a61255b2cc7106f915ed59af5fbf63cd: #0 0 (+ 0)
I0414 14:25:36.660212   17580 state_object.go:202] 2e9bd804a61255b2cc7106f915ed59af5fbf63cd: #0 0 (- 0)
I0414 14:25:36.660232   17580 state_object.go:194] 0000000000000000000000000000000000000002: #0 1 (+ 0)
I0414 14:25:36.661057   17580 state_object.go:202] 2e9bd804a61255b2cc7106f915ed59af5fbf63cd: #0 0 (- 0)
I0414 14:25:36.661076   17580 state_object.go:194] 0000000000000000000000000000000000000002: #0 1 (+ 0)
I0414 14:25:36.663866   17580 state_object.go:202] 2e9bd804a61255b2cc7106f915ed59af5fbf63cd: #0 0 (- 0)
I0414 14:25:36.663897   17580 state_object.go:194] 2e9bd804a61255b2cc7106f915ed59af5fbf63cd: #0 0 (+ 0)
I0414 14:25:36.669860   17580 state_object.go:194] cd2a3d9f938e13cd947ec05abc7fe734df8dd826: #1279 1606938044258990275541962092341162601506285893038690209252901 (+ 8124370000000000000)
I0414 14:25:36.669916   17580 state_object.go:194] 0000000000000000000000000000000000000000: #0 1000000000000000000000392875630000000000000 (+ 21875630000000000000)
I0414 14:25:36.738819   17580 block_processor.go:103] receipt{med=dd954e31f4bb1f145c466a838ddce6f867e2b35ecff150ca352b02569e198828 cgas=2187563 bloom=00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 logs=[]}
I0414 14:25:36.740967   17580 state_object.go:194] 0000000000000000000000000000000000000000: #0 1000000000000000000000394375630000000000000 (+ 1500000000000000000)
I0414 14:25:36.963021   17580 transaction_pool.go:168] Impossible nonce
I0414 14:25:36.963055   17580 transaction_pool.go:168] Known transaction (dd32d1d2)
I0414 14:25:36.963583   17580 transaction_pool.go:168] Impossible nonce
I0414 14:25:36.964091   17580 transaction_pool.go:168] Impossible nonce
I0414 14:25:36.964392   17580 transaction_pool.go:168] Account does not exist
I0414 14:25:36.964904   17580 transaction_pool.go:168] Impossible nonce
I0414 14:25:36.964933   17580 transaction_pool.go:168] Known transaction (f0869e7f)
I0414 14:25:36.965392   17580 transaction_pool.go:168] Impossible nonce
I0414 14:25:36.965418   17580 transaction_pool.go:168] Known transaction (33fbf676)
I0414 14:25:36.965735   17580 transaction_pool.go:168] Account does not exist
I0414 14:25:36.966267   17580 transaction_pool.go:168] Impossible nonce
I0414 14:25:36.966564   17580 transaction_pool.go:168] Account does not exist
I0414 14:25:36.967118   17580 transaction_pool.go:168] Impossible nonce
I0414 14:25:36.967653   17580 transaction_pool.go:168] Impossible nonce
I0414 14:25:36.968118   17580 transaction_pool.go:168] Impossible nonce
I0414 14:25:36.968622   17580 transaction_pool.go:168] Impossible nonce
I0414 14:25:36.968649   17580 transaction_pool.go:168] Known transaction (a8db80e9)
I0414 14:25:36.968662   17580 transaction_pool.go:168] Known transaction (a8db80e9)
I0414 14:25:36.969173   17580 transaction_pool.go:168] Impossible nonce
I0414 14:25:36.969614   17580 transaction_pool.go:168] Impossible nonce
I0414 14:25:36.970124   17580 transaction_pool.go:168] Impossible nonce
I0414 14:25:36.970629   17580 transaction_pool.go:168] Impossible nonce
I0414 14:25:36.970657   17580 transaction_pool.go:168] Known transaction (6d12d8ed)
I0414 14:25:36.970669   17580 transaction_pool.go:168] Known transaction (c5530e0a)
I0414 14:25:36.971086   17580 transaction_pool.go:168] Impossible nonce
I0414 14:25:36.971763   17580 transaction_pool.go:168] Impossible nonce
I0414 14:25:36.971788   17580 transaction_pool.go:168] Known transaction (6d12d8ed)
I0414 14:25:36.972268   17580 transaction_pool.go:168] Impossible nonce
I0414 14:25:36.972898   17580 transaction_pool.go:168] Impossible nonce
I0414 14:25:36.972922   17580 transaction_pool.go:168] Known transaction (8228780f)
I0414 14:25:36.973726   17580 transaction_pool.go:168] Impossible nonce
I0414 14:25:36.974919   17580 transaction_pool.go:168] Impossible nonce
I0414 14:25:36.975767   17580 transaction_pool.go:168] Impossible nonce
I0414 14:25:36.975808   17580 transaction_pool.go:168] Known transaction (65f4f1a2)
I0414 14:25:36.976734   17580 transaction_pool.go:168] Impossible nonce
I0414 14:25:36.977318   17580 transaction_pool.go:168] Impossible nonce
I0414 14:25:36.978234   17580 transaction_pool.go:168] Impossible nonce
I0414 14:25:36.978869   17580 transaction_pool.go:168] Impossible nonce
I0414 14:25:36.979838   17580 transaction_pool.go:168] Impossible nonce
I0414 14:25:36.980400   17580 transaction_pool.go:168] Impossible nonce
I0414 14:25:36.980429   17580 transaction_pool.go:168] Known transaction (54f9201c)
I0414 14:25:36.981295   17580 transaction_pool.go:168] Impossible nonce
I0414 14:25:36.982042   17580 transaction_pool.go:168] Impossible nonce
I0414 14:25:36.982712   17580 transaction_pool.go:168] Impossible nonce
I0414 14:25:36.983581   17580 transaction_pool.go:168] Impossible nonce
I0414 14:25:36.983627   17580 transaction_pool.go:168] Known transaction (4dda39aa)
I0414 14:25:36.984158   17580 transaction_pool.go:168] Impossible nonce
I0414 14:25:36.984181   17580 transaction_pool.go:168] Known transaction (8228780f)
I0414 14:25:36.984194   17580 transaction_pool.go:168] Known transaction (f8ac7ec4)
I0414 14:25:36.984823   17580 transaction_pool.go:168] Impossible nonce
I0414 14:25:36.985702   17580 transaction_pool.go:168] Impossible nonce
I0414 14:25:36.986020   17580 transaction_pool.go:168] Account does not exist
I0414 14:25:36.986668   17580 transaction_pool.go:168] Impossible nonce
I0414 14:25:36.987486   17580 transaction_pool.go:168] Impossible nonce
I0414 14:25:36.988171   17580 transaction_pool.go:168] Impossible nonce
I0414 14:25:36.988942   17580 transaction_pool.go:168] Impossible nonce
I0414 14:25:36.989866   17580 transaction_pool.go:168] Impossible nonce
I0414 14:25:36.990882   17580 transaction_pool.go:168] Impossible nonce
I0414 14:25:36.991509   17580 transaction_pool.go:168] Impossible nonce
I0414 14:25:36.992236   17580 transaction_pool.go:168] Impossible nonce
I0414 14:25:36.992284   17580 transaction_pool.go:168] Known transaction (07662276)
I0414 14:25:36.993113   17580 transaction_pool.go:168] Impossible nonce
I0414 14:25:36.993772   17580 transaction_pool.go:168] Impossible nonce
I0414 14:25:36.994542   17580 transaction_pool.go:168] Impossible nonce
I0414 14:25:36.995139   17580 transaction_pool.go:168] Account does not exist
I0414 14:25:36.996089   17580 transaction_pool.go:168] Impossible nonce
I0414 14:25:36.997085   17580 transaction_pool.go:168] Impossible nonce
I0414 14:25:36.998032   17580 transaction_pool.go:168] Impossible nonce
I0414 14:25:36.998136   17580 transaction_pool.go:168] Known transaction (6cb97419)
I0414 14:25:36.999146   17580 transaction_pool.go:168] Impossible nonce
I0414 14:25:37.000065   17580 transaction_pool.go:168] Impossible nonce
I0414 14:25:37.000122   17580 transaction_pool.go:168] Known transaction (07662276)
I0414 14:25:37.000509   17580 transaction_pool.go:168] Account does not exist
I0414 14:25:37.000547   17580 transaction_pool.go:168] Known transaction (fd522d95)
I0414 14:25:37.001329   17580 transaction_pool.go:168] Impossible nonce
I0414 14:25:37.001977   17580 transaction_pool.go:168] Impossible nonce
I0414 14:25:37.002703   17580 transaction_pool.go:168] Impossible nonce
I0414 14:25:37.002750   17580 transaction_pool.go:168] Known transaction (d275d24a)
I0414 14:25:37.002769   17580 transaction_pool.go:168] Known transaction (65f4f1a2)
I0414 14:25:37.003496   17580 transaction_pool.go:168] Impossible nonce
I0414 14:25:37.004213   17580 transaction_pool.go:168] Impossible nonce
I0414 14:25:37.004998   17580 transaction_pool.go:168] Impossible nonce
I0414 14:25:37.005809   17580 transaction_pool.go:168] Impossible nonce
I0414 14:25:37.006546   17580 transaction_pool.go:168] Impossible nonce
I0414 14:25:37.007260   17580 transaction_pool.go:168] Impossible nonce
I0414 14:25:37.007300   17580 transaction_pool.go:168] Known transaction (65f4f1a2)
I0414 14:25:37.007320   17580 transaction_pool.go:168] Known transaction (6cb97419)
I0414 14:25:37.007335   17580 transaction_pool.go:168] Known transaction (07662276)
I0414 14:25:37.007863   17580 transaction_pool.go:168] Impossible nonce
I0414 14:25:37.008415   17580 transaction_pool.go:168] Impossible nonce
I0414 14:25:37.008447   17580 transaction_pool.go:168] Known transaction (fd522d95)
I0414 14:25:37.009610   17580 transaction_pool.go:168] Impossible nonce
I0414 14:25:37.010459   17580 transaction_pool.go:168] Impossible nonce
I0414 14:25:37.011844   17580 transaction_pool.go:168] Impossible nonce
I0414 14:25:37.012460   17580 transaction_pool.go:168] Impossible nonce
I0414 14:25:37.012908   17580 transaction_pool.go:168] Impossible nonce
I0414 14:25:37.013438   17580 transaction_pool.go:168] Impossible nonce
I0414 14:25:37.013476   17580 transaction_pool.go:168] Known transaction (65f4f1a2)
I0414 14:25:37.510909   17580 api.go:42] eth_getTransactionCount ["0xcd2a3d9f938e13cd947ec05abc7fe734df8dd826", "pending"]
2015/04/14 14:25:37 [RPC] Reply: *interface {} %!s(*interface {}=0xc2096a8210)
2015/04/14 14:25:37 [RPC] Generated response: *rpc.RpcSuccessResponse &{2215399d-a4c1-40a6-97bf-27a2f134c09f 2.0 0x4ff}
2015/04/14 14:25:37 [RPC] Sending payload: {
    "id": "2215399d-a4c1-40a6-97bf-27a2f134c09f",
    "jsonrpc": "2.0",
    "result": "0x4ff"
}

more than 20 minutes later, the count is still 4ff

I0414 14:47:24.929999   17580 api.go:42] eth_getTransactionCount ["0xcd2a3d9f938e13cd947ec05abc7fe734df8dd826", "pending"]
2015/04/14 14:47:24 [RPC] Reply: *interface {} %!s(*interface {}=0xc20a997620)
2015/04/14 14:47:24 [RPC] Generated response: *rpc.RpcSuccessResponse &{4623075b-47d7-4d15-8253-f716cb8a2dde 2.0 0x4ff}
2015/04/14 14:47:24 [RPC] Sending payload: {
    "id": "4623075b-47d7-4d15-8253-f716cb8a2dde",
    "jsonrpc": "2.0",
    "result": "0x4ff"
}
@ethers
Copy link
Member Author

ethers commented Apr 14, 2015

Here is a complete log with 2 txs. After the first tx, the txcount correctly becomes 0x512. After the second tx, the txcount remains at 0x512.

https://gist.github.com/ethers/af729047b9451cb66be0

@zelig
Copy link
Contributor

zelig commented Apr 20, 2015

is this still an issue?

@ethers
Copy link
Member Author

ethers commented Apr 20, 2015

Yes. On develop 99e825a txcount is 0x53b, then sendTransaction, txcount is still 0x53b.

I0420 13:03:09.945092   31652 api.go:42] eth_getTransactionCount ["0xcd2a3d9f938e13cd947ec05abc7fe734df8dd826", "pending"]
I0420 13:03:10.031638   31652 http.go:131] Generated response: *rpc.RpcSuccessResponse &{1c3d3f3d-3793-42d4-8df7-4c1030eed539 2.0 0x53b}
I0420 13:03:10.031703   31652 http.go:142] Sending payload: {
    "id": "1c3d3f3d-3793-42d4-8df7-4c1030eed539",
    "jsonrpc": "2.0",
    "result": "0x53b"
}
I0420 13:03:11.037493   31652 api.go:42] eth_blockNumber null
I0420 13:03:11.037711   31652 http.go:131] Generated response: *rpc.RpcSuccessResponse &{68b2048a-92cd-43ca-a289-8ed1573db8d9 2.0 0x2167a}
I0420 13:03:11.037844   31652 http.go:142] Sending payload: {
    "id": "68b2048a-92cd-43ca-a289-8ed1573db8d9",
    "jsonrpc": "2.0",
    "result": "0x2167a"
}
I0420 13:03:11.042467   31652 api.go:42] eth_getBlockByNumber ["0x2167a", false]
I0420 13:03:11.042626   31652 http.go:131] Generated response: *rpc.RpcSuccessResponse &{f860613e-caea-4a0a-91cd-5aedb7900d48 2.0 %!s(*rpc.BlockRes=&{false 0xc211756500 0xc211756a80 0xc211756ba0 0xc211756be0 0xc211756c40 0xc211756c80 0xc211756ce0 0xc211756d40 0xc211756dc0 0xc211756e20 0xc211756e60 0xc211757080 0xc211757120 0xc211757140 <nil> 0xc211757180 0xc2117571e0 [] []})}
I0420 13:03:11.042870   31652 http.go:142] Sending payload: {
    "id": "f860613e-caea-4a0a-91cd-5aedb7900d48",
    "jsonrpc": "2.0",
    "result": {
        "number": "0x2167a",
        "hash": "0xdeafa8f42004be2d2e28d0f9536893e55de6a6035e770923c703d45986311d54",
        "parentHash": "0x686e473877ecd9bda546126584ddbf19a92645612664e9c64a6ca94208b6b87a",
        "nonce": "0xb4f060006a9e2894",
        "sha3Uncles": "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347",
        "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",
        "transactionsRoot": "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421",
        "stateRoot": "0x185dc24be48f620bb4abc709835a0505f90d5ef123d4669d678125a15f210524",
        "miner": "0xbc64afab59de94d75a635db1dd494d45b344cf6d",
        "difficulty": "0xfe99a2",
        "totalDifficulty": "0xaa8292b734",
        "size": "0x202",
        "extraData": "0x",
        "gasLimit": "0x2fefd8",
        "minGasPrice": null,
        "gasUsed": "0x0",
        "timestamp": "0x55355b4f",
        "transactions": [],
        "uncles": []
    }
}
I0420 13:03:11.045402   31652 api.go:42] eth_blockNumber null
I0420 13:03:11.045463   31652 http.go:131] Generated response: *rpc.RpcSuccessResponse &{ef7307d2-c62b-4325-b7b0-f8915ddc6ded 2.0 0x2167a}
I0420 13:03:11.045510   31652 http.go:142] Sending payload: {
    "id": "ef7307d2-c62b-4325-b7b0-f8915ddc6ded",
    "jsonrpc": "2.0",
    "result": "0x2167a"
}
I0420 13:03:11.047722   31652 api.go:42] eth_getBlockByNumber ["0x2167a", false]
I0420 13:03:11.047871   31652 http.go:131] Generated response: *rpc.RpcSuccessResponse &{6f0dcf7c-348e-4269-8491-863d0f4bec63 2.0 %!s(*rpc.BlockRes=&{false 0xc2209191a0 0xc220919700 0xc220919760 0xc2209197a0 0xc220919800 0xc220919840 0xc220919880 0xc2209198e0 0xc220919940 0xc220919980 0xc2209199c0 0xc220919b60 0xc220919be0 0xc220919c00 <nil> 0xc220919c40 0xc220919c80 [] []})}
I0420 13:03:11.048134   31652 http.go:142] Sending payload: {
    "id": "6f0dcf7c-348e-4269-8491-863d0f4bec63",
    "jsonrpc": "2.0",
    "result": {
        "number": "0x2167a",
        "hash": "0xdeafa8f42004be2d2e28d0f9536893e55de6a6035e770923c703d45986311d54",
        "parentHash": "0x686e473877ecd9bda546126584ddbf19a92645612664e9c64a6ca94208b6b87a",
        "nonce": "0xb4f060006a9e2894",
        "sha3Uncles": "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347",
        "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",
        "transactionsRoot": "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421",
        "stateRoot": "0x185dc24be48f620bb4abc709835a0505f90d5ef123d4669d678125a15f210524",
        "miner": "0xbc64afab59de94d75a635db1dd494d45b344cf6d",
        "difficulty": "0xfe99a2",
        "totalDifficulty": "0xaa8292b734",
        "size": "0x202",
        "extraData": "0x",
        "gasLimit": "0x2fefd8",
        "minGasPrice": null,
        "gasUsed": "0x0",
        "timestamp": "0x55355b4f",
        "transactions": [],
        "uncles": []
    }
}
I0420 13:03:11.051774   31652 api.go:42] eth_call [{"gas": "0x2dc6c0", "to": "0x2e9bd804a61255b2cc7106f915ed59af5fbf63cd", "from": "0xcd2a3d9f938e13cd947ec05abc7fe734df8dd826", "gasPrice": "0x1", "data": "0x9dd0e81"}, "latest"]
I0420 13:03:11.053393   31652 http.go:131] Generated response: *rpc.RpcSuccessResponse &{01763dac-88e9-46ef-90ef-60914cb66fea 2.0 0x00000000fcef3095a50563a76370837f90b87d0bfc060a8bd4effd23b1de4225}
I0420 13:03:11.053439   31652 http.go:142] Sending payload: {
    "id": "01763dac-88e9-46ef-90ef-60914cb66fea",
    "jsonrpc": "2.0",
    "result": "0x00000000fcef3095a50563a76370837f90b87d0bfc060a8bd4effd23b1de4225"
}
I0420 13:03:11.056201   31652 api.go:42] eth_getTransactionCount ["0xcd2a3d9f938e13cd947ec05abc7fe734df8dd826", "pending"]
I0420 13:03:11.058486   31652 http.go:131] Generated response: *rpc.RpcSuccessResponse &{594354bf-8805-47de-9d3e-dc4689026118 2.0 0x53b}
I0420 13:03:11.058550   31652 http.go:142] Sending payload: {
    "id": "594354bf-8805-47de-9d3e-dc4689026118",
    "jsonrpc": "2.0",
    "result": "0x53b"
}
I0420 13:03:11.061523   31652 api.go:42] eth_getTransactionCount ["0xcd2a3d9f938e13cd947ec05abc7fe734df8dd826", "pending"]
I0420 13:03:11.063666   31652 http.go:131] Generated response: *rpc.RpcSuccessResponse &{f1e72eed-468d-49c5-8d2c-e1abe6db4bd8 2.0 0x53b}
I0420 13:03:11.063950   31652 http.go:142] Sending payload: {
    "id": "f1e72eed-468d-49c5-8d2c-e1abe6db4bd8",
    "jsonrpc": "2.0",
    "result": "0x53b"
}
I0420 13:03:11.068182   31652 api.go:42] eth_blockNumber null
I0420 13:03:11.068282   31652 http.go:131] Generated response: *rpc.RpcSuccessResponse &{ab99df74-47fc-41d3-9a00-3541275ee50d 2.0 0x2167a}
I0420 13:03:11.068331   31652 http.go:142] Sending payload: {
    "id": "ab99df74-47fc-41d3-9a00-3541275ee50d",
    "jsonrpc": "2.0",
    "result": "0x2167a"
}
I0420 13:03:11.072208   31652 api.go:42] eth_getBlockByNumber ["0x2167a", false]
I0420 13:03:11.072384   31652 http.go:131] Generated response: *rpc.RpcSuccessResponse &{bf62fd86-7d2b-46ef-ac44-9579ab2dd1af 2.0 %!s(*rpc.BlockRes=&{false 0xc222cbe400 0xc222cbe7a0 0xc222cbe800 0xc222cbe840 0xc222cbe880 0xc222cbe8c0 0xc222cbe900 0xc222cbe960 0xc222cbe9c0 0xc222cbea00 0xc222cbea40 0xc222cbebc0 0xc222cbec40 0xc222cbec60 <nil> 0xc222cbeca0 0xc222cbece0 [] []})}
I0420 13:03:11.072619   31652 http.go:142] Sending payload: {
    "id": "bf62fd86-7d2b-46ef-ac44-9579ab2dd1af",
    "jsonrpc": "2.0",
    "result": {
        "number": "0x2167a",
        "hash": "0xdeafa8f42004be2d2e28d0f9536893e55de6a6035e770923c703d45986311d54",
        "parentHash": "0x686e473877ecd9bda546126584ddbf19a92645612664e9c64a6ca94208b6b87a",
        "nonce": "0xb4f060006a9e2894",
        "sha3Uncles": "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347",
        "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",
        "transactionsRoot": "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421",
        "stateRoot": "0x185dc24be48f620bb4abc709835a0505f90d5ef123d4669d678125a15f210524",
        "miner": "0xbc64afab59de94d75a635db1dd494d45b344cf6d",
        "difficulty": "0xfe99a2",
        "totalDifficulty": "0xaa8292b734",
        "size": "0x202",
        "extraData": "0x",
        "gasLimit": "0x2fefd8",
        "minGasPrice": null,
        "gasUsed": "0x0",
        "timestamp": "0x55355b4f",
        "transactions": [],
        "uncles": []
    }
}
I0420 13:03:11.077638   31652 api.go:42] eth_sendTransaction [{"from": "0xcd2a3d9f938e13cd947ec05abc7fe734df8dd826", "gas": "0x2dc6c0", "value": "0x0", "to": "0x2e9bd804a61255b2cc7106f915ed59af5fbf63cd", "data": "0xd2d2b0b7000000000000000000000000000000000000000000000000000000000000019000000000000000000000000000000000000000000000000000000000000000050100000014df3874c03199068a11b2a47da93daae39b7ca9ccb7186bb77472e600000000b7a55410bbe6a9f60241566b876f0810d9503c7f01c7b19ddd586419c946d2a47bf38e49ffff001d228c81c201000000dcd01616c258a50f9aba7750217ef2f15e3c52b63588b9f89cc4ada400000000e040630bea9877a9ff16e949ff45ceb8e3273402b37f57b5c8d02aaa30bfefe199f88e49ffff001dae22d10d01000000fc362b191fbe912a92be3187a91ee53e99596379aeea938e2d4df8d90000000002c0318a05f0596ddc1099ee8b020c59321c5b7816a108392ffec484513f2de165f98e49ffff001d3a32a1da0100000094297560871d47d06e934e674937a0dd4d05f01bff39e4895d124f41000000008ddfb1bf6151d3c690ce1306a909feb1357638d87362c632f627bdf80618b9e6dafc8e49ffff001daa78e409010000001892e434c8a4d9d4afc5efebd9ea9862e426a9b7216587595e73c7c40000000039c36dd8592c30cd5de2f46e70433c481bcaa6e93ad397336b5c90e3d2cec07c78fe8e49ffff001dd831ed07", "gasPrice": "0x9184e72a000"}]
I0420 13:03:11.080698   31652 http.go:131] Generated response: *rpc.RpcSuccessResponse &{69d1eb19-bfd8-47a1-a09e-7f18f265261b 2.0 0xdf1c6aaaab4c0883690dc50632c6fc717aa3f1f4fd35ea04a8bd35cdb5cc89e6}
I0420 13:03:11.080815   31652 http.go:142] Sending payload: {
    "id": "69d1eb19-bfd8-47a1-a09e-7f18f265261b",
    "jsonrpc": "2.0",
    "result": "0xdf1c6aaaab4c0883690dc50632c6fc717aa3f1f4fd35ea04a8bd35cdb5cc89e6"
}
I0420 13:03:14.959321   31652 chain_manager.go:579] inserted block #136827 (1 TXs 0 UNCs) (a02ce35f...)
I0420 13:03:14.959402   31652 chain_manager.go:597] imported 1 block(s) 0 queued in 41.499502ms. #136827 [a02ce35f / a02ce35f]
I0420 13:03:21.087875   31652 api.go:42] eth_getTransactionCount ["0xcd2a3d9f938e13cd947ec05abc7fe734df8dd826", "pending"]
I0420 13:03:21.088589   31652 http.go:131] Generated response: *rpc.RpcSuccessResponse &{b97615a4-fe7b-4dc7-b9e2-7d2ee3ef296f 2.0 0x53b}
I0420 13:03:21.088693   31652 http.go:142] Sending payload: {
    "id": "b97615a4-fe7b-4dc7-b9e2-7d2ee3ef296f",
    "jsonrpc": "2.0",
    "result": "0x53b"
}
I0420 13:03:21.317103   31652 chain_manager.go:579] inserted block #136828 (0 TXs 0 UNCs) (01f3c91e...)
I0420 13:03:21.317187   31652 chain_manager.go:597] imported 1 block(s) 0 queued in 5.525085ms. #136828 [01f3c91e / 01f3c91e]
I0420 13:03:30.050357   31652 chain_manager.go:579] inserted block #136829 (0 TXs 0 UNCs) (07220315...)
I0420 13:03:30.050414   31652 chain_manager.go:597] imported 1 block(s) 0 queued in 4.177632ms. #136829 [07220315 / 07220315]
I0420 13:03:31.102449   31652 api.go:42] eth_getTransactionCount ["0xcd2a3d9f938e13cd947ec05abc7fe734df8dd826", "pending"]
I0420 13:03:31.102900   31652 http.go:131] Generated response: *rpc.RpcSuccessResponse &{b797d375-c29a-466a-8706-25318461b878 2.0 0x53b}
I0420 13:03:31.102947   31652 http.go:142] Sending payload: {
    "id": "b797d375-c29a-466a-8706-25318461b878",
    "jsonrpc": "2.0",
    "result": "0x53b"
}
I0420 13:03:40.212649   31652 chain_manager.go:579] inserted block #136830 (0 TXs 0 UNCs) (1aaf7aa8...)
I0420 13:03:40.212754   31652 chain_manager.go:597] imported 1 block(s) 0 queued in 4.98579ms. #136830 [1aaf7aa8 / 1aaf7aa8]
I0420 13:03:41.113287   31652 api.go:42] eth_getTransactionCount ["0xcd2a3d9f938e13cd947ec05abc7fe734df8dd826", "pending"]
I0420 13:03:41.113516   31652 http.go:131] Generated response: *rpc.RpcSuccessResponse &{d114f246-f3f8-49a5-9f16-827a7cab6375 2.0 0x53b}
I0420 13:03:41.113546   31652 http.go:142] Sending payload: {
    "id": "d114f246-f3f8-49a5-9f16-827a7cab6375",
    "jsonrpc": "2.0",
    "result": "0x53b"
}
I0420 13:03:51.126326   31652 api.go:42] eth_getTransactionCount ["0xcd2a3d9f938e13cd947ec05abc7fe734df8dd826", "pending"]
I0420 13:03:51.127012   31652 http.go:131] Generated response: *rpc.RpcSuccessResponse &{21b664fb-ab26-4721-a353-e15cfc91b501 2.0 0x53b}
I0420 13:03:51.127112   31652 http.go:142] Sending payload: {
    "id": "21b664fb-ab26-4721-a353-e15cfc91b501",
    "jsonrpc": "2.0",
    "result": "0x53b"
}
I0420 13:04:01.135327   31652 api.go:42] eth_getTransactionCount ["0xcd2a3d9f938e13cd947ec05abc7fe734df8dd826", "pending"]
I0420 13:04:01.136086   31652 http.go:131] Generated response: *rpc.RpcSuccessResponse &{e179dde8-ec7b-4e0d-a52b-bc4a1f4d00b0 2.0 0x53b}
I0420 13:04:01.136198   31652 http.go:142] Sending payload: {
    "id": "e179dde8-ec7b-4e0d-a52b-bc4a1f4d00b0",
    "jsonrpc": "2.0",
    "result": "0x53b"
}

@ethers
Copy link
Member Author

ethers commented Apr 20, 2015

Note: 10 minutes later the txcount is still 0x53b

I0420 13:14:01.884316   31652 api.go:42] eth_getTransactionCount ["0xcd2a3d9f938e13cd947ec05abc7fe734df8dd826", "pending"]
I0420 13:14:01.885697   31652 http.go:131] Generated response: *rpc.RpcSuccessResponse &{b33d475f-a40c-4ab8-a993-e5fa8e5af83d 2.0 0x53b}
I0420 13:14:01.885962   31652 http.go:142] Sending payload: {
    "id": "b33d475f-a40c-4ab8-a993-e5fa8e5af83d",
    "jsonrpc": "2.0",
    "result": "0x53b"
}

@ethers
Copy link
Member Author

ethers commented Apr 21, 2015

Unfortunately I built and ran Geth 4ddbf81 and still see this issue.

txcount is 0x549, sendtx, txcount becomes 0x54a <--- good
send anothter tx, txcount still 0x5a (More than 10 mins later still 0x54a) <--- issue

I0421 11:08:00.976046    7254 api.go:42] eth_getTransactionCount ["0xcd2a3d9f938e13cd947ec05abc7fe734df8dd826", "pending"]
I0421 11:08:00.976505    7254 http.go:131] Generated response: *rpc.RpcSuccessResponse &{23b41510-998a-43de-877f-d27f709dca99 2.0 0x549}
I0421 11:08:00.976648    7254 http.go:142] Sending payload: {
    "id": "23b41510-998a-43de-877f-d27f709dca99",
    "jsonrpc": "2.0",
    "result": "0x549"
}
I0421 11:08:00.981299    7254 api.go:42] eth_blockNumber null
I0421 11:08:00.981537    7254 http.go:131] Generated response: *rpc.RpcSuccessResponse &{279c4423-4629-453d-97fa-6e785769b8d3 2.0 0x23693}
I0421 11:08:00.981616    7254 http.go:142] Sending payload: {
    "id": "279c4423-4629-453d-97fa-6e785769b8d3",
    "jsonrpc": "2.0",
    "result": "0x23693"
}
I0421 11:08:00.987355    7254 api.go:42] eth_getBlockByNumber ["0x23693", false]
I0421 11:08:00.987793    7254 http.go:131] Generated response: *rpc.RpcSuccessResponse &{ad01969b-ff0c-40bd-a1b3-0f2ab92e83c7 2.0 %!s(*rpc.BlockRes=&{false 0xc20ac09c80 0xc22b6b2020 0xc22b6b2080 0xc22b6b20c0 0xc22b6b2100 0xc22b6b2140 0xc22b6b2180 0xc22b6b21e0 0xc22b6b2240 0xc22b6b2280 0xc22b6b22c0 0xc22b6b2440 0xc22b6b24c0 0xc22b6b24e0 0xc22b6b2520 0xc22b6b2560 [] []})}
I0421 11:08:00.988220    7254 http.go:142] Sending payload: {
    "id": "ad01969b-ff0c-40bd-a1b3-0f2ab92e83c7",
    "jsonrpc": "2.0",
    "result": {
        "number": "0x23693",
        "hash": "0x67d9bee22c3db0d01b79a62a92a160410e7b29910e9694688cf051b30132eaf2",
        "parentHash": "0x22bf4d90b99ce14f178f3cefaca7f59c39c93299cd019d357207637a7e7720d1",
        "nonce": "0x069debda7a70b5be",
        "sha3Uncles": "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347",
        "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",
        "transactionsRoot": "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421",
        "stateRoot": "0xdc8857e5239cd4a2aae2bb7ec107960b4059657c3861e5efbe9884f6e081770c",
        "miner": "0x725490814864d2833b6acf154bfe4202f1b296e4",
        "difficulty": "0x12b8cf5",
        "totalDifficulty": "0xc5540e31fd",
        "size": "0x203",
        "extraData": "0x",
        "gasLimit": "0x2fefd8",
        "gasUsed": "0x0",
        "timestamp": "0x553691fd",
        "transactions": [],
        "uncles": []
    }
}
I0421 11:08:00.993173    7254 api.go:42] eth_sendTransaction [{"from": "0xcd2a3d9f938e13cd947ec05abc7fe734df8dd826", "gas": "0x2dc6c0", "value": "0x0", "to": "0x2e9bd804a61255b2cc7106f915ed59af5fbf63cd", "data": "0xd2d2b0b700000000000000000000000000000000000000000000000000000000000001900000000000000000000000000000000000000000000000000000000000000005010000000efabf92fea4c00ada96cebe2cc7f9a17363ca9556369ed3ee90185200000000f1a34197d2646f69866e7ebe531cf1b3d76f578ff09b550aa1ac1e4edfd83dd25e3d8f49ffff001dc6ee0f05010000001df5f077a096b2a3e2b2dcc26c74bd9489344e34c827afdb3d74b18a000000007120c0c3708210e3b84c74a0b69fa2d915ea09f1fa5013a701f260ff5abb8c69993d8f49ffff001d3a289d3201000000ccbb0f6e7e0883514b03e4a9c050a8554cd55ab6849434aa52fa184900000000fbf67cd67b454902b94dbcc0f877abc22c2061240121d4730e4c2001c01094c8cf3f8f49ffff001d12fbe20101000000fb0ceb7a5ae49195eadcf061e0d21c95479f3f51ae487d042cdda63300000000bc44c4555989fa978b00f931d9b145642895d9f44be23718d9621913da10b00744408f49ffff001def4b4002010000002c256fcb7eec2b3923bf11779012cda5f6f863c803d9fa11a3e72039000000007305fc684691ebfac4ef8ad6554a02d4f12a55a18fe658025b2aab4aca588228e8428f49ffff001d02372698", "gasPrice": "0x9184e72a000"}]
I0421 11:08:00.995252    7254 http.go:131] Generated response: *rpc.RpcSuccessResponse &{a39acce3-07eb-4c1c-9c93-692818ca1759 2.0 0x50a40678de741c76177bba26b55be9b6f23e5a01e47483479229b98b1b38ac43}
I0421 11:08:00.995316    7254 http.go:142] Sending payload: {
    "id": "a39acce3-07eb-4c1c-9c93-692818ca1759",
    "jsonrpc": "2.0",
    "result": "0x50a40678de741c76177bba26b55be9b6f23e5a01e47483479229b98b1b38ac43"
}
I0421 11:08:06.973810    7254 chain_manager.go:585] inserted block #145044 (0 TXs 0 UNCs) (823b75f6...)
I0421 11:08:06.973871    7254 chain_manager.go:603] imported 1 block(s) 0 queued in 7.039379ms. #145044 [823b75f6 / 823b75f6]
I0421 11:08:10.667847    7254 chain_manager.go:585] inserted block #145045 (0 TXs 0 UNCs) (98495bf3...)
I0421 11:08:10.667921    7254 chain_manager.go:603] imported 1 block(s) 0 queued in 4.885512ms. #145045 [98495bf3 / 98495bf3]
I0421 11:08:11.004456    7254 api.go:42] eth_getTransactionCount ["0xcd2a3d9f938e13cd947ec05abc7fe734df8dd826", "pending"]
I0421 11:08:11.008561    7254 http.go:131] Generated response: *rpc.RpcSuccessResponse &{cb6b007c-a38b-473f-9370-9f79798407e9 2.0 0x54a}
I0421 11:08:11.008686    7254 http.go:142] Sending payload: {
    "id": "cb6b007c-a38b-473f-9370-9f79798407e9",
    "jsonrpc": "2.0",
    "result": "0x54a"
}
I0421 11:08:11.183146    7254 chain_manager.go:585] inserted block #145046 (0 TXs 0 UNCs) (4bf83a41...)
I0421 11:08:11.183220    7254 chain_manager.go:603] imported 1 block(s) 0 queued in 7.851851ms. #145046 [4bf83a41 / 4bf83a41]
I0421 11:08:12.014320    7254 api.go:42] eth_blockNumber null
I0421 11:08:12.014408    7254 http.go:131] Generated response: *rpc.RpcSuccessResponse &{a11e3c98-343f-409a-b226-2994e42d884f 2.0 0x23696}
I0421 11:08:12.014458    7254 http.go:142] Sending payload: {
    "id": "a11e3c98-343f-409a-b226-2994e42d884f",
    "jsonrpc": "2.0",
    "result": "0x23696"
}
I0421 11:08:12.018243    7254 api.go:42] eth_getBlockByNumber ["0x23696", false]
I0421 11:08:12.018513    7254 http.go:131] Generated response: *rpc.RpcSuccessResponse &{b5f40f2c-cb5e-46da-8806-d5c271b55fd2 2.0 %!s(*rpc.BlockRes=&{false 0xc20b7e4800 0xc20b7e4ba0 0xc20b7e4c00 0xc20b7e4c40 0xc20b7e4c80 0xc20b7e4cc0 0xc20b7e4d00 0xc20b7e4d60 0xc20b7e4dc0 0xc20b7e4e00 0xc20b7e4e40 0xc20b7e4fc0 0xc20b7e5040 0xc20b7e5060 0xc20b7e50a0 0xc20b7e50e0 [] []})}
I0421 11:08:12.018975    7254 http.go:142] Sending payload: {
    "id": "b5f40f2c-cb5e-46da-8806-d5c271b55fd2",
    "jsonrpc": "2.0",
    "result": {
        "number": "0x23696",
        "hash": "0x4bf83a41c7e0d7a37de867519c55c72b6165783fae83547641689348889457e1",
        "parentHash": "0x98495bf3434e740746e51bc97128570bb5675f40c7ea0f8f2e82388420e6d677",
        "nonce": "0x866eb47d823a77a7",
        "sha3Uncles": "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347",
        "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",
        "transactionsRoot": "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421",
        "stateRoot": "0x69ecd78a4ebfe09a696aa0b2c35516a5499770b58545e767156e543e1c507b7d",
        "miner": "0x725490814864d2833b6acf154bfe4202f1b296e4",
        "difficulty": "0x12bb261",
        "totalDifficulty": "0xc5579123b4",
        "size": "0x203",
        "extraData": "0x",
        "gasLimit": "0x2fefd8",
        "gasUsed": "0x0",
        "timestamp": "0x5536920a",
        "transactions": [],
        "uncles": []
    }
}
I0421 11:08:12.024030    7254 api.go:42] eth_blockNumber null
I0421 11:08:12.024145    7254 http.go:131] Generated response: *rpc.RpcSuccessResponse &{7ffc9ee1-9f57-4f56-b590-ba4566aabb0b 2.0 0x23696}
I0421 11:08:12.024214    7254 http.go:142] Sending payload: {
    "id": "7ffc9ee1-9f57-4f56-b590-ba4566aabb0b",
    "jsonrpc": "2.0",
    "result": "0x23696"
}
I0421 11:08:12.027502    7254 api.go:42] eth_getBlockByNumber ["0x23696", false]
I0421 11:08:12.027771    7254 http.go:131] Generated response: *rpc.RpcSuccessResponse &{dc9df4a7-7014-4d1e-9ab7-78dac370aab4 2.0 %!s(*rpc.BlockRes=&{false 0xc2257ed180 0xc2257ed520 0xc2257ed580 0xc2257ed5c0 0xc2257ed600 0xc2257ed640 0xc2257ed680 0xc2257ed6e0 0xc2257ed740 0xc2257ed780 0xc2257ed7c0 0xc2257ed940 0xc2257ed9c0 0xc2257ed9e0 0xc2257eda20 0xc2257eda60 [] []})}
I0421 11:08:12.028005    7254 http.go:142] Sending payload: {
    "id": "dc9df4a7-7014-4d1e-9ab7-78dac370aab4",
    "jsonrpc": "2.0",
    "result": {
        "number": "0x23696",
        "hash": "0x4bf83a41c7e0d7a37de867519c55c72b6165783fae83547641689348889457e1",
        "parentHash": "0x98495bf3434e740746e51bc97128570bb5675f40c7ea0f8f2e82388420e6d677",
        "nonce": "0x866eb47d823a77a7",
        "sha3Uncles": "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347",
        "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",
        "transactionsRoot": "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421",
        "stateRoot": "0x69ecd78a4ebfe09a696aa0b2c35516a5499770b58545e767156e543e1c507b7d",
        "miner": "0x725490814864d2833b6acf154bfe4202f1b296e4",
        "difficulty": "0x12bb261",
        "totalDifficulty": "0xc5579123b4",
        "size": "0x203",
        "extraData": "0x",
        "gasLimit": "0x2fefd8",
        "gasUsed": "0x0",
        "timestamp": "0x5536920a",
        "transactions": [],
        "uncles": []
    }
}
I0421 11:08:12.032616    7254 api.go:42] eth_call [{"gas": "0x2dc6c0", "to": "0x2e9bd804a61255b2cc7106f915ed59af5fbf63cd", "from": "0xcd2a3d9f938e13cd947ec05abc7fe734df8dd826", "gasPrice": "0x1", "data": "0x9dd0e81"}, "latest"]
I0421 11:08:12.034897    7254 http.go:131] Generated response: *rpc.RpcSuccessResponse &{01fc0619-1157-4147-ad22-1f5b37afd54b 2.0 0x00000000521890eed39e365695ca6373a1f9c72cbece96da0ac0a4fe92bffa0e}
I0421 11:08:12.034965    7254 http.go:142] Sending payload: {
    "id": "01fc0619-1157-4147-ad22-1f5b37afd54b",
    "jsonrpc": "2.0",
    "result": "0x00000000521890eed39e365695ca6373a1f9c72cbece96da0ac0a4fe92bffa0e"
}
I0421 11:08:12.039936    7254 api.go:42] eth_getTransactionCount ["0xcd2a3d9f938e13cd947ec05abc7fe734df8dd826", "pending"]
I0421 11:08:12.041084    7254 http.go:131] Generated response: *rpc.RpcSuccessResponse &{bd34989c-3cb0-4c2b-93c0-99be0aec052e 2.0 0x54a}
I0421 11:08:12.041128    7254 http.go:142] Sending payload: {
    "id": "bd34989c-3cb0-4c2b-93c0-99be0aec052e",
    "jsonrpc": "2.0",
    "result": "0x54a"
}
I0421 11:08:12.044174    7254 api.go:42] eth_getTransactionCount ["0xcd2a3d9f938e13cd947ec05abc7fe734df8dd826", "pending"]
I0421 11:08:12.045787    7254 http.go:131] Generated response: *rpc.RpcSuccessResponse &{eecb2dd9-f55f-4cf4-815a-e61f7dd3054f 2.0 0x54a}
I0421 11:08:12.046095    7254 http.go:142] Sending payload: {
    "id": "eecb2dd9-f55f-4cf4-815a-e61f7dd3054f",
    "jsonrpc": "2.0",
    "result": "0x54a"
}
I0421 11:08:12.056259    7254 api.go:42] eth_blockNumber null
I0421 11:08:12.056365    7254 http.go:131] Generated response: *rpc.RpcSuccessResponse &{ca603cd5-a1fd-4e0c-959f-12e31cd62b13 2.0 0x23696}
I0421 11:08:12.056425    7254 http.go:142] Sending payload: {
    "id": "ca603cd5-a1fd-4e0c-959f-12e31cd62b13",
    "jsonrpc": "2.0",
    "result": "0x23696"
}
I0421 11:08:12.060857    7254 api.go:42] eth_getBlockByNumber ["0x23696", false]
I0421 11:08:12.060961    7254 http.go:131] Generated response: *rpc.RpcSuccessResponse &{7746a79b-c98e-457e-be42-ca041c67fcb0 2.0 %!s(*rpc.BlockRes=&{false 0xc229b49660 0xc229b49a00 0xc229b49a60 0xc229b49aa0 0xc229b49ae0 0xc229b49b20 0xc229b49b60 0xc229b49bc0 0xc229b49c20 0xc229b49c60 0xc229b49ca0 0xc229b49e20 0xc229b49ea0 0xc229b49ec0 0xc229b49f00 0xc229b49f40 [] []})}
I0421 11:08:12.061103    7254 http.go:142] Sending payload: {
    "id": "7746a79b-c98e-457e-be42-ca041c67fcb0",
    "jsonrpc": "2.0",
    "result": {
        "number": "0x23696",
        "hash": "0x4bf83a41c7e0d7a37de867519c55c72b6165783fae83547641689348889457e1",
        "parentHash": "0x98495bf3434e740746e51bc97128570bb5675f40c7ea0f8f2e82388420e6d677",
        "nonce": "0x866eb47d823a77a7",
        "sha3Uncles": "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347",
        "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",
        "transactionsRoot": "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421",
        "stateRoot": "0x69ecd78a4ebfe09a696aa0b2c35516a5499770b58545e767156e543e1c507b7d",
        "miner": "0x725490814864d2833b6acf154bfe4202f1b296e4",
        "difficulty": "0x12bb261",
        "totalDifficulty": "0xc5579123b4",
        "size": "0x203",
        "extraData": "0x",
        "gasLimit": "0x2fefd8",
        "gasUsed": "0x0",
        "timestamp": "0x5536920a",
        "transactions": [],
        "uncles": []
    }
}
I0421 11:08:12.068216    7254 api.go:42] eth_sendTransaction [{"from": "0xcd2a3d9f938e13cd947ec05abc7fe734df8dd826", "gas": "0x2dc6c0", "value": "0x0", "to": "0x2e9bd804a61255b2cc7106f915ed59af5fbf63cd", "data": "0xd2d2b0b70000000000000000000000000000000000000000000000000000000000000190000000000000000000000000000000000000000000000000000000000000000501000000059003aed5f3706b08c6dfdea84d90a55ae489aa9369426c24d3777000000000e30253f906110d826b8ed6378a5ce77a55765bbfa5cbbcad1a4946d6ec75331563468f49ffff001dcc8d2c0901000000881463b8817c22d36f6b50420456cfe1df314f4ded5a90b18fa60a3400000000d7a7c275cffa0cf43bf510227cefa95f9addc512937b0d056c6b90e1d286f830c9468f49ffff001d57a29900010000009a11870580edb69912c0563d89d2318c7abcac662de18a851bc305bf00000000f09511f51a0a82b8e987e0a7f38343c9abcac32e41ab71f6522652d34b6cfa8f49488f49ffff001d22cbb565010000007e50e29f470b6f07b99471e2de0909ec75118e2de45afc1958f9a3900000000065f2111789fa39c50b7dfe1f2fa3b338682d657994e3ba57aaf4f41b7ce1143c274a8f49ffff001d231142a901000000d6bca61ce10d55e1eceda6c77d2727e7b57be88d07b00fd8434437c50000000065833fbb9abf75203826e8e3fe4f53c2f28ce50bd490c5b5b03506eba9dcdfbd644b8f49ffff001d5dc4c605", "gasPrice": "0x9184e72a000"}]
I0421 11:08:12.070583    7254 http.go:131] Generated response: *rpc.RpcSuccessResponse &{504a3b8b-949f-4e60-9388-edf3d60203c0 2.0 0x4a1ad580fb2862b372ca54739de311ee447a7bb37d9763a7e04bca79e8d52488}
I0421 11:08:12.070668    7254 http.go:142] Sending payload: {
    "id": "504a3b8b-949f-4e60-9388-edf3d60203c0",
    "jsonrpc": "2.0",
    "result": "0x4a1ad580fb2862b372ca54739de311ee447a7bb37d9763a7e04bca79e8d52488"
}
I0421 11:08:22.077043    7254 api.go:42] eth_getTransactionCount ["0xcd2a3d9f938e13cd947ec05abc7fe734df8dd826", "pending"]
I0421 11:08:22.077300    7254 http.go:131] Generated response: *rpc.RpcSuccessResponse &{3f407389-6ca7-44e1-a689-f0b1c5afe339 2.0 0x54a}
I0421 11:08:22.077334    7254 http.go:142] Sending payload: {
    "id": "3f407389-6ca7-44e1-a689-f0b1c5afe339",
    "jsonrpc": "2.0",
    "result": "0x54a"
}
I0421 11:08:22.767945    7254 chain_manager.go:585] inserted block #145047 (0 TXs 0 UNCs) (6ca1f0c4...)
I0421 11:08:22.768272    7254 chain_manager.go:603] imported 1 block(s) 0 queued in 10.884673ms. #145047 [6ca1f0c4 / 6ca1f0c4]
I0421 11:08:27.784777    7254 chain_manager.go:585] inserted block #145048 (0 TXs 0 UNCs) (b5a79ab6...)
I0421 11:08:27.784956    7254 chain_manager.go:603] imported 1 block(s) 0 queued in 11.366567ms. #145048 [b5a79ab6 / b5a79ab6]
I0421 11:08:32.088745    7254 api.go:42] eth_getTransactionCount ["0xcd2a3d9f938e13cd947ec05abc7fe734df8dd826", "pending"]
I0421 11:08:32.089409    7254 http.go:131] Generated response: *rpc.RpcSuccessResponse &{8a5109ed-7f08-4e41-9766-1ba1b84b9e02 2.0 0x54a}
I0421 11:08:32.089502    7254 http.go:142] Sending payload: {
    "id": "8a5109ed-7f08-4e41-9766-1ba1b84b9e02",
    "jsonrpc": "2.0",
    "result": "0x54a"
}
I0421 11:08:33.028035    7254 chain_manager.go:585] inserted block #145049 (0 TXs 0 UNCs) (fb038b79...)
I0421 11:08:33.029039    7254 chain_manager.go:603] imported 1 block(s) 0 queued in 8.047856ms. #145049 [fb038b79 / fb038b79]
I0421 11:08:38.856371    7254 chain_manager.go:585] inserted block #145050 (0 TXs 0 UNCs) (57083e17...)
I0421 11:08:38.856441    7254 chain_manager.go:603] imported 1 block(s) 0 queued in 7.646794ms. #145050 [57083e17 / 57083e17]
I0421 11:08:41.734618    7254 chain_manager.go:585] inserted block #145051 (0 TXs 0 UNCs) (c98e3407...)
I0421 11:08:41.734860    7254 chain_manager.go:603] imported 1 block(s) 0 queued in 9.194353ms. #145051 [c98e3407 / c98e3407]
I0421 11:08:42.100030    7254 api.go:42] eth_getTransactionCount ["0xcd2a3d9f938e13cd947ec05abc7fe734df8dd826", "pending"]
I0421 11:08:42.100770    7254 http.go:131] Generated response: *rpc.RpcSuccessResponse &{a17d1797-8020-4882-b18a-633c5ba81322 2.0 0x54a}
I0421 11:08:42.100871    7254 http.go:142] Sending payload: {
    "id": "a17d1797-8020-4882-b18a-633c5ba81322",
    "jsonrpc": "2.0",
    "result": "0x54a"
}
I0421 11:08:42.107598    7254 chain_manager.go:585] inserted block #145052 (0 TXs 0 UNCs) (71dee7a5...)
I0421 11:08:42.107682    7254 chain_manager.go:603] imported 1 block(s) 0 queued in 8.501586ms. #145052 [71dee7a5 / 71dee7a5]
I0421 11:08:49.854499    7254 chain_manager.go:585] inserted block #145053 (0 TXs 0 UNCs) (ef38fd9f...)
I0421 11:08:49.854690    7254 chain_manager.go:603] imported 1 block(s) 0 queued in 11.484606ms. #145053 [ef38fd9f / ef38fd9f]
I0421 11:08:51.871492    7254 chain_manager.go:585] inserted block #145054 (0 TXs 0 UNCs) (de926c02...)
I0421 11:08:51.871718    7254 chain_manager.go:603] imported 1 block(s) 0 queued in 10.770109ms. #145054 [de926c02 / de926c02]
I0421 11:08:52.109979    7254 api.go:42] eth_getTransactionCount ["0xcd2a3d9f938e13cd947ec05abc7fe734df8dd826", "pending"]
I0421 11:08:52.111128    7254 http.go:131] Generated response: *rpc.RpcSuccessResponse &{593e072e-7007-4e4b-a0f0-64f7bc17f0c8 2.0 0x54a}
I0421 11:08:52.111171    7254 http.go:142] Sending payload: {
    "id": "593e072e-7007-4e4b-a0f0-64f7bc17f0c8",
    "jsonrpc": "2.0",
    "result": "0x54a"
}
I0421 11:08:55.029539    7254 chain_manager.go:585] inserted block #145055 (0 TXs 0 UNCs) (8d45a7cb...)
I0421 11:08:55.029878    7254 chain_manager.go:603] imported 1 block(s) 0 queued in 6.309396ms. #145055 [8d45a7cb / 8d45a7cb]
I0421 11:08:56.247341    7254 chain_manager.go:585] inserted block #145056 (0 TXs 0 UNCs) (bbb6583c...)
I0421 11:08:56.247531    7254 chain_manager.go:603] imported 1 block(s) 0 queued in 10.69831ms. #145056 [bbb6583c / bbb6583c]
I0421 11:09:01.682553    7254 chain_manager.go:585] inserted block #145057 (0 TXs 0 UNCs) (d780b118...)
I0421 11:09:01.682616    7254 chain_manager.go:603] imported 1 block(s) 0 queued in 4.443669ms. #145057 [d780b118 / d780b118]
I0421 11:09:02.121539    7254 api.go:42] eth_getTransactionCount ["0xcd2a3d9f938e13cd947ec05abc7fe734df8dd826", "pending"]
I0421 11:09:02.123606    7254 http.go:131] Generated response: *rpc.RpcSuccessResponse &{4ceffd4d-6b40-4354-8f78-9cf8104b03f6 2.0 0x54a}
I0421 11:09:02.123671    7254 http.go:142] Sending payload: {
    "id": "4ceffd4d-6b40-4354-8f78-9cf8104b03f6",
    "jsonrpc": "2.0",
    "result": "0x54a"
}
I0421 11:09:05.400904    7254 chain_manager.go:585] inserted block #145058 (0 TXs 0 UNCs) (c8191e91...)
I0421 11:09:05.401204    7254 chain_manager.go:603] imported 1 block(s) 0 queued in 10.910696ms. #145058 [c8191e91 / c8191e91]
I0421 11:09:05.419289    7254 chain_manager.go:603] imported 1 block(s) 0 queued in 23.706979ms. #145058 [c8191e91 / c8191e91]
I0421 11:09:07.453495    7254 chain_manager.go:585] inserted block #145059 (0 TXs 0 UNCs) (e067ae10...)
I0421 11:09:07.453597    7254 chain_manager.go:603] imported 1 block(s) 0 queued in 7.876642ms. #145059 [e067ae10 / e067ae10]
I0421 11:09:08.475656    7254 chain_manager.go:585] inserted block #145060 (0 TXs 0 UNCs) (017303d6...)
I0421 11:09:08.475740    7254 chain_manager.go:603] imported 1 block(s) 0 queued in 3.93309ms. #145060 [017303d6 / 017303d6]
I0421 11:09:09.898893    7254 chain_manager.go:585] inserted block #145061 (0 TXs 0 UNCs) (4a142154...)
I0421 11:09:09.898972    7254 chain_manager.go:603] imported 1 block(s) 0 queued in 10.943852ms. #145061 [4a142154 / 4a142154]
I0421 11:09:12.060392    7254 chain_manager.go:585] inserted block #145062 (0 TXs 0 UNCs) (2d0295ce...)
I0421 11:09:12.062123    7254 chain_manager.go:603] imported 1 block(s) 0 queued in 13.575598ms. #145062 [2d0295ce / 2d0295ce]
I0421 11:09:12.134295    7254 api.go:42] eth_getTransactionCount ["0xcd2a3d9f938e13cd947ec05abc7fe734df8dd826", "pending"]
I0421 11:09:12.306061    7254 http.go:131] Generated response: *rpc.RpcSuccessResponse &{25d92b1b-548d-4e6b-9113-614b1298453e 2.0 0x54a}
I0421 11:09:12.306116    7254 http.go:142] Sending payload: {
    "id": "25d92b1b-548d-4e6b-9113-614b1298453e",
    "jsonrpc": "2.0",
    "result": "0x54a"
}
I0421 11:09:21.775842    7254 chain_manager.go:585] inserted block #145063 (0 TXs 0 UNCs) (2b99a297...)
I0421 11:09:21.776175    7254 chain_manager.go:603] imported 1 block(s) 0 queued in 5.973907ms. #145063 [2b99a297 / 2b99a297]
I0421 11:09:22.320669    7254 api.go:42] eth_getTransactionCount ["0xcd2a3d9f938e13cd947ec05abc7fe734df8dd826", "pending"]
I0421 11:09:22.324029    7254 http.go:131] Generated response: *rpc.RpcSuccessResponse &{5bec8fed-8ada-431a-bd29-3e1c4841ebd0 2.0 0x54a}
I0421 11:09:22.324134    7254 http.go:142] Sending payload: {
    "id": "5bec8fed-8ada-431a-bd29-3e1c4841ebd0",
    "jsonrpc": "2.0",
    "result": "0x54a"
}

More than 10 mins later still 0x54a

I0421 11:20:53.092601    7254 http.go:131] Generated response: *rpc.RpcSuccessResponse &{fabf88d7-a88f-4ef6-b534-2f71b78cdd12 2.0 0x54a}
I0421 11:20:53.092633    7254 http.go:142] Sending payload: {
    "id": "fabf88d7-a88f-4ef6-b534-2f71b78cdd12",
    "jsonrpc": "2.0",
    "result": "0x54a"
}

@ethers
Copy link
Member Author

ethers commented Apr 21, 2015

This is used for logging: --loglevel 3 --vmodule=chain_manager=5,api=5,rpc=5,http=6
Don't see any errors that might explain more...

@ethers
Copy link
Member Author

ethers commented Apr 21, 2015

The tx that was stuck at 0x54a is valid because I resend the same tx (and then the txcount goes to 0x54b)

I0421 11:28:09.603554    7254 api.go:42] eth_sendTransaction [{"from": "0xcd2a3d9f938e13cd947ec05abc7fe734df8dd826", "gas": "0x2dc6c0", "value": "0x0", "to": "0x2e9bd804a61255b2cc7106f915ed59af5fbf63cd", "data": "0xd2d2b0b70000000000000000000000000000000000000000000000000000000000000190000000000000000000000000000000000000000000000000000000000000000501000000059003aed5f3706b08c6dfdea84d90a55ae489aa9369426c24d3777000000000e30253f906110d826b8ed6378a5ce77a55765bbfa5cbbcad1a4946d6ec75331563468f49ffff001dcc8d2c0901000000881463b8817c22d36f6b50420456cfe1df314f4ded5a90b18fa60a3400000000d7a7c275cffa0cf43bf510227cefa95f9addc512937b0d056c6b90e1d286f830c9468f49ffff001d57a29900010000009a11870580edb69912c0563d89d2318c7abcac662de18a851bc305bf00000000f09511f51a0a82b8e987e0a7f38343c9abcac32e41ab71f6522652d34b6cfa8f49488f49ffff001d22cbb565010000007e50e29f470b6f07b99471e2de0909ec75118e2de45afc1958f9a3900000000065f2111789fa39c50b7dfe1f2fa3b338682d657994e3ba57aaf4f41b7ce1143c274a8f49ffff001d231142a901000000d6bca61ce10d55e1eceda6c77d2727e7b57be88d07b00fd8434437c50000000065833fbb9abf75203826e8e3fe4f53c2f28ce50bd490c5b5b03506eba9dcdfbd644b8f49ffff001d5dc4c605", "gasPrice": "0x9184e72a000"}]
I0421 11:28:09.604936    7254 http.go:131] Generated response: *rpc.RpcSuccessResponse &{0c9b10aa-98e5-4713-9a70-c85a85e618e9 2.0 0x185fa21d97021bf02404d2acc78a939dbb6278d49295e21e379db3e791cbc9e0}
I0421 11:28:09.604968    7254 http.go:142] Sending payload: {
    "id": "0c9b10aa-98e5-4713-9a70-c85a85e618e9",
    "jsonrpc": "2.0",
    "result": "0x185fa21d97021bf02404d2acc78a939dbb6278d49295e21e379db3e791cbc9e0"
}
I0421 11:28:10.970809    7254 chain_manager.go:585] inserted block #145411 (0 TXs 0 UNCs) (5956727e...)
I0421 11:28:10.970911    7254 chain_manager.go:603] imported 1 block(s) 0 queued in 6.482983ms. #145411 [5956727e / 5956727e]
I0421 11:28:19.618225    7254 api.go:42] eth_getTransactionCount ["0xcd2a3d9f938e13cd947ec05abc7fe734df8dd826", "pending"]
I0421 11:28:19.620618    7254 http.go:131] Generated response: *rpc.RpcSuccessResponse &{970895e7-2bc7-42cb-8f0f-06cfb6bf460f 2.0 0x54b}
I0421 11:28:19.620730    7254 http.go:142] Sending payload: {
    "id": "970895e7-2bc7-42cb-8f0f-06cfb6bf460f",
    "jsonrpc": "2.0",
    "result": "0x54b"
}

@ethers
Copy link
Member Author

ethers commented Apr 21, 2015

For clarity, here's the identical tx and 2nd is sent around 20mins after the 1st one, which didn't increment txcount.

I0421 11:08:12.068216    7254 api.go:42] eth_sendTransaction [{"from": "0xcd2a3d9f938e13cd947ec05abc7fe734df8dd826", "gas": "0x2dc6c0", "value": "0x0", "to": "0x2e9bd804a61255b2cc7106f915ed59af5fbf63cd", "data": "0xd2d2b0b70000000000000000000000000000000000000000000000000000000000000190000000000000000000000000000000000000000000000000000000000000000501000000059003aed5f3706b08c6dfdea84d90a55ae489aa9369426c24d3777000000000e30253f906110d826b8ed6378a5ce77a55765bbfa5cbbcad1a4946d6ec75331563468f49ffff001dcc8d2c0901000000881463b8817c22d36f6b50420456cfe1df314f4ded5a90b18fa60a3400000000d7a7c275cffa0cf43bf510227cefa95f9addc512937b0d056c6b90e1d286f830c9468f49ffff001d57a29900010000009a11870580edb69912c0563d89d2318c7abcac662de18a851bc305bf00000000f09511f51a0a82b8e987e0a7f38343c9abcac32e41ab71f6522652d34b6cfa8f49488f49ffff001d22cbb565010000007e50e29f470b6f07b99471e2de0909ec75118e2de45afc1958f9a3900000000065f2111789fa39c50b7dfe1f2fa3b338682d657994e3ba57aaf4f41b7ce1143c274a8f49ffff001d231142a901000000d6bca61ce10d55e1eceda6c77d2727e7b57be88d07b00fd8434437c50000000065833fbb9abf75203826e8e3fe4f53c2f28ce50bd490c5b5b03506eba9dcdfbd644b8f49ffff001d5dc4c605", "gasPrice": "0x9184e72a000"}]
I0421 11:28:09.603554    7254 api.go:42] eth_sendTransaction [{"from": "0xcd2a3d9f938e13cd947ec05abc7fe734df8dd826", "gas": "0x2dc6c0", "value": "0x0", "to": "0x2e9bd804a61255b2cc7106f915ed59af5fbf63cd", "data": "0xd2d2b0b70000000000000000000000000000000000000000000000000000000000000190000000000000000000000000000000000000000000000000000000000000000501000000059003aed5f3706b08c6dfdea84d90a55ae489aa9369426c24d3777000000000e30253f906110d826b8ed6378a5ce77a55765bbfa5cbbcad1a4946d6ec75331563468f49ffff001dcc8d2c0901000000881463b8817c22d36f6b50420456cfe1df314f4ded5a90b18fa60a3400000000d7a7c275cffa0cf43bf510227cefa95f9addc512937b0d056c6b90e1d286f830c9468f49ffff001d57a29900010000009a11870580edb69912c0563d89d2318c7abcac662de18a851bc305bf00000000f09511f51a0a82b8e987e0a7f38343c9abcac32e41ab71f6522652d34b6cfa8f49488f49ffff001d22cbb565010000007e50e29f470b6f07b99471e2de0909ec75118e2de45afc1958f9a3900000000065f2111789fa39c50b7dfe1f2fa3b338682d657994e3ba57aaf4f41b7ce1143c274a8f49ffff001d231142a901000000d6bca61ce10d55e1eceda6c77d2727e7b57be88d07b00fd8434437c50000000065833fbb9abf75203826e8e3fe4f53c2f28ce50bd490c5b5b03506eba9dcdfbd644b8f49ffff001d5dc4c605", "gasPrice": "0x9184e72a000"}]

@ethers
Copy link
Member Author

ethers commented Apr 23, 2015

On obscuren develop branch commit 1fe8517 this looks fixed. I've observed it did take almost 30 mins one time for the txcount to increment. So it is easy to think that the txcount is stuck. from a small sample of 20tx, it looks like it takes an average of 3 mins per tx, with a median of 40s (this sample included the tx that took 1612s before txcount incremented from 1503 to 1504)

sduchesneau pushed a commit to streamingfast/go-ethereum that referenced this issue Mar 3, 2023
* Added checks to RPC requests and introduced new flags to customise the parameters (ethereum#657)

* added a check to reject rpc requests with batch size > the one set using a newly added flag (rpcbatchlimit)

* added a check to reject rpc requests whose result size > the one set using a newly added flag (rpcreturndatalimit)

* updated the config files and docs

* chg : trieTimeout from 60 to 10 mins (ethereum#692)

* chg : trieTimeout from 60 to 10 mins

* chg : cache.timout to 10m from 1h in configs

* internal/cli/server : fix : added triesInMemory in config (ethereum#691)

* changed version from 0.3.0 to 0.3.4-beta (ethereum#693)

* fix nil state-sync issue, increase grpc limit (ethereum#695)

* Increase grpc message size limit in pprof

* consensus/bor/bor.go : stateSyncs init fixed [Fix ethereum#686]

* eth/filters: handle nil state-sync before notify

* eth/filters: update check

Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>

* core, tests/bor: add more tests for state-sync validation (ethereum#710)

* core: add get state sync function for tests

* tests/bor: add validation for state sync events post consensus

* Arpit/temp bor sync (ethereum#701)

* Increase grpc message size limit in pprof

* ReadBorReceipts improvements

* use internal function

* fix tests

* fetch geth upstread for ReadBorReceiptRLP

* Only query bor receipt when the query index is equal to # tx in block body

This change reduces the frequency of calling ReadBorReceipt and
ReadBorTransaction, which are CPU and db intensive.

* Revert "fetch geth upstread for ReadBorReceiptRLP"

This reverts commit 2e838a6b1313d26674f3a8df4b044e35dcbf35a0.

* Restore ReadBorReceiptRLP

* fix bor receipts

* remove unused

* fix lints

---------

Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>

* Revert "chg : trieTimeout from 60 to 10 mins (ethereum#692)" (ethereum#720)

This reverts commit 241843c.

* Arpit/add execution pool 2 (ethereum#719)

* initial

* linters

* linters

* remove timeout

* update pool

* change pool size function

* check nil

* check nil

* fix tests

* Use execution pool from server in all handlers

* simplify things

* test fix

* add support for cli, config

* add to cli and config

* merge base branch

* debug statements

* fix bug

* atomic pointer timeout

* add apis

* update workerpool

* fix issues

* change params

* fix issues

* fix ipc issue

* remove execution pool from IPC

* revert

* fix tests

* mutex

* refactor flag and value names

* ordering fix

* refactor flag and value names

* update default ep size to 40

* fix bor start issues

* revert file changes

* debug statements

* fix bug

* update workerpool

* atomic pointer timeout

* add apis

* Merge branch 'add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* fix issues

* change params

* fix issues

* fix ipc issue

* remove execution pool from IPC

* revert

* merge base branch

* Merge branch 'add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* mutex

* fix tests

* Merge branch 'arpit/add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* Change default size of execution pool to 40

* refactor flag and value names

* fix merge conflicts

* ordering fix

* refactor flag and value names

* update default ep size to 40

* fix bor start issues

* revert file changes

* fix linters

* fix go.mod

* change sec to ms

* change default value for ep timeout

* fix node api calls

* comment setter for ep timeout

---------

Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* version change (ethereum#721)

* Event based pprof (ethereum#732)

* feature

* Save pprof to /tmp

---------

Co-authored-by: Jerry <jerrycgh@gmail.com>

* Cherry-pick changes from develop (ethereum#738)

* Check if block is nil to prevent panic (ethereum#736)

* miner: use env for tracing instead of block object (ethereum#728)

---------

Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>

* add max code init size check in txpool (ethereum#739)

* Revert "Event based pprof" and update version (ethereum#742)

* Revert "Event based pprof (ethereum#732)"

This reverts commit 22fa403.

* params: update version to 0.3.4-beta3

* packaging/templates: update bor version

* params, packaging/templates: update bor version

---------

Co-authored-by: SHIVAM SHARMA <shivam691999@gmail.com>
Co-authored-by: Pratik Patil <pratikspatil024@gmail.com>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>
Co-authored-by: Arpit Temani <temaniarpit27@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>
maoueh pushed a commit to streamingfast/go-ethereum that referenced this issue Jun 9, 2023
* initial

* linters

* linters

* remove timeout

* update pool

* change pool size function

* check nil

* check nil

* fix tests

* Use execution pool from server in all handlers

* simplify things

* test fix

* add support for cli, config

* add to cli and config

* merge base branch

* debug statements

* fix bug

* atomic pointer timeout

* add apis

* update workerpool

* fix issues

* change params

* fix issues

* fix ipc issue

* remove execution pool from IPC

* revert

* fix tests

* mutex

* refactor flag and value names

* ordering fix

* refactor flag and value names

* update default ep size to 40

* fix bor start issues

* revert file changes

* debug statements

* fix bug

* update workerpool

* atomic pointer timeout

* add apis

* Merge branch 'add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* fix issues

* change params

* fix issues

* fix ipc issue

* remove execution pool from IPC

* revert

* merge base branch

* Merge branch 'add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* mutex

* fix tests

* Merge branch 'arpit/add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* Change default size of execution pool to 40

* refactor flag and value names

* fix merge conflicts

* ordering fix

* refactor flag and value names

* update default ep size to 40

* fix bor start issues

* revert file changes

* fix linters

* fix go.mod

* change sec to ms

* change default value for ep timeout

* fix node api calls

* comment setter for ep timeout

---------

Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>
maoueh pushed a commit to streamingfast/go-ethereum that referenced this issue Jun 9, 2023
* Added checks to RPC requests and introduced new flags to customise the parameters (ethereum#657)

* added a check to reject rpc requests with batch size > the one set using a newly added flag (rpcbatchlimit)

* added a check to reject rpc requests whose result size > the one set using a newly added flag (rpcreturndatalimit)

* updated the config files and docs

* chg : trieTimeout from 60 to 10 mins (ethereum#692)

* chg : trieTimeout from 60 to 10 mins

* chg : cache.timout to 10m from 1h in configs

* internal/cli/server : fix : added triesInMemory in config (ethereum#691)

* changed version from 0.3.0 to 0.3.4-beta (ethereum#693)

* fix nil state-sync issue, increase grpc limit (ethereum#695)

* Increase grpc message size limit in pprof

* consensus/bor/bor.go : stateSyncs init fixed [Fix ethereum#686]

* eth/filters: handle nil state-sync before notify

* eth/filters: update check

Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>

* core, tests/bor: add more tests for state-sync validation (ethereum#710)

* core: add get state sync function for tests

* tests/bor: add validation for state sync events post consensus

* Arpit/temp bor sync (ethereum#701)

* Increase grpc message size limit in pprof

* ReadBorReceipts improvements

* use internal function

* fix tests

* fetch geth upstread for ReadBorReceiptRLP

* Only query bor receipt when the query index is equal to # tx in block body

This change reduces the frequency of calling ReadBorReceipt and
ReadBorTransaction, which are CPU and db intensive.

* Revert "fetch geth upstread for ReadBorReceiptRLP"

This reverts commit 2e838a6b1313d26674f3a8df4b044e35dcbf35a0.

* Restore ReadBorReceiptRLP

* fix bor receipts

* remove unused

* fix lints

---------

Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>

* Revert "chg : trieTimeout from 60 to 10 mins (ethereum#692)" (ethereum#720)

This reverts commit 241843c.

* Arpit/add execution pool 2 (ethereum#719)

* initial

* linters

* linters

* remove timeout

* update pool

* change pool size function

* check nil

* check nil

* fix tests

* Use execution pool from server in all handlers

* simplify things

* test fix

* add support for cli, config

* add to cli and config

* merge base branch

* debug statements

* fix bug

* atomic pointer timeout

* add apis

* update workerpool

* fix issues

* change params

* fix issues

* fix ipc issue

* remove execution pool from IPC

* revert

* fix tests

* mutex

* refactor flag and value names

* ordering fix

* refactor flag and value names

* update default ep size to 40

* fix bor start issues

* revert file changes

* debug statements

* fix bug

* update workerpool

* atomic pointer timeout

* add apis

* Merge branch 'add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* fix issues

* change params

* fix issues

* fix ipc issue

* remove execution pool from IPC

* revert

* merge base branch

* Merge branch 'add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* mutex

* fix tests

* Merge branch 'arpit/add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* Change default size of execution pool to 40

* refactor flag and value names

* fix merge conflicts

* ordering fix

* refactor flag and value names

* update default ep size to 40

* fix bor start issues

* revert file changes

* fix linters

* fix go.mod

* change sec to ms

* change default value for ep timeout

* fix node api calls

* comment setter for ep timeout

---------

Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* version change (ethereum#721)

* Event based pprof (ethereum#732)

* feature

* Save pprof to /tmp

---------

Co-authored-by: Jerry <jerrycgh@gmail.com>

* Cherry-pick changes from develop (ethereum#738)

* Check if block is nil to prevent panic (ethereum#736)

* miner: use env for tracing instead of block object (ethereum#728)

---------

Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>

* add max code init size check in txpool (ethereum#739)

* Revert "Event based pprof" and update version (ethereum#742)

* Revert "Event based pprof (ethereum#732)"

This reverts commit 22fa403.

* params: update version to 0.3.4-beta3

* packaging/templates: update bor version

* internal/ethapi :: Fix : newRPCTransactionFromBlockIndex

* fix: remove assignment for bor receipt

---------

Co-authored-by: SHIVAM SHARMA <shivam691999@gmail.com>
Co-authored-by: Pratik Patil <pratikspatil024@gmail.com>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>
Co-authored-by: Arpit Temani <temaniarpit27@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>
maoueh pushed a commit to streamingfast/go-ethereum that referenced this issue Jun 9, 2023
* Merge qa to master (ethereum#750)

* Added checks to RPC requests and introduced new flags to customise the parameters (ethereum#657)

* added a check to reject rpc requests with batch size > the one set using a newly added flag (rpcbatchlimit)

* added a check to reject rpc requests whose result size > the one set using a newly added flag (rpcreturndatalimit)

* updated the config files and docs

* chg : trieTimeout from 60 to 10 mins (ethereum#692)

* chg : trieTimeout from 60 to 10 mins

* chg : cache.timout to 10m from 1h in configs

* internal/cli/server : fix : added triesInMemory in config (ethereum#691)

* changed version from 0.3.0 to 0.3.4-beta (ethereum#693)

* fix nil state-sync issue, increase grpc limit (ethereum#695)

* Increase grpc message size limit in pprof

* consensus/bor/bor.go : stateSyncs init fixed [Fix ethereum#686]

* eth/filters: handle nil state-sync before notify

* eth/filters: update check

Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>

* core, tests/bor: add more tests for state-sync validation (ethereum#710)

* core: add get state sync function for tests

* tests/bor: add validation for state sync events post consensus

* Arpit/temp bor sync (ethereum#701)

* Increase grpc message size limit in pprof

* ReadBorReceipts improvements

* use internal function

* fix tests

* fetch geth upstread for ReadBorReceiptRLP

* Only query bor receipt when the query index is equal to # tx in block body

This change reduces the frequency of calling ReadBorReceipt and
ReadBorTransaction, which are CPU and db intensive.

* Revert "fetch geth upstread for ReadBorReceiptRLP"

This reverts commit 2e838a6b1313d26674f3a8df4b044e35dcbf35a0.

* Restore ReadBorReceiptRLP

* fix bor receipts

* remove unused

* fix lints

---------

Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>

* Revert "chg : trieTimeout from 60 to 10 mins (ethereum#692)" (ethereum#720)

This reverts commit 241843c.

* Arpit/add execution pool 2 (ethereum#719)

* initial

* linters

* linters

* remove timeout

* update pool

* change pool size function

* check nil

* check nil

* fix tests

* Use execution pool from server in all handlers

* simplify things

* test fix

* add support for cli, config

* add to cli and config

* merge base branch

* debug statements

* fix bug

* atomic pointer timeout

* add apis

* update workerpool

* fix issues

* change params

* fix issues

* fix ipc issue

* remove execution pool from IPC

* revert

* fix tests

* mutex

* refactor flag and value names

* ordering fix

* refactor flag and value names

* update default ep size to 40

* fix bor start issues

* revert file changes

* debug statements

* fix bug

* update workerpool

* atomic pointer timeout

* add apis

* Merge branch 'add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* fix issues

* change params

* fix issues

* fix ipc issue

* remove execution pool from IPC

* revert

* merge base branch

* Merge branch 'add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* mutex

* fix tests

* Merge branch 'arpit/add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* Change default size of execution pool to 40

* refactor flag and value names

* fix merge conflicts

* ordering fix

* refactor flag and value names

* update default ep size to 40

* fix bor start issues

* revert file changes

* fix linters

* fix go.mod

* change sec to ms

* change default value for ep timeout

* fix node api calls

* comment setter for ep timeout

---------

Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* version change (ethereum#721)

* Event based pprof (ethereum#732)

* feature

* Save pprof to /tmp

---------

Co-authored-by: Jerry <jerrycgh@gmail.com>

* Cherry-pick changes from develop (ethereum#738)

* Check if block is nil to prevent panic (ethereum#736)

* miner: use env for tracing instead of block object (ethereum#728)

---------

Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>

* add max code init size check in txpool (ethereum#739)

* Revert "Event based pprof" and update version (ethereum#742)

* Revert "Event based pprof (ethereum#732)"

This reverts commit 22fa403.

* params: update version to 0.3.4-beta3

* packaging/templates: update bor version

* params, packaging/templates: update bor version

---------

Co-authored-by: SHIVAM SHARMA <shivam691999@gmail.com>
Co-authored-by: Pratik Patil <pratikspatil024@gmail.com>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>
Co-authored-by: Arpit Temani <temaniarpit27@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>

* core, miner: add sub-spans for tracing (ethereum#753)

* core, miner: add sub-spans for tracing

* fix linters

* core: add logs for debugging

* core: add more logs to print tdd while reorg

* fix linters

* core: minor fix

* core: remove debug logs

* core: use different span for write block and set head

* core: use internal context for sending traces (ethereum#755)

* core: add : impossible reorg block dump (ethereum#754)

* add : impossible reorg block dump

* chg : 3 seperate files for impossoble reorg dump

* add : use exportBlocks method and RLP blocks before writing

* chg : small changes

* bump : go version from 1.19 to 1.20.1 (ethereum#761)

* Revert "bump : go version from 1.19 to 1.20.1 (ethereum#761)"

This reverts commit 4561012.

* core/vm: use optimized bigint (ethereum#26021)

* Add holiman/big

* Fix linter

* Bump version to v0.3.5

* fix lints from develop (few lints decided to appear from code that was untouched, weird)

* upgrade crypto lib version (ethereum#770)

* bump dep : github.com/Masterminds/goutils to v1.1.1 (ethereum#769)

* mardizzone/pos-1313: bump crypto dependency (ethereum#772)

* dev: chg: bumd net dependency

* dev: chg: bump crypto dependency

* dev: chg: bump crypto dependency

* bump dep : golang.org/x/net to v0.8.0 (ethereum#771)

* Verify validator set against local contract on receiving an end-of-sprint block (ethereum#768)

* Verify validator set against local contract on receiving an end-of-sprint block

* Fix tests

* Respect error returned by ParseValidators

* Keep going back until a parent block presents

* core/txpool: implement DoS defenses from geth (ethereum#778)

* Hotfixes and deps bump (ethereum#776)

* dev: chg: bump deps

* internal/cli/server, rpc: lower down http readtimeout to 10s

* dev: chg: get p2p adapter

* dev: chg: lower down jsonrpc readtimeout to 10s

* cherry-pick txpool optimisation changes

* add check for empty lists in txpool (ethereum#704)

* add check

* linters

* core, miner: add empty instrumentation name for tracing

---------

Co-authored-by: Raneet Debnath <raneetdebnath10@gmail.com>
Co-authored-by: SHIVAM SHARMA <shivam691999@gmail.com>
Co-authored-by: Evgeny Danilenko <6655321@bk.ru>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* packaging,params: bump to v0.3.6 (ethereum#782)

* v0.3.6 fix (ethereum#787)

* Fix get validator set in header verifier

* chg : commit tx logs from info to debug (ethereum#673)

* chg : commit tx logs from info to debug

* fix : minor changes

* chg : miner : commitTransactions-stats moved from info to debug

* lint : fix linters

* refactor logging

* miner : chg : UnauthorizedSignerError to debug

* lint : fix lint

* fix : log.Logger interface compatibility

---------

Co-authored-by: Evgeny Danienko <6655321@bk.ru>

* Remove unnecessary sorting of valset from header in verification

* dev: chg: version bump

---------

Co-authored-by: SHIVAM SHARMA <shivam691999@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: marcello33 <marcelloardizzone@hotmail.it>

* core: improve locks in txpool (ethereum#807)

* added a write lock to the txs.filter method and a read lock to the txs.reheap method - both of which are called by Filter during reorg adjustments to txpool

* txpool reorg locks

* more locks

* locks

* linters

* params, packaging: update version for v0.3.8-beta release

* core: add logs in reheap

---------

Co-authored-by: Alex <dalexwatts@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>

* Merge qa to master (ethereum#808)

* Added checks to RPC requests and introduced new flags to customise the parameters (ethereum#657)

* added a check to reject rpc requests with batch size > the one set using a newly added flag (rpcbatchlimit)

* added a check to reject rpc requests whose result size > the one set using a newly added flag (rpcreturndatalimit)

* updated the config files and docs

* chg : trieTimeout from 60 to 10 mins (ethereum#692)

* chg : trieTimeout from 60 to 10 mins

* chg : cache.timout to 10m from 1h in configs

* internal/cli/server : fix : added triesInMemory in config (ethereum#691)

* changed version from 0.3.0 to 0.3.4-beta (ethereum#693)

* fix nil state-sync issue, increase grpc limit (ethereum#695)

* Increase grpc message size limit in pprof

* consensus/bor/bor.go : stateSyncs init fixed [Fix ethereum#686]

* eth/filters: handle nil state-sync before notify

* eth/filters: update check

Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>

* core, tests/bor: add more tests for state-sync validation (ethereum#710)

* core: add get state sync function for tests

* tests/bor: add validation for state sync events post consensus

* Arpit/temp bor sync (ethereum#701)

* Increase grpc message size limit in pprof

* ReadBorReceipts improvements

* use internal function

* fix tests

* fetch geth upstread for ReadBorReceiptRLP

* Only query bor receipt when the query index is equal to # tx in block body

This change reduces the frequency of calling ReadBorReceipt and
ReadBorTransaction, which are CPU and db intensive.

* Revert "fetch geth upstread for ReadBorReceiptRLP"

This reverts commit 2e838a6b1313d26674f3a8df4b044e35dcbf35a0.

* Restore ReadBorReceiptRLP

* fix bor receipts

* remove unused

* fix lints

---------

Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>

* Revert "chg : trieTimeout from 60 to 10 mins (ethereum#692)" (ethereum#720)

This reverts commit 241843c.

* Arpit/add execution pool 2 (ethereum#719)

* initial

* linters

* linters

* remove timeout

* update pool

* change pool size function

* check nil

* check nil

* fix tests

* Use execution pool from server in all handlers

* simplify things

* test fix

* add support for cli, config

* add to cli and config

* merge base branch

* debug statements

* fix bug

* atomic pointer timeout

* add apis

* update workerpool

* fix issues

* change params

* fix issues

* fix ipc issue

* remove execution pool from IPC

* revert

* fix tests

* mutex

* refactor flag and value names

* ordering fix

* refactor flag and value names

* update default ep size to 40

* fix bor start issues

* revert file changes

* debug statements

* fix bug

* update workerpool

* atomic pointer timeout

* add apis

* Merge branch 'add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* fix issues

* change params

* fix issues

* fix ipc issue

* remove execution pool from IPC

* revert

* merge base branch

* Merge branch 'add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* mutex

* fix tests

* Merge branch 'arpit/add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* Change default size of execution pool to 40

* refactor flag and value names

* fix merge conflicts

* ordering fix

* refactor flag and value names

* update default ep size to 40

* fix bor start issues

* revert file changes

* fix linters

* fix go.mod

* change sec to ms

* change default value for ep timeout

* fix node api calls

* comment setter for ep timeout

---------

Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* version change (ethereum#721)

* Event based pprof (ethereum#732)

* feature

* Save pprof to /tmp

---------

Co-authored-by: Jerry <jerrycgh@gmail.com>

* Cherry-pick changes from develop (ethereum#738)

* Check if block is nil to prevent panic (ethereum#736)

* miner: use env for tracing instead of block object (ethereum#728)

---------

Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>

* add max code init size check in txpool (ethereum#739)

* Revert "Event based pprof" and update version (ethereum#742)

* Revert "Event based pprof (ethereum#732)"

This reverts commit 22fa403.

* params: update version to 0.3.4-beta3

* packaging/templates: update bor version

* internal/ethapi :: Fix : newRPCTransactionFromBlockIndex

* fix: remove assignment for bor receipt

---------

Co-authored-by: SHIVAM SHARMA <shivam691999@gmail.com>
Co-authored-by: Pratik Patil <pratikspatil024@gmail.com>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>
Co-authored-by: Arpit Temani <temaniarpit27@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>

* Setting up bor to use hosted 18.04 runner as ubuntu provided 18.04 runner is end of life

---------

Co-authored-by: SHIVAM SHARMA <shivam691999@gmail.com>
Co-authored-by: Pratik Patil <pratikspatil024@gmail.com>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>
Co-authored-by: Arpit Temani <temaniarpit27@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>
Co-authored-by: Martin Holst Swende <martin@swende.se>
Co-authored-by: marcello33 <marcelloardizzone@hotmail.it>
Co-authored-by: Raneet Debnath <raneetdebnath10@gmail.com>
Co-authored-by: Raneet Debnath <35629432+Raneet10@users.noreply.github.com>
Co-authored-by: Alex <dalexwatts@gmail.com>
Co-authored-by: Daniel Jones <djones@polygon.technology>
maoueh pushed a commit to streamingfast/go-ethereum that referenced this issue Jun 9, 2023
* Adding in Mumbai/Mainnet precursor deb packaging for tests to use during upgrade(iterations to come)

* Added changes per discussion in PR, more changes may be necessary

* Adding prerelease true

* Disabling goreleaser

* Removing README swap file

* change bor_dir and add bor user for v0.3.0 release

* rollback bor user and use root

* metrics: handle equal to separated config flag (ethereum#596)

* metrics: handle  based config path

* internal/cli/server: add more context to logs

* use space separated flag and value in bor.service

* fixed static-nodes related buf (os independent) (ethereum#598)

* fixed static-nodes related buf (os independent)

* taking static-nodes as input if default not present

* Update default flags (ethereum#600)

* internal/cli/server: use geth's default for txpool.pricelimit and add comments

* builder/files: update config.toml for mainnet

* packaging/templates: update defaults for mainnet and mumbai

* internal/cli/server: skip overriding cache

* packaging/templates: update cache value for mainnet

* packaging/templates: update gcmode for archive mumbai node

* metrics: handle nil telemetry config (ethereum#601)

* resolve merge conflicts

* update go version in release.yml

* update goversion in makefile

* update Docker login for goreleaser-cross v1.19

* Cleanup for the packager to use git tag in the package profile naming. Added conditional check for directory structure, this is in prep for v0.3.1, as this will create a failure on upgrade path in package due to file exist

* added a toml configuration file with comments describing each flag (ethereum#607)

* added a toml configuration file with comments describing each flag

* internal/cli/server: update flag description

* docs/cli: update example config and description of flags

* docs: update new-cli docs

Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* Adding of 0.3.0 package changes, control file updates, postinst changes, and packager update

* added ancient datadir flag and toml field, need to decide on default value and update the conversion script

* updated toml files with ancient field

* Add support for new flags in new config.toml, which were present in old config.toml (ethereum#612)

* added HTTPTimeouts, and TrieTimeout flag in new tol, from old toml

* added RAW fields for these time.Duration flags

* updated the conversion script to support these extra 4 flags

* removed hcl and json config tests as we are only supporting toml config files

* updated toml files with cache.timeout field

* updated toml files with jsonrpc.timeouts field

* tests/bor: expect a call for latest checkpoint

* tests/bor: expect a call for latest checkpoint

* packaging/templates: update cache values for archive nodes

Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* remove unwanted code

* Fix docker publish authentication issue

In gorelease-cross 1.19+, dockerhub authentication will require docker
logion action followed by mounting docker config file. See
https://github.com/goreleaser/goreleaser-cross#github-actions.

* Revert "update Docker login for goreleaser-cross v1.19"

This reverts commit 4d19cf5.

* Bump version to stable

* Revert "Merge pull request ethereum#435 from maticnetwork/POS-553"

This reverts commit 657d262, reversing
changes made to 88dbfa1.

* revert change for release for go1.19

* Add default values to CLI helper and docs

This commit adds default values to CLI helper and docs. When the default value of a string flag, slice string flag, or map string flag is empty, its helper message won't show any default value.

* Add a summary of new CLI in docs

* Updating packager as binutils changed version so that apt-get installs current versions

* Add state pruning to new CLI

* Minor wording fix in prune state description

* Bumping control file versions

* Mainnet Delhi fork

* Set version to stable

* change delhi hardfork block number

* handle future chain import and skip peer drop (ethereum#650)

* handle future chain import and skip peer drop

* add block import metric

* params: bump version to v0.3.3-stable

* Bump bor version in control files for v0.3.3 mainnet release

* Added checks to RPC requests and introduced new flags to customise the parameters (ethereum#657)

* added a check to reject rpc requests with batch size > the one set using a newly added flag (rpcbatchlimit)

* added a check to reject rpc requests whose result size > the one set using a newly added flag (rpcreturndatalimit)

* updated the config files and docs

* chg : trieTimeout from 60 to 10 mins (ethereum#692)

* chg : trieTimeout from 60 to 10 mins

* chg : cache.timout to 10m from 1h in configs

* internal/cli/server : fix : added triesInMemory in config (ethereum#691)

* changed version from 0.3.0 to 0.3.4-beta (ethereum#693)

* fix nil state-sync issue, increase grpc limit (ethereum#695)

* Increase grpc message size limit in pprof

* consensus/bor/bor.go : stateSyncs init fixed [Fix ethereum#686]

* eth/filters: handle nil state-sync before notify

* eth/filters: update check

Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>

* core, tests/bor: add more tests for state-sync validation (ethereum#710)

* core: add get state sync function for tests

* tests/bor: add validation for state sync events post consensus

* Arpit/temp bor sync (ethereum#701)

* Increase grpc message size limit in pprof

* ReadBorReceipts improvements

* use internal function

* fix tests

* fetch geth upstread for ReadBorReceiptRLP

* Only query bor receipt when the query index is equal to # tx in block body

This change reduces the frequency of calling ReadBorReceipt and
ReadBorTransaction, which are CPU and db intensive.

* Revert "fetch geth upstread for ReadBorReceiptRLP"

This reverts commit 2e838a6b1313d26674f3a8df4b044e35dcbf35a0.

* Restore ReadBorReceiptRLP

* fix bor receipts

* remove unused

* fix lints

---------

Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>

* Revert "chg : trieTimeout from 60 to 10 mins (ethereum#692)" (ethereum#720)

This reverts commit 241843c.

* Arpit/add execution pool 2 (ethereum#719)

* initial

* linters

* linters

* remove timeout

* update pool

* change pool size function

* check nil

* check nil

* fix tests

* Use execution pool from server in all handlers

* simplify things

* test fix

* add support for cli, config

* add to cli and config

* merge base branch

* debug statements

* fix bug

* atomic pointer timeout

* add apis

* update workerpool

* fix issues

* change params

* fix issues

* fix ipc issue

* remove execution pool from IPC

* revert

* fix tests

* mutex

* refactor flag and value names

* ordering fix

* refactor flag and value names

* update default ep size to 40

* fix bor start issues

* revert file changes

* debug statements

* fix bug

* update workerpool

* atomic pointer timeout

* add apis

* Merge branch 'add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* fix issues

* change params

* fix issues

* fix ipc issue

* remove execution pool from IPC

* revert

* merge base branch

* Merge branch 'add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* mutex

* fix tests

* Merge branch 'arpit/add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* Change default size of execution pool to 40

* refactor flag and value names

* fix merge conflicts

* ordering fix

* refactor flag and value names

* update default ep size to 40

* fix bor start issues

* revert file changes

* fix linters

* fix go.mod

* change sec to ms

* change default value for ep timeout

* fix node api calls

* comment setter for ep timeout

---------

Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* version change (ethereum#721)

* Event based pprof (ethereum#732)

* feature

* Save pprof to /tmp

---------

Co-authored-by: Jerry <jerrycgh@gmail.com>

* Cherry-pick changes from develop (ethereum#738)

* Check if block is nil to prevent panic (ethereum#736)

* miner: use env for tracing instead of block object (ethereum#728)

---------

Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>

* add max code init size check in txpool (ethereum#739)

* Revert "Event based pprof" and update version (ethereum#742)

* Revert "Event based pprof (ethereum#732)"

This reverts commit 22fa403.

* params: update version to 0.3.4-beta3

* packaging/templates: update bor version

* internal/ethapi :: Fix : newRPCTransactionFromBlockIndex

* Merge master to qa (ethereum#813)

* Merge qa to master (ethereum#750)

* Added checks to RPC requests and introduced new flags to customise the parameters (ethereum#657)

* added a check to reject rpc requests with batch size > the one set using a newly added flag (rpcbatchlimit)

* added a check to reject rpc requests whose result size > the one set using a newly added flag (rpcreturndatalimit)

* updated the config files and docs

* chg : trieTimeout from 60 to 10 mins (ethereum#692)

* chg : trieTimeout from 60 to 10 mins

* chg : cache.timout to 10m from 1h in configs

* internal/cli/server : fix : added triesInMemory in config (ethereum#691)

* changed version from 0.3.0 to 0.3.4-beta (ethereum#693)

* fix nil state-sync issue, increase grpc limit (ethereum#695)

* Increase grpc message size limit in pprof

* consensus/bor/bor.go : stateSyncs init fixed [Fix ethereum#686]

* eth/filters: handle nil state-sync before notify

* eth/filters: update check

Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>

* core, tests/bor: add more tests for state-sync validation (ethereum#710)

* core: add get state sync function for tests

* tests/bor: add validation for state sync events post consensus

* Arpit/temp bor sync (ethereum#701)

* Increase grpc message size limit in pprof

* ReadBorReceipts improvements

* use internal function

* fix tests

* fetch geth upstread for ReadBorReceiptRLP

* Only query bor receipt when the query index is equal to # tx in block body

This change reduces the frequency of calling ReadBorReceipt and
ReadBorTransaction, which are CPU and db intensive.

* Revert "fetch geth upstread for ReadBorReceiptRLP"

This reverts commit 2e838a6b1313d26674f3a8df4b044e35dcbf35a0.

* Restore ReadBorReceiptRLP

* fix bor receipts

* remove unused

* fix lints

---------

Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>

* Revert "chg : trieTimeout from 60 to 10 mins (ethereum#692)" (ethereum#720)

This reverts commit 241843c.

* Arpit/add execution pool 2 (ethereum#719)

* initial

* linters

* linters

* remove timeout

* update pool

* change pool size function

* check nil

* check nil

* fix tests

* Use execution pool from server in all handlers

* simplify things

* test fix

* add support for cli, config

* add to cli and config

* merge base branch

* debug statements

* fix bug

* atomic pointer timeout

* add apis

* update workerpool

* fix issues

* change params

* fix issues

* fix ipc issue

* remove execution pool from IPC

* revert

* fix tests

* mutex

* refactor flag and value names

* ordering fix

* refactor flag and value names

* update default ep size to 40

* fix bor start issues

* revert file changes

* debug statements

* fix bug

* update workerpool

* atomic pointer timeout

* add apis

* Merge branch 'add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* fix issues

* change params

* fix issues

* fix ipc issue

* remove execution pool from IPC

* revert

* merge base branch

* Merge branch 'add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* mutex

* fix tests

* Merge branch 'arpit/add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* Change default size of execution pool to 40

* refactor flag and value names

* fix merge conflicts

* ordering fix

* refactor flag and value names

* update default ep size to 40

* fix bor start issues

* revert file changes

* fix linters

* fix go.mod

* change sec to ms

* change default value for ep timeout

* fix node api calls

* comment setter for ep timeout

---------

Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* version change (ethereum#721)

* Event based pprof (ethereum#732)

* feature

* Save pprof to /tmp

---------

Co-authored-by: Jerry <jerrycgh@gmail.com>

* Cherry-pick changes from develop (ethereum#738)

* Check if block is nil to prevent panic (ethereum#736)

* miner: use env for tracing instead of block object (ethereum#728)

---------

Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>

* add max code init size check in txpool (ethereum#739)

* Revert "Event based pprof" and update version (ethereum#742)

* Revert "Event based pprof (ethereum#732)"

This reverts commit 22fa403.

* params: update version to 0.3.4-beta3

* packaging/templates: update bor version

* params, packaging/templates: update bor version

---------

Co-authored-by: SHIVAM SHARMA <shivam691999@gmail.com>
Co-authored-by: Pratik Patil <pratikspatil024@gmail.com>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>
Co-authored-by: Arpit Temani <temaniarpit27@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>

* core, miner: add sub-spans for tracing (ethereum#753)

* core, miner: add sub-spans for tracing

* fix linters

* core: add logs for debugging

* core: add more logs to print tdd while reorg

* fix linters

* core: minor fix

* core: remove debug logs

* core: use different span for write block and set head

* core: use internal context for sending traces (ethereum#755)

* core: add : impossible reorg block dump (ethereum#754)

* add : impossible reorg block dump

* chg : 3 seperate files for impossoble reorg dump

* add : use exportBlocks method and RLP blocks before writing

* chg : small changes

* bump : go version from 1.19 to 1.20.1 (ethereum#761)

* Revert "bump : go version from 1.19 to 1.20.1 (ethereum#761)"

This reverts commit 4561012.

* core/vm: use optimized bigint (ethereum#26021)

* Add holiman/big

* Fix linter

* Bump version to v0.3.5

* fix lints from develop (few lints decided to appear from code that was untouched, weird)

* upgrade crypto lib version (ethereum#770)

* bump dep : github.com/Masterminds/goutils to v1.1.1 (ethereum#769)

* mardizzone/pos-1313: bump crypto dependency (ethereum#772)

* dev: chg: bumd net dependency

* dev: chg: bump crypto dependency

* dev: chg: bump crypto dependency

* bump dep : golang.org/x/net to v0.8.0 (ethereum#771)

* Verify validator set against local contract on receiving an end-of-sprint block (ethereum#768)

* Verify validator set against local contract on receiving an end-of-sprint block

* Fix tests

* Respect error returned by ParseValidators

* Keep going back until a parent block presents

* core/txpool: implement DoS defenses from geth (ethereum#778)

* Hotfixes and deps bump (ethereum#776)

* dev: chg: bump deps

* internal/cli/server, rpc: lower down http readtimeout to 10s

* dev: chg: get p2p adapter

* dev: chg: lower down jsonrpc readtimeout to 10s

* cherry-pick txpool optimisation changes

* add check for empty lists in txpool (ethereum#704)

* add check

* linters

* core, miner: add empty instrumentation name for tracing

---------

Co-authored-by: Raneet Debnath <raneetdebnath10@gmail.com>
Co-authored-by: SHIVAM SHARMA <shivam691999@gmail.com>
Co-authored-by: Evgeny Danilenko <6655321@bk.ru>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* packaging,params: bump to v0.3.6 (ethereum#782)

* v0.3.6 fix (ethereum#787)

* Fix get validator set in header verifier

* chg : commit tx logs from info to debug (ethereum#673)

* chg : commit tx logs from info to debug

* fix : minor changes

* chg : miner : commitTransactions-stats moved from info to debug

* lint : fix linters

* refactor logging

* miner : chg : UnauthorizedSignerError to debug

* lint : fix lint

* fix : log.Logger interface compatibility

---------

Co-authored-by: Evgeny Danienko <6655321@bk.ru>

* Remove unnecessary sorting of valset from header in verification

* dev: chg: version bump

---------

Co-authored-by: SHIVAM SHARMA <shivam691999@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: marcello33 <marcelloardizzone@hotmail.it>

* core: improve locks in txpool (ethereum#807)

* added a write lock to the txs.filter method and a read lock to the txs.reheap method - both of which are called by Filter during reorg adjustments to txpool

* txpool reorg locks

* more locks

* locks

* linters

* params, packaging: update version for v0.3.8-beta release

* core: add logs in reheap

---------

Co-authored-by: Alex <dalexwatts@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>

* Merge qa to master (ethereum#808)

* Added checks to RPC requests and introduced new flags to customise the parameters (ethereum#657)

* added a check to reject rpc requests with batch size > the one set using a newly added flag (rpcbatchlimit)

* added a check to reject rpc requests whose result size > the one set using a newly added flag (rpcreturndatalimit)

* updated the config files and docs

* chg : trieTimeout from 60 to 10 mins (ethereum#692)

* chg : trieTimeout from 60 to 10 mins

* chg : cache.timout to 10m from 1h in configs

* internal/cli/server : fix : added triesInMemory in config (ethereum#691)

* changed version from 0.3.0 to 0.3.4-beta (ethereum#693)

* fix nil state-sync issue, increase grpc limit (ethereum#695)

* Increase grpc message size limit in pprof

* consensus/bor/bor.go : stateSyncs init fixed [Fix ethereum#686]

* eth/filters: handle nil state-sync before notify

* eth/filters: update check

Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>

* core, tests/bor: add more tests for state-sync validation (ethereum#710)

* core: add get state sync function for tests

* tests/bor: add validation for state sync events post consensus

* Arpit/temp bor sync (ethereum#701)

* Increase grpc message size limit in pprof

* ReadBorReceipts improvements

* use internal function

* fix tests

* fetch geth upstread for ReadBorReceiptRLP

* Only query bor receipt when the query index is equal to # tx in block body

This change reduces the frequency of calling ReadBorReceipt and
ReadBorTransaction, which are CPU and db intensive.

* Revert "fetch geth upstread for ReadBorReceiptRLP"

This reverts commit 2e838a6b1313d26674f3a8df4b044e35dcbf35a0.

* Restore ReadBorReceiptRLP

* fix bor receipts

* remove unused

* fix lints

---------

Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>

* Revert "chg : trieTimeout from 60 to 10 mins (ethereum#692)" (ethereum#720)

This reverts commit 241843c.

* Arpit/add execution pool 2 (ethereum#719)

* initial

* linters

* linters

* remove timeout

* update pool

* change pool size function

* check nil

* check nil

* fix tests

* Use execution pool from server in all handlers

* simplify things

* test fix

* add support for cli, config

* add to cli and config

* merge base branch

* debug statements

* fix bug

* atomic pointer timeout

* add apis

* update workerpool

* fix issues

* change params

* fix issues

* fix ipc issue

* remove execution pool from IPC

* revert

* fix tests

* mutex

* refactor flag and value names

* ordering fix

* refactor flag and value names

* update default ep size to 40

* fix bor start issues

* revert file changes

* debug statements

* fix bug

* update workerpool

* atomic pointer timeout

* add apis

* Merge branch 'add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* fix issues

* change params

* fix issues

* fix ipc issue

* remove execution pool from IPC

* revert

* merge base branch

* Merge branch 'add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* mutex

* fix tests

* Merge branch 'arpit/add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* Change default size of execution pool to 40

* refactor flag and value names

* fix merge conflicts

* ordering fix

* refactor flag and value names

* update default ep size to 40

* fix bor start issues

* revert file changes

* fix linters

* fix go.mod

* change sec to ms

* change default value for ep timeout

* fix node api calls

* comment setter for ep timeout

---------

Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* version change (ethereum#721)

* Event based pprof (ethereum#732)

* feature

* Save pprof to /tmp

---------

Co-authored-by: Jerry <jerrycgh@gmail.com>

* Cherry-pick changes from develop (ethereum#738)

* Check if block is nil to prevent panic (ethereum#736)

* miner: use env for tracing instead of block object (ethereum#728)

---------

Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>

* add max code init size check in txpool (ethereum#739)

* Revert "Event based pprof" and update version (ethereum#742)

* Revert "Event based pprof (ethereum#732)"

This reverts commit 22fa403.

* params: update version to 0.3.4-beta3

* packaging/templates: update bor version

* internal/ethapi :: Fix : newRPCTransactionFromBlockIndex

* fix: remove assignment for bor receipt

---------

Co-authored-by: SHIVAM SHARMA <shivam691999@gmail.com>
Co-authored-by: Pratik Patil <pratikspatil024@gmail.com>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>
Co-authored-by: Arpit Temani <temaniarpit27@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>

* Setting up bor to use hosted 18.04 runner as ubuntu provided 18.04 runner is end of life

---------

Co-authored-by: SHIVAM SHARMA <shivam691999@gmail.com>
Co-authored-by: Pratik Patil <pratikspatil024@gmail.com>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>
Co-authored-by: Arpit Temani <temaniarpit27@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>
Co-authored-by: Martin Holst Swende <martin@swende.se>
Co-authored-by: marcello33 <marcelloardizzone@hotmail.it>
Co-authored-by: Raneet Debnath <raneetdebnath10@gmail.com>
Co-authored-by: Raneet Debnath <35629432+Raneet10@users.noreply.github.com>
Co-authored-by: Alex <dalexwatts@gmail.com>
Co-authored-by: Daniel Jones <djones@polygon.technology>

* core: remove duplicate tests

* miner: use get validators by hash in tests

---------

Co-authored-by: Daniel Jones <djones@polygon.technology>
Co-authored-by: Will Button <wbutton@polygon.technology>
Co-authored-by: Will Button <will@willbutton.com>
Co-authored-by: Daniel Jones <105369507+djpolygon@users.noreply.github.com>
Co-authored-by: Pratik Patil <pratikspatil024@gmail.com>
Co-authored-by: Arpit Temani <temaniarpit27@gmail.com>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: SHIVAM SHARMA <shivam691999@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>
Co-authored-by: Martin Holst Swende <martin@swende.se>
Co-authored-by: marcello33 <marcelloardizzone@hotmail.it>
Co-authored-by: Raneet Debnath <raneetdebnath10@gmail.com>
Co-authored-by: Raneet Debnath <35629432+Raneet10@users.noreply.github.com>
Co-authored-by: Alex <dalexwatts@gmail.com>
maoueh pushed a commit to streamingfast/go-ethereum that referenced this issue Jun 9, 2023
* commit logs

* CI: test launch devnet without hardcoded sleep time (pos-534)

* CI: try using checked out bor path

* CI: fix missing ;

* CI: fix assignment operator

* CI: echo peers and block no.

* CI: cleanup

* minor chg: add new line

* dev: add: pos-944: snyk and govuln integration (ethereum#578)

* dev: add: pos-944 security ci and readme

* dev: add: pos-944 remove linters as this is included already in build ci

* dev: chg: pos-947 dependencies upgrade to solve snyk security issues

* dev: chg: update security-ci

* dev: chg: remove linter to allow replacements for security issues

* dev: add: pos-944 verify path when updating metrics from config

* dev: add: pos-944 fix linter

* dev: add: pos-944 add .snyk policy file / fix snyk code vulnerabilities

* dev: fix: pos-944 import common package / gitignore snyk dccache file

* dev: fix: pos-944 verify canonical path for crashers

* dev: fix: pos-944 linter

* dev: add: pos-976 add govuln check

* dev: add: pos-976 test upload with permissions

* dev: add: pos-976 remove duplicated upload

* dev: add: pos-976 report upload

* dev: add: pos-976 remove upload

* dev: fix: pos-944 fix govuln action

* dev: fix: pos-944 move govulncheck to security-ci

* dev: fix: pos-944 bump golvun action and golang versions

* dev: fix: pos-944 remove persmissions and fix conflicts

* dev: chg: restore err msg

* dev: chg: remove duplicated function

* dev: chg: sort import

* dev: chg: fix linter

* dev: add: use common VerifyCrasher function to avoid duplications / replace deprecated ioutils.ReadFile

* dev: fix: typo

* fix linters

* upgrade grpc version

* add ignore rule for net/http2

* Shivam/txpool tracing (ethereum#604)

* lock, unlock to rlock, runlock

* add : tracing Pending() and Locals()

* Log time spent in committing a tx during mining

* Remove data from logging

* Move log into case where a tx completes without error

* profile fillTransactions

* fix conflict

* bug fixes

* add logs

* txpool: add tracing in Pending()

* rearrange tracing

* add attributes

* fix

* fix

* log error in profiling

* update file mode and file path for profiling

* full profiling

* fix log

* fix log

* less wait

* fix

* fix

* logs

* worker: use block number for prof files

* initial

* txList add

* fix gas calculation

* fix

* green tests

* linters

* prettify

* allocate less

* no locks between pending and reorg

* no locks

* no locks on locals

* more tests

* linters

* less allocs

* comment

* optimize errors

* linters

* fix

* fix

* Linters

* linters

* linters

* simplify errors

* atomics for transactions

* fix

* optimize workers

* fix copy

* linters

* txpool tracing

* linters

* fix tracing

* duration in mcs

* locks

* metrics

* fix

* cache hit/miss

* less locks on evict

* remove once

* remove once

* switch off pprof

* fix data race

* fix data race

* add : sealed total/empty blocks metric gauge

* add : RPC debug_getTraceStack

* fix : RPC debug_getTraceStack

* fix : RPC debug_getTraceStack for all go-routines

* linters

* add data race test on txpool

* fix concurrency

* noleak

* increase batch size

* prettify

* tests

* baseFee mutex

* panic fix

* linters

* fix gas fee data race

* linters

* more transactions

* debug

* debug

* fix ticker

* fix test

* add cacheMu

* more tests

* fix test panic

* linters

* add statistics

* add statistics

* txitems data race

* fix tx list Has

* fix : lint

Co-authored-by: Arpit Temani <temaniarpit27@gmail.com>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>

* Reduce txArriveTimeout to 100ms

* init : remove exit on keystore err

* add : multiple keystore tolerance

* lint : fix linters

* chg : use standard logging

* chg : logging strings

* Added flags to run heimdall as a child process (ethereum#597)

* Added flags to run heimdall as a child process

* Fix: Lint

* Fix btcd package dependency for CI

* Update btcd package version

* Try removing ambigious importts

* dev: fix: lint fix for parallel tests

* remove delete for ambigious import

* Remove unwanted space

* go mod tidy

* try replace

* try replace

* use vendor

* rename vendor

* tidy

* vendor btcec

* clean up

* remove submodule

* remove submodule

* remove submodule

* remove submodule

* remove vendor & added replacer in test

* go mod tidy

* added replacer

* Update replacer

* Update replacer

* Merge branch 'develop' into run-heimdall-flags

* Skip TestGolangBindings

* Typo fix

* Remove unwanted changes

Co-authored-by: marcello33 <marcelloardizzone@hotmail.it>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>

* dev: chg: update PR template to include nodes audience check (ethereum#641)

* dev: chg: update PR template to include nodes audience check

* dev: chg: better description

* dev: chg: add entry to changes too

* sonarqube integration (ethereum#658)

* dev: add: sonarqube integration into security-ci

* dev: add: exclude java files from sonarqube analysis

* Merge branch 'qa' and 'master' into develop (ethereum#663)

* Adding in Mumbai/Mainnet precursor deb packaging for tests to use during upgrade(iterations to come)

* Added changes per discussion in PR, more changes may be necessary

* Adding prerelease true

* Disabling goreleaser

* Removing README swap file

* change bor_dir and add bor user for v0.3.0 release

* rollback bor user and use root

* metrics: handle equal to separated config flag (ethereum#596)

* metrics: handle  based config path

* internal/cli/server: add more context to logs

* use space separated flag and value in bor.service

* fixed static-nodes related buf (os independent) (ethereum#598)

* fixed static-nodes related buf (os independent)

* taking static-nodes as input if default not present

* Update default flags (ethereum#600)

* internal/cli/server: use geth's default for txpool.pricelimit and add comments

* builder/files: update config.toml for mainnet

* packaging/templates: update defaults for mainnet and mumbai

* internal/cli/server: skip overriding cache

* packaging/templates: update cache value for mainnet

* packaging/templates: update gcmode for archive mumbai node

* metrics: handle nil telemetry config (ethereum#601)

* resolve merge conflicts

* update go version in release.yml

* update goversion in makefile

* update Docker login for goreleaser-cross v1.19

* Cleanup for the packager to use git tag in the package profile naming. Added conditional check for directory structure, this is in prep for v0.3.1, as this will create a failure on upgrade path in package due to file exist

* added a toml configuration file with comments describing each flag (ethereum#607)

* added a toml configuration file with comments describing each flag

* internal/cli/server: update flag description

* docs/cli: update example config and description of flags

* docs: update new-cli docs

Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* Adding of 0.3.0 package changes, control file updates, postinst changes, and packager update

* added ancient datadir flag and toml field, need to decide on default value and update the conversion script

* updated toml files with ancient field

* Add support for new flags in new config.toml, which were present in old config.toml (ethereum#612)

* added HTTPTimeouts, and TrieTimeout flag in new tol, from old toml

* added RAW fields for these time.Duration flags

* updated the conversion script to support these extra 4 flags

* removed hcl and json config tests as we are only supporting toml config files

* updated toml files with cache.timeout field

* updated toml files with jsonrpc.timeouts field

* tests/bor: expect a call for latest checkpoint

* tests/bor: expect a call for latest checkpoint

* packaging/templates: update cache values for archive nodes

Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* remove unwanted code

* Fix docker publish authentication issue

In gorelease-cross 1.19+, dockerhub authentication will require docker
logion action followed by mounting docker config file. See
https://github.com/goreleaser/goreleaser-cross#github-actions.

* Revert "update Docker login for goreleaser-cross v1.19"

This reverts commit 4d19cf5.

* Bump version to stable

* Revert "Merge pull request ethereum#435 from maticnetwork/POS-553"

This reverts commit 657d262, reversing
changes made to 88dbfa1.

* revert change for release for go1.19

* Add default values to CLI helper and docs

This commit adds default values to CLI helper and docs. When the default value of a string flag, slice string flag, or map string flag is empty, its helper message won't show any default value.

* Add a summary of new CLI in docs

* Updating packager as binutils changed version so that apt-get installs current versions

* Add state pruning to new CLI

* Minor wording fix in prune state description

* Bumping control file versions

* Mainnet Delhi fork

* Set version to stable

* change delhi hardfork block number

* handle future chain import and skip peer drop (ethereum#650)

* handle future chain import and skip peer drop

* add block import metric

* params: bump version to v0.3.3-stable

* Bump bor version in control files for v0.3.3 mainnet release

Co-authored-by: Daniel Jones <djones@polygon.technology>
Co-authored-by: Will Button <wbutton@polygon.technology>
Co-authored-by: Will Button <will@willbutton.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>
Co-authored-by: Daniel Jones <105369507+djpolygon@users.noreply.github.com>
Co-authored-by: Pratik Patil <pratikspatil024@gmail.com>
Co-authored-by: Arpit Temani <temaniarpit27@gmail.com>
Co-authored-by: Jerry <jerrycgh@gmail.com>

* CI: use matic-cli master branch

* trigger ci

* internal/cli/server : fix : added triesInMemory in config (ethereum#677)

* update requirements in README (ethereum#681)

* consensus/bor : add : devFakeAuthor flag

* core,eth,internal/cli,internal/ethapi: add --rpc.allow-unprotected-txs flag to allow txs to get replayed (for shadow node)

* internal/cli: add `skiptrace` flag for profiling (ethereum#715)

* internal/cli: add skiptrace flag

* docs: update docs for skiptrace flag

* Added flag in Status to wait for backend, and fixed panic issue. (ethereum#708)

* checking if backend is available during status call, and added a flag to wait if backend is not available

* added test for status command (does not cover the whole code)

* Revert "Reduce txArriveTimeout to 100ms" (ethereum#707)

This reverts commit 243d231.

* consensus/bor : add : devFakeAuthor flag (ethereum#697)

* add check for empty lists in txpool (ethereum#704)

* add check

* linters

* dev: chg: POS-215 move sonarqube to own ci (ethereum#733)

* Added verbosity flag, supports log-level as well, but will remove that in future. (ethereum#722)

* changed log-level flag back to verbosity, and updated the conversion script

* supporting both verbosity and log-level, with a message to deprecat log-level

* converted verbosity to a int value

* Check if block is nil to prevent panic (ethereum#736)

* miner: use env for tracing instead of block object (ethereum#728)

* Add : mutex pprof profile (ethereum#731)

* add : mutex pprof profile

* rm : remove trace from default pprof profiles

* chg : commit tx logs from info to debug (ethereum#673)

* chg : commit tx logs from info to debug

* fix : minor changes

* chg : miner : commitTransactions-stats moved from info to debug

* lint : fix linters

* refactor logging

* miner : chg : UnauthorizedSignerError to debug

* lint : fix lint

* fix : log.Logger interface compatibility

---------

Co-authored-by: Evgeny Danienko <6655321@bk.ru>

* Add : commit details to bor version (ethereum#730)

* add : commit details to bor version

* fix : MAKEFILE

* undo : rm test-txpool-race

* rm : params/build_date

* rm : params/gitbranch and params/gitdate

* core,docs/cli,internal/cli/server: make docs

* builder,docs/cli,packaging: update toml files

* mardizzone/hotfix-snyk: remove vcs build when running snyk (ethereum#745)

* Feat : SetMaxPeers (ethereum#726)

* init : add admin.setMaxPeers and getMaxPeers

* lint : fix lint

* add : some comments

* Update wiki link (ethereum#762)

* Heimdall App implementation (ethereum#646)

* added support for miner.recommit flag (ethereum#743)

* interrupting commit experiment (ethereum#556)

* initial

* delete

* linters

* big benchmark

* benchmark big ints

* delay

* fix generate

* remove debug

* miner : chg : remove noempty check

* fix lints

* consensus/bor: handle unauthorized signer in consensus.Prepare (ethereum#651)

* fix : break loop fix

* lint : fix

* lint : more lint fix

* fix : skip TestEmptyWorkEthash and TestEmptyWorkClique

* add : metrics commitInterruptCounter

---------

Co-authored-by: Shivam Sharma <shivam691999@gmail.com>
Co-authored-by: Arpit Temani <temaniarpit27@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* internal/cli: added missing flags (ethereum#744)

* minor comment update

* added support for rpc.evmtimeout flag

* added support for vmdebug (EnablePreimageRecording) flag

* added support for jsonrpc.auth.(jwtsecret, addr, port, vhosts) flags

* added support for miner.recommit flag

* added support for gpo.maxheaderhistory and gpo.maxblockhistory flag

* Revert "added support for miner.recommit flag"

This reverts commit fcb722e4bf5bdda23d4c91da40ab95c9023a80c3.

* added pprof related flags (expect --pprof.cpuprofile - Write CPU profile to the given file)

* added support for --dev.gaslimit flag

* added support for --fdlimit flag

* added support for --netrestrict flag

* added support for --nodekey and --nodekeyhex flag

* added support for --vmodule, --log.json, --log.backtrace, and --log.debug flags

* fixed related lint errors

* fix lints from develop (few lints decided to appear from code that was untouched, weird)

* more weird lints from develop

* small precautionary fix

* small bug ;) fix in NetRestrict

* weird lints

* change vmdebug = true to vmdebug = false

* internal/ethapi: set rpc gas cap as default gas limit when creating access list

* add : testcase for CommitInterruptExperiment (ethereum#792)

* add : TestCommitInterruptExperimentBor

* lint : fix lint

* chg : add waitgroup

* dev: chg: continue on error when uploading snyk results to GH (ethereum#795)

* consensus/bor: revert handle unauthorized signer in consensus.Prepare

* Revert "consensus/bor: handle unauthorized signer in consensus.Prepare (ethereum#651)"

This reverts commit 9ce8c7de75a1b5021bb6f2b8086e813c8244b22c.

* eth/downloader/whitelist: skip future chain validation (ethereum#796)

* eth/downloader/whitelist: skip future chain validation

* eth/downloader/whitelist: fix tests for future chain import

* Setting up bor to use hosted 18.04 runner as ubuntu provided 18.04 runner is end of life

* Merge qa to develop (ethereum#814)

* Adding in Mumbai/Mainnet precursor deb packaging for tests to use during upgrade(iterations to come)

* Added changes per discussion in PR, more changes may be necessary

* Adding prerelease true

* Disabling goreleaser

* Removing README swap file

* change bor_dir and add bor user for v0.3.0 release

* rollback bor user and use root

* metrics: handle equal to separated config flag (ethereum#596)

* metrics: handle  based config path

* internal/cli/server: add more context to logs

* use space separated flag and value in bor.service

* fixed static-nodes related buf (os independent) (ethereum#598)

* fixed static-nodes related buf (os independent)

* taking static-nodes as input if default not present

* Update default flags (ethereum#600)

* internal/cli/server: use geth's default for txpool.pricelimit and add comments

* builder/files: update config.toml for mainnet

* packaging/templates: update defaults for mainnet and mumbai

* internal/cli/server: skip overriding cache

* packaging/templates: update cache value for mainnet

* packaging/templates: update gcmode for archive mumbai node

* metrics: handle nil telemetry config (ethereum#601)

* resolve merge conflicts

* update go version in release.yml

* update goversion in makefile

* update Docker login for goreleaser-cross v1.19

* Cleanup for the packager to use git tag in the package profile naming. Added conditional check for directory structure, this is in prep for v0.3.1, as this will create a failure on upgrade path in package due to file exist

* added a toml configuration file with comments describing each flag (ethereum#607)

* added a toml configuration file with comments describing each flag

* internal/cli/server: update flag description

* docs/cli: update example config and description of flags

* docs: update new-cli docs

Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* Adding of 0.3.0 package changes, control file updates, postinst changes, and packager update

* added ancient datadir flag and toml field, need to decide on default value and update the conversion script

* updated toml files with ancient field

* Add support for new flags in new config.toml, which were present in old config.toml (ethereum#612)

* added HTTPTimeouts, and TrieTimeout flag in new tol, from old toml

* added RAW fields for these time.Duration flags

* updated the conversion script to support these extra 4 flags

* removed hcl and json config tests as we are only supporting toml config files

* updated toml files with cache.timeout field

* updated toml files with jsonrpc.timeouts field

* tests/bor: expect a call for latest checkpoint

* tests/bor: expect a call for latest checkpoint

* packaging/templates: update cache values for archive nodes

Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* remove unwanted code

* Fix docker publish authentication issue

In gorelease-cross 1.19+, dockerhub authentication will require docker
logion action followed by mounting docker config file. See
https://github.com/goreleaser/goreleaser-cross#github-actions.

* Revert "update Docker login for goreleaser-cross v1.19"

This reverts commit 4d19cf5.

* Bump version to stable

* Revert "Merge pull request ethereum#435 from maticnetwork/POS-553"

This reverts commit 657d262, reversing
changes made to 88dbfa1.

* revert change for release for go1.19

* Add default values to CLI helper and docs

This commit adds default values to CLI helper and docs. When the default value of a string flag, slice string flag, or map string flag is empty, its helper message won't show any default value.

* Add a summary of new CLI in docs

* Updating packager as binutils changed version so that apt-get installs current versions

* Add state pruning to new CLI

* Minor wording fix in prune state description

* Bumping control file versions

* Mainnet Delhi fork

* Set version to stable

* change delhi hardfork block number

* handle future chain import and skip peer drop (ethereum#650)

* handle future chain import and skip peer drop

* add block import metric

* params: bump version to v0.3.3-stable

* Bump bor version in control files for v0.3.3 mainnet release

* Added checks to RPC requests and introduced new flags to customise the parameters (ethereum#657)

* added a check to reject rpc requests with batch size > the one set using a newly added flag (rpcbatchlimit)

* added a check to reject rpc requests whose result size > the one set using a newly added flag (rpcreturndatalimit)

* updated the config files and docs

* chg : trieTimeout from 60 to 10 mins (ethereum#692)

* chg : trieTimeout from 60 to 10 mins

* chg : cache.timout to 10m from 1h in configs

* internal/cli/server : fix : added triesInMemory in config (ethereum#691)

* changed version from 0.3.0 to 0.3.4-beta (ethereum#693)

* fix nil state-sync issue, increase grpc limit (ethereum#695)

* Increase grpc message size limit in pprof

* consensus/bor/bor.go : stateSyncs init fixed [Fix ethereum#686]

* eth/filters: handle nil state-sync before notify

* eth/filters: update check

Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>

* core, tests/bor: add more tests for state-sync validation (ethereum#710)

* core: add get state sync function for tests

* tests/bor: add validation for state sync events post consensus

* Arpit/temp bor sync (ethereum#701)

* Increase grpc message size limit in pprof

* ReadBorReceipts improvements

* use internal function

* fix tests

* fetch geth upstread for ReadBorReceiptRLP

* Only query bor receipt when the query index is equal to # tx in block body

This change reduces the frequency of calling ReadBorReceipt and
ReadBorTransaction, which are CPU and db intensive.

* Revert "fetch geth upstread for ReadBorReceiptRLP"

This reverts commit 2e838a6b1313d26674f3a8df4b044e35dcbf35a0.

* Restore ReadBorReceiptRLP

* fix bor receipts

* remove unused

* fix lints

---------

Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>

* Revert "chg : trieTimeout from 60 to 10 mins (ethereum#692)" (ethereum#720)

This reverts commit 241843c.

* Arpit/add execution pool 2 (ethereum#719)

* initial

* linters

* linters

* remove timeout

* update pool

* change pool size function

* check nil

* check nil

* fix tests

* Use execution pool from server in all handlers

* simplify things

* test fix

* add support for cli, config

* add to cli and config

* merge base branch

* debug statements

* fix bug

* atomic pointer timeout

* add apis

* update workerpool

* fix issues

* change params

* fix issues

* fix ipc issue

* remove execution pool from IPC

* revert

* fix tests

* mutex

* refactor flag and value names

* ordering fix

* refactor flag and value names

* update default ep size to 40

* fix bor start issues

* revert file changes

* debug statements

* fix bug

* update workerpool

* atomic pointer timeout

* add apis

* Merge branch 'add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* fix issues

* change params

* fix issues

* fix ipc issue

* remove execution pool from IPC

* revert

* merge base branch

* Merge branch 'add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* mutex

* fix tests

* Merge branch 'arpit/add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* Change default size of execution pool to 40

* refactor flag and value names

* fix merge conflicts

* ordering fix

* refactor flag and value names

* update default ep size to 40

* fix bor start issues

* revert file changes

* fix linters

* fix go.mod

* change sec to ms

* change default value for ep timeout

* fix node api calls

* comment setter for ep timeout

---------

Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* version change (ethereum#721)

* Event based pprof (ethereum#732)

* feature

* Save pprof to /tmp

---------

Co-authored-by: Jerry <jerrycgh@gmail.com>

* Cherry-pick changes from develop (ethereum#738)

* Check if block is nil to prevent panic (ethereum#736)

* miner: use env for tracing instead of block object (ethereum#728)

---------

Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>

* add max code init size check in txpool (ethereum#739)

* Revert "Event based pprof" and update version (ethereum#742)

* Revert "Event based pprof (ethereum#732)"

This reverts commit 22fa403.

* params: update version to 0.3.4-beta3

* packaging/templates: update bor version

* internal/ethapi :: Fix : newRPCTransactionFromBlockIndex

* Merge master to qa (ethereum#813)

* Merge qa to master (ethereum#750)

* Added checks to RPC requests and introduced new flags to customise the parameters (ethereum#657)

* added a check to reject rpc requests with batch size > the one set using a newly added flag (rpcbatchlimit)

* added a check to reject rpc requests whose result size > the one set using a newly added flag (rpcreturndatalimit)

* updated the config files and docs

* chg : trieTimeout from 60 to 10 mins (ethereum#692)

* chg : trieTimeout from 60 to 10 mins

* chg : cache.timout to 10m from 1h in configs

* internal/cli/server : fix : added triesInMemory in config (ethereum#691)

* changed version from 0.3.0 to 0.3.4-beta (ethereum#693)

* fix nil state-sync issue, increase grpc limit (ethereum#695)

* Increase grpc message size limit in pprof

* consensus/bor/bor.go : stateSyncs init fixed [Fix ethereum#686]

* eth/filters: handle nil state-sync before notify

* eth/filters: update check

Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>

* core, tests/bor: add more tests for state-sync validation (ethereum#710)

* core: add get state sync function for tests

* tests/bor: add validation for state sync events post consensus

* Arpit/temp bor sync (ethereum#701)

* Increase grpc message size limit in pprof

* ReadBorReceipts improvements

* use internal function

* fix tests

* fetch geth upstread for ReadBorReceiptRLP

* Only query bor receipt when the query index is equal to # tx in block body

This change reduces the frequency of calling ReadBorReceipt and
ReadBorTransaction, which are CPU and db intensive.

* Revert "fetch geth upstread for ReadBorReceiptRLP"

This reverts commit 2e838a6b1313d26674f3a8df4b044e35dcbf35a0.

* Restore ReadBorReceiptRLP

* fix bor receipts

* remove unused

* fix lints

---------

Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>

* Revert "chg : trieTimeout from 60 to 10 mins (ethereum#692)" (ethereum#720)

This reverts commit 241843c.

* Arpit/add execution pool 2 (ethereum#719)

* initial

* linters

* linters

* remove timeout

* update pool

* change pool size function

* check nil

* check nil

* fix tests

* Use execution pool from server in all handlers

* simplify things

* test fix

* add support for cli, config

* add to cli and config

* merge base branch

* debug statements

* fix bug

* atomic pointer timeout

* add apis

* update workerpool

* fix issues

* change params

* fix issues

* fix ipc issue

* remove execution pool from IPC

* revert

* fix tests

* mutex

* refactor flag and value names

* ordering fix

* refactor flag and value names

* update default ep size to 40

* fix bor start issues

* revert file changes

* debug statements

* fix bug

* update workerpool

* atomic pointer timeout

* add apis

* Merge branch 'add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* fix issues

* change params

* fix issues

* fix ipc issue

* remove execution pool from IPC

* revert

* merge base branch

* Merge branch 'add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* mutex

* fix tests

* Merge branch 'arpit/add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* Change default size of execution pool to 40

* refactor flag and value names

* fix merge conflicts

* ordering fix

* refactor flag and value names

* update default ep size to 40

* fix bor start issues

* revert file changes

* fix linters

* fix go.mod

* change sec to ms

* change default value for ep timeout

* fix node api calls

* comment setter for ep timeout

---------

Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* version change (ethereum#721)

* Event based pprof (ethereum#732)

* feature

* Save pprof to /tmp

---------

Co-authored-by: Jerry <jerrycgh@gmail.com>

* Cherry-pick changes from develop (ethereum#738)

* Check if block is nil to prevent panic (ethereum#736)

* miner: use env for tracing instead of block object (ethereum#728)

---------

Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>

* add max code init size check in txpool (ethereum#739)

* Revert "Event based pprof" and update version (ethereum#742)

* Revert "Event based pprof (ethereum#732)"

This reverts commit 22fa403.

* params: update version to 0.3.4-beta3

* packaging/templates: update bor version

* params, packaging/templates: update bor version

---------

Co-authored-by: SHIVAM SHARMA <shivam691999@gmail.com>
Co-authored-by: Pratik Patil <pratikspatil024@gmail.com>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>
Co-authored-by: Arpit Temani <temaniarpit27@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>

* core, miner: add sub-spans for tracing (ethereum#753)

* core, miner: add sub-spans for tracing

* fix linters

* core: add logs for debugging

* core: add more logs to print tdd while reorg

* fix linters

* core: minor fix

* core: remove debug logs

* core: use different span for write block and set head

* core: use internal context for sending traces (ethereum#755)

* core: add : impossible reorg block dump (ethereum#754)

* add : impossible reorg block dump

* chg : 3 seperate files for impossoble reorg dump

* add : use exportBlocks method and RLP blocks before writing

* chg : small changes

* bump : go version from 1.19 to 1.20.1 (ethereum#761)

* Revert "bump : go version from 1.19 to 1.20.1 (ethereum#761)"

This reverts commit 4561012.

* core/vm: use optimized bigint (ethereum#26021)

* Add holiman/big

* Fix linter

* Bump version to v0.3.5

* fix lints from develop (few lints decided to appear from code that was untouched, weird)

* upgrade crypto lib version (ethereum#770)

* bump dep : github.com/Masterminds/goutils to v1.1.1 (ethereum#769)

* mardizzone/pos-1313: bump crypto dependency (ethereum#772)

* dev: chg: bumd net dependency

* dev: chg: bump crypto dependency

* dev: chg: bump crypto dependency

* bump dep : golang.org/x/net to v0.8.0 (ethereum#771)

* Verify validator set against local contract on receiving an end-of-sprint block (ethereum#768)

* Verify validator set against local contract on receiving an end-of-sprint block

* Fix tests

* Respect error returned by ParseValidators

* Keep going back until a parent block presents

* core/txpool: implement DoS defenses from geth (ethereum#778)

* Hotfixes and deps bump (ethereum#776)

* dev: chg: bump deps

* internal/cli/server, rpc: lower down http readtimeout to 10s

* dev: chg: get p2p adapter

* dev: chg: lower down jsonrpc readtimeout to 10s

* cherry-pick txpool optimisation changes

* add check for empty lists in txpool (ethereum#704)

* add check

* linters

* core, miner: add empty instrumentation name for tracing

---------

Co-authored-by: Raneet Debnath <raneetdebnath10@gmail.com>
Co-authored-by: SHIVAM SHARMA <shivam691999@gmail.com>
Co-authored-by: Evgeny Danilenko <6655321@bk.ru>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* packaging,params: bump to v0.3.6 (ethereum#782)

* v0.3.6 fix (ethereum#787)

* Fix get validator set in header verifier

* chg : commit tx logs from info to debug (ethereum#673)

* chg : commit tx logs from info to debug

* fix : minor changes

* chg : miner : commitTransactions-stats moved from info to debug

* lint : fix linters

* refactor logging

* miner : chg : UnauthorizedSignerError to debug

* lint : fix lint

* fix : log.Logger interface compatibility

---------

Co-authored-by: Evgeny Danienko <6655321@bk.ru>

* Remove unnecessary sorting of valset from header in verification

* dev: chg: version bump

---------

Co-authored-by: SHIVAM SHARMA <shivam691999@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: marcello33 <marcelloardizzone@hotmail.it>

* core: improve locks in txpool (ethereum#807)

* added a write lock to the txs.filter method and a read lock to the txs.reheap method - both of which are called by Filter during reorg adjustments to txpool

* txpool reorg locks

* more locks

* locks

* linters

* params, packaging: update version for v0.3.8-beta release

* core: add logs in reheap

---------

Co-authored-by: Alex <dalexwatts@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>

* Merge qa to master (ethereum#808)

* Added checks to RPC requests and introduced new flags to customise the parameters (ethereum#657)

* added a check to reject rpc requests with batch size > the one set using a newly added flag (rpcbatchlimit)

* added a check to reject rpc requests whose result size > the one set using a newly added flag (rpcreturndatalimit)

* updated the config files and docs

* chg : trieTimeout from 60 to 10 mins (ethereum#692)

* chg : trieTimeout from 60 to 10 mins

* chg : cache.timout to 10m from 1h in configs

* internal/cli/server : fix : added triesInMemory in config (ethereum#691)

* changed version from 0.3.0 to 0.3.4-beta (ethereum#693)

* fix nil state-sync issue, increase grpc limit (ethereum#695)

* Increase grpc message size limit in pprof

* consensus/bor/bor.go : stateSyncs init fixed [Fix ethereum#686]

* eth/filters: handle nil state-sync before notify

* eth/filters: update check

Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>

* core, tests/bor: add more tests for state-sync validation (ethereum#710)

* core: add get state sync function for tests

* tests/bor: add validation for state sync events post consensus

* Arpit/temp bor sync (ethereum#701)

* Increase grpc message size limit in pprof

* ReadBorReceipts improvements

* use internal function

* fix tests

* fetch geth upstread for ReadBorReceiptRLP

* Only query bor receipt when the query index is equal to # tx in block body

This change reduces the frequency of calling ReadBorReceipt and
ReadBorTransaction, which are CPU and db intensive.

* Revert "fetch geth upstread for ReadBorReceiptRLP"

This reverts commit 2e838a6b1313d26674f3a8df4b044e35dcbf35a0.

* Restore ReadBorReceiptRLP

* fix bor receipts

* remove unused

* fix lints

---------

Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>

* Revert "chg : trieTimeout from 60 to 10 mins (ethereum#692)" (ethereum#720)

This reverts commit 241843c.

* Arpit/add execution pool 2 (ethereum#719)

* initial

* linters

* linters

* remove timeout

* update pool

* change pool size function

* check nil

* check nil

* fix tests

* Use execution pool from server in all handlers

* simplify things

* test fix

* add support for cli, config

* add to cli and config

* merge base branch

* debug statements

* fix bug

* atomic pointer timeout

* add apis

* update workerpool

* fix issues

* change params

* fix issues

* fix ipc issue

* remove execution pool from IPC

* revert

* fix tests

* mutex

* refactor flag and value names

* ordering fix

* refactor flag and value names

* update default ep size to 40

* fix bor start issues

* revert file changes

* debug statements

* fix bug

* update workerpool

* atomic pointer timeout

* add apis

* Merge branch 'add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* fix issues

* change params

* fix issues

* fix ipc issue

* remove execution pool from IPC

* revert

* merge base branch

* Merge branch 'add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* mutex

* fix tests

* Merge branch 'arpit/add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* Change default size of execution pool to 40

* refactor flag and value names

* fix merge conflicts

* ordering fix

* refactor flag and value names

* update default ep size to 40

* fix bor start issues

* revert file changes

* fix linters

* fix go.mod

* change sec to ms

* change default value for ep timeout

* fix node api calls

* comment setter for ep timeout

---------

Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* version change (ethereum#721)

* Event based pprof (ethereum#732)

* feature

* Save pprof to /tmp

---------

Co-authored-by: Jerry <jerrycgh@gmail.com>

* Cherry-pick changes from develop (ethereum#738)

* Check if block is nil to prevent panic (ethereum#736)

* miner: use env for tracing instead of block object (ethereum#728)

---------

Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>

* add max code init size check in txpool (ethereum#739)

* Revert "Event based pprof" and update version (ethereum#742)

* Revert "Event based pprof (ethereum#732)"

This reverts commit 22fa403.

* params: update version to 0.3.4-beta3

* packaging/templates: update bor version

* internal/ethapi :: Fix : newRPCTransactionFromBlockIndex

* fix: remove assignment for bor receipt

---------

Co-authored-by: SHIVAM SHARMA <shivam691999@gmail.com>
Co-authored-by: Pratik Patil <pratikspatil024@gmail.com>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>
Co-authored-by: Arpit Temani <temaniarpit27@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>

* Setting up bor to use hosted 18.04 runner as ubuntu provided 18.04 runner is end of life

---------

Co-authored-by: SHIVAM SHARMA <shivam691999@gmail.com>
Co-authored-by: Pratik Patil <pratikspatil024@gmail.com>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>
Co-authored-by: Arpit Temani <temaniarpit27@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>
Co-authored-by: Martin Holst Swende <martin@swende.se>
Co-authored-by: marcello33 <marcelloardizzone@hotmail.it>
Co-authored-by: Raneet Debnath <raneetdebnath10@gmail.com>
Co-authored-by: Raneet Debnath <35629432+Raneet10@users.noreply.github.com>
Co-authored-by: Alex <dalexwatts@gmail.com>
Co-authored-by: Daniel Jones <djones@polygon.technology>

* core: remove duplicate tests

* miner: use get validators by hash in tests

---------

Co-authored-by: Daniel Jones <djones@polygon.technology>
Co-authored-by: Will Button <wbutton@polygon.technology>
Co-authored-by: Will Button <will@willbutton.com>
Co-authored-by: Daniel Jones <105369507+djpolygon@users.noreply.github.com>
Co-authored-by: Pratik Patil <pratikspatil024@gmail.com>
Co-authored-by: Arpit Temani <temaniarpit27@gmail.com>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: SHIVAM SHARMA <shivam691999@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>
Co-authored-by: Martin Holst Swende <martin@swende.se>
Co-authored-by: marcello33 <marcelloardizzone@hotmail.it>
Co-authored-by: Raneet Debnath <raneetdebnath10@gmail.com>
Co-authored-by: Raneet Debnath <35629432+Raneet10@users.noreply.github.com>
Co-authored-by: Alex <dalexwatts@gmail.com>

---------

Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Raneet Debnath <raneetdebnath10@gmail.com>
Co-authored-by: Arpit Temani <temaniarpit27@gmail.com>
Co-authored-by: SHIVAM SHARMA <shivam691999@gmail.com>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>
Co-authored-by: builder90210 <anonbuilder90210@gmail.com>
Co-authored-by: Krishna Upadhyaya <KRISHNAU1604@GMAIL.COM>
Co-authored-by: Daniel Jones <djones@polygon.technology>
Co-authored-by: Will Button <wbutton@polygon.technology>
Co-authored-by: Will Button <will@willbutton.com>
Co-authored-by: Daniel Jones <105369507+djpolygon@users.noreply.github.com>
Co-authored-by: Pratik Patil <pratikspatil024@gmail.com>
Co-authored-by: Raneet Debnath <35629432+Raneet10@users.noreply.github.com>
Co-authored-by: Didi <github@d10r.net>
Co-authored-by: ephess <e+github@ephess.nz>
Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>
Co-authored-by: Martin Holst Swende <martin@swende.se>
Co-authored-by: Alex <dalexwatts@gmail.com>
maoueh pushed a commit to streamingfast/go-ethereum that referenced this issue Jun 9, 2023
* Adding in Mumbai/Mainnet precursor deb packaging for tests to use during upgrade(iterations to come)

* Added changes per discussion in PR, more changes may be necessary

* Adding prerelease true

* Disabling goreleaser

* Removing README swap file

* change bor_dir and add bor user for v0.3.0 release

* rollback bor user and use root

* metrics: handle equal to separated config flag (#596)

* metrics: handle  based config path

* internal/cli/server: add more context to logs

* use space separated flag and value in bor.service

* fixed static-nodes related buf (os independent) (#598)

* fixed static-nodes related buf (os independent)

* taking static-nodes as input if default not present

* Update default flags (#600)

* internal/cli/server: use geth's default for txpool.pricelimit and add comments

* builder/files: update config.toml for mainnet

* packaging/templates: update defaults for mainnet and mumbai

* internal/cli/server: skip overriding cache

* packaging/templates: update cache value for mainnet

* packaging/templates: update gcmode for archive mumbai node

* metrics: handle nil telemetry config (#601)

* resolve merge conflicts

* update go version in release.yml

* update goversion in makefile

* update Docker login for goreleaser-cross v1.19

* Cleanup for the packager to use git tag in the package profile naming. Added conditional check for directory structure, this is in prep for v0.3.1, as this will create a failure on upgrade path in package due to file exist

* added a toml configuration file with comments describing each flag (#607)

* added a toml configuration file with comments describing each flag

* internal/cli/server: update flag description

* docs/cli: update example config and description of flags

* docs: update new-cli docs

Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* Adding of 0.3.0 package changes, control file updates, postinst changes, and packager update

* added ancient datadir flag and toml field, need to decide on default value and update the conversion script

* updated toml files with ancient field

* Add support for new flags in new config.toml, which were present in old config.toml (#612)

* added HTTPTimeouts, and TrieTimeout flag in new tol, from old toml

* added RAW fields for these time.Duration flags

* updated the conversion script to support these extra 4 flags

* removed hcl and json config tests as we are only supporting toml config files

* updated toml files with cache.timeout field

* updated toml files with jsonrpc.timeouts field

* tests/bor: expect a call for latest checkpoint

* tests/bor: expect a call for latest checkpoint

* packaging/templates: update cache values for archive nodes

Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* remove unwanted code

* Fix docker publish authentication issue

In gorelease-cross 1.19+, dockerhub authentication will require docker
logion action followed by mounting docker config file. See
https://github.com/goreleaser/goreleaser-cross#github-actions.

* Revert "update Docker login for goreleaser-cross v1.19"

This reverts commit 4d19cf5342a439d98cca21b03c63a0bc075769cf.

* Bump version to stable

* Revert "Merge pull request #435 from maticnetwork/POS-553"

This reverts commit 657d262defc9c94e9513b3d45230492d8b20eac7, reversing
changes made to 88dbfa1c13c15464d3c1a3085a9f12d0ffb9b218.

* revert change for release for go1.19

* Add default values to CLI helper and docs

This commit adds default values to CLI helper and docs. When the default value of a string flag, slice string flag, or map string flag is empty, its helper message won't show any default value.

* Add a summary of new CLI in docs

* Updating packager as binutils changed version so that apt-get installs current versions

* Add state pruning to new CLI

* Minor wording fix in prune state description

* Bumping control file versions

* Mainnet Delhi fork

* Set version to stable

* change delhi hardfork block number

* handle future chain import and skip peer drop (#650)

* handle future chain import and skip peer drop

* add block import metric

* params: bump version to v0.3.3-stable

* Bump bor version in control files for v0.3.3 mainnet release

* Added checks to RPC requests and introduced new flags to customise the parameters (#657)

* added a check to reject rpc requests with batch size > the one set using a newly added flag (rpcbatchlimit)

* added a check to reject rpc requests whose result size > the one set using a newly added flag (rpcreturndatalimit)

* updated the config files and docs

* chg : trieTimeout from 60 to 10 mins (#692)

* chg : trieTimeout from 60 to 10 mins

* chg : cache.timout to 10m from 1h in configs

* internal/cli/server : fix : added triesInMemory in config (#691)

* changed version from 0.3.0 to 0.3.4-beta (#693)

* fix nil state-sync issue, increase grpc limit (#695)

* Increase grpc message size limit in pprof

* consensus/bor/bor.go : stateSyncs init fixed [Fix #686]

* eth/filters: handle nil state-sync before notify

* eth/filters: update check

Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>

* core, tests/bor: add more tests for state-sync validation (#710)

* core: add get state sync function for tests

* tests/bor: add validation for state sync events post consensus

* Arpit/temp bor sync (#701)

* Increase grpc message size limit in pprof

* ReadBorReceipts improvements

* use internal function

* fix tests

* fetch geth upstread for ReadBorReceiptRLP

* Only query bor receipt when the query index is equal to # tx in block body

This change reduces the frequency of calling ReadBorReceipt and
ReadBorTransaction, which are CPU and db intensive.

* Revert "fetch geth upstread for ReadBorReceiptRLP"

This reverts commit 2e838a6b1313d26674f3a8df4b044e35dcbf35a0.

* Restore ReadBorReceiptRLP

* fix bor receipts

* remove unused

* fix lints

---------

Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>

* Revert "chg : trieTimeout from 60 to 10 mins (#692)" (#720)

This reverts commit 241843c7e7bb18e64d2e157fd6fbbd665f6ce9d9.

* Arpit/add execution pool 2 (#719)

* initial

* linters

* linters

* remove timeout

* update pool

* change pool size function

* check nil

* check nil

* fix tests

* Use execution pool from server in all handlers

* simplify things

* test fix

* add support for cli, config

* add to cli and config

* merge base branch

* debug statements

* fix bug

* atomic pointer timeout

* add apis

* update workerpool

* fix issues

* change params

* fix issues

* fix ipc issue

* remove execution pool from IPC

* revert

* fix tests

* mutex

* refactor flag and value names

* ordering fix

* refactor flag and value names

* update default ep size to 40

* fix bor start issues

* revert file changes

* debug statements

* fix bug

* update workerpool

* atomic pointer timeout

* add apis

* Merge branch 'add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* fix issues

* change params

* fix issues

* fix ipc issue

* remove execution pool from IPC

* revert

* merge base branch

* Merge branch 'add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* mutex

* fix tests

* Merge branch 'arpit/add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* Change default size of execution pool to 40

* refactor flag and value names

* fix merge conflicts

* ordering fix

* refactor flag and value names

* update default ep size to 40

* fix bor start issues

* revert file changes

* fix linters

* fix go.mod

* change sec to ms

* change default value for ep timeout

* fix node api calls

* comment setter for ep timeout

---------

Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* version change (#721)

* Event based pprof (#732)

* feature

* Save pprof to /tmp

---------

Co-authored-by: Jerry <jerrycgh@gmail.com>

* Cherry-pick changes from develop (#738)

* Check if block is nil to prevent panic (#736)

* miner: use env for tracing instead of block object (#728)

---------

Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>

* add max code init size check in txpool (#739)

* Revert "Event based pprof" and update version (#742)

* Revert "Event based pprof (#732)"

This reverts commit 22fa4033e8fabb51c44e8d2a8c6bb695a6e9285e.

* params: update version to 0.3.4-beta3

* packaging/templates: update bor version

* internal/ethapi :: Fix : newRPCTransactionFromBlockIndex

* Merge master to qa (#813)

* Merge qa to master (#750)

* Added checks to RPC requests and introduced new flags to customise the parameters (#657)

* added a check to reject rpc requests with batch size > the one set using a newly added flag (rpcbatchlimit)

* added a check to reject rpc requests whose result size > the one set using a newly added flag (rpcreturndatalimit)

* updated the config files and docs

* chg : trieTimeout from 60 to 10 mins (#692)

* chg : trieTimeout from 60 to 10 mins

* chg : cache.timout to 10m from 1h in configs

* internal/cli/server : fix : added triesInMemory in config (#691)

* changed version from 0.3.0 to 0.3.4-beta (#693)

* fix nil state-sync issue, increase grpc limit (#695)

* Increase grpc message size limit in pprof

* consensus/bor/bor.go : stateSyncs init fixed [Fix #686]

* eth/filters: handle nil state-sync before notify

* eth/filters: update check

Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>

* core, tests/bor: add more tests for state-sync validation (#710)

* core: add get state sync function for tests

* tests/bor: add validation for state sync events post consensus

* Arpit/temp bor sync (#701)

* Increase grpc message size limit in pprof

* ReadBorReceipts improvements

* use internal function

* fix tests

* fetch geth upstread for ReadBorReceiptRLP

* Only query bor receipt when the query index is equal to # tx in block body

This change reduces the frequency of calling ReadBorReceipt and
ReadBorTransaction, which are CPU and db intensive.

* Revert "fetch geth upstread for ReadBorReceiptRLP"

This reverts commit 2e838a6b1313d26674f3a8df4b044e35dcbf35a0.

* Restore ReadBorReceiptRLP

* fix bor receipts

* remove unused

* fix lints

---------

Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>

* Revert "chg : trieTimeout from 60 to 10 mins (#692)" (#720)

This reverts commit 241843c7e7bb18e64d2e157fd6fbbd665f6ce9d9.

* Arpit/add execution pool 2 (#719)

* initial

* linters

* linters

* remove timeout

* update pool

* change pool size function

* check nil

* check nil

* fix tests

* Use execution pool from server in all handlers

* simplify things

* test fix

* add support for cli, config

* add to cli and config

* merge base branch

* debug statements

* fix bug

* atomic pointer timeout

* add apis

* update workerpool

* fix issues

* change params

* fix issues

* fix ipc issue

* remove execution pool from IPC

* revert

* fix tests

* mutex

* refactor flag and value names

* ordering fix

* refactor flag and value names

* update default ep size to 40

* fix bor start issues

* revert file changes

* debug statements

* fix bug

* update workerpool

* atomic pointer timeout

* add apis

* Merge branch 'add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* fix issues

* change params

* fix issues

* fix ipc issue

* remove execution pool from IPC

* revert

* merge base branch

* Merge branch 'add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* mutex

* fix tests

* Merge branch 'arpit/add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* Change default size of execution pool to 40

* refactor flag and value names

* fix merge conflicts

* ordering fix

* refactor flag and value names

* update default ep size to 40

* fix bor start issues

* revert file changes

* fix linters

* fix go.mod

* change sec to ms

* change default value for ep timeout

* fix node api calls

* comment setter for ep timeout

---------

Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* version change (#721)

* Event based pprof (#732)

* feature

* Save pprof to /tmp

---------

Co-authored-by: Jerry <jerrycgh@gmail.com>

* Cherry-pick changes from develop (#738)

* Check if block is nil to prevent panic (#736)

* miner: use env for tracing instead of block object (#728)

---------

Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>

* add max code init size check in txpool (#739)

* Revert "Event based pprof" and update version (#742)

* Revert "Event based pprof (#732)"

This reverts commit 22fa4033e8fabb51c44e8d2a8c6bb695a6e9285e.

* params: update version to 0.3.4-beta3

* packaging/templates: update bor version

* params, packaging/templates: update bor version

---------

Co-authored-by: SHIVAM SHARMA <shivam691999@gmail.com>
Co-authored-by: Pratik Patil <pratikspatil024@gmail.com>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>
Co-authored-by: Arpit Temani <temaniarpit27@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>

* core, miner: add sub-spans for tracing (#753)

* core, miner: add sub-spans for tracing

* fix linters

* core: add logs for debugging

* core: add more logs to print tdd while reorg

* fix linters

* core: minor fix

* core: remove debug logs

* core: use different span for write block and set head

* core: use internal context for sending traces (#755)

* core: add : impossible reorg block dump (#754)

* add : impossible reorg block dump

* chg : 3 seperate files for impossoble reorg dump

* add : use exportBlocks method and RLP blocks before writing

* chg : small changes

* bump : go version from 1.19 to 1.20.1 (#761)

* Revert "bump : go version from 1.19 to 1.20.1 (#761)"

This reverts commit 4561012af9a31d20c2715ce26e4b39ca93420b8b.

* core/vm: use optimized bigint (#26021)

* Add holiman/big

* Fix linter

* Bump version to v0.3.5

* fix lints from develop (few lints decided to appear from code that was untouched, weird)

* upgrade crypto lib version (#770)

* bump dep : github.com/Masterminds/goutils to v1.1.1 (#769)

* mardizzone/pos-1313: bump crypto dependency (#772)

* dev: chg: bumd net dependency

* dev: chg: bump crypto dependency

* dev: chg: bump crypto dependency

* bump dep : golang.org/x/net to v0.8.0 (#771)

* Verify validator set against local contract on receiving an end-of-sprint block (#768)

* Verify validator set against local contract on receiving an end-of-sprint block

* Fix tests

* Respect error returned by ParseValidators

* Keep going back until a parent block presents

* core/txpool: implement DoS defenses from geth (#778)

* Hotfixes and deps bump (#776)

* dev: chg: bump deps

* internal/cli/server, rpc: lower down http readtimeout to 10s

* dev: chg: get p2p adapter

* dev: chg: lower down jsonrpc readtimeout to 10s

* cherry-pick txpool optimisation changes

* add check for empty lists in txpool (#704)

* add check

* linters

* core, miner: add empty instrumentation name for tracing

---------

Co-authored-by: Raneet Debnath <raneetdebnath10@gmail.com>
Co-authored-by: SHIVAM SHARMA <shivam691999@gmail.com>
Co-authored-by: Evgeny Danilenko <6655321@bk.ru>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* packaging,params: bump to v0.3.6 (#782)

* v0.3.6 fix (#787)

* Fix get validator set in header verifier

* chg : commit tx logs from info to debug (#673)

* chg : commit tx logs from info to debug

* fix : minor changes

* chg : miner : commitTransactions-stats moved from info to debug

* lint : fix linters

* refactor logging

* miner : chg : UnauthorizedSignerError to debug

* lint : fix lint

* fix : log.Logger interface compatibility

---------

Co-authored-by: Evgeny Danienko <6655321@bk.ru>

* Remove unnecessary sorting of valset from header in verification

* dev: chg: version bump

---------

Co-authored-by: SHIVAM SHARMA <shivam691999@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: marcello33 <marcelloardizzone@hotmail.it>

* core: improve locks in txpool (#807)

* added a write lock to the txs.filter method and a read lock to the txs.reheap method - both of which are called by Filter during reorg adjustments to txpool

* txpool reorg locks

* more locks

* locks

* linters

* params, packaging: update version for v0.3.8-beta release

* core: add logs in reheap

---------

Co-authored-by: Alex <dalexwatts@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>

* Merge qa to master (#808)

* Added checks to RPC requests and introduced new flags to customise the parameters (#657)

* added a check to reject rpc requests with batch size > the one set using a newly added flag (rpcbatchlimit)

* added a check to reject rpc requests whose result size > the one set using a newly added flag (rpcreturndatalimit)

* updated the config files and docs

* chg : trieTimeout from 60 to 10 mins (#692)

* chg : trieTimeout from 60 to 10 mins

* chg : cache.timout to 10m from 1h in configs

* internal/cli/server : fix : added triesInMemory in config (#691)

* changed version from 0.3.0 to 0.3.4-beta (#693)

* fix nil state-sync issue, increase grpc limit (#695)

* Increase grpc message size limit in pprof

* consensus/bor/bor.go : stateSyncs init fixed [Fix #686]

* eth/filters: handle nil state-sync before notify

* eth/filters: update check

Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>

* core, tests/bor: add more tests for state-sync validation (#710)

* core: add get state sync function for tests

* tests/bor: add validation for state sync events post consensus

* Arpit/temp bor sync (#701)

* Increase grpc message size limit in pprof

* ReadBorReceipts improvements

* use internal function

* fix tests

* fetch geth upstread for ReadBorReceiptRLP

* Only query bor receipt when the query index is equal to # tx in block body

This change reduces the frequency of calling ReadBorReceipt and
ReadBorTransaction, which are CPU and db intensive.

* Revert "fetch geth upstread for ReadBorReceiptRLP"

This reverts commit 2e838a6b1313d26674f3a8df4b044e35dcbf35a0.

* Restore ReadBorReceiptRLP

* fix bor receipts

* remove unused

* fix lints

---------

Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>

* Revert "chg : trieTimeout from 60 to 10 mins (#692)" (#720)

This reverts commit 241843c7e7bb18e64d2e157fd6fbbd665f6ce9d9.

* Arpit/add execution pool 2 (#719)

* initial

* linters

* linters

* remove timeout

* update pool

* change pool size function

* check nil

* check nil

* fix tests

* Use execution pool from server in all handlers

* simplify things

* test fix

* add support for cli, config

* add to cli and config

* merge base branch

* debug statements

* fix bug

* atomic pointer timeout

* add apis

* update workerpool

* fix issues

* change params

* fix issues

* fix ipc issue

* remove execution pool from IPC

* revert

* fix tests

* mutex

* refactor flag and value names

* ordering fix

* refactor flag and value names

* update default ep size to 40

* fix bor start issues

* revert file changes

* debug statements

* fix bug

* update workerpool

* atomic pointer timeout

* add apis

* Merge branch 'add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* fix issues

* change params

* fix issues

* fix ipc issue

* remove execution pool from IPC

* revert

* merge base branch

* Merge branch 'add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* mutex

* fix tests

* Merge branch 'arpit/add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* Change default size of execution pool to 40

* refactor flag and value names

* fix merge conflicts

* ordering fix

* refactor flag and value names

* update default ep size to 40

* fix bor start issues

* revert file changes

* fix linters

* fix go.mod

* change sec to ms

* change default value for ep timeout

* fix node api calls

* comment setter for ep timeout

---------

Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* version change (#721)

* Event based pprof (#732)

* feature

* Save pprof to /tmp

---------

Co-authored-by: Jerry <jerrycgh@gmail.com>

* Cherry-pick changes from develop (#738)

* Check if block is nil to prevent panic (#736)

* miner: use env for tracing instead of block object (#728)

---------

Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>

* add max code init size check in txpool (#739)

* Revert "Event based pprof" and update version (#742)

* Revert "Event based pprof (#732)"

This reverts commit 22fa4033e8fabb51c44e8d2a8c6bb695a6e9285e.

* params: update version to 0.3.4-beta3

* packaging/templates: update bor version

* internal/ethapi :: Fix : newRPCTransactionFromBlockIndex

* fix: remove assignment for bor receipt

---------

Co-authored-by: SHIVAM SHARMA <shivam691999@gmail.com>
Co-authored-by: Pratik Patil <pratikspatil024@gmail.com>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>
Co-authored-by: Arpit Temani <temaniarpit27@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>

* Setting up bor to use hosted 18.04 runner as ubuntu provided 18.04 runner is end of life

---------

Co-authored-by: SHIVAM SHARMA <shivam691999@gmail.com>
Co-authored-by: Pratik Patil <pratikspatil024@gmail.com>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>
Co-authored-by: Arpit Temani <temaniarpit27@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>
Co-authored-by: Martin Holst Swende <martin@swende.se>
Co-authored-by: marcello33 <marcelloardizzone@hotmail.it>
Co-authored-by: Raneet Debnath <raneetdebnath10@gmail.com>
Co-authored-by: Raneet Debnath <35629432+Raneet10@users.noreply.github.com>
Co-authored-by: Alex <dalexwatts@gmail.com>
Co-authored-by: Daniel Jones <djones@polygon.technology>

* merge v0.3.9-alpha to qa (#824)

* commit logs

* CI: test launch devnet without hardcoded sleep time (pos-534)

* CI: try using checked out bor path

* CI: fix missing ;

* CI: fix assignment operator

* CI: echo peers and block no.

* CI: cleanup

* minor chg: add new line

* dev: add: pos-944: snyk and govuln integration (#578)

* dev: add: pos-944 security ci and readme

* dev: add: pos-944 remove linters as this is included already in build ci

* dev: chg: pos-947 dependencies upgrade to solve snyk security issues

* dev: chg: update security-ci

* dev: chg: remove linter to allow replacements for security issues

* dev: add: pos-944 verify path when updating metrics from config

* dev: add: pos-944 fix linter

* dev: add: pos-944 add .snyk policy file / fix snyk code vulnerabilities

* dev: fix: pos-944 import common package / gitignore snyk dccache file

* dev: fix: pos-944 verify canonical path for crashers

* dev: fix: pos-944 linter

* dev: add: pos-976 add govuln check

* dev: add: pos-976 test upload with permissions

* dev: add: pos-976 remove duplicated upload

* dev: add: pos-976 report upload

* dev: add: pos-976 remove upload

* dev: fix: pos-944 fix govuln action

* dev: fix: pos-944 move govulncheck to security-ci

* dev: fix: pos-944 bump golvun action and golang versions

* dev: fix: pos-944 remove persmissions and fix conflicts

* dev: chg: restore err msg

* dev: chg: remove duplicated function

* dev: chg: sort import

* dev: chg: fix linter

* dev: add: use common VerifyCrasher function to avoid duplications / replace deprecated ioutils.ReadFile

* dev: fix: typo

* fix linters

* upgrade grpc version

* add ignore rule for net/http2

* Shivam/txpool tracing (#604)

* lock, unlock to rlock, runlock

* add : tracing Pending() and Locals()

* Log time spent in committing a tx during mining

* Remove data from logging

* Move log into case where a tx completes without error

* profile fillTransactions

* fix conflict

* bug fixes

* add logs

* txpool: add tracing in Pending()

* rearrange tracing

* add attributes

* fix

* fix

* log error in profiling

* update file mode and file path for profiling

* full profiling

* fix log

* fix log

* less wait

* fix

* fix

* logs

* worker: use block number for prof files

* initial

* txList add

* fix gas calculation

* fix

* green tests

* linters

* prettify

* allocate less

* no locks between pending and reorg

* no locks

* no locks on locals

* more tests

* linters

* less allocs

* comment

* optimize errors

* linters

* fix

* fix

* Linters

* linters

* linters

* simplify errors

* atomics for transactions

* fix

* optimize workers

* fix copy

* linters

* txpool tracing

* linters

* fix tracing

* duration in mcs

* locks

* metrics

* fix

* cache hit/miss

* less locks on evict

* remove once

* remove once

* switch off pprof

* fix data race

* fix data race

* add : sealed total/empty blocks metric gauge

* add : RPC debug_getTraceStack

* fix : RPC debug_getTraceStack

* fix : RPC debug_getTraceStack for all go-routines

* linters

* add data race test on txpool

* fix concurrency

* noleak

* increase batch size

* prettify

* tests

* baseFee mutex

* panic fix

* linters

* fix gas fee data race

* linters

* more transactions

* debug

* debug

* fix ticker

* fix test

* add cacheMu

* more tests

* fix test panic

* linters

* add statistics

* add statistics

* txitems data race

* fix tx list Has

* fix : lint

Co-authored-by: Arpit Temani <temaniarpit27@gmail.com>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>

* Reduce txArriveTimeout to 100ms

* init : remove exit on keystore err

* add : multiple keystore tolerance

* lint : fix linters

* chg : use standard logging

* chg : logging strings

* Added flags to run heimdall as a child process (#597)

* Added flags to run heimdall as a child process

* Fix: Lint

* Fix btcd package dependency for CI

* Update btcd package version

* Try removing ambigious importts

* dev: fix: lint fix for parallel tests

* remove delete for ambigious import

* Remove unwanted space

* go mod tidy

* try replace

* try replace

* use vendor

* rename vendor

* tidy

* vendor btcec

* clean up

* remove submodule

* remove submodule

* remove submodule

* remove submodule

* remove vendor & added replacer in test

* go mod tidy

* added replacer

* Update replacer

* Update replacer

* Merge branch 'develop' into run-heimdall-flags

* Skip TestGolangBindings

* Typo fix

* Remove unwanted changes

Co-authored-by: marcello33 <marcelloardizzone@hotmail.it>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>

* dev: chg: update PR template to include nodes audience check (#641)

* dev: chg: update PR template to include nodes audience check

* dev: chg: better description

* dev: chg: add entry to changes too

* sonarqube integration (#658)

* dev: add: sonarqube integration into security-ci

* dev: add: exclude java files from sonarqube analysis

* Merge branch 'qa' and 'master' into develop (#663)

* Adding in Mumbai/Mainnet precursor deb packaging for tests to use during upgrade(iterations to come)

* Added changes per discussion in PR, more changes may be necessary

* Adding prerelease true

* Disabling goreleaser

* Removing README swap file

* change bor_dir and add bor user for v0.3.0 release

* rollback bor user and use root

* metrics: handle equal to separated config flag (#596)

* metrics: handle  based config path

* internal/cli/server: add more context to logs

* use space separated flag and value in bor.service

* fixed static-nodes related buf (os independent) (#598)

* fixed static-nodes related buf (os independent)

* taking static-nodes as input if default not present

* Update default flags (#600)

* internal/cli/server: use geth's default for txpool.pricelimit and add comments

* builder/files: update config.toml for mainnet

* packaging/templates: update defaults for mainnet and mumbai

* internal/cli/server: skip overriding cache

* packaging/templates: update cache value for mainnet

* packaging/templates: update gcmode for archive mumbai node

* metrics: handle nil telemetry config (#601)

* resolve merge conflicts

* update go version in release.yml

* update goversion in makefile

* update Docker login for goreleaser-cross v1.19

* Cleanup for the packager to use git tag in the package profile naming. Added conditional check for directory structure, this is in prep for v0.3.1, as this will create a failure on upgrade path in package due to file exist

* added a toml configuration file with comments describing each flag (#607)

* added a toml configuration file with comments describing each flag

* internal/cli/server: update flag description

* docs/cli: update example config and description of flags

* docs: update new-cli docs

Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* Adding of 0.3.0 package changes, control file updates, postinst changes, and packager update

* added ancient datadir flag and toml field, need to decide on default value and update the conversion script

* updated toml files with ancient field

* Add support for new flags in new config.toml, which were present in old config.toml (#612)

* added HTTPTimeouts, and TrieTimeout flag in new tol, from old toml

* added RAW fields for these time.Duration flags

* updated the conversion script to support these extra 4 flags

* removed hcl and json config tests as we are only supporting toml config files

* updated toml files with cache.timeout field

* updated toml files with jsonrpc.timeouts field

* tests/bor: expect a call for latest checkpoint

* tests/bor: expect a call for latest checkpoint

* packaging/templates: update cache values for archive nodes

Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* remove unwanted code

* Fix docker publish authentication issue

In gorelease-cross 1.19+, dockerhub authentication will require docker
logion action followed by mounting docker config file. See
https://github.com/goreleaser/goreleaser-cross#github-actions.

* Revert "update Docker login for goreleaser-cross v1.19"

This reverts commit 4d19cf5342a439d98cca21b03c63a0bc075769cf.

* Bump version to stable

* Revert "Merge pull request #435 from maticnetwork/POS-553"

This reverts commit 657d262defc9c94e9513b3d45230492d8b20eac7, reversing
changes made to 88dbfa1c13c15464d3c1a3085a9f12d0ffb9b218.

* revert change for release for go1.19

* Add default values to CLI helper and docs

This commit adds default values to CLI helper and docs. When the default value of a string flag, slice string flag, or map string flag is empty, its helper message won't show any default value.

* Add a summary of new CLI in docs

* Updating packager as binutils changed version so that apt-get installs current versions

* Add state pruning to new CLI

* Minor wording fix in prune state description

* Bumping control file versions

* Mainnet Delhi fork

* Set version to stable

* change delhi hardfork block number

* handle future chain import and skip peer drop (#650)

* handle future chain import and skip peer drop

* add block import metric

* params: bump version to v0.3.3-stable

* Bump bor version in control files for v0.3.3 mainnet release

Co-authored-by: Daniel Jones <djones@polygon.technology>
Co-authored-by: Will Button <wbutton@polygon.technology>
Co-authored-by: Will Button <will@willbutton.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>
Co-authored-by: Daniel Jones <105369507+djpolygon@users.noreply.github.com>
Co-authored-by: Pratik Patil <pratikspatil024@gmail.com>
Co-authored-by: Arpit Temani <temaniarpit27@gmail.com>
Co-authored-by: Jerry <jerrycgh@gmail.com>

* CI: use matic-cli master branch

* trigger ci

* internal/cli/server : fix : added triesInMemory in config (#677)

* update requirements in README (#681)

* consensus/bor : add : devFakeAuthor flag

* core,eth,internal/cli,internal/ethapi: add --rpc.allow-unprotected-txs flag to allow txs to get replayed (for shadow node)

* internal/cli: add `skiptrace` flag for profiling (#715)

* internal/cli: add skiptrace flag

* docs: update docs for skiptrace flag

* Added flag in Status to wait for backend, and fixed panic issue. (#708)

* checking if backend is available during status call, and added a flag to wait if backend is not available

* added test for status command (does not cover the whole code)

* Revert "Reduce txArriveTimeout to 100ms" (#707)

This reverts commit 243d231fe45bc02f33678bb4f69e941167d7f466.

* consensus/bor : add : devFakeAuthor flag (#697)

* add check for empty lists in txpool (#704)

* add check

* linters

* dev: chg: POS-215 move sonarqube to own ci (#733)

* Added verbosity flag, supports log-level as well, but will remove that in future. (#722)

* changed log-level flag back to verbosity, and updated the conversion script

* supporting both verbosity and log-level, with a message to deprecat log-level

* converted verbosity to a int value

* Check if block is nil to prevent panic (#736)

* miner: use env for tracing instead of block object (#728)

* Add : mutex pprof profile (#731)

* add : mutex pprof profile

* rm : remove trace from default pprof profiles

* chg : commit tx logs from info to debug (#673)

* chg : commit tx logs from info to debug

* fix : minor changes

* chg : miner : commitTransactions-stats moved from info to debug

* lint : fix linters

* refactor logging

* miner : chg : UnauthorizedSignerError to debug

* lint : fix lint

* fix : log.Logger interface compatibility

---------

Co-authored-by: Evgeny Danienko <6655321@bk.ru>

* Add : commit details to bor version (#730)

* add : commit details to bor version

* fix : MAKEFILE

* undo : rm test-txpool-race

* rm : params/build_date

* rm : params/gitbranch and params/gitdate

* core,docs/cli,internal/cli/server: make docs

* builder,docs/cli,packaging: update toml files

* mardizzone/hotfix-snyk: remove vcs build when running snyk (#745)

* Feat : SetMaxPeers (#726)

* init : add admin.setMaxPeers and getMaxPeers

* lint : fix lint

* add : some comments

* Update wiki link (#762)

* Heimdall App implementation (#646)

* added support for miner.recommit flag (#743)

* interrupting commit experiment (#556)

* initial

* delete

* linters

* big benchmark

* benchmark big ints

* delay

* fix generate

* remove debug

* miner : chg : remove noempty check

* fix lints

* consensus/bor: handle unauthorized signer in consensus.Prepare (#651)

* fix : break loop fix

* lint : fix

* lint : more lint fix

* fix : skip TestEmptyWorkEthash and TestEmptyWorkClique

* add : metrics commitInterruptCounter

---------

Co-authored-by: Shivam Sharma <shivam691999@gmail.com>
Co-authored-by: Arpit Temani <temaniarpit27@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* internal/cli: added missing flags (#744)

* minor comment update

* added support for rpc.evmtimeout flag

* added support for vmdebug (EnablePreimageRecording) flag

* added support for jsonrpc.auth.(jwtsecret, addr, port, vhosts) flags

* added support for miner.recommit flag

* added support for gpo.maxheaderhistory and gpo.maxblockhistory flag

* Revert "added support for miner.recommit flag"

This reverts commit fcb722e4bf5bdda23d4c91da40ab95c9023a80c3.

* added pprof related flags (expect --pprof.cpuprofile - Write CPU profile to the given file)

* added support for --dev.gaslimit flag

* added support for --fdlimit flag

* added support for --netrestrict flag

* added support for --nodekey and --nodekeyhex flag

* added support for --vmodule, --log.json, --log.backtrace, and --log.debug flags

* fixed related lint errors

* fix lints from develop (few lints decided to appear from code that was untouched, weird)

* more weird lints from develop

* small precautionary fix

* small bug ;) fix in NetRestrict

* weird lints

* change vmdebug = true to vmdebug = false

* internal/ethapi: set rpc gas cap as default gas limit when creating access list

* add : testcase for CommitInterruptExperiment (#792)

* add : TestCommitInterruptExperimentBor

* lint : fix lint

* chg : add waitgroup

* dev: chg: continue on error when uploading snyk results to GH (#795)

* consensus/bor: revert handle unauthorized signer in consensus.Prepare

* Revert "consensus/bor: handle unauthorized signer in consensus.Prepare (#651)"

This reverts commit 9ce8c7de75a1b5021bb6f2b8086e813c8244b22c.

* eth/downloader/whitelist: skip future chain validation (#796)

* eth/downloader/whitelist: skip future chain validation

* eth/downloader/whitelist: fix tests for future chain import

* Setting up bor to use hosted 18.04 runner as ubuntu provided 18.04 runner is end of life

* Merge qa to develop (#814)

* Adding in Mumbai/Mainnet precursor deb packaging for tests to use during upgrade(iterations to come)

* Added changes per discussion in PR, more changes may be necessary

* Adding prerelease true

* Disabling goreleaser

* Removing README swap file

* change bor_dir and add bor user for v0.3.0 release

* rollback bor user and use root

* metrics: handle equal to separated config flag (#596)

* metrics: handle  based config path

* internal/cli/server: add more context to logs

* use space separated flag and value in bor.service

* fixed static-nodes related buf (os independent) (#598)

* fixed static-nodes related buf (os independent)

* taking static-nodes as input if default not present

* Update default flags (#600)

* internal/cli/server: use geth's default for txpool.pricelimit and add comments

* builder/files: update config.toml for mainnet

* packaging/templates: update defaults for mainnet and mumbai

* internal/cli/server: skip overriding cache

* packaging/templates: update cache value for mainnet

* packaging/templates: update gcmode for archive mumbai node

* metrics: handle nil telemetry config (#601)

* resolve merge conflicts

* update go version in release.yml

* update goversion in makefile

* update Docker login for goreleaser-cross v1.19

* Cleanup for the packager to use git tag in the package profile naming. Added conditional check for directory structure, this is in prep for v0.3.1, as this will create a failure on upgrade path in package due to file exist

* added a toml configuration file with comments describing each flag (#607)

* added a toml configuration file with comments describing each flag

* internal/cli/server: update flag description

* docs/cli: update example config and description of flags

* docs: update new-cli docs

Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* Adding of 0.3.0 package changes, control file updates, postinst changes, and packager update

* added ancient datadir flag and toml field, need to decide on default value and update the conversion script

* updated toml files with ancient field

* Add support for new flags in new config.toml, which were present in old config.toml (#612)

* added HTTPTimeouts, and TrieTimeout flag in new tol, from old toml

* added RAW fields for these time.Duration flags

* updated the conversion script to support these extra 4 flags

* removed hcl and json config tests as we are only supporting toml config files

* updated toml files with cache.timeout field

* updated toml files with jsonrpc.timeouts field

* tests/bor: expect a call for latest checkpoint

* tests/bor: expect a call for latest checkpoint

* packaging/templates: update cache values for archive nodes

Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* remove unwanted code

* Fix docker publish authentication issue

In gorelease-cross 1.19+, dockerhub authentication will require docker
logion action followed by mounting docker config file. See
https://github.com/goreleaser/goreleaser-cross#github-actions.

* Revert "update Docker login for goreleaser-cross v1.19"

This reverts commit 4d19cf5342a439d98cca21b03c63a0bc075769cf.

* Bump version to stable

* Revert "Merge pull request #435 from maticnetwork/POS-553"

This reverts commit 657d262defc9c94e9513b3d45230492d8b20eac7, reversing
changes made to 88dbfa1c13c15464d3c1a3085a9f12d0ffb9b218.

* revert change for release for go1.19

* Add default values to CLI helper and docs

This commit adds default values to CLI helper and docs. When the default value of a string flag, slice string flag, or map string flag is empty, its helper message won't show any default value.

* Add a summary of new CLI in docs

* Updating packager as binutils changed version so that apt-get installs current versions

* Add state pruning to new CLI

* Minor wording fix in prune state description

* Bumping control file versions

* Mainnet Delhi fork

* Set version to stable

* change delhi hardfork block number

* handle future chain import and skip peer drop (#650)

* handle future chain import and skip peer drop

* add block import metric

* params: bump version to v0.3.3-stable

* Bump bor version in control files for v0.3.3 mainnet release

* Added checks to RPC requests and introduced new flags to customise the parameters (#657)

* added a check to reject rpc requests with batch size > the one set using a newly added flag (rpcbatchlimit)

* added a check to reject rpc requests whose result size > the one set using a newly added flag (rpcreturndatalimit)

* updated the config files and docs

* chg : trieTimeout from 60 to 10 mins (#692)

* chg : trieTimeout from 60 to 10 mins

* chg : cache.timout to 10m from 1h in configs

* internal/cli/server : fix : added triesInMemory in config (#691)

* changed version from 0.3.0 to 0.3.4-beta (#693)

* fix nil state-sync issue, increase grpc limit (#695)

* Increase grpc message size limit in pprof

* consensus/bor/bor.go : stateSyncs init fixed [Fix #686]

* eth/filters: handle nil state-sync before notify

* eth/filters: update check

Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>

* core, tests/bor: add more tests for state-sync validation (#710)

* core: add get state sync function for tests

* tests/bor: add validation for state sync events post consensus

* Arpit/temp bor sync (#701)

* Increase grpc message size limit in pprof

* ReadBorReceipts improvements

* use internal function

* fix tests

* fetch geth upstread for ReadBorReceiptRLP

* Only query bor receipt when the query index is equal to # tx in block body

This change reduces the frequency of calling ReadBorReceipt and
ReadBorTransaction, which are CPU and db intensive.

* Revert "fetch geth upstread for ReadBorReceiptRLP"

This reverts commit 2e838a6b1313d26674f3a8df4b044e35dcbf35a0.

* Restore ReadBorReceiptRLP

* fix bor receipts

* remove unused

* fix lints

---------

Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>

* Revert "chg : trieTimeout from 60 to 10 mins (#692)" (#720)

This reverts commit 241843c7e7bb18e64d2e157fd6fbbd665f6ce9d9.

* Arpit/add execution pool 2 (#719)

* initial

* linters

* linters

* remove timeout

* update pool

* change pool size function

* check nil

* check nil

* fix tests

* Use execution pool from server in all handlers

* simplify things

* test fix

* add support for cli, config

* add to cli and config

* merge base branch

* debug statements

* fix bug

* atomic pointer timeout

* add apis

* update workerpool

* fix issues

* change params

* fix issues

* fix ipc issue

* remove execution pool from IPC

* revert

* fix tests

* mutex

* refactor flag and value names

* ordering fix

* refactor flag and value names

* update default ep size to 40

* fix bor start issues

* revert file changes

* debug statements

* fix bug

* update workerpool

* atomic pointer timeout

* add apis

* Merge branch 'add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* fix issues

* change params

* fix issues

* fix ipc issue

* remove execution pool from IPC

* revert

* merge base branch

* Merge branch 'add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* mutex

* fix tests

* Merge branch 'arpit/add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* Change default size of execution pool to 40

* refactor flag and value names

* fix merge conflicts

* ordering fix

* refactor flag and value names

* update default ep size to 40

* fix bor start issues

* revert file changes

* fix linters

* fix go.mod

* change sec to ms

* change default value for ep timeout

* fix node api calls

* comment setter for ep timeout

---------

Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* version change (#721)

* Event based pprof (#732)

* feature

* Save pprof to /tmp

---------

Co-authored-by: Jerry <jerrycgh@gmail.com>

* Cherry-pick changes from develop (#738)

* Check if block is nil to prevent panic (#736)

* miner: use env for tracing instead of block object (#728)

---------

Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>

* add max code init size check in txpool (#739)

* Revert "Event based pprof" and update version (#742)

* Revert "Event based pprof (#732)"

This reverts commit 22fa4033e8fabb51c44e8d2a8c6bb695a6e9285e.

* params: update version to 0.3.4-beta3

* packaging/templates: update bor version

* internal/ethapi :: Fix : newRPCTransactionFromBlockIndex

* Merge master to qa (#813)

* Merge qa to master (#750)

* Added checks to RPC requests and introduced new flags to customise the parameters (#657)

* added a check to reject rpc requests with batch size > the one set using a newly added flag (rpcbatchlimit)

* added a check to reject rpc requests whose result size > the one set using a newly added flag (rpcreturndatalimit)

* updated the config files and docs

* chg : trieTimeout from 60 to 10 mins (#692)

* chg : trieTimeout from 60 to 10 mins

* chg : cache.timout to 10m from 1h in configs

* internal/cli/server : fix : added triesInMemory in config (#691)

* changed version from 0.3.0 to 0.3.4-beta (#693)

* fix nil state-sync issue, increase grpc limit (#695)

* Increase grpc message size limit in pprof

* consensus/bor/bor.go : stateSyncs init fixed [Fix #686]

* eth/filters: handle nil state-sync before notify

* eth/filters: update check

Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>

* core, tests/bor: add more tests for state-sync validation (#710)

* core: add get state sync function for tests

* tests/bor: add validation for state sync events post consensus

* Arpit/temp bor sync (#701)

* Increase grpc message size limit in pprof

* ReadBorReceipts improvements

* use internal function

* fix tests

* fetch geth upstread for ReadBorReceiptRLP

* Only query bor receipt when the query index is equal to # tx in block body

This change reduces the frequency of calling ReadBorReceipt and
ReadBorTransaction, which are CPU and db intensive.

* Revert "fetch geth upstread for ReadBorReceiptRLP"

This reverts commit 2e838a6b1313d26674f3a8df4b044e35dcbf35a0.

* Restore ReadBorReceiptRLP

* fix bor receipts

* remove unused

* fix lints

---------

Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>

* Revert "chg : trieTimeout from 60 to 10 mins (#692)" (#720)

This reverts commit 241843c7e7bb18e64d2e157fd6fbbd665f6ce9d9.

* Arpit/add execution pool 2 (#719)

* initial

* linters

* linters

* remove timeout

* update pool

* change pool size function

* check nil

* check nil

* fix tests

* Use execution pool from server in all handlers

* simplify things

* test fix

* add support for cli, config

* add to cli and config

* merge base branch

* debug statements

* fix bug

* atomic pointer timeout

* add apis

* update workerpool

* fix issues

* change params

* fix issues

* fix ipc issue

* remove execution pool from IPC

* revert

* fix tests

* mutex

* refactor flag and value names

* ordering fix

* refactor flag and value names

* update default ep size to 40

* fix bor start issues

* revert file changes

* debug statements

* fix bug

* update workerpool

* atomic pointer timeout

* add apis

* Merge branch 'add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* fix issues

* change params

* fix issues

* fix ipc issue

* remove execution pool from IPC

* revert

* merge base branch

* Merge branch 'add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* mutex

* fix tests

* Merge branch 'arpit/add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* Change default size of execution pool to 40

* refactor flag and value names

* fix merge conflicts

* ordering fix

* refactor flag and value names

* update default ep size to 40

* fix bor start issues

* revert file changes

* fix linters

* fix go.mod

* change sec to ms

* change default value for ep timeout

* fix node api calls

* comment setter for ep timeout

---------

Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* version change (#721)

* Event based pprof (#732)

* feature

* Save pprof to /tmp

---------

Co-authored-by: Jerry <jerrycgh@gmail.com>

* Cherry-pick changes from develop (#738)

* Check if block is nil to prevent panic (#736)

* miner: use env for tracing instead of block object (#728)

---------

Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>

* add max code init size check in txpool (#739)

* Revert "Event based pprof" and update version (#742)

* Revert "Event based pprof (#732)"

This reverts commit 22fa4033e8fabb51c44e8d2a8c6bb695a6e9285e.

* params: update version to 0.3.4-beta3

* packaging/templates: update bor version

* params, packaging/templates: update bor version

---------

Co-authored-by: SHIVAM SHARMA <shivam691999@gmail.com>
Co-authored-by: Pratik Patil <pratikspatil024@gmail.com>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>
Co-authored-by: Arpit Temani <temaniarpit27@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>

* core, miner: add sub-spans for tracing (#753)

* core, miner: add sub-spans for tracing

* fix linters

* core: add logs for debugging

* core: add more logs to print tdd while reorg

* fix linters

* core: minor fix

* core: remove debug logs

* core: use different span for write block and set head

* core: use internal context for sending traces (#755)

* core: add : impossible reorg block dump (#754)

* add : impossible reorg block dump

* chg : 3 seperate files for impossoble reorg dump

* add : use exportBlocks method and RLP blocks before writing

* chg : small changes

* bump : go version from 1.19 to 1.20.1 (#761)

* Revert "bump : go version from 1.19 to 1.20.1 (#761)"

This reverts commit 4561012af9a31d20c2715ce26e4b39ca93420b8b.

* core/vm: use optimized bigint (#26021)

* Add holiman/big

* Fix linter

* Bump version to v0.3.5

* fix lints from develop (few lints decided to appear from code that was untouched, weird)

* upgrade crypto lib version (#770)

* bump dep : github.com/Masterminds/goutils to v1.1.1 (#769)

* mardizzone/pos-1313: bump crypto dependency (#772)

* dev: chg: bumd net dependency

* dev: chg: bump crypto dependency

* dev: chg: bump crypto dependency

* bump dep : golang.org/x/net to v0.8.0 (#771)

* Verify validator set against local contract on receiving an end-of-sprint block (#768)

* Verify validator set against local contract on receiving an end-of-sprint block

* Fix tests

* Respect error returned by ParseValidators

* Keep going back until a parent block presents

* core/txpool: implement DoS defenses from geth (#778)

* Hotfixes and deps bump (#776)

* dev: chg: bump deps

* internal/cli/server, rpc: lower down http readtimeout to 10s

* dev: chg: get p2p adapter

* dev: chg: lower down jsonrpc readtimeout to 10s

* cherry-pick txpool optimisation changes

* add check for empty lists in txpool (#704)

* add check

* linters

* core, miner: add empty instrumentation name for tracing

---------

Co-authored-by: Raneet Debnath <raneetdebnath10@gmail.com>
Co-authored-by: SHIVAM SHARMA <shivam691999@gmail.com>
Co-authored-by: Evgeny Danilenko <6655321@bk.ru>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* packaging,params: bump to v0.3.6 (#782)

* v0.3.6 fix (#787)

* Fix get validator set in header verifier

* chg : commit tx logs from info to debug (#673)

* chg : commit tx logs from info to debug

* fix : minor changes

* chg : miner : commitTransactions-stats moved from info to debug

* lint : fix linters

* refactor logging

* miner : chg : UnauthorizedSignerError to debug

* lint : fix lint

* fix : log.Logger interface compatibility

---------

Co-authored-by: Evgeny Danienko <6655321@bk.ru>

* Remove unnecessary sorting of valset from header in verification

* dev: chg: version bump

---------

Co-authored-by: SHIVAM SHARMA <shivam691999@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: marcello33 <marcelloardizzone@hotmail.it>

* core: improve locks in txpool (#807)

* added a write lock to the txs.filter method and a read lock to the txs.reheap method - both of which are called by Filter during reorg adjustments to txpool

* txpool reorg locks

* more locks

* locks

* linters

* params, packaging: update version for v0.3.8-beta release

* core: add logs in reheap

---------

Co-authored-by: Alex <dalexwatts@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>

* Merge qa to master (#808)

* Added checks to RPC requests and introduced new flags to customise the parameters (#657)

* added a check to reject rpc requests with batch size > the one set using a newly added flag (rpcbatchlimit)

* added a check to reject rpc requests whose result size > the one set using a newly added flag (rpcreturndatalimit)

* updated the config files and docs

* chg : trieTimeout from 60 to 10 mins (#692)

* chg : trieTimeout from 60 to 10 mins

* chg : cache.timout to 10m from 1h in configs

* internal/cli/server : fix : added triesInMemory in config (#691)

* changed version from 0.3.0 to 0.3.4-beta (#693)

* fix nil state-sync issue, increase grpc limit (#695)

* Increase grpc message size limit in pprof

* consensus/bor/bor.go : stateSyncs init fixed [Fix #686]

* eth/filters: handle nil state-sync before notify

* eth/filters: update check

Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>

* core, tests/bor: add more tests for state-sync validation (#710)

* core: add get state sync function for tests

* tests/bor: add validation for state sync events post consensus

* Arpit/temp bor sync (#701)

* Increase grpc message size limit in pprof

* ReadBorReceipts improvements

* use internal function

* fix tests

* fetch geth upstread for ReadBorReceiptRLP

* Only query bor receipt when the query index is equal to # tx in block body

This change reduces the frequency of calling ReadBorReceipt and
ReadBorTransaction, which are CPU and db intensive.

* Revert "fetch geth upstread for ReadBorReceiptRLP"

This reverts commit 2e838a6b1313d26674f3a8df4b044e35dcbf35a0.

* Restore ReadBorReceiptRLP

* fix bor receipts

* remove unused

* fix lints

---------

Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>

* Revert "chg : trieTimeout from 60 to 10 mins (#692)" (#720)

This reverts commit 241843c7e7bb18e64d2e157fd6fbbd665f6ce9d9.

* Arpit/add execution pool 2 (#719)

* initial

* linters

* linters

* remove timeout

* update pool

* change pool size function

* check nil

* check nil

* fix tests

* Use execution pool from server in all handlers

* simplify things

* test fix

* add support for cli, config

* add to cli and config

* merge base branch

* debug statements

* fix bug

* atomic pointer timeout

* add apis

* update workerpool

* fix issues

* change params

* fix issues

* fix ipc issue

* remove execution pool from IPC

* revert

* fix tests

* mutex

* refactor flag and value names

* ordering fix

* refactor flag and value names

* update default ep size to 40

* fix bor start issues

* revert file changes

* debug statements

* fix bug

* update workerpool

* atomic pointer timeout

* add apis

* Merge branch 'add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* fix issues

* change params

* fix issues

* fix ipc issue

* remove execution pool from IPC

* revert

* merge base branch

* Merge branch 'add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* mutex

* fix tests

* Merge branch 'arpit/add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* Change default size of execution pool to 40

* refactor flag and value names

* fix merge conflicts

* ordering fix

* refactor flag and value names

* update default ep size to 40

* fix bor start issues

* revert file changes

* fix linters

* fix go.mod

* change sec to ms

* change default value for ep timeout

* fix node api calls

* comment setter for ep timeout

---------

Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* version change (#721)

* Event based pprof (#732)

* feature

* Save pprof to /tmp

---------

Co-authored-by: Jerry <jerrycgh@gmail.com>

* Cherry-pick changes from develop (#738)

* Check if block is nil to prevent panic (#736)

* miner: use env for tracing instead of block object (#728)

---------

Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>

* add max code init size check in txpool (#739)

* Revert "Event based pprof" and update version (#742)

* Revert "Event based pprof (#732)"

This reverts commit 22fa4033e8fabb51c44e8d2a8c6bb695a6e9285e.

* params: update version to 0.3.4-beta3

* packaging/templates: update bor version

* internal/ethapi :: Fix : newRPCTransactionFromBlockIndex

* fix: remove assignment for bor receipt

---------

Co-authored-by: SHIVAM SHARMA <shivam691999@gmail.com>
Co-authored-by: Pratik Patil <pratikspatil024@gmail.com>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>
Co-authored-by: Arpit Temani <temaniarpit27@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>

* Setting up bor to use hosted 18.04 runner as ubuntu provided 18.04 runner is end of life

---------

Co-authored-by: SHIVAM SHARMA <shivam691999@gmail.com>
Co-authored-by: Pratik Patil <pratikspatil024@gmail.com>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>
Co-authored-by: Arpit Temani <temaniarpit27@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>
Co-authored-by: Martin Holst Swende <martin@swende.se>
Co-authored-by: marcello33 <marcelloardizzone@hotmail.it>
Co-authored-by: Raneet Debnath <raneetdebnath10@gmail.com>
Co-authored-by: Raneet Debnath <35629432+Raneet10@users.noreply.github.com>
Co-authored-by: Alex <dalexwatts@gmail.com>
Co-authored-by: Daniel Jones <djones@polygon.technology>

* core: remove duplicate tests

* miner: use get validators by hash in tests

---------

Co-authored-by: Daniel Jones <djones@polygon.technology>
Co-authored-by: Will Button <wbutton@polygon.technology>
Co-authored-by: Will Button <will@willbutton.com>
Co-authored-by: Daniel Jones <105369507+djpolygon@users.noreply.github.com>
Co-authored-by: Pratik Patil <pratikspatil024@gmail.com>
Co-authored-by: Arpit Temani <temaniarpit27@gmail.com>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: SHIVAM SHARMA <shivam691999@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>
Co-authored-by: Martin Holst Swende <martin@swende.se>
Co-authored-by: marcello33 <marcelloardizzone@hotmail.it>
Co-authored-by: Raneet Debnath <raneetdebnath10@gmail.com>
Co-authored-by: Raneet Debnath <35629432+Raneet10@users.noreply.github.com>
Co-authored-by: Alex <dalexwatts@gmail.com>

---------

Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Raneet Debnath <raneetdebnath10@gmail.com>
Co-authored-by: Arpit Temani <temaniarpit27@gmail.com>
Co-authored-by: SHIVAM SHARMA <shivam691999@gmail.com>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>
Co-authored-by: builder90210 <anonbuilder90210@gmail.com>
Co-authored-by: Krishna Upadhyaya <KRISHNAU1604@GMAIL.COM>
Co-authored-by: Daniel Jones <djones@polygon.technology>
Co-authored-by: Will Button <wbutton@polygon.technology>
Co-authored-by: Will Button <will@willbutton.com>
Co-authored-by: Daniel Jones <105369507+djpolygon@users.noreply.github.com>
Co-authored-by: Pratik Patil <pratikspatil024@gmail.com>
Co-authored-by: Raneet Debnath <35629432+Raneet10@users.noreply.github.com>
Co-authored-by: Didi <github@d10r.net>
Co-authored-by: ephess <e+github@ephess.nz>
Co-authored-by: Dmitry <467978…
maoueh pushed a commit to streamingfast/go-ethereum that referenced this issue Jun 9, 2023
* Added checks to RPC requests and introduced new flags to customise the parameters (#657)

* added a check to reject rpc requests with batch size > the one set using a newly added flag (rpcbatchlimit)

* added a check to reject rpc requests whose result size > the one set using a newly added flag (rpcreturndatalimit)

* updated the config files and docs

* chg : trieTimeout from 60 to 10 mins (#692)

* chg : trieTimeout from 60 to 10 mins

* chg : cache.timout to 10m from 1h in configs

* internal/cli/server : fix : added triesInMemory in config (#691)

* changed version from 0.3.0 to 0.3.4-beta (#693)

* fix nil state-sync issue, increase grpc limit (#695)

* Increase grpc message size limit in pprof

* consensus/bor/bor.go : stateSyncs init fixed [Fix #686]

* eth/filters: handle nil state-sync before notify

* eth/filters: update check

Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>

* core, tests/bor: add more tests for state-sync validation (#710)

* core: add get state sync function for tests

* tests/bor: add validation for state sync events post consensus

* Arpit/temp bor sync (#701)

* Increase grpc message size limit in pprof

* ReadBorReceipts improvements

* use internal function

* fix tests

* fetch geth upstread for ReadBorReceiptRLP

* Only query bor receipt when the query index is equal to # tx in block body

This change reduces the frequency of calling ReadBorReceipt and
ReadBorTransaction, which are CPU and db intensive.

* Revert "fetch geth upstread for ReadBorReceiptRLP"

This reverts commit 2e838a6b1313d26674f3a8df4b044e35dcbf35a0.

* Restore ReadBorReceiptRLP

* fix bor receipts

* remove unused

* fix lints

---------

Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>

* Revert "chg : trieTimeout from 60 to 10 mins (#692)" (#720)

This reverts commit 241843c7e7bb18e64d2e157fd6fbbd665f6ce9d9.

* Arpit/add execution pool 2 (#719)

* initial

* linters

* linters

* remove timeout

* update pool

* change pool size function

* check nil

* check nil

* fix tests

* Use execution pool from server in all handlers

* simplify things

* test fix

* add support for cli, config

* add to cli and config

* merge base branch

* debug statements

* fix bug

* atomic pointer timeout

* add apis

* update workerpool

* fix issues

* change params

* fix issues

* fix ipc issue

* remove execution pool from IPC

* revert

* fix tests

* mutex

* refactor flag and value names

* ordering fix

* refactor flag and value names

* update default ep size to 40

* fix bor start issues

* revert file changes

* debug statements

* fix bug

* update workerpool

* atomic pointer timeout

* add apis

* Merge branch 'add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* fix issues

* change params

* fix issues

* fix ipc issue

* remove execution pool from IPC

* revert

* merge base branch

* Merge branch 'add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* mutex

* fix tests

* Merge branch 'arpit/add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* Change default size of execution pool to 40

* refactor flag and value names

* fix merge conflicts

* ordering fix

* refactor flag and value names

* update default ep size to 40

* fix bor start issues

* revert file changes

* fix linters

* fix go.mod

* change sec to ms

* change default value for ep timeout

* fix node api calls

* comment setter for ep timeout

---------

Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* version change (#721)

* Event based pprof (#732)

* feature

* Save pprof to /tmp

---------

Co-authored-by: Jerry <jerrycgh@gmail.com>

* Cherry-pick changes from develop (#738)

* Check if block is nil to prevent panic (#736)

* miner: use env for tracing instead of block object (#728)

---------

Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>

* add max code init size check in txpool (#739)

* Revert "Event based pprof" and update version (#742)

* Revert "Event based pprof (#732)"

This reverts commit 22fa4033e8fabb51c44e8d2a8c6bb695a6e9285e.

* params: update version to 0.3.4-beta3

* packaging/templates: update bor version

* internal/ethapi :: Fix : newRPCTransactionFromBlockIndex

* Merge master to qa (#813)

* Merge qa to master (#750)

* Added checks to RPC requests and introduced new flags to customise the parameters (#657)

* added a check to reject rpc requests with batch size > the one set using a newly added flag (rpcbatchlimit)

* added a check to reject rpc requests whose result size > the one set using a newly added flag (rpcreturndatalimit)

* updated the config files and docs

* chg : trieTimeout from 60 to 10 mins (#692)

* chg : trieTimeout from 60 to 10 mins

* chg : cache.timout to 10m from 1h in configs

* internal/cli/server : fix : added triesInMemory in config (#691)

* changed version from 0.3.0 to 0.3.4-beta (#693)

* fix nil state-sync issue, increase grpc limit (#695)

* Increase grpc message size limit in pprof

* consensus/bor/bor.go : stateSyncs init fixed [Fix #686]

* eth/filters: handle nil state-sync before notify

* eth/filters: update check

Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>

* core, tests/bor: add more tests for state-sync validation (#710)

* core: add get state sync function for tests

* tests/bor: add validation for state sync events post consensus

* Arpit/temp bor sync (#701)

* Increase grpc message size limit in pprof

* ReadBorReceipts improvements

* use internal function

* fix tests

* fetch geth upstread for ReadBorReceiptRLP

* Only query bor receipt when the query index is equal to # tx in block body

This change reduces the frequency of calling ReadBorReceipt and
ReadBorTransaction, which are CPU and db intensive.

* Revert "fetch geth upstread for ReadBorReceiptRLP"

This reverts commit 2e838a6b1313d26674f3a8df4b044e35dcbf35a0.

* Restore ReadBorReceiptRLP

* fix bor receipts

* remove unused

* fix lints

---------

Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>

* Revert "chg : trieTimeout from 60 to 10 mins (#692)" (#720)

This reverts commit 241843c7e7bb18e64d2e157fd6fbbd665f6ce9d9.

* Arpit/add execution pool 2 (#719)

* initial

* linters

* linters

* remove timeout

* update pool

* change pool size function

* check nil

* check nil

* fix tests

* Use execution pool from server in all handlers

* simplify things

* test fix

* add support for cli, config

* add to cli and config

* merge base branch

* debug statements

* fix bug

* atomic pointer timeout

* add apis

* update workerpool

* fix issues

* change params

* fix issues

* fix ipc issue

* remove execution pool from IPC

* revert

* fix tests

* mutex

* refactor flag and value names

* ordering fix

* refactor flag and value names

* update default ep size to 40

* fix bor start issues

* revert file changes

* debug statements

* fix bug

* update workerpool

* atomic pointer timeout

* add apis

* Merge branch 'add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* fix issues

* change params

* fix issues

* fix ipc issue

* remove execution pool from IPC

* revert

* merge base branch

* Merge branch 'add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* mutex

* fix tests

* Merge branch 'arpit/add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* Change default size of execution pool to 40

* refactor flag and value names

* fix merge conflicts

* ordering fix

* refactor flag and value names

* update default ep size to 40

* fix bor start issues

* revert file changes

* fix linters

* fix go.mod

* change sec to ms

* change default value for ep timeout

* fix node api calls

* comment setter for ep timeout

---------

Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* version change (#721)

* Event based pprof (#732)

* feature

* Save pprof to /tmp

---------

Co-authored-by: Jerry <jerrycgh@gmail.com>

* Cherry-pick changes from develop (#738)

* Check if block is nil to prevent panic (#736)

* miner: use env for tracing instead of block object (#728)

---------

Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>

* add max code init size check in txpool (#739)

* Revert "Event based pprof" and update version (#742)

* Revert "Event based pprof (#732)"

This reverts commit 22fa4033e8fabb51c44e8d2a8c6bb695a6e9285e.

* params: update version to 0.3.4-beta3

* packaging/templates: update bor version

* params, packaging/templates: update bor version

---------

Co-authored-by: SHIVAM SHARMA <shivam691999@gmail.com>
Co-authored-by: Pratik Patil <pratikspatil024@gmail.com>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>
Co-authored-by: Arpit Temani <temaniarpit27@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>

* core, miner: add sub-spans for tracing (#753)

* core, miner: add sub-spans for tracing

* fix linters

* core: add logs for debugging

* core: add more logs to print tdd while reorg

* fix linters

* core: minor fix

* core: remove debug logs

* core: use different span for write block and set head

* core: use internal context for sending traces (#755)

* core: add : impossible reorg block dump (#754)

* add : impossible reorg block dump

* chg : 3 seperate files for impossoble reorg dump

* add : use exportBlocks method and RLP blocks before writing

* chg : small changes

* bump : go version from 1.19 to 1.20.1 (#761)

* Revert "bump : go version from 1.19 to 1.20.1 (#761)"

This reverts commit 4561012af9a31d20c2715ce26e4b39ca93420b8b.

* core/vm: use optimized bigint (#26021)

* Add holiman/big

* Fix linter

* Bump version to v0.3.5

* fix lints from develop (few lints decided to appear from code that was untouched, weird)

* upgrade crypto lib version (#770)

* bump dep : github.com/Masterminds/goutils to v1.1.1 (#769)

* mardizzone/pos-1313: bump crypto dependency (#772)

* dev: chg: bumd net dependency

* dev: chg: bump crypto dependency

* dev: chg: bump crypto dependency

* bump dep : golang.org/x/net to v0.8.0 (#771)

* Verify validator set against local contract on receiving an end-of-sprint block (#768)

* Verify validator set against local contract on receiving an end-of-sprint block

* Fix tests

* Respect error returned by ParseValidators

* Keep going back until a parent block presents

* core/txpool: implement DoS defenses from geth (#778)

* Hotfixes and deps bump (#776)

* dev: chg: bump deps

* internal/cli/server, rpc: lower down http readtimeout to 10s

* dev: chg: get p2p adapter

* dev: chg: lower down jsonrpc readtimeout to 10s

* cherry-pick txpool optimisation changes

* add check for empty lists in txpool (#704)

* add check

* linters

* core, miner: add empty instrumentation name for tracing

---------

Co-authored-by: Raneet Debnath <raneetdebnath10@gmail.com>
Co-authored-by: SHIVAM SHARMA <shivam691999@gmail.com>
Co-authored-by: Evgeny Danilenko <6655321@bk.ru>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* packaging,params: bump to v0.3.6 (#782)

* v0.3.6 fix (#787)

* Fix get validator set in header verifier

* chg : commit tx logs from info to debug (#673)

* chg : commit tx logs from info to debug

* fix : minor changes

* chg : miner : commitTransactions-stats moved from info to debug

* lint : fix linters

* refactor logging

* miner : chg : UnauthorizedSignerError to debug

* lint : fix lint

* fix : log.Logger interface compatibility

---------

Co-authored-by: Evgeny Danienko <6655321@bk.ru>

* Remove unnecessary sorting of valset from header in verification

* dev: chg: version bump

---------

Co-authored-by: SHIVAM SHARMA <shivam691999@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: marcello33 <marcelloardizzone@hotmail.it>

* core: improve locks in txpool (#807)

* added a write lock to the txs.filter method and a read lock to the txs.reheap method - both of which are called by Filter during reorg adjustments to txpool

* txpool reorg locks

* more locks

* locks

* linters

* params, packaging: update version for v0.3.8-beta release

* core: add logs in reheap

---------

Co-authored-by: Alex <dalexwatts@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>

* Merge qa to master (#808)

* Added checks to RPC requests and introduced new flags to customise the parameters (#657)

* added a check to reject rpc requests with batch size > the one set using a newly added flag (rpcbatchlimit)

* added a check to reject rpc requests whose result size > the one set using a newly added flag (rpcreturndatalimit)

* updated the config files and docs

* chg : trieTimeout from 60 to 10 mins (#692)

* chg : trieTimeout from 60 to 10 mins

* chg : cache.timout to 10m from 1h in configs

* internal/cli/server : fix : added triesInMemory in config (#691)

* changed version from 0.3.0 to 0.3.4-beta (#693)

* fix nil state-sync issue, increase grpc limit (#695)

* Increase grpc message size limit in pprof

* consensus/bor/bor.go : stateSyncs init fixed [Fix #686]

* eth/filters: handle nil state-sync before notify

* eth/filters: update check

Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>

* core, tests/bor: add more tests for state-sync validation (#710)

* core: add get state sync function for tests

* tests/bor: add validation for state sync events post consensus

* Arpit/temp bor sync (#701)

* Increase grpc message size limit in pprof

* ReadBorReceipts improvements

* use internal function

* fix tests

* fetch geth upstread for ReadBorReceiptRLP

* Only query bor receipt when the query index is equal to # tx in block body

This change reduces the frequency of calling ReadBorReceipt and
ReadBorTransaction, which are CPU and db intensive.

* Revert "fetch geth upstread for ReadBorReceiptRLP"

This reverts commit 2e838a6b1313d26674f3a8df4b044e35dcbf35a0.

* Restore ReadBorReceiptRLP

* fix bor receipts

* remove unused

* fix lints

---------

Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>

* Revert "chg : trieTimeout from 60 to 10 mins (#692)" (#720)

This reverts commit 241843c7e7bb18e64d2e157fd6fbbd665f6ce9d9.

* Arpit/add execution pool 2 (#719)

* initial

* linters

* linters

* remove timeout

* update pool

* change pool size function

* check nil

* check nil

* fix tests

* Use execution pool from server in all handlers

* simplify things

* test fix

* add support for cli, config

* add to cli and config

* merge base branch

* debug statements

* fix bug

* atomic pointer timeout

* add apis

* update workerpool

* fix issues

* change params

* fix issues

* fix ipc issue

* remove execution pool from IPC

* revert

* fix tests

* mutex

* refactor flag and value names

* ordering fix

* refactor flag and value names

* update default ep size to 40

* fix bor start issues

* revert file changes

* debug statements

* fix bug

* update workerpool

* atomic pointer timeout

* add apis

* Merge branch 'add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* fix issues

* change params

* fix issues

* fix ipc issue

* remove execution pool from IPC

* revert

* merge base branch

* Merge branch 'add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* mutex

* fix tests

* Merge branch 'arpit/add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* Change default size of execution pool to 40

* refactor flag and value names

* fix merge conflicts

* ordering fix

* refactor flag and value names

* update default ep size to 40

* fix bor start issues

* revert file changes

* fix linters

* fix go.mod

* change sec to ms

* change default value for ep timeout

* fix node api calls

* comment setter for ep timeout

---------

Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* version change (#721)

* Event based pprof (#732)

* feature

* Save pprof to /tmp

---------

Co-authored-by: Jerry <jerrycgh@gmail.com>

* Cherry-pick changes from develop (#738)

* Check if block is nil to prevent panic (#736)

* miner: use env for tracing instead of block object (#728)

---------

Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>

* add max code init size check in txpool (#739)

* Revert "Event based pprof" and update version (#742)

* Revert "Event based pprof (#732)"

This reverts commit 22fa4033e8fabb51c44e8d2a8c6bb695a6e9285e.

* params: update version to 0.3.4-beta3

* packaging/templates: update bor version

* internal/ethapi :: Fix : newRPCTransactionFromBlockIndex

* fix: remove assignment for bor receipt

---------

Co-authored-by: SHIVAM SHARMA <shivam691999@gmail.com>
Co-authored-by: Pratik Patil <pratikspatil024@gmail.com>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>
Co-authored-by: Arpit Temani <temaniarpit27@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>

* Setting up bor to use hosted 18.04 runner as ubuntu provided 18.04 runner is end of life

---------

Co-authored-by: SHIVAM SHARMA <shivam691999@gmail.com>
Co-authored-by: Pratik Patil <pratikspatil024@gmail.com>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>
Co-authored-by: Arpit Temani <temaniarpit27@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>
Co-authored-by: Martin Holst Swende <martin@swende.se>
Co-authored-by: marcello33 <marcelloardizzone@hotmail.it>
Co-authored-by: Raneet Debnath <raneetdebnath10@gmail.com>
Co-authored-by: Raneet Debnath <35629432+Raneet10@users.noreply.github.com>
Co-authored-by: Alex <dalexwatts@gmail.com>
Co-authored-by: Daniel Jones <djones@polygon.technology>

* merge v0.3.9-alpha to qa (#824)

* commit logs

* CI: test launch devnet without hardcoded sleep time (pos-534)

* CI: try using checked out bor path

* CI: fix missing ;

* CI: fix assignment operator

* CI: echo peers and block no.

* CI: cleanup

* minor chg: add new line

* dev: add: pos-944: snyk and govuln integration (#578)

* dev: add: pos-944 security ci and readme

* dev: add: pos-944 remove linters as this is included already in build ci

* dev: chg: pos-947 dependencies upgrade to solve snyk security issues

* dev: chg: update security-ci

* dev: chg: remove linter to allow replacements for security issues

* dev: add: pos-944 verify path when updating metrics from config

* dev: add: pos-944 fix linter

* dev: add: pos-944 add .snyk policy file / fix snyk code vulnerabilities

* dev: fix: pos-944 import common package / gitignore snyk dccache file

* dev: fix: pos-944 verify canonical path for crashers

* dev: fix: pos-944 linter

* dev: add: pos-976 add govuln check

* dev: add: pos-976 test upload with permissions

* dev: add: pos-976 remove duplicated upload

* dev: add: pos-976 report upload

* dev: add: pos-976 remove upload

* dev: fix: pos-944 fix govuln action

* dev: fix: pos-944 move govulncheck to security-ci

* dev: fix: pos-944 bump golvun action and golang versions

* dev: fix: pos-944 remove persmissions and fix conflicts

* dev: chg: restore err msg

* dev: chg: remove duplicated function

* dev: chg: sort import

* dev: chg: fix linter

* dev: add: use common VerifyCrasher function to avoid duplications / replace deprecated ioutils.ReadFile

* dev: fix: typo

* fix linters

* upgrade grpc version

* add ignore rule for net/http2

* Shivam/txpool tracing (#604)

* lock, unlock to rlock, runlock

* add : tracing Pending() and Locals()

* Log time spent in committing a tx during mining

* Remove data from logging

* Move log into case where a tx completes without error

* profile fillTransactions

* fix conflict

* bug fixes

* add logs

* txpool: add tracing in Pending()

* rearrange tracing

* add attributes

* fix

* fix

* log error in profiling

* update file mode and file path for profiling

* full profiling

* fix log

* fix log

* less wait

* fix

* fix

* logs

* worker: use block number for prof files

* initial

* txList add

* fix gas calculation

* fix

* green tests

* linters

* prettify

* allocate less

* no locks between pending and reorg

* no locks

* no locks on locals

* more tests

* linters

* less allocs

* comment

* optimize errors

* linters

* fix

* fix

* Linters

* linters

* linters

* simplify errors

* atomics for transactions

* fix

* optimize workers

* fix copy

* linters

* txpool tracing

* linters

* fix tracing

* duration in mcs

* locks

* metrics

* fix

* cache hit/miss

* less locks on evict

* remove once

* remove once

* switch off pprof

* fix data race

* fix data race

* add : sealed total/empty blocks metric gauge

* add : RPC debug_getTraceStack

* fix : RPC debug_getTraceStack

* fix : RPC debug_getTraceStack for all go-routines

* linters

* add data race test on txpool

* fix concurrency

* noleak

* increase batch size

* prettify

* tests

* baseFee mutex

* panic fix

* linters

* fix gas fee data race

* linters

* more transactions

* debug

* debug

* fix ticker

* fix test

* add cacheMu

* more tests

* fix test panic

* linters

* add statistics

* add statistics

* txitems data race

* fix tx list Has

* fix : lint

Co-authored-by: Arpit Temani <temaniarpit27@gmail.com>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>

* Reduce txArriveTimeout to 100ms

* init : remove exit on keystore err

* add : multiple keystore tolerance

* lint : fix linters

* chg : use standard logging

* chg : logging strings

* Added flags to run heimdall as a child process (#597)

* Added flags to run heimdall as a child process

* Fix: Lint

* Fix btcd package dependency for CI

* Update btcd package version

* Try removing ambigious importts

* dev: fix: lint fix for parallel tests

* remove delete for ambigious import

* Remove unwanted space

* go mod tidy

* try replace

* try replace

* use vendor

* rename vendor

* tidy

* vendor btcec

* clean up

* remove submodule

* remove submodule

* remove submodule

* remove submodule

* remove vendor & added replacer in test

* go mod tidy

* added replacer

* Update replacer

* Update replacer

* Merge branch 'develop' into run-heimdall-flags

* Skip TestGolangBindings

* Typo fix

* Remove unwanted changes

Co-authored-by: marcello33 <marcelloardizzone@hotmail.it>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>

* dev: chg: update PR template to include nodes audience check (#641)

* dev: chg: update PR template to include nodes audience check

* dev: chg: better description

* dev: chg: add entry to changes too

* sonarqube integration (#658)

* dev: add: sonarqube integration into security-ci

* dev: add: exclude java files from sonarqube analysis

* Merge branch 'qa' and 'master' into develop (#663)

* Adding in Mumbai/Mainnet precursor deb packaging for tests to use during upgrade(iterations to come)

* Added changes per discussion in PR, more changes may be necessary

* Adding prerelease true

* Disabling goreleaser

* Removing README swap file

* change bor_dir and add bor user for v0.3.0 release

* rollback bor user and use root

* metrics: handle equal to separated config flag (#596)

* metrics: handle  based config path

* internal/cli/server: add more context to logs

* use space separated flag and value in bor.service

* fixed static-nodes related buf (os independent) (#598)

* fixed static-nodes related buf (os independent)

* taking static-nodes as input if default not present

* Update default flags (#600)

* internal/cli/server: use geth's default for txpool.pricelimit and add comments

* builder/files: update config.toml for mainnet

* packaging/templates: update defaults for mainnet and mumbai

* internal/cli/server: skip overriding cache

* packaging/templates: update cache value for mainnet

* packaging/templates: update gcmode for archive mumbai node

* metrics: handle nil telemetry config (#601)

* resolve merge conflicts

* update go version in release.yml

* update goversion in makefile

* update Docker login for goreleaser-cross v1.19

* Cleanup for the packager to use git tag in the package profile naming. Added conditional check for directory structure, this is in prep for v0.3.1, as this will create a failure on upgrade path in package due to file exist

* added a toml configuration file with comments describing each flag (#607)

* added a toml configuration file with comments describing each flag

* internal/cli/server: update flag description

* docs/cli: update example config and description of flags

* docs: update new-cli docs

Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* Adding of 0.3.0 package changes, control file updates, postinst changes, and packager update

* added ancient datadir flag and toml field, need to decide on default value and update the conversion script

* updated toml files with ancient field

* Add support for new flags in new config.toml, which were present in old config.toml (#612)

* added HTTPTimeouts, and TrieTimeout flag in new tol, from old toml

* added RAW fields for these time.Duration flags

* updated the conversion script to support these extra 4 flags

* removed hcl and json config tests as we are only supporting toml config files

* updated toml files with cache.timeout field

* updated toml files with jsonrpc.timeouts field

* tests/bor: expect a call for latest checkpoint

* tests/bor: expect a call for latest checkpoint

* packaging/templates: update cache values for archive nodes

Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* remove unwanted code

* Fix docker publish authentication issue

In gorelease-cross 1.19+, dockerhub authentication will require docker
logion action followed by mounting docker config file. See
https://github.com/goreleaser/goreleaser-cross#github-actions.

* Revert "update Docker login for goreleaser-cross v1.19"

This reverts commit 4d19cf5342a439d98cca21b03c63a0bc075769cf.

* Bump version to stable

* Revert "Merge pull request #435 from maticnetwork/POS-553"

This reverts commit 657d262defc9c94e9513b3d45230492d8b20eac7, reversing
changes made to 88dbfa1c13c15464d3c1a3085a9f12d0ffb9b218.

* revert change for release for go1.19

* Add default values to CLI helper and docs

This commit adds default values to CLI helper and docs. When the default value of a string flag, slice string flag, or map string flag is empty, its helper message won't show any default value.

* Add a summary of new CLI in docs

* Updating packager as binutils changed version so that apt-get installs current versions

* Add state pruning to new CLI

* Minor wording fix in prune state description

* Bumping control file versions

* Mainnet Delhi fork

* Set version to stable

* change delhi hardfork block number

* handle future chain import and skip peer drop (#650)

* handle future chain import and skip peer drop

* add block import metric

* params: bump version to v0.3.3-stable

* Bump bor version in control files for v0.3.3 mainnet release

Co-authored-by: Daniel Jones <djones@polygon.technology>
Co-authored-by: Will Button <wbutton@polygon.technology>
Co-authored-by: Will Button <will@willbutton.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>
Co-authored-by: Daniel Jones <105369507+djpolygon@users.noreply.github.com>
Co-authored-by: Pratik Patil <pratikspatil024@gmail.com>
Co-authored-by: Arpit Temani <temaniarpit27@gmail.com>
Co-authored-by: Jerry <jerrycgh@gmail.com>

* CI: use matic-cli master branch

* trigger ci

* internal/cli/server : fix : added triesInMemory in config (#677)

* update requirements in README (#681)

* consensus/bor : add : devFakeAuthor flag

* core,eth,internal/cli,internal/ethapi: add --rpc.allow-unprotected-txs flag to allow txs to get replayed (for shadow node)

* internal/cli: add `skiptrace` flag for profiling (#715)

* internal/cli: add skiptrace flag

* docs: update docs for skiptrace flag

* Added flag in Status to wait for backend, and fixed panic issue. (#708)

* checking if backend is available during status call, and added a flag to wait if backend is not available

* added test for status command (does not cover the whole code)

* Revert "Reduce txArriveTimeout to 100ms" (#707)

This reverts commit 243d231fe45bc02f33678bb4f69e941167d7f466.

* consensus/bor : add : devFakeAuthor flag (#697)

* add check for empty lists in txpool (#704)

* add check

* linters

* dev: chg: POS-215 move sonarqube to own ci (#733)

* Added verbosity flag, supports log-level as well, but will remove that in future. (#722)

* changed log-level flag back to verbosity, and updated the conversion script

* supporting both verbosity and log-level, with a message to deprecat log-level

* converted verbosity to a int value

* Check if block is nil to prevent panic (#736)

* miner: use env for tracing instead of block object (#728)

* Add : mutex pprof profile (#731)

* add : mutex pprof profile

* rm : remove trace from default pprof profiles

* chg : commit tx logs from info to debug (#673)

* chg : commit tx logs from info to debug

* fix : minor changes

* chg : miner : commitTransactions-stats moved from info to debug

* lint : fix linters

* refactor logging

* miner : chg : UnauthorizedSignerError to debug

* lint : fix lint

* fix : log.Logger interface compatibility

---------

Co-authored-by: Evgeny Danienko <6655321@bk.ru>

* Add : commit details to bor version (#730)

* add : commit details to bor version

* fix : MAKEFILE

* undo : rm test-txpool-race

* rm : params/build_date

* rm : params/gitbranch and params/gitdate

* core,docs/cli,internal/cli/server: make docs

* builder,docs/cli,packaging: update toml files

* mardizzone/hotfix-snyk: remove vcs build when running snyk (#745)

* Feat : SetMaxPeers (#726)

* init : add admin.setMaxPeers and getMaxPeers

* lint : fix lint

* add : some comments

* Update wiki link (#762)

* Heimdall App implementation (#646)

* added support for miner.recommit flag (#743)

* interrupting commit experiment (#556)

* initial

* delete

* linters

* big benchmark

* benchmark big ints

* delay

* fix generate

* remove debug

* miner : chg : remove noempty check

* fix lints

* consensus/bor: handle unauthorized signer in consensus.Prepare (#651)

* fix : break loop fix

* lint : fix

* lint : more lint fix

* fix : skip TestEmptyWorkEthash and TestEmptyWorkClique

* add : metrics commitInterruptCounter

---------

Co-authored-by: Shivam Sharma <shivam691999@gmail.com>
Co-authored-by: Arpit Temani <temaniarpit27@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* internal/cli: added missing flags (#744)

* minor comment update

* added support for rpc.evmtimeout flag

* added support for vmdebug (EnablePreimageRecording) flag

* added support for jsonrpc.auth.(jwtsecret, addr, port, vhosts) flags

* added support for miner.recommit flag

* added support for gpo.maxheaderhistory and gpo.maxblockhistory flag

* Revert "added support for miner.recommit flag"

This reverts commit fcb722e4bf5bdda23d4c91da40ab95c9023a80c3.

* added pprof related flags (expect --pprof.cpuprofile - Write CPU profile to the given file)

* added support for --dev.gaslimit flag

* added support for --fdlimit flag

* added support for --netrestrict flag

* added support for --nodekey and --nodekeyhex flag

* added support for --vmodule, --log.json, --log.backtrace, and --log.debug flags

* fixed related lint errors

* fix lints from develop (few lints decided to appear from code that was untouched, weird)

* more weird lints from develop

* small precautionary fix

* small bug ;) fix in NetRestrict

* weird lints

* change vmdebug = true to vmdebug = false

* internal/ethapi: set rpc gas cap as default gas limit when creating access list

* add : testcase for CommitInterruptExperiment (#792)

* add : TestCommitInterruptExperimentBor

* lint : fix lint

* chg : add waitgroup

* dev: chg: continue on error when uploading snyk results to GH (#795)

* consensus/bor: revert handle unauthorized signer in consensus.Prepare

* Revert "consensus/bor: handle unauthorized signer in consensus.Prepare (#651)"

This reverts commit 9ce8c7de75a1b5021bb6f2b8086e813c8244b22c.

* eth/downloader/whitelist: skip future chain validation (#796)

* eth/downloader/whitelist: skip future chain validation

* eth/downloader/whitelist: fix tests for future chain import

* Setting up bor to use hosted 18.04 runner as ubuntu provided 18.04 runner is end of life

* Merge qa to develop (#814)

* Adding in Mumbai/Mainnet precursor deb packaging for tests to use during upgrade(iterations to come)

* Added changes per discussion in PR, more changes may be necessary

* Adding prerelease true

* Disabling goreleaser

* Removing README swap file

* change bor_dir and add bor user for v0.3.0 release

* rollback bor user and use root

* metrics: handle equal to separated config flag (#596)

* metrics: handle  based config path

* internal/cli/server: add more context to logs

* use space separated flag and value in bor.service

* fixed static-nodes related buf (os independent) (#598)

* fixed static-nodes related buf (os independent)

* taking static-nodes as input if default not present

* Update default flags (#600)

* internal/cli/server: use geth's default for txpool.pricelimit and add comments

* builder/files: update config.toml for mainnet

* packaging/templates: update defaults for mainnet and mumbai

* internal/cli/server: skip overriding cache

* packaging/templates: update cache value for mainnet

* packaging/templates: update gcmode for archive mumbai node

* metrics: handle nil telemetry config (#601)

* resolve merge conflicts

* update go version in release.yml

* update goversion in makefile

* update Docker login for goreleaser-cross v1.19

* Cleanup for the packager to use git tag in the package profile naming. Added conditional check for directory structure, this is in prep for v0.3.1, as this will create a failure on upgrade path in package due to file exist

* added a toml configuration file with comments describing each flag (#607)

* added a toml configuration file with comments describing each flag

* internal/cli/server: update flag description

* docs/cli: update example config and description of flags

* docs: update new-cli docs

Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* Adding of 0.3.0 package changes, control file updates, postinst changes, and packager update

* added ancient datadir flag and toml field, need to decide on default value and update the conversion script

* updated toml files with ancient field

* Add support for new flags in new config.toml, which were present in old config.toml (#612)

* added HTTPTimeouts, and TrieTimeout flag in new tol, from old toml

* added RAW fields for these time.Duration flags

* updated the conversion script to support these extra 4 flags

* removed hcl and json config tests as we are only supporting toml config files

* updated toml files with cache.timeout field

* updated toml files with jsonrpc.timeouts field

* tests/bor: expect a call for latest checkpoint

* tests/bor: expect a call for latest checkpoint

* packaging/templates: update cache values for archive nodes

Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* remove unwanted code

* Fix docker publish authentication issue

In gorelease-cross 1.19+, dockerhub authentication will require docker
logion action followed by mounting docker config file. See
https://github.com/goreleaser/goreleaser-cross#github-actions.

* Revert "update Docker login for goreleaser-cross v1.19"

This reverts commit 4d19cf5342a439d98cca21b03c63a0bc075769cf.

* Bump version to stable

* Revert "Merge pull request #435 from maticnetwork/POS-553"

This reverts commit 657d262defc9c94e9513b3d45230492d8b20eac7, reversing
changes made to 88dbfa1c13c15464d3c1a3085a9f12d0ffb9b218.

* revert change for release for go1.19

* Add default values to CLI helper and docs

This commit adds default values to CLI helper and docs. When the default value of a string flag, slice string flag, or map string flag is empty, its helper message won't show any default value.

* Add a summary of new CLI in docs

* Updating packager as binutils changed version so that apt-get installs current versions

* Add state pruning to new CLI

* Minor wording fix in prune state description

* Bumping control file versions

* Mainnet Delhi fork

* Set version to stable

* change delhi hardfork block number

* handle future chain import and skip peer drop (#650)

* handle future chain import and skip peer drop

* add block import metric

* params: bump version to v0.3.3-stable

* Bump bor version in control files for v0.3.3 mainnet release

* Added checks to RPC requests and introduced new flags to customise the parameters (#657)

* added a check to reject rpc requests with batch size > the one set using a newly added flag (rpcbatchlimit)

* added a check to reject rpc requests whose result size > the one set using a newly added flag (rpcreturndatalimit)

* updated the config files and docs

* chg : trieTimeout from 60 to 10 mins (#692)

* chg : trieTimeout from 60 to 10 mins

* chg : cache.timout to 10m from 1h in configs

* internal/cli/server : fix : added triesInMemory in config (#691)

* changed version from 0.3.0 to 0.3.4-beta (#693)

* fix nil state-sync issue, increase grpc limit (#695)

* Increase grpc message size limit in pprof

* consensus/bor/bor.go : stateSyncs init fixed [Fix #686]

* eth/filters: handle nil state-sync before notify

* eth/filters: update check

Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>

* core, tests/bor: add more tests for state-sync validation (#710)

* core: add get state sync function for tests

* tests/bor: add validation for state sync events post consensus

* Arpit/temp bor sync (#701)

* Increase grpc message size limit in pprof

* ReadBorReceipts improvements

* use internal function

* fix tests

* fetch geth upstread for ReadBorReceiptRLP

* Only query bor receipt when the query index is equal to # tx in block body

This change reduces the frequency of calling ReadBorReceipt and
ReadBorTransaction, which are CPU and db intensive.

* Revert "fetch geth upstread for ReadBorReceiptRLP"

This reverts commit 2e838a6b1313d26674f3a8df4b044e35dcbf35a0.

* Restore ReadBorReceiptRLP

* fix bor receipts

* remove unused

* fix lints

---------

Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>

* Revert "chg : trieTimeout from 60 to 10 mins (#692)" (#720)

This reverts commit 241843c7e7bb18e64d2e157fd6fbbd665f6ce9d9.

* Arpit/add execution pool 2 (#719)

* initial

* linters

* linters

* remove timeout

* update pool

* change pool size function

* check nil

* check nil

* fix tests

* Use execution pool from server in all handlers

* simplify things

* test fix

* add support for cli, config

* add to cli and config

* merge base branch

* debug statements

* fix bug

* atomic pointer timeout

* add apis

* update workerpool

* fix issues

* change params

* fix issues

* fix ipc issue

* remove execution pool from IPC

* revert

* fix tests

* mutex

* refactor flag and value names

* ordering fix

* refactor flag and value names

* update default ep size to 40

* fix bor start issues

* revert file changes

* debug statements

* fix bug

* update workerpool

* atomic pointer timeout

* add apis

* Merge branch 'add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* fix issues

* change params

* fix issues

* fix ipc issue

* remove execution pool from IPC

* revert

* merge base branch

* Merge branch 'add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* mutex

* fix tests

* Merge branch 'arpit/add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* Change default size of execution pool to 40

* refactor flag and value names

* fix merge conflicts

* ordering fix

* refactor flag and value names

* update default ep size to 40

* fix bor start issues

* revert file changes

* fix linters

* fix go.mod

* change sec to ms

* change default value for ep timeout

* fix node api calls

* comment setter for ep timeout

---------

Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* version change (#721)

* Event based pprof (#732)

* feature

* Save pprof to /tmp

---------

Co-authored-by: Jerry <jerrycgh@gmail.com>

* Cherry-pick changes from develop (#738)

* Check if block is nil to prevent panic (#736)

* miner: use env for tracing instead of block object (#728)

---------

Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>

* add max code init size check in txpool (#739)

* Revert "Event based pprof" and update version (#742)

* Revert "Event based pprof (#732)"

This reverts commit 22fa4033e8fabb51c44e8d2a8c6bb695a6e9285e.

* params: update version to 0.3.4-beta3

* packaging/templates: update bor version

* internal/ethapi :: Fix : newRPCTransactionFromBlockIndex

* Merge master to qa (#813)

* Merge qa to master (#750)

* Added checks to RPC requests and introduced new flags to customise the parameters (#657)

* added a check to reject rpc requests with batch size > the one set using a newly added flag (rpcbatchlimit)

* added a check to reject rpc requests whose result size > the one set using a newly added flag (rpcreturndatalimit)

* updated the config files and docs

* chg : trieTimeout from 60 to 10 mins (#692)

* chg : trieTimeout from 60 to 10 mins

* chg : cache.timout to 10m from 1h in configs

* internal/cli/server : fix : added triesInMemory in config (#691)

* changed version from 0.3.0 to 0.3.4-beta (#693)

* fix nil state-sync issue, increase grpc limit (#695)

* Increase grpc message size limit in pprof

* consensus/bor/bor.go : stateSyncs init fixed [Fix #686]

* eth/filters: handle nil state-sync before notify

* eth/filters: update check

Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>

* core, tests/bor: add more tests for state-sync validation (#710)

* core: add get state sync function for tests

* tests/bor: add validation for state sync events post consensus

* Arpit/temp bor sync (#701)

* Increase grpc message size limit in pprof

* ReadBorReceipts improvements

* use internal function

* fix tests

* fetch geth upstread for ReadBorReceiptRLP

* Only query bor receipt when the query index is equal to # tx in block body

This change reduces the frequency of calling ReadBorReceipt and
ReadBorTransaction, which are CPU and db intensive.

* Revert "fetch geth upstread for ReadBorReceiptRLP"

This reverts commit 2e838a6b1313d26674f3a8df4b044e35dcbf35a0.

* Restore ReadBorReceiptRLP

* fix bor receipts

* remove unused

* fix lints

---------

Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>

* Revert "chg : trieTimeout from 60 to 10 mins (#692)" (#720)

This reverts commit 241843c7e7bb18e64d2e157fd6fbbd665f6ce9d9.

* Arpit/add execution pool 2 (#719)

* initial

* linters

* linters

* remove timeout

* update pool

* change pool size function

* check nil

* check nil

* fix tests

* Use execution pool from server in all handlers

* simplify things

* test fix

* add support for cli, config

* add to cli and config

* merge base branch

* debug statements

* fix bug

* atomic pointer timeout

* add apis

* update workerpool

* fix issues

* change params

* fix issues

* fix ipc issue

* remove execution pool from IPC

* revert

* fix tests

* mutex

* refactor flag and value names

* ordering fix

* refactor flag and value names

* update default ep size to 40

* fix bor start issues

* revert file changes

* debug statements

* fix bug

* update workerpool

* atomic pointer timeout

* add apis

* Merge branch 'add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* fix issues

* change params

* fix issues

* fix ipc issue

* remove execution pool from IPC

* revert

* merge base branch

* Merge branch 'add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* mutex

* fix tests

* Merge branch 'arpit/add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* Change default size of execution pool to 40

* refactor flag and value names

* fix merge conflicts

* ordering fix

* refactor flag and value names

* update default ep size to 40

* fix bor start issues

* revert file changes

* fix linters

* fix go.mod

* change sec to ms

* change default value for ep timeout

* fix node api calls

* comment setter for ep timeout

---------

Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* version change (#721)

* Event based pprof (#732)

* feature

* Save pprof to /tmp

---------

Co-authored-by: Jerry <jerrycgh@gmail.com>

* Cherry-pick changes from develop (#738)

* Check if block is nil to prevent panic (#736)

* miner: use env for tracing instead of block object (#728)

---------

Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>

* add max code init size check in txpool (#739)

* Revert "Event based pprof" and update version (#742)

* Revert "Event based pprof (#732)"

This reverts commit 22fa4033e8fabb51c44e8d2a8c6bb695a6e9285e.

* params: update version to 0.3.4-beta3

* packaging/templates: update bor version

* params, packaging/templates: update bor version

---------

Co-authored-by: SHIVAM SHARMA <shivam691999@gmail.com>
Co-authored-by: Pratik Patil <pratikspatil024@gmail.com>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>
Co-authored-by: Arpit Temani <temaniarpit27@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>

* core, miner: add sub-spans for tracing (#753)

* core, miner: add sub-spans for tracing

* fix linters

* core: add logs for debugging

* core: add more logs to print tdd while reorg

* fix linters

* core: minor fix

* core: remove debug logs

* core: use different span for write block and set head

* core: use internal context for sending traces (#755)

* core: add : impossible reorg block dump (#754)

* add : impossible reorg block dump

* chg : 3 seperate files for impossoble reorg dump

* add : use exportBlocks method and RLP blocks before writing

* chg : small changes

* bump : go version from 1.19 to 1.20.1 (#761)

* Revert "bump : go version from 1.19 to 1.20.1 (#761)"

This reverts commit 4561012af9a31d20c2715ce26e4b39ca93420b8b.

* core/vm: use optimized bigint (#26021)

* Add holiman/big

* Fix linter

* Bump version to v0.3.5

* fix lints from develop (few lints decided to appear from code that was untouched, weird)

* upgrade crypto lib version (#770)

* bump dep : github.com/Masterminds/goutils to v1.1.1 (#769)

* mardizzone/pos-1313: bump crypto dependency (#772)

* dev: chg: bumd net dependency

* dev: chg: bump crypto dependency

* dev: chg: bump crypto dependency

* bump dep : golang.org/x/net to v0.8.0 (#771)

* Verify validator set against local contract on receiving an end-of-sprint block (#768)

* Verify validator set against local contract on receiving an end-of-sprint block

* Fix tests

* Respect error returned by ParseValidators

* Keep going back until a parent block presents

* core/txpool: implement DoS defenses from geth (#778)

* Hotfixes and deps bump (#776)

* dev: chg: bump deps

* internal/cli/server, rpc: lower down http readtimeout to 10s

* dev: chg: get p2p adapter

* dev: chg: lower down jsonrpc readtimeout to 10s

* cherry-pick txpool optimisation changes

* add check for empty lists in txpool (#704)

* add check

* linters

* core, miner: add empty instrumentation name for tracing

---------

Co-authored-by: Raneet Debnath <raneetdebnath10@gmail.com>
Co-authored-by: SHIVAM SHARMA <shivam691999@gmail.com>
Co-authored-by: Evgeny Danilenko <6655321@bk.ru>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* packaging,params: bump to v0.3.6 (#782)

* v0.3.6 fix (#787)

* Fix get validator set in header verifier

* chg : commit tx logs from info to debug (#673)

* chg : commit tx logs from info to debug

* fix : minor changes

* chg : miner : commitTransactions-stats moved from info to debug

* lint : fix linters

* refactor logging

* miner : chg : UnauthorizedSignerError to debug

* lint : fix lint

* fix : log.Logger interface compatibility

---------

Co-authored-by: Evgeny Danienko <6655321@bk.ru>

* Remove unnecessary sorting of valset from header in verification

* dev: chg: version bump

---------

Co-authored-by: SHIVAM SHARMA <shivam691999@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: marcello33 <marcelloardizzone@hotmail.it>

* core: improve locks in txpool (#807)

* added a write lock to the txs.filter method and a read lock to the txs.reheap method - both of which are called by Filter during reorg adjustments to txpool

* txpool reorg locks

* more locks

* locks

* linters

* params, packaging: update version for v0.3.8-beta release

* core: add logs in reheap

---------

Co-authored-by: Alex <dalexwatts@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>

* Merge qa to master (#808)

* Added checks to RPC requests and introduced new flags to customise the parameters (#657)

* added a check to reject rpc requests with batch size > the one set using a newly added flag (rpcbatchlimit)

* added a check to reject rpc requests whose result size > the one set using a newly added flag (rpcreturndatalimit)

* updated the config files and docs

* chg : trieTimeout from 60 to 10 mins (#692)

* chg : trieTimeout from 60 to 10 mins

* chg : cache.timout to 10m from 1h in configs

* internal/cli/server : fix : added triesInMemory in config (#691)

* changed version from 0.3.0 to 0.3.4-beta (#693)

* fix nil state-sync issue, increase grpc limit (#695)

* Increase grpc message size limit in pprof

* consensus/bor/bor.go : stateSyncs init fixed [Fix #686]

* eth/filters: handle nil state-sync before notify

* eth/filters: update check

Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>

* core, tests/bor: add more tests for state-sync validation (#710)

* core: add get state sync function for tests

* tests/bor: add validation for state sync events post consensus

* Arpit/temp bor sync (#701)

* Increase grpc message size limit in pprof

* ReadBorReceipts improvements

* use internal function

* fix tests

* fetch geth upstread for ReadBorReceiptRLP

* Only query bor receipt when the query index is equal to # tx in block body

This change reduces the frequency of calling ReadBorReceipt and
ReadBorTransaction, which are CPU and db intensive.

* Revert "fetch geth upstread for ReadBorReceiptRLP"

This reverts commit 2e838a6b1313d26674f3a8df4b044e35dcbf35a0.

* Restore ReadBorReceiptRLP

* fix bor receipts

* remove unused

* fix lints

---------

Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>

* Revert "chg : trieTimeout from 60 to 10 mins (#692)" (#720)

This reverts commit 241843c7e7bb18e64d2e157fd6fbbd665f6ce9d9.

* Arpit/add execution pool 2 (#719)

* initial

* linters

* linters

* remove timeout

* update pool

* change pool size function

* check nil

* check nil

* fix tests

* Use execution pool from server in all handlers

* simplify things

* test fix

* add support for cli, config

* add to cli and config

* merge base branch

* debug statements

* fix bug

* atomic pointer timeout

* add apis

* update workerpool

* fix issues

* change params

* fix issues

* fix ipc issue

* remove execution pool from IPC

* revert

* fix tests

* mutex

* refactor flag and value names

* ordering fix

* refactor flag and value names

* update default ep size to 40

* fix bor start issues

* revert file changes

* debug statements

* fix bug

* update workerpool

* atomic pointer timeout

* add apis

* Merge branch 'add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* fix issues

* change params

* fix issues

* fix ipc issue

* remove execution pool from IPC

* revert

* merge base branch

* Merge branch 'add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* mutex

* fix tests

* Merge branch 'arpit/add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* Change default size of execution pool to 40

* refactor flag and value names

* fix merge conflicts

* ordering fix

* refactor flag and value names

* update default ep size to 40

* fix bor start issues

* revert file changes

* fix linters

* fix go.mod

* change sec to ms

* change default value for ep timeout

* fix node api calls

* comment setter for ep timeout

---------

Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* version change (#721)

* Event based pprof (#732)

* feature

* Save pprof to /tmp

---------

Co-authored-by: Jerry <jerrycgh@gmail.com>

* Cherry-pick changes from develop (#738)

* Check if block is nil to prevent panic (#736)

* miner: use env for tracing instead of block object (#728)

---------

Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>

* add max code init size check in txpool (#739)

* Revert "Event based pprof" and update version (#742)

* Revert "Event based pprof (#732)"

This reverts commit 22fa4033e8fabb51c44e8d2a8c6bb695a6e9285e.

* params: update version to 0.3.4-beta3

* packaging/templates: update bor version

* internal/ethapi :: Fix : newRPCTransactionFromBlockIndex

* fix: remove assignment for bor receipt

---------

Co-authored-by: SHIVAM SHARMA <shivam691999@gmail.com>
Co-authored-by: Pratik Patil <pratikspatil024@gmail.com>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>
Co-authored-by: Arpit Temani <temaniarpit27@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>

* Setting up bor to use hosted 18.04 runner as ubuntu provided 18.04 runner is end of life

---------

Co-authored-by: SHIVAM SHARMA <shivam691999@gmail.com>
Co-authored-by: Pratik Patil <pratikspatil024@gmail.com>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>
Co-authored-by: Arpit Temani <temaniarpit27@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>
Co-authored-by: Martin Holst Swende <martin@swende.se>
Co-authored-by: marcello33 <marcelloardizzone@hotmail.it>
Co-authored-by: Raneet Debnath <raneetdebnath10@gmail.com>
Co-authored-by: Raneet Debnath <35629432+Raneet10@users.noreply.github.com>
Co-authored-by: Alex <dalexwatts@gmail.com>
Co-authored-by: Daniel Jones <djones@polygon.technology>

* core: remove duplicate tests

* miner: use get validators by hash in tests

---------

Co-authored-by: Daniel Jones <djones@polygon.technology>
Co-authored-by: Will Button <wbutton@polygon.technology>
Co-authored-by: Will Button <will@willbutton.com>
Co-authored-by: Daniel Jones <105369507+djpolygon@users.noreply.github.com>
Co-authored-by: Pratik Patil <pratikspatil024@gmail.com>
Co-authored-by: Arpit Temani <temaniarpit27@gmail.com>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: SHIVAM SHARMA <shivam691999@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>
Co-authored-by: Martin Holst Swende <martin@swende.se>
Co-authored-by: marcello33 <marcelloardizzone@hotmail.it>
Co-authored-by: Raneet Debnath <raneetdebnath10@gmail.com>
Co-authored-by: Raneet Debnath <35629432+Raneet10@users.noreply.github.com>
Co-authored-by: Alex <dalexwatts@gmail.com>

---------

Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Raneet Debnath <raneetdebnath10@gmail.com>
Co-authored-by: Arpit Temani <temaniarpit27@gmail.com>
Co-authored-by: SHIVAM SHARMA <shivam691999@gmail.com>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>
Co-authored-by: builder90210 <anonbuilder90210@gmail.com>
Co-authored-by: Krishna Upadhyaya <KRISHNAU1604@GMAIL.COM>
Co-authored-by: Daniel Jones <djones@polygon.technology>
Co-authored-by: Will Button <wbutton@polygon.technology>
Co-authored-by: Will Button <will@willbutton.com>
Co-authored-by: Daniel Jones <105369507+djpolygon@users.noreply.github.com>
Co-authored-by: Pratik Patil <pratikspatil024@gmail.com>
Co-authored-by: Raneet Debnath <35629432+Raneet10@users.noreply.github.com>
Co-authored-by: Didi <github@d10r.net>
Co-authored-by: ephess <e+github@ephess.nz>
Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>
Co-authored-by: Martin Holst Swende <martin@swende.se>
Co-authored-by: Alex <dalexwatts@gmail.com>

* dev: chg: version bump for v0.3.9-beta (#825)

* eth/fetcher: if peers never respond, drop them (#837) (#844)

* dev: chg: bump version to beta-2 for v0.3.9 (#845)

* rm : disable interruptCommit on txsCh select case (#848)

* dev: chg: version bump (#849)

* fix : go-routine leak in commitInterrupt channel (#851)

* fix : go-routine leak in commitInterrupt channel

* fix : fix lint

* rm : remove t.Parallel() from TestGenerateBlockAndImport tests

* fix : minor optimisations in test

* fix : BenchmarkBorMining

* dev: chg: beta version bump (#853)

* dev: chg: bump version to stable

* dev: chg: contracts branch

* dev: fix: linter

* dev: chg: update templum/govulncheck-action to fix execution

---------

Co-authored-by: SHIVAM SHARMA <shivam691999@gmail.com>
Co-authored-by: Pratik Patil <pratikspatil024@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>
Co-authored-by: Arpit Temani <temaniarpit27@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>
Co-authored-by: Martin Holst Swende <martin@swende.se>
Co-authored-by: Raneet Debnath <raneetdebnath10@gmail.com>
Co-authored-by: Raneet Debnath <35629432+Raneet10@users.noreply.github.com>
Co-authored-by: Alex <dalexwatts@gmail.com>
Co-authored-by: Daniel Jones <djones@polygon.technology>
Co-authored-by: builder90210 <anonbuilder90210@gmail.com>
Co-authored-by: Krishna Upadhyaya <KRISHNAU1604@GMAIL.COM>
Co-authored-by: Will Button <wbutton@polygon.technology>
Co-authored-by: Will Button <will@willbutton.com>
Co-authored-by: Daniel Jones <105369507+djpolygon@users.noreply.github.com>
Co-authored-by: Didi <github@d10r.net>
Co-authored-by: ephess <e+github@ephess.nz>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants