Commit graph

818 commits

Author SHA1 Message Date
Daniel Larimer
f85dec1c23 increasing the maximum undo history 2015-10-14 16:20:29 -04:00
Daniel Larimer
ae4790bcb8 Merge branch 'master' of https://github.com/bitshares/bitshares-2 2015-10-14 16:19:21 -04:00
Daniel Larimer
15e4464300 Merge branch 'master' into bitshares 2015-10-14 14:50:38 -04:00
theoreticalbts
fc95e83732 Merge remote-tracking branch 'graphene/master' into master 2015-10-14 14:41:59 -04:00
Daniel Larimer
39fb95b66c remove/fix address prefix checking 2015-10-14 14:33:48 -04:00
Daniel Larimer
6a117572fd prevent excessive saving of wallet backups 2015-10-13 18:19:07 -04:00
Daniel Larimer
29cc90ba99 Fix build 2015-10-13 13:32:58 -04:00
Eric Frias
21caba4cfa remove stray semicolon that confuses doxygen 2015-10-13 10:44:18 -04:00
Daniel Larimer
5dbe57c3ff Fix build 2015-10-13 10:34:48 -04:00
theoreticalbts
e410df78c0 Initialize hash when using egenesis 2015-10-13 10:31:49 -04:00
theoreticalbts
3706c88a0b Initialize hash when using egenesis 2015-10-13 10:30:51 -04:00
Daniel Larimer
098f2cbe2d remove all hardfork checks leftover from testnet 2015-10-13 09:29:48 -04:00
Eric Frias
03306860d2 win32 compile fix (#warning) 2015-10-13 09:13:16 -04:00
Nicolas Wack
7cb4140b97 Added network get_info api call 2015-10-12 19:24:04 -04:00
theoreticalbts
6646957ce2 db_init.cpp: Make genesis BitAssets require 7 price feeds 2015-10-12 19:23:44 -04:00
Daniel Larimer
b325805878 fix recursion 2015-10-12 18:58:41 -04:00
Nicolas Wack
0892491096 Added network get_info api call 2015-10-12 17:02:47 -04:00
theoreticalbts
9d19358a0c db_init.cpp: Make genesis BitAssets require 7 price feeds 2015-10-12 17:01:16 -04:00
Daniel Larimer
283de52f38 don't connect to all seeds 2015-10-12 15:16:29 -04:00
Daniel Larimer
63bd27e7d2 adding initial seed nodes 2015-10-12 15:15:46 -04:00
Daniel Larimer
52d88c57c9 prevent assets with BIT prefix 2015-10-12 14:17:18 -04:00
Daniel Larimer
91c8e709fe change CORE to BTS 2015-10-12 14:04:56 -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
theoreticalbts
9ccbc55ba6 Implement chain_id #374 2015-10-12 13:32:47 -04:00
Daniel Larimer
a61c23fa6a reduce trx spam messages 2015-10-12 12:06:26 -04:00
theoreticalbts
b6be698c34 fc: Fix #367 2015-10-12 10:10:23 -04:00
Eric Frias
9c650bddb0 Make conversions from boost's uint128_t to builtin int64_t explicit, without these
the compiler prefers to convert through operator bool yielding either 1 or 0.
2015-10-10 17:13:56 -04:00
theoreticalbts
837e4f254e wallet.cpp: More detailed logging of exception when broadcasting 2015-10-09 17:22:56 -04:00
Daniel Larimer
55dd3cc26a update fc 2015-10-09 17:09:30 -04:00
Daniel Larimer
31502d1959 Merge branch 'master' of github.com:cryptonomex/graphene 2015-10-09 16:31:44 -04:00
Daniel Larimer
f7c91be622 fix market history 2015-10-09 16:31:40 -04:00
theoreticalbts
434efcaa47 asset_evaluator.cpp: Fix compiler warning 2015-10-09 15:38:34 -04:00
theoreticalbts
a6d6b7316a wallet.cpp: Keep going when we fail to import a key 2015-10-09 15:38:34 -04:00
theoreticalbts
e731941cf0 wallet.cpp: Allow specifying wildcard in keys when running import_balance
Also, don't put private keys in error messages.
2015-10-09 15:38:12 -04:00
Daniel Larimer
b3e9874ece Merge branch 'master' of github.com:cryptonomex/graphene 2015-10-09 15:05:23 -04:00
Daniel Larimer
efd5e96192 clean up shutdown 2015-10-09 15:05:14 -04:00
theoreticalbts
f0f96d5a8f Allow witness-fed and committee-fed BitAsset feeds to be specified in flags.
This is only technically a hardfork, in order to actually desync the chain
the witness account / committee account would need to pass a proposal to do
something in their capacity as the owner of an asset_object.  It should be
fairly safe to say that this will not occur on testnet until witnesses have
upgraded.
2015-10-09 13:23:55 -04:00
Eric Frias
7fe0e64a5e Fix two places where objects were being used after they were deleted 2015-10-09 11:43:23 -04:00
Eric Frias
2a07fba3c2 Win32 compile fixes (#warning) 2015-10-09 11:43:22 -04:00
Daniel Larimer
e68e99ed3a Merge branch 'master' of github.com:cryptonomex/graphene 2015-10-08 16:57:45 -04:00
Daniel Larimer
514148d780 Fix #349 - Prevent potential overflow on rational math 2015-10-08 16:57:19 -04:00
theoreticalbts
97423812a1 db_init.cpp: Check for imbalanced assets 2015-10-08 16:16:51 -04:00
Daniel Larimer
edee4ffd48 fix for syncing 2015-10-08 15:58:13 -04:00
Daniel Larimer
e2b5b24f5d Merge branch 'master' of github.com:cryptonomex/graphene 2015-10-08 15:41:13 -04:00
Daniel Larimer
6bf35c52a4 adding debug 2015-10-08 15:41:10 -04:00
theoreticalbts
43a2660143 db_management.cpp: Allow us to skip rewind on close() 2015-10-08 15:26:13 -04:00
theoreticalbts
5b4398fb44 db_block.cpp: Respect skip_block_size_check when generating block 2015-10-08 15:26:13 -04:00
theoreticalbts
3f00bd81b9 HARDFORK Disallow publishing certain malformed price feeds, fix #357 2015-10-08 15:26:13 -04:00
theoreticalbts
9b910ee1a4 HARDFORK Allow digits in asset name; fix #359 2015-10-08 15:26:13 -04:00
theoreticalbts
17aac27bec application.cpp: Implement --force-validate command line option 2015-10-08 15:26:13 -04:00
Eric Frias
5e6f5506ec Win32 compile fix (#warning) 2015-10-08 15:23:26 -04:00
Eric Frias
573a6d6e97 Win32 compile fix, add extra data to one call to FC_ASSERT for better debugging. 2015-10-08 15:17:01 -04:00
Eric Frias
7bc7004ef9 Remove items from p2p's list of items to fetch when we expect them to become unfetchable 2015-10-08 15:17:01 -04:00
Daniel Larimer
70fefe4f5f fix dreference of null 2015-10-08 15:11:32 -04:00
Daniel Larimer
eb1895ef55 fix derefrence of null, fix build, restore compat with oct5 test net 2015-10-08 15:03:35 -04:00
Daniel Larimer
be7c0076d0 fix dereferencing of deleted objects 2015-10-08 14:55:01 -04:00
Daniel Larimer
a536d39253 TESTNET RESET REQUIRED - convert all hashed indexs to ordered indexes
Fix #362 by replacing non-deterministic hashed indexes with ordered
indexes

Remove HARDFORK check for witness ordering because this #362 will
require a test net reset to effeciently implment.

Changed the order in wich process_fees iterates accounts to be "by_name"
rather than "by_id" so that we retain the ability to switch back to
hashed indexes in the future.

This change was overly pestimistic and assumes all indexes may be
traversed as part of consensus.  We want to reserve the ability to
change some of the indices back to hashed indicies in the future after a
through audit reveals that they are never iterated over in order.
2015-10-08 14:06:20 -04:00
Daniel Larimer
45f7819aba adding some hashing methods to db for debugging 2015-10-08 13:40:01 -04:00
theoreticalbts
bfef440968 fork_database.cpp: Fix overflow 2015-10-07 12:47:16 -04:00
Daniel Larimer
fe552a42d0 removing unnecessary assert 2015-10-07 11:09:28 -04:00
Daniel Larimer
8e96d9c89c clean up print statements, minimize undo/fork history 2015-10-07 10:15:32 -04:00
Daniel Larimer
cb6b548dd1 Merge branch 'master' of github.com:cryptonomex/graphene 2015-10-07 09:10:12 -04:00
Daniel Larimer
f05475cc8f Fix #355 - Test Net HARDFORK at block 58500 2015-10-07 09:10:03 -04:00
theoreticalbts
36625805fb delayed_node_plugin.cpp: Use new last_irreversible_block property, change to polling architecture 2015-10-05 14:49:54 -04:00
Daniel Larimer
3ded0d4e77 adjust undo buffer based upon last_irreversible_block_num 2015-10-05 09:46:02 -04:00
Daniel Larimer
1e1617633c removing hard fork 2015-10-05 08:55:32 -04:00
Daniel Larimer
bb0ea77e80 throttling P2P code 2015-10-05 08:44:59 -04:00
theoreticalbts
93a108487d Implement last_irreversible_block_num 2015-10-02 17:19:23 -04:00
Daniel Larimer
5adb85cde9 Merge branch 'master' of github.com:cryptonomex/graphene 2015-10-02 16:06:30 -04:00
Daniel Larimer
3aafd6cf55 HARDFORK 8/3/2015 - fix calculation for number of witnesses
The new witness count calculation set a threshold equal to 50% of
all stake rather than 50% of all stake that has voted for at least 2
witnesses.
2015-10-02 15:40:58 -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
44a7376219 remove extra spam 2015-10-02 09:23:03 -04:00
Daniel Larimer
2ed45db75b remove hard fork code 2015-10-02 08:57:02 -04:00
Daniel Larimer
1137120aa2 address rounding errors in fee calculation 2015-10-01 16:32:30 -04:00
Daniel Larimer
18c0558e6f HARDFORK - dont count votes for 0 or 1 witnesses
Accounts that abstain from voting should not be factored into the
desired number of witnesses because it would heavily bias the count
toward 0.
2015-10-01 13:56:29 -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
Eric Frias
74bbde785b In the p2p networking code, request multiple transactions at a time to improve performance during flooding 2015-09-29 17:37:32 -04:00
theoreticalbts
5885c243fb market_history_plugin.cpp: Fix compiler warning 2015-09-29 12:16:17 -04:00
theoreticalbts
00253b396e object_database.cpp: Don't crash when a bogus type_id is passed 2015-09-29 12:09:43 -04:00
theoreticalbts
6daa54da46 cli_wallet: Implement propose_fee_change 2015-09-29 11:55:26 -04:00
theoreticalbts
96e8f8dd6d cli_wallet: Improve propose_parameter_change interface 2015-09-29 11:55:26 -04:00
Daniel Larimer
650af1778d Merge branch 'master' of github.com:cryptonomex/graphene 2015-09-29 10:49:14 -04:00
Daniel Larimer
edcd46dd14 fix reindex with failed proposed transaction 2015-09-29 10:49:12 -04:00
theoreticalbts
9d3bcbb569 Provide objects to trace budget computations 2015-09-28 15:46:37 -04:00
Daniel Larimer
d3b283b60e Merge branch 'master' of github.com:cryptonomex/graphene 2015-09-28 15:42:52 -04:00
Daniel Larimer
b65763fdb6 added extra code to track a reverse index on whitelist/blacklist 2015-09-28 15:42:38 -04:00
Daniel Larimer
246459af3f removing print statement 2015-09-28 12:18:58 -04:00
theoreticalbts
a415dd6604 Don't use annotated_object #246 2015-09-28 12:15:17 -04:00
theoreticalbts
2cf80cd04a Remove vestigial meta objects #246 2015-09-28 12:15:17 -04:00
theoreticalbts
91af21d50c db_management.cpp: Properly clear_pending in close(), fix #336 2015-09-28 12:15:17 -04:00
theoreticalbts
8d52e2dda8 database: Scrub db in open() to force reindex if DB is outdated 2015-09-28 12:15:17 -04:00
theoreticalbts
8b98b6200b db_update.cpp: Fix compiler warning 2015-09-28 12:15:17 -04:00
theoreticalbts
0d7baa2b52 database: Remove obsolete retry_on_failure parameter 2015-09-28 12:15:17 -04:00
theoreticalbts
f972cff9d7 Clean up uninitialized integers 2015-09-28 12:15:17 -04:00
theoreticalbts
4c619414ae db_block.cpp: Add some comments 2015-09-28 12:15:17 -04:00
theoreticalbts
35acfff060 database: Implement before_last_checkpoint() function 2015-09-28 12:15:17 -04:00
theoreticalbts
1fb327f6a0 object_id.hpp: Add is<T>() and as<T>() template functions to object_id_type 2015-09-28 12:15:17 -04:00
Eric Frias
d01fc0ac44 Allow delayed-node plugin options to be set on conmmand line (in
addition to in config file) like most other plugins
2015-09-24 12:04:44 -04:00
Daniel Larimer
a3082897ae HARDFORK: fix address authority
Accounts that use address_auths rather than key_auths would fail to
recognize a properly signed transaction.  This is only relevant to
genesis accounts for imported collateral positions.
2015-09-24 10:10:36 -04:00
Daniel Larimer
738abf03af adding API call to get potential address sigs: Fix #337 2015-09-23 18:22:38 -04:00
Daniel Larimer
2afe62f8ab Merge branch 'master' of github.com:cryptonomex/graphene 2015-09-23 16:23:06 -04:00
Daniel Larimer
675f637090 update fc ntp requirments 2015-09-23 16:23:05 -04:00
Eric Frias
405a9e71b2 When the p2p code pushes a transaction that fails to apply, remember that transaction so we don't fetch it again as soon as a different peer tells us about it. 2015-09-22 17:13:35 -04:00
Eric Frias
d92736617e Improve logging of exceptions in p2p code (log via reflection instead of converting to strings) 2015-09-22 17:13:35 -04:00
Daniel Larimer
0ba1154e6e comment out logging spam 2015-09-22 16:50:45 -04:00
theoreticalbts
4a7e133456 Fix price feed publishing for assets owned by witness account #328 2015-09-21 17:36:36 -04:00
Eric Frias
5bfbe0df86 When a we're in normal (in-sync) mode and we get a block that doesn't link to the chain, restart sync with that peer to try to get the missing block 2015-09-21 16:15:51 -04:00
Eric Frias
9536350a50 Reduce the amount of time we'll wait for a peer to provide a requested block to
one second (down from one full block interval), to reduce the chance of us getting
blocks out of order.
Remove the variable we use to keep track of the last block number a peer has;
This was an optimization in BitShares 0.x where looking up the number was expensive,
and maintaining it is error-prone.
2015-09-21 11:48:58 -04:00
theoreticalbts
f8bb0b4008 Fix debug mode build 2015-09-21 11:01:11 -04:00
theoreticalbts
a2b6f1a741 Change assert to elog #334 2015-09-21 11:01:11 -04:00
theoreticalbts
44f5bac305 api: Fix get_config API call #333 2015-09-21 11:01:10 -04:00
Daniel Larimer
a5c1bc7faf Merge branch 'master' of https://github.com/cryptonomex/graphene 2015-09-21 08:46:57 -04:00
Daniel Larimer
6b915054d2 potential fix for peer not disconnecting after invalid block 2015-09-21 08:46:55 -04:00
Eric Frias
cdd5cae385 Add extra error reporting when we get a list of sync blocks that don't make sense, and replace the assert
with a log+disconnect.
2015-09-19 17:08:57 -04:00
theoreticalbts
f7980f5252 scheduler: Refactor 26007bb655 to use witness_schedule_object
The functionality is equivalent, but it now uses a separate witness_schedule_object,
and the code now lives in db_witness_schedule.cpp.
2015-09-18 14:26:54 -04:00
Daniel Larimer
966df708a5 fix unit tests 2015-09-18 13:56:32 -04:00
Daniel Larimer
26e5a72b8a Merge branch 'master' of github.com:cryptonomex/graphene 2015-09-18 13:42:15 -04:00
Daniel Larimer
26007bb655 update shuffling algorithm 2015-09-18 13:42:12 -04:00
Eric Frias
e5777faa7d Reduce the disconnection timeout in the p2p code for when a peer offers us a block and doesn't respond, now it's one block interval, down from three. This is intended to reduce the chance of a slow peer causing us to push blocks out of order. 2015-09-18 09:39:43 -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
f0502ee2f1 Implement virtual op for settlement cancel #250 2015-09-17 15:46:15 -04:00
theoreticalbts
e008cbb70b database_api.cpp: Include smart_ref_impl, fix #321 2015-09-17 13:45:12 -04:00
theoreticalbts
b9727e6e1c Increase logging, improve error messages 2015-09-17 12:11:40 -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
ec030ee46c vesting_balance_evaluator.cpp: Add some logging #312 2015-09-17 11:29:41 -04:00
theoreticalbts
c6cb743588 db_management.cpp: Remove loop that does nothing 2015-09-17 11:29:41 -04:00
theoreticalbts
81cc8e4d81 Fix maintenance time computation #313 2015-09-16 11:10:57 -04:00
theoreticalbts
e4a45de195 Remove maximum_expiration for good, fix #308 [HARDFORK] 2015-09-16 10:18:54 -04:00
theoreticalbts
c57806bb85 Always generate blocks linking to head_block_id() 2015-09-15 10:54:04 -04:00
Eric Frias
1177cfe0ed Reverse direction of fork history used in block syncing 2015-09-15 09:19:39 -04:00
Daniel Larimer
f506c2b089 better debugging messages around crashes 2015-09-15 08:38:27 -04:00
Daniel Larimer
640d69aa05 Merge branch 'master' of github.com:cryptonomex/graphene 2015-09-14 18:07:09 -04:00
Daniel Larimer
225acfff25 fetch workers by vote_id 2015-09-14 18:07:07 -04:00
Eric Frias
f0f12076fa Win32 compile fixes 2015-09-14 16:05:32 -04:00
Eric Frias
dd7d57c5ac Fix invalid assertion about fork database results 2015-09-14 15:25:04 -04:00
Daniel Larimer
93c72b0595 wallet api now returns the memo and a human readable description 2015-09-14 11:33:18 -04:00
Eric Frias
30ae8e4f34 Remove debugging code 2015-09-11 19:27:31 -04:00
Daniel Larimer
1202c0258d Merge branch 'p2p_sync_fixes' 2015-09-11 17:57:11 -04:00
Daniel Larimer
127ac7f3de add api to query worker state 2015-09-11 17:47:27 -04:00
Daniel Larimer
cf7a67ec76 Merge branch 'master' of github.com:cryptonomex/graphene 2015-09-11 17:35:07 -04:00
Eric Frias
76a36a67ac Fix race condition that happens when we're pushing sync blocks faster than get_synopsis calls are getting through to the main thread 2015-09-11 17:33:20 -04:00
Eric Frias
e9e3b0d679 Fix an instance where we were reporting that the peer was on an unreachable blockchain when they really weren't 2015-09-11 16:15:05 -04:00
Eric Frias
0046cc0698 Fix error messages generated when peer is syncing with empty blockchain 2015-09-11 15:26:55 -04:00
theoreticalbts
a083f7b955 api: Split database_api off into own file, reorder methods by topic 2015-09-11 12:37:36 -04:00
theoreticalbts
cf15aa1df1 Remove unused file 2015-09-11 12:37:25 -04:00
Eric Frias
1141d1ce89 Disable log messages that logged every step in the process of queueing and sending messages to peers, they were seldom useful. 2015-09-11 11:17:52 -04:00
Eric Frias
f9a27059e5 Fix incorrect error message generated when syncing with peer that has no blocks 2015-09-11 10:09:42 -04:00
Daniel Larimer
7803b92324 Updating fc link 2015-09-11 08:56:16 -04:00