hive issueshttps://gitlab.syncad.com/hive/hive/-/issues2024-03-13T14:58:43Zhttps://gitlab.syncad.com/hive/hive/-/issues/668Not clear enough error messages in some specific cases2024-03-13T14:58:43ZMateusz KudelaNot clear enough error messages in some specific casesWhile doing tests for `escrow_operation` I ran into a problem where error message wasn't clear - it tells that there is a problem with `escrow_object` but it doesn't tell exactly what's wrong. This happened where I tried to resolve alrea...While doing tests for `escrow_operation` I ran into a problem where error message wasn't clear - it tells that there is a problem with `escrow_object` but it doesn't tell exactly what's wrong. This happened where I tried to resolve already fully resolved escrow. According to @ABW there is many similar situations to this case in hive. Error message:
```
E helpy.exceptions.RequestError: {'send': '{"jsonrpc": "2.0", "id": 0, "method": "escrow_release", "params": ["alice", "carol", "bob", "carol", "alice", 0, "25.000 TBD", "25.000 TESTS", true]}', 'error': '{"id":0,"error":{"code":1,"message":"0 exception: unspecified\\n0 exception: unspecified\\nunknown key: [\\"alice\\",0] of type: boost::tuples::tuple<hive::protocol::fixed_string_impl<fc::erpair<unsigned long, unsigned long> >, unsigned int, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type> at multiindex lookup: hive::chain::escrow_object.index<hive::chain::by_from_id>\\n {\\"kt\\":\\"boost::tuples::tuple<hive::protocol::fixed_string_impl<fc::erpair<unsigned long, unsigned long> >, unsigned int, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type>\\",\\"multiindex\\":\\"hive::chain::escrow_object\\",\\"indexed_by_typename\\":\\"hive::chain::by_from_id\\",\\"key\\":[\\"alice\\",0]}\\n chainbase.hpp:1179 get:0 exception: unspecified\\nunknown key: [\\"alice\\",0] of type: boost::tuples::tuple<hive::protocol::fixed_string_impl<fc::erpair<unsigned long, unsigned long> >, unsigned int, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type> at multiindex lookup: hive::chain::escrow_object.index<hive::chain::by_from_id>\\n {\\"kt\\":\\"boost::tuples::tuple<hive::protocol::fixed_string_impl<fc::erpair<unsigned long, unsigned long> >, unsigned int, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type>\\",\\"multiindex\\":\\"hive::chain::escrow_object\\",\\"indexed_by_typename\\":\\"hive::chain::by_from_id\\",\\"key\\":[\\"alice\\",0]}\\n chainbase.hpp:1179 get: (unformatted args: (\\"data\\",{\\"id\\":252,\\"error\\":{\\"code\\":-32000,\\"message\\":\\"0 exception: unspecified\\\\nunknown key: [\\\\\\"alice\\\\\\",0] of type: boost::tuples::tuple<hive::protocol::fixed_string_impl<fc::erpair<unsigned long, unsigned long> >, unsigned int, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type> at multiindex lookup: hive::chain::escrow_object
```https://gitlab.syncad.com/hive/hive/-/issues/627BLS signatures on Hive? (feature request + research)2023-12-16T10:48:50ZGandalfBLS signatures on Hive? (feature request + research)Lets take a closer look on that. This issue is to gather relevant information.
See: https://hive.blog/vsc/@vsc.network/the-future-of-multisigs-and-cryptography-on-hiveLets take a closer look on that. This issue is to gather relevant information.
See: https://hive.blog/vsc/@vsc.network/the-future-of-multisigs-and-cryptography-on-hivehttps://gitlab.syncad.com/hive/hive/-/issues/620Unification of comment related virtual operations2024-02-27T21:12:58ZMichal ZanderUnification of comment related virtual operationsThere is 10 operations strictly related to comment_operation:
```
0 "hive::protocol::vote_operation"
17 "hive::protocol::delete_comment_operation"
19 "hive::protocol::comment_options_operation"
51 "hive::protocol::author_reward_operati...There is 10 operations strictly related to comment_operation:
```
0 "hive::protocol::vote_operation"
17 "hive::protocol::delete_comment_operation"
19 "hive::protocol::comment_options_operation"
51 "hive::protocol::author_reward_operation"
52 "hive::protocol::curation_reward_operation"
53 "hive::protocol::comment_reward_operation"
61 "hive::protocol::comment_payout_update_operation"
63 "hive::protocol::comment_benefactor_reward_operation"
72 "hive::protocol::effective_comment_vote_operation"
73 "hive::protocol::ineffective_delete_comment_operation"
```
and curation_reward_operations is the only one of them that has diffrent keys for permlink and author (comment_author and comment_permlink), my suggestion is to change the 'comment_author,comment_permlink' to 'author,permlink' as it is in other related operations.Bartek WronaBartek Wronahttps://gitlab.syncad.com/hive/hive/-/issues/544refacxctor database_api to reduce redundancy2023-07-10T11:32:07ZKrzysztof Mochockikmochocki@syncad.comrefacxctor database_api to reduce redundancysearching for phrase ` && args.limit <= ` reveals that limit check is compeletly redundant and i think it should be moved to separate funtion.
Here i paste whole line that is redundant:
`FC_ASSERT( 0 < args.limit && args.limit <= DATAB...searching for phrase ` && args.limit <= ` reveals that limit check is compeletly redundant and i think it should be moved to separate funtion.
Here i paste whole line that is redundant:
`FC_ASSERT( 0 < args.limit && args.limit <= DATABASE_API_SINGLE_QUERY_LIMIT, "limit not set or too big" );`https://gitlab.syncad.com/hive/hive/-/issues/450Bucket_seconds argument in get_market_history accepts only couple values2023-02-15T13:58:22ZMateusz KudelaBucket_seconds argument in get_market_history accepts only couple valuesWhen calling `get_market_history` method from account_history API with `bucket_seconds` argument with other value than `15, 60, 300, 3600 or 86400` doesn't return anything. User should be aware that this argument accepts only chosen valu...When calling `get_market_history` method from account_history API with `bucket_seconds` argument with other value than `15, 60, 300, 3600 or 86400` doesn't return anything. User should be aware that this argument accepts only chosen values. As @ABW recommended, appropriate error should be thrown when method is called with value that don't match values `15, 60, 300, 3600 or 86400`.https://gitlab.syncad.com/hive/hive/-/issues/443Build hived with Intel compilers2023-01-22T12:19:41ZForkyBuild hived with Intel compilersI have access to intel compilers and I can give it a go for learning purposes and provide benchmark results or other discovered problems on the compilation setup/run.
NOTE: I can't provide compiled binaries.
Currently using an intel 8th...I have access to intel compilers and I can give it a go for learning purposes and provide benchmark results or other discovered problems on the compilation setup/run.
NOTE: I can't provide compiled binaries.
Currently using an intel 8th gen CPU for all tests under ubuntu 22 VM.
So far progress:
1. Install Intel compiler (using 2023.0 version, IntelĀ® oneAPI DPC++/C++ Compiler)
2. Load compiler variables (source /opt/intel/oneapi/setvars.sh intel64)
3. Add CMake detection into CMakeLists.txt (find_package(IntelDPCPP REQUIRED))
4. ...? (will add as I go)ForkyForkyhttps://gitlab.syncad.com/hive/hive/-/issues/402When using --stop-replay-at-block do we want to always stop?2022-10-23T00:38:08ZForkyWhen using --stop-replay-at-block do we want to always stop?I was doing some tests on replays of snapshots when looking at the --stop-replay-at-block found that if we use it and don't specify --exit-before-sync, then it will not stop actually, and will start the p2p plugin and hang (in my case I ...I was doing some tests on replays of snapshots when looking at the --stop-replay-at-block found that if we use it and don't specify --exit-before-sync, then it will not stop actually, and will start the p2p plugin and hang (in my case I had the block_log ahead of the replay state).
Returning true here will cause it to stop as far as I understood/tested:
https://gitlab.syncad.com/hive/hive/-/commit/009356d859cd273122ae84e11d5ed0d93357bfd7
Just need some forensic review from who knows the code more, just in case I missed something.https://gitlab.syncad.com/hive/hive/-/issues/334Invalid Docker Image2022-08-05T09:52:46ZKrzysztof Mochockikmochocki@syncad.comInvalid Docker Imagein relation to: https://gitlab.syncad.com/hive/hive/-/merge_requests/534
in `.message_format_tests` [invalid image](https://gitlab.syncad.com/hive/hive/blob/0366631adb1f6e6d40da28e63ab00b1d3f7fbd9c/.gitlab-ci.yaml#L486) has been used, i...in relation to: https://gitlab.syncad.com/hive/hive/-/merge_requests/534
in `.message_format_tests` [invalid image](https://gitlab.syncad.com/hive/hive/blob/0366631adb1f6e6d40da28e63ab00b1d3f7fbd9c/.gitlab-ci.yaml#L486) has been used, it should be same as in `transaction_serialization_mainnet_tests`, which is our internal imageMateusz KudelaMateusz Kudelahttps://gitlab.syncad.com/hive/hive/-/issues/223Make RC plugin less noisy2022-05-27T12:40:46ZGandalfMake RC plugin less noisyRC plugin currently emits tons of spammy messages during the replay, such as:
`Accepting transaction by alice, has 1 RC, needs 2 RC, block 3, witness bob.`
Quick solution is to make it go to the debug log.
Another thing is do we reall...RC plugin currently emits tons of spammy messages during the replay, such as:
`Accepting transaction by alice, has 1 RC, needs 2 RC, block 3, witness bob.`
Quick solution is to make it go to the debug log.
Another thing is do we really need to check on RC during replay?
That's plenty of checks that were done before, and non consensus anyway.Andrzej LisakAndrzej Lisakhttps://gitlab.syncad.com/hive/hive/-/issues/198We need more intel about what's going on with blocks / transactions / operati...2021-11-16T13:36:42ZGandalfWe need more intel about what's going on with blocks / transactions / operations / mempoolThat would help with getting a better view on situations like this:
```
2021-11-15T14:45:20.680239 block_producer.cpp:178 apply_pending_transa ] Postponed 206 transactions due to block size limit
2021-11-15T14:45:20.735940 p2p_plu...That would help with getting a better view on situations like this:
```
2021-11-15T14:45:20.680239 block_producer.cpp:178 apply_pending_transa ] Postponed 206 transactions due to block size limit
2021-11-15T14:45:20.735940 p2p_plugin.cpp:704 broadcast_block ] Broadcasting block #59199619
2021-11-15T14:45:20.737028 witness_plugin.cpp:344 block_production_loo ] Generated block #59199619 with timestamp 2021-11-15T14:45:21 at time 2021-11-15T14:45:21
```
Currently in "live sync" we see informations like this:
```
2021-11-16T12:56:06.013 p2p_plugin.cpp:187 handle_block ] Got 200 transactions on block 59226170 by gtg -- Block Time Offset: 13 ms
```
Would be great to have a better info on:
- number of transactions
- number of operations
- size of block in bytes
- with some extra switch even more data on mempool
also `--set-benchmark-interval` could be extended to provide statistical information on data processed within given interval:
- avg block size
- max block size
- number of transactions
- number of operations
Some of that info we have because of periodic RocksDB reports (if `account_history_rocksdb` plugin is enabled), some are logged during `hive sync`, still having that available at seed nodes could help with ad-hoc State-of-Hive analysis.https://gitlab.syncad.com/hive/hive/-/issues/130fc maintenance2022-12-12T16:17:06ZGandalffc maintenanceWhat is a current status of "our" fc?
How it compares to:
https://github.com/EOSIO/fc (see `master` and `eosio` branches)
and
https://github.com/bitshares/bitshares-fc
( Also maybe @abit can help here )
Any bug fixes / improvements we c...What is a current status of "our" fc?
How it compares to:
https://github.com/EOSIO/fc (see `master` and `eosio` branches)
and
https://github.com/bitshares/bitshares-fc
( Also maybe @abit can help here )
Any bug fixes / improvements we could benefit from?
Potential reduction of maintenance efforts by reducing gaps between Hive / BitShares / EOS versions?https://gitlab.syncad.com/hive/hive/-/issues/59Increment major version, while not breaking the chain2020-08-18T11:35:13ZGandalfIncrement major version, while not breaking the chainHF24 for Hive is a major release when it comes to internal improvements,
so IMHO it deserves not only codename "Eclipse" but also major version increment.
Final release version should look like this:
```
+--- major
v
1.24.0
^ ^---...HF24 for Hive is a major release when it comes to internal improvements,
so IMHO it deserves not only codename "Eclipse" but also major version increment.
Final release version should look like this:
```
+--- major
v
1.24.0
^ ^--- patch (updates within given hardfork version, security patches, improvements)
|
+--- minor (equals to hardfork number)
```
We can't go away with minor version that equals fork number (see `HIVE_BLOCKCHAIN_VERSION`)
so while we are tagging current versions as `v1.0.1` and so on on git repositories,
lets change to final once we are ready, so we don't have to "fix what's not broken"
(by dealing with invalid minor now)Mariusz TrelaMariusz Trela