Commit graph

73 commits

Author SHA1 Message Date
pbattu123
0b280882af
Merge beatrice(GPOS changes) with master (#270)
* Created unit test for #325

* remove needless find()

* issue - 154: Don't allow to vote when vesting balance is 0

* Increase block creation timeout to 2500ms

* increase delay for node connection

* remove cache from cli get_account

* add cli tests framework

* Adjust newly merged code to new API

* Merged changes from Bitshares PR 1036

* GRPH-76 - Short-cut long sequences of missed blocks

Fixes database::update_global_dynamic_data to speed up counting missed blocks.
(This also fixes a minor issue with counting - the previous algorithm would skip missed blocks for the witness who signed the first block after the gap.)

* Improved resilience of block database against corruption

* Moved reindex logic into database / chain_database, make use of additional blocks in block_database

Fixed tests wrt db.open

* Enable undo + fork database for final blocks in a replay

Dont remove blocks from block db when popping blocks, handle edge case in replay wrt fork_db, adapted unit tests

* Log starting block number of replay

* Prevent unsigned integer underflow

* Fixed lock detection

* Dont leave _data_dir empty if db is locked

* Writing the object_database is now almost atomic

* Improved consistency check for block_log

* Cut back block_log index file if inconsistent

* Fixed undo_database

* Added test case for broken merge on empty undo_db

* exclude second undo_db.enable() call in some cases

* Add missing change

* change bitshares to core in message

* Merge pull request #938 from bitshares/fix-block-storing

Store correct block ID when switching forks

* Fixed integer overflow issue

* Fix for for history ID mismatch ( Bitshares PR #875 )

* Update the FC submodule with the changes for GRPH-4

* Merged Bitshares PR #1462 and compilation fixes

* Support/gitlab (#123)

* Updated gitlab process

* Fix undefined references in cli test

* Updated GitLab CI

* Fix #436 object_database created outside of witness data directory

* supplement more comments on database::_opened variable

* prevent segfault when destructing application obj

* Fixed test failures and compilation issue

* minor performance improvement

* Added comment

* Fix compilation in debug mode

* Fixed duplicate ops returned from get_account_history

* Fixed account_history_pagination test

* Removed unrelated comment

* Update to fixed version of fc

* Skip auth check when pushing self-generated blocks

* Extract public keys before pushing a transaction

* Dereference chain_database shared_ptr

* Updated transaction::signees to mutable

and
* updated get_signature_keys() to return a const reference,
* get_signature_keys() will update signees on first call,
* modified test cases and wallet.cpp accordingly,
* no longer construct a new signed_transaction object before pushing

* Added get_asset_count API

* No longer extract public keys before pushing a trx

and removed unused new added constructor and _get_signature_keys() function from signed_transaction struct

* changes to withdraw_vesting feature(for both cdd and GPOS)

* Comments update

* update to GPOS hardfork ref

* Remove leftover comment from merge

* fix for get_vesting_balance API call

* braces update

* Allow sufficient space for new undo_session

* Throw for deep nesting

* node.cpp: Check the attacker/buggy client before updating items ids

The peer is an attacker or buggy, which means the item_hashes_received is
not correct.

Move the check before updating items ids to save some time in this case.

* Create .gitlab-ci.yml

* Added cli_test to CI

* fixing build errors (#150)

* fixing build errors

vest type correction

* fixing build errors

vest type correction

* fixes 

new Dockerfile

* vesting_balance_type correction

vesting_balance_type changed to normal

* gcc5 support to Dockerfile

gcc5 support to Dockerfile

* use random port numbers in app_test (#154)

* Changes to compiple with GCC 7(Ubuntu 18.04)

* proposal fail_reason bug fixed (#157)

* Added Sonarcloud code_quality to CI (#159)

* Added sonarcloud analysis (#158)

* changes to have separate methods and single withdrawl fee for multiple vest objects

* 163-fix, Return only non-zero vesting balances

* Support/gitlab develop (#168)

* Added code_quality to CI

* Update .gitlab-ci.yml

* Point to PBSA/peerplays-fc commit f13d063 (#167)

* [GRPH-3] Additional cli tests (#155)

* Additional cli tests

* Compatible with latest fc changes

* Fixed Spacing issues

* [GRPH-106] Added voting tests (#136)

* Added more voting tests

* Added additional option

* Adjust p2p log level (#180)

* merge gpos to develop (#186)

* issue - 154: Don't allow to vote when vesting balance is 0

* changes to withdraw_vesting feature(for both cdd and GPOS)

* Comments update

* update to GPOS hardfork ref

* fix for get_vesting_balance API call

* braces update

* Create .gitlab-ci.yml

* fixing build errors (#150)

* fixing build errors

vest type correction

* fixing build errors

vest type correction

* fixes 

new Dockerfile

* vesting_balance_type correction

vesting_balance_type changed to normal

* gcc5 support to Dockerfile

gcc5 support to Dockerfile

* Changes to compiple with GCC 7(Ubuntu 18.04)

* changes to have separate methods and single withdrawl fee for multiple vest objects

* 163-fix, Return only non-zero vesting balances

* Revert "Revert "GPOS protocol""

This reverts commit 67616417b7.

* add new line needed to gpos hardfork file

* comment temporally cli_vote_for_2_witnesses until refactor or delete

* fix gpos tests

* fix gitlab-ci conflict

* Fixed few error messages

* error message corrections at other places

* Updated FC repository to peerplays-network/peerplays-fc (#189)

Point to fc commit hash 6096e94 [latest-fc branch]

* Project name update in Doxyfile (#146)

* changes to allow user to vote in each sub-period

* Fixed GPOS vesting factor issue when proxy is set

* Added unit test for proxy voting

* Review changes

* changes to update last voting time

* resolve merge conflict

* unit test changes and also separated GPOS test suite

* delete unused variables

* removed witness check

* eliminate time gap between two consecutive vesting periods

* deleted GPOS specific test suite and updated gpos tests

* updated GPOS hf

* Fixed dividend distribution issue and added test case

* fix flag

* clean newlines gpos_tests

* adapt gpos_tests to changed flag

* Fix to roll in GPOS rules, carry votes from 6th sub-period

* check was already modified

* comments updated

* updated comments to the benefit of reviewer

* Added token symbol name in error messages

* Added token symbol name in error messages (#204)

* case 1: Fixed last voting time issue

* get_account bug fixed

* Fixed flag issue

* Fixed spelling issue

* remove non needed gcc5 changes to dockerfile

* GRPH134- High CPU Issue, websocket changes (#213)

* update submodule branch to refer to the latest commit on latest-fc branch (#214)

* Improve account maintenance performance (#130)

* Improve account maintenance performance

* merge fixes

* Fixed merge issue

* Fixed indentations and extra ';'

* Update CI for syncing gitmodules (#216)

* Added logging for the old update_expired_feeds bug

The old bug is https://github.com/cryptonomex/graphene/issues/615 .

Due to the bug, `update_median_feeds()` and `check_call_orders()`
will be called when a feed is not actually expired, normally this
should not affect consensus since calling them should not change
any data in the state.

However, the logging indicates that `check_call_orders()` did
change some data under certain circumstances, specifically, when
multiple limit order matching issue (#453) occurred at same block.
* https://github.com/bitshares/bitshares-core/issues/453

* Minor performance improvement for price::is_null()

* Use static refs in db_getter for immutable objects

* Minor performance improvement for db_maint

* Minor code updates for asset_evaluator.cpp

* changed an `assert()` to `FC_ASSERT()`
* replaced one `db.get(asset_id_type())` with `db.get_core_asset()`
* capture only required variables for lambda

* Improve update_expired_feeds performance #1093

* Change static refs to member pointers of db class

* Added getter for witness schedule object

* Added getter for core dynamic data object

* Use getters

* Removed unused variable

* Add comments for update_expired_feeds in db_block

* Minor refactory asset_create_evaluator::do_apply()

* Added FC_ASSERT for dynamic data id of core asset

* Added header inclusions in db_management.cpp

* fix global objects usage during replay

* Logging config parsing issue

* added new files

* compilation fix

* Simplified code in database::pay_workers()

* issue with withdrawl

* Added unit test for empty account history

* set extensions default values

* Update GPOS hardfork date and don't allow GPOS features before hardfork time

* refer to latest commit of latest-fc branch (#224)

* account name or id support in all database api

* asset id or name support in all asset APIs

* Fixed compilation issues

* Fixed alignment issues

* Externalized some API templates

* Externalize serialization of blocks, tx, ops

* Externalized db objects

* Externalized genesis serialization

* Externalized serialization in protocol library

* Undo superfluous change

* remove default value for extension parameter

* fix compilation issues

* GRPH-46-Quit_command_cliwallet

* removed multiple function definition

* Fixed chainparameter update proposal issue

* Move GPOS withdraw logic to have single transaction(also single fee) and update API

* Added log for authorization failure of proposal operations

* Votes consideration on GPOS activation

* bump fc version

* fix gpos tests

* Bump fc version

* Updated gpos/voting_tests

* Fixed withdraw vesting bug

* Added unit test

* Update hardfork date for TESTNET, sync fc module and update logs

* avoid wlog as it filling up space

* Beatrice hot fix(sync issue fix)

* gpos tests fix

* Set hardfork date to Jan5th on TESTNET

Co-authored-by: Peter Conrad <github.com@quisquis.de>
Co-authored-by: John M. Jones <jmjatlanta@gmail.com>
Co-authored-by: obucinac <obucinac@users.noreply.github.com>
Co-authored-by: Bobinson K B <bobinson@gmail.com>
Co-authored-by: Alfredo Garcia <oxarbitrage@gmail.com>
Co-authored-by: Miha Čančula <miha@noughmad.eu>
Co-authored-by: Abit <abitmore@users.noreply.github.com>
Co-authored-by: Roshan Syed <r.syed@pbsa.info>
Co-authored-by: Sandip Patel <sandip@knackroot.com>
Co-authored-by: RichardWeiYang <richard.weiyang@gmail.com>
Co-authored-by: gladcow <jahr@yandex.ru>
Co-authored-by: satyakoneru <satyakoneru.iiith@gmail.com>
2020-02-07 21:23:08 +05:30
Eric Frias
5343c073bd Delay deletion of completed/canceled events to avoid an error producing
blocks when a betting market group with no betting markets is canceled.
2018-04-17 13:17:38 -04:00
Eric Frias
3b3a0905ff Change the behavior of the betting markets from being controlled by
a collection of flags (is_live, is_closed) to a single status field.
The status changes in an event can trickle down to the market groups,
and the status changes in market groups can bubble up to events.
2018-02-07 10:16:30 -05:00
Eric Frias
b505c375af Finish delayed (live) betting.
Remove the ability to change the event of a betting market group after creation.
2017-08-15 18:44:09 -04:00
Roman Olearski
d3482f3a08 Merge branch 'rock-paper-scissors' of https://bitbucket.org/peerplaysblockchain/peerplays-graphene into betting-merge 2017-07-13 16:07:30 +02:00
SynaptiCAD User
80e1be9ee0 [DLN] fixed missed_count for participation_rate calculateion on RNG, also hopefully fix missed block count for individual witnesses 2017-05-30 14:50:49 -04:00
Roman Olearski
27b5c978db completing scheduled (restored) witnesses, setting as default 2017-04-21 14:24:40 +02:00
Roman Olearski
90ec694446 integrating scheduled (old) and shuffled (current) witnesses 2017-04-19 20:31:00 +02:00
Abit
2c05590cd4 Fix clear_expired_transactions memory leak #256 2017-04-09 00:20:13 +02:00
Roman Olearski
7f36b261bf Merge remote-tracking branch 'origin/dividends' into rock-paper-scissors
Adding new chain parameters
Distribute prize money when a tournament ends
2016-11-02 15:30:18 +01:00
Eric Frias
c4ad900026 Fix build error in member_enumerator when an operation includes an enum.
Implement the commit/reveal timeouts in RPS games, and generate automatic
("insurance") moves.  Make the CLI wallet watch for new games in
tournaments you're registered for.
2016-10-18 17:36:59 -04:00
Eric Frias
eb8929f6fa Separate match object out from tournament and give it a fsm,
start changing genesis json
2016-09-20 14:36:06 -04:00
Eric Frias
55255010df Add get_upcoming_tournaments wallet call, clean up logging 2016-09-14 11:52:22 -04:00
Eric Frias
dd0ad9e759 more fixes to get tournament_create/join working in cli wallet 2016-09-12 18:28:45 -04:00
Eric Frias
9b101cefcf Restore secret hashes from witnesses -- this is a selective restore of the parts of commits 59a3ca32b7 and c2e5432a30 that generated the secret hashes (it omits the changes to the witness scheduling algorithm) 2016-09-10 15:28:09 -04:00
Eric Frias
da43a8712d Moved most of the logic for joining tournament into tournament_object 2016-09-08 18:34:43 -04:00
Eric Frias
122dbfc698 More work on tournament registration, tournaments are now canceled and
buy-in is refunded
2016-09-03 17:51:27 -04:00
theoreticalbts
2a745f5882 db_update.cpp: Include hardfork.hpp, fix non-unity build broken by #615 fix 2016-03-15 15:21:34 -04:00
abitmore
f1cd2c2454 Add hard fork logic for #615 feed expiration check issue, fix #540 2016-03-10 09:17:05 +08:00
theoreticalbts
e46af9f372 Merge branch '538-fork-buyback' into develop
Includes dependencies '555-fork-defer-s4n-cull', '559-test-fix-zero-block-wait' and '566-cleanup-wl-flag-check'
2016-02-11 13:03:19 -05:00
theoreticalbts
078e63a79f Merge many bugfix branches into develop
Merged:

492-bugfix-open-fail #492
523-bugfix-multiple-blind-xfer #523
537-cleanup-remove-operation_get_required_authorities #537
540-cleanup-settle-volume-spam #540
542-bugfix-cancel-fee #542
557-bugfix-pts-address #557
559-test-fix-zero-block-wait #559
561-bugfix-serializer-build-broken #561
562-bugfix-unreflected-fields #562
2016-02-09 10:57:21 -05:00
theoreticalbts
b67d223d17 Merge branch '549-fork-cancel-order' into 452-fork-stealth-fba 2016-02-05 12:17:46 -05:00
theoreticalbts
59503acde9 Cap auto-cancel fees at deferred_fee #549 2016-02-02 14:17:57 -05:00
Daniel Larimer
3646754fe5 HARDFORK - auto canceled orders still pay fee 2016-02-02 11:04:35 -05:00
Daniel Larimer
45e717c181 HARDFORK: fix for hung cancel order 2016-02-02 11:04:22 -05:00
theoreticalbts
10a4dce501 db_update.cpp: Don't update bitasset_data_object force_settled_volume every block unless needed #540 2016-01-28 18:16:19 -05:00
theoreticalbts
2da6840405 Optionally disable database unity build #509 2016-01-08 11:29:39 -05:00
theoreticalbts
a548217e5c db_update.cpp: Log a lot of information if clear_expired_orders() is iterating too much, maybe useful to diagnose #485 2016-01-07 16:23:50 -05:00
theoreticalbts
399e0ed9f9 db_update.cpp: Take mia as reference, not copy, in clear_expired_orders(), maybe fix #485 2016-01-07 16:04:16 -05:00
theoreticalbts
f1b19b1562 Merge branch '496-cleanup-license-header' into develop 2016-01-07 13:38:52 -05:00
Fabian Schuh
5111084730 [License] Modify cpp and hpp headers to MIT #496 2016-01-07 11:44:52 -05:00
Daniel Larimer
dd5b7708b4 potential fix for hung chain 2016-01-07 11:27:50 -05:00
theoreticalbts
55fef1b161 db_update.cpp: Don't clear expired feeds for non-market-issued assets #410 2015-10-31 16:14:25 -04:00
theoreticalbts
d0609e8e74 Update copyright notice for BitShares 2015-10-12 13:48:40 -04:00
theoreticalbts
60f0812de2 Update copyright notice 2015-10-12 13:32:47 -04:00
Daniel Larimer
8e96d9c89c clean up print statements, minimize undo/fork history 2015-10-07 10:15:32 -04:00
Daniel Larimer
3ded0d4e77 adjust undo buffer based upon last_irreversible_block_num 2015-10-05 09:46:02 -04:00
theoreticalbts
93a108487d Implement last_irreversible_block_num 2015-10-02 17:19:23 -04:00
theoreticalbts
9b4be66aca db_update.cpp: If there is no feed, bail sooner in check_for_blackswan()
This is a performance optimization only, no semantics change.
2015-10-02 10:53:25 -04:00
Daniel Larimer
26288549e6 Fix blackswan on force settle, Fix #346 and #347
- fix detection and handling of black swan events
- fix total core in orders calculation from genesis
2015-09-30 18:30:44 -04:00
theoreticalbts
8b98b6200b db_update.cpp: Fix compiler warning 2015-09-28 12:15:17 -04:00
Daniel Larimer
26007bb655 update shuffling algorithm 2015-09-18 13:42:12 -04:00
Daniel Larimer
c875c8ac11 Remove spam on reindex, only report missed blocks in real time 2015-09-18 09:19:11 -04:00
Daniel Larimer
465280fbcb Improved Logging, track blocks missed by witnesses 2015-09-18 09:13:17 -04:00
theoreticalbts
e0414d390e Fix pending_block and fork handling
The pending_block member of database was a premature optimization and had an
unfortunate tendency to get out of sync, especially when switching forks.
This commit removes it, and substantially improves the handling of transactions
when switching forks.  Specifically, flooding or forking no longer causes nodes to
discard valid transactions.
2015-09-17 12:11:40 -04:00
theoreticalbts
09c623b3f9 Remove maximum_expiration parameter #308 2015-09-09 16:50:35 -04:00
theoreticalbts
ff2db08475 database: Undo and re-apply pending_transactions before/after pushing a block. Fixes #299 2015-09-09 11:11:58 -04:00
Daniel Larimer
2a494d9de0 Merge branch 'witness_schedule_refactor'
Also fix object_id addition
2015-08-27 11:33:42 -04:00
theoreticalbts
4a350a5c0c Initialize recently_missed_count to 0 if slots were missed at genesis 2015-08-26 19:06:54 -04:00
Daniel Larimer
12cd23df57 Merge branch 'witness_schedule_refactor' of github.com:cryptonomex/graphene into witness_schedule_refactor 2015-08-26 18:36:36 -04:00