Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Topics - abit

Pages: 1 [2] 3 4 5 6 7 8 9 ... 11
16
Stakeholder Proposals / [Poll] BSIP42: adjust price feed dynamically
« on: August 23, 2018, 11:59:12 pm »
BSIP doc: https://github.com/bitshares/bsips/blob/master/bsip-0042.md


Poll workers:

1.14.118 Poll - BSIP42 - Adjust price feed dynamically

1.14.119 Poll - BSIP42 - NO adjustment to price feed


That said, if you support the change, please vote for 1.14.118, if you don't support, please vote for 1.14.119.

17
中文(Chinese) / 新版重钱包 2.0.180823
« on: August 23, 2018, 11:47:43 pm »
BTS 2.0.180823 新版本已发布。

下载地址: https://github.com/bitshares/bitshares-core/releases/tag/2.0.180823

这个版本优化了很多东西,第一次启动还是会 replay 。


部分优化清单如下:

支持 Ubuntu 18.04 和 OpenSSL 1.1.0 了;
可以看到备选理事会票数了;
replay 时间降为原来的 1/3 ;
账户相关的API都支持传入账户名了(原来只能传ID);
命令行钱包加了 quit 命令;
Elasticsearch 插件大量优化。

18
General Discussion / BitShares-Core Release 2.0.180823
« on: August 23, 2018, 10:06:44 pm »
https://github.com/bitshares/bitshares-core/releases/tag/2.0.180823

This is the first BitShares-Core release that supports Ubuntu 18.04 LTS. Due to the new features and improvements included in this release, all nodes are encouraged to upgrade.

## Security fixes
- CLI wallet: updated choice of range proof params in cli wallet reveals transaction magnitude to very narrow range for Blinded Transfers (issue #480 / PR #1117 #1227)

## API changes
- Removed crypto_api from default list of allowed APIs. (issue #1123 / PR #1125)
- Changed default `max-ops-per-account` value to 100, impacts account history (#1120)
- Added `get_account_limit_orders` database API to query for open orders of one account in one market #463 #849 #1163
- Added `get_asset_count` API to return total number of available assets #688, #1159
- Added `get_transaction_hex_without_sig` API get serialized transaction hex without `signatures` field (issue #1013 / PR #1038)
- Added support for account name as parameter for all API calls #969 #989 #1164 #1168 #1152 #1155
- Added `fail_reason` field to proposal object #730, #1036
- Retroactively deducted witness `missed_blocks` caused by chain halts #1087

## New features and improvements
- Added Openssl 1.1 and Ubuntu 18.04 support (issue #835 / PR #559 #921 #1008 https://github.com/bitshares/bitshares-fc/pull/7)
  - Fixed invalid use of incomplete type `BIGNUM {aka struct bignum_st}` #327
- Added `witness_node` startup option `--enable-standby-votes-tracking` to track votes of standby witnesses and committee members, enabled by default #987, #1191, #1211
- Added `cli_wallet` startup option `--suggest-brain-key` to generate keys without connecting to a witness_node #1011, #1039
- Added `quit` command to `cli_wallet` #1104, #1050 https://github.com/bitshares/bitshares-fc/pull/63
- Improved witness_node performance for generating blocks, resyncing and replaying
  - Improved account maintenance (vote tally) performance (issue #803/ PR #1085)
  - Improved performance of `database::update_expired_feeds()` and global object getters #1093 #1180
  - Slightly improved price comparison performance #1094 #1124
  - Added index on `short_backing_asset`, better performance for updating asset (Issue #960 / PR #1019)

### Docker File
- Changed default docker p2p port to 1776, fixed p2p port to match Dockerfile #1226, #1078
- Fixes to make Docker containers shutdown gracefully #1077 #1115
- Fixed Docker Cloud Build Failing Due to Compile Time #1221 #1222
- Modified Dockerfile to work with new docker cloud version (0.10.1) #1075
- Updated testnet Branch to Include Latest Dockerfile #1074

### Elasticsearch
- Elasticsearch refactor #1103 #1201
  - Add auth to communicate with the ES database with `--elasticsearch-basic-auth` startup option.
  - Custom index names with `--elasticsearch-index-prefix` startup option.
  - Removed `--elasticsearch-logs` startup option
  - Better error handling: if there is an error when sending data to ElasticSearch, plugin will stop processing blocks and keep trying, and it resumes when connection is back at the same place. #681
  - add operation_id_num for easier filtering.
  - Fill orders data in additional for easy volume.
  - Test cases framework. #1047
  - Make full use of common functions in the 2 plugins(utilities).
  - flush ES database on every block when node is in sync to improve real time user experience. #1137
  - Increased performance of the `elasticsearch` plugin where possible: #1260
- Updated documentation https://github.com/bitshares/bitshares-core/wiki/ElasticSearch-Plugin

## Bugfixes
- Fixed CLI `get_account_history` pagination issue (duplicate ops when `limit` great than 100) #1176, #1177, #1179
- Fixed `cli_wallet` crashes for macOS 10.13.5 #1127 https://github.com/bitshares/bitshares-fc/pull/60
- Fixed a bug related to undo database that may cause `witness_node` to crash #1247 #1257
- Fixed "log file of current hour gets overwritten by default" #809 https://github.com/bitshares/bitshares-fc/pull/56
- Fixed 2 minor bugs in snapshot plugin #1185
- Fixed object database exception handling when built with Boost 1.66 (#852 #1126 #1161)
- Enable `boost::stacktrace` correctly https://github.com/bitshares/bitshares-fc/pull/66

## Other changes
- Integrated SonarCloud into Travis build (issue #836 / PR #1081 https://github.com/bitshares/bitshares-fc/pull/49)
- Travis speedup by using ccache #1264
- Added `USE_PROFILER` option to Cmake to enable profiling #1119
- Added `OPENSSL_CONF_SOURCE` variable for building in Windows https://github.com/bitshares/bitshares-fc/pull/59
- Added cli_tests to Travis-CI #1156
- Added `asset_api_tests` #1202
- Added new seed node by bangzi #1130 #1138
- Changed default `core_exchange_rate` quote asset in order to create asset more easily #1132
- Updated node.cpp, check attacker/buggy client before updating items ids #1007
- Optimized `find()` call in P2P code #1090, #1091
- Refactored `get_impacted_account_visitor`, removed duplicate code from impacted.cpp #845 #1073
- Refactored `cancel_all_subscriptions` for better performance and consistency #762 #1009 https://github.com/bitshares/bitshares-fc/pull/50
- Changed `push_proposal exception` log level to warn #1146
- Cleaned up Balance evaluator code #1150
- Cleaned up `get_named_account_balances` code #1154 , #1135
- Cleaned up logging in account.cpp #1010
- Cleanup up a visitor struct in static_variant.hpp https://github.com/bitshares/bitshares-fc/pull/58
- Removed obsolete constants (issue #1034 / PR #1072)
- Removed unused "smaz" compression #986 https://github.com/bitshares/bitshares-fc/pull/51
- Removed unused bz2 linkage #1003 https://github.com/bitshares/bitshares-fc/pull/52
- Removed double assert in `object_id_type` constructor #1128
- Removed protocol.hpp #1197, #1200
- Backported EOS PR 3560 replace assert in FC::crypto #992 https://github.com/bitshares/bitshares-fc/pull/54
- Backported EOS PR 3240 HTTP performance improvement, added move-semantic-version `set_body` function #999 https://github.com/bitshares/websocketpp/pull/1 https://github.com/bitshares/bitshares-fc/pull/65
- Updated test case for `time_point_sec::to_iso_string`, detect boost version #597 https://github.com/bitshares/bitshares-fc/pull/67
- Fixed Performance sucks at first block after a long sequence of missed blocks #1086 #1087
  - witness `missed_blocks` count no longer increases due to chain halt (retroactive change)
- Fixed cli_tests websocket port binding #1178 #1187
- Fixed RPC logging level inconsistency #929 https://github.com/bitshares/bitshares-fc/pull/62
- Fixed wallet in-code docs, suppressed compiler warnings  #1015 #1181 #1129 #1199 #1190
- Updated `asset_object::amount_to_string` implementation for slightly better performance #1012
- Updated system requirements into Documents #1107 #1108
- Updated README.md document #1121, #1166, #1212


## Contributors in this release:

- @pmconrad
- @abitmore
- @oxarbitrage
- @jmjatlanta
- @cogutvalera / @nanomobile
- @cifer-lee
- @ryanRfox
- @nathanhourt
- @christophersanborn
- @xeroc
- @xiangxn
- @RichardWeiYang
- @Zapata
- @cwyyprog
- @Tydus

19
中文(Chinese) / 【投票】见证人是否动态调整喂价
« on: August 23, 2018, 09:52:18 pm »
在钱包里工作提案区域投票。

1.14.118 支持见证人动态调整喂价 Poll - BSIP42 - Adjust price feed dynamically

1.14.119 反对见证人动态调整喂价 Poll - BSIP42 - NO adjustment to price feed

相关讨论:
https://bitsharestalk.org/index.php?topic=26315.0

详情谁解释一下,谢谢。

20
General Discussion / [BSIP42] Consider derailing feed price
« on: August 17, 2018, 11:22:19 pm »
We THOUGHT that feeding accurate price for BTS/FIAT will bring stable pegged smart coins. However, market told us that we were wrong. In a downtrend, smart coins are always running with a premium; in a uptrend, smart coins are tend to run with a discount. See this chart: https://coinmarketcap.com/currencies/bitusd/

Without a tight peg, the smart coins are useless -- we won't get mass adoption. Why do we keep the broken rules unchanged?

Apparently we can adjust the input data. We SHOULD adjust the input. When smart coins are running with a premium, we can feed higher BTS price to encourage more shorting and more supply, to reduce the premium. When running with a discount, we feed lower BTS price.

How much offset should we apply to the price so that we can achieve a tight peg? I don't know the exact value. It depends. However, without trying we'll never know.

Please discuss, and act.


BSIP doc: https://github.com/bitshares/bsips/blob/master/bsip-0042.md


Poll workers:

1.14.118 Poll - BSIP42 - Adjust price feed dynamically

1.14.119 Poll - BSIP42 - NO adjustment to price feed

21
公开市场基金(worker 1.14.102)已经运作一段时间了,运作过程中,存在一些客观问题,需要改进。

声明:
1. 我本人是不支持这个 worker 的。从worker创建至今,我从没有对这个 worker 投过赞成票,我也没有投票同意过任何与这个基金有关的转账、挂单、调整债仓的提案操作,虽然我的账号配在了CNY操作账号 (committee-cnytrader) 里,占1/3有效权重。但是,这个 worker 客观上已经投票通过,所以我也接受这个事实。从大局考虑,基金运作需要遵循一定规范。
2. 我本人很尊重巨蟹,对于巨蟹对 BitShares 生态做出的努力和贡献也非常感谢。这个帖子不针对个人,主要是对当前形势的客观表达,以及提出改善方案。


基金运行至今,巨蟹一直在积极操作,基本上所有的转账、挂单、调整债仓的操作提案都是巨蟹发起,其他人动手点一下同意,如果发现提案操作有问题,就不点同意。客观上来说,因为有多签设置,巨蟹没有对基金的完全控制权,所以“操纵基金”的说法是靠不住的。所有操作都是公开完成,如果出现问题,所有参与操作者都有责任。
(这里需要说一下usd操作账号,目前是1/3多签,但是只有巨蟹操作过)

一方面,这说明巨蟹付出了努力;但另一方面,这也说明其他人对这个基金实际运作的不够关心,从而可能导致风险。

个人认为,巨蟹作为基金“主操作者”,是不合适的。原因如下:

1. 巨蟹的操作风格,与公开市场操作基金是不匹配的。
众所周知,巨蟹本人持有巨大债仓,操作比较激进,被多次爆仓。而基金运作的第一要务是资金安全,操作上应该是偏保守。

2. 技术方面,巨蟹的债仓管理能力,是值得质疑的。
“目标抵押率”功能,从7月19日硬分叉生效,至今已经两个多星期。这个功能的使用,特别是大债仓对这个功能的使用,对市场稳定性非常重要。众多中小投资者/抵押参与者都第一时间开始使用这个功能(感谢鼓鼓钱包)。但是,巨蟹本人的巨大债仓,以及公开市场操作基金的债仓,却是很晚才开始使用这个功能。客观上说,原因是 bitshares-ui 钱包正式发布版本直到8月8日才支持目标抵押率的功能;但是,在发布正式版本前,支持这个功能的测试版本在8月1号就已经发布,另外还有命令行钱包从6月份开始就支持这个功能。这方面巨蟹对债仓的处理是有欠缺的。

3. 巨蟹本人的债仓,与公开市场基金存在直接冲突。
这里说下实际情况。
在8月7日之前,巨蟹本人的债仓爆仓价在 1.05 CNY 左右,没有设置目标抵押率。
在8月7日前后,公开市场操作基金在1.01-1.08附近挂了大额买单。
在8月8日前后,巨蟹爆仓单砸向市场,事实上做了公开市场操作基金的对手盘(虽然不一定有直接成交记录)

4. 源水基金,与公开市场基金存在潜在冲突。
这里说潜在冲突,是因为事实上还没有成为对手盘。
目前源水基金与公开市场基金操作方向是一致的,基本都是买。
今后有成为对手盘的可能,因为毕竟基金设立目的不一样。
巨蟹参与了源水基金的管理,参与了债仓调整操作。

5. 巨蟹对基金操作规则的执行存在争议
毕竟是第一个公开市场基金,从 worker 建立至今,操作规则一直不稳定,有些变化有书面说明,有些没有,而有书面说明的部分,也不一定完全达成了共识,因为市场不是非黑即白,有时候需要偏重追求效率。
主要争议在于,1) 债仓抵押率设多少, 2) 多少价格挂多少量的买单。
第一个规则相对简单,也容易遵守,从最初的4倍抵押率,到后来的按价格调整抵押率,公式很清楚。
但是在执行过程中,却没能完全遵守规则,最近最低抵押率甚至低于2倍,大大超出很多人的心理预期。
第二个规则,需要对市场行情有所把握,这里暂不讨论。


基于以上几点,个人认为,为了避嫌,减少公开市场操作基金的争议,巨蟹应该主动退出公开市场操作基金的操作。

顺便说下,小山参与了源水基金管理,一定程度上也应该避嫌。


如果巨蟹退出,那么就存在一个需求:公开市场操作基金谁来管?因为实际情况是,现在除了巨蟹,没人管。

那么,公开招聘操盘手怎么样?

22
General Discussion / SPRING fund
« on: July 13, 2018, 08:57:05 pm »

23
中文(Chinese) / 讨论下 GDEX 的交易挖矿
« on: July 12, 2018, 09:55:08 am »
GDEX 今天开启交易挖矿。白皮书地址 https://www.gdex.io/files/GDP_whitepaper_v0.4.pdf

交易挖矿本质相当于 ICO 。

按白皮书来看,预计总发行量 10 亿 GDP ,早鸟价 0.5 CNY,相当于初始估值 5 亿。

第一期释放 1000w GDP,占总量的 1%;按早鸟价计算,相当于 500w CNY,由于是交易费用50%返还,相当于融资 1000w CNY。

gdex 能否公布一下上线至今的运营情况,包括交易量、代管资金量(充值量)、手续费收入、运营支出等等?

24
General Discussion / BitShares-Core Release 2.0.180612
« on: June 13, 2018, 10:12:16 am »
This is a protocol upgrade release. All nodes should upgrade before `2018-07-19 14:00:00 UTC`.

Detailed info and binaries for download: https://github.com/bitshares/bitshares-core/releases/tag/2.0.180612

Note: in the previous release ([`2.0.180425`](https://github.com/bitshares/bitshares-core/releases/tag/2.0.180425)) we fixed a serious bug.
* If you're upgrading from `2.0.180425` to `2.0.180612`, you don't need to do anything special;
* if you're upgrading from a release earlier than `2.0.180425` to `2.0.180612`, please check [release notes of 2.0.180425](https://github.com/bitshares/bitshares-core/releases/tag/2.0.180425) to see if you need to perform additional steps.

## Consensus changes

* [BSIP26: Refund Order Creation Fee in Originally Paid Asset when order is cancelled](https://github.com/bitshares/bsips/blob/master/bsip-0026.md)
* [BSIP27: Asset Issuer Reclaim Fee Pool Funds](https://github.com/bitshares/bsips/blob/master/bsip-0027.md)
* [BSIP29: Require owner authority to change asset issuer](https://github.com/bitshares/bsips/blob/master/bsip-0029.md)
* [BSIP30: Always Allow Increasing Collateral Ratio If Debt Not Increased](https://github.com/bitshares/bsips/blob/master/bsip-0030.md)
* [BSIP31: Update Short Position's Margin Call Price After Partially Called Or Settled](https://github.com/bitshares/bsips/blob/master/bsip-0031.md)
* [BSIP32: Always Match Orders At Maker Price](https://github.com/bitshares/bsips/blob/master/bsip-0032.md)
* [BSIP33: Maker Orders With Better Prices Take Precedence](https://github.com/bitshares/bsips/blob/master/bsip-0033.md)
* [BSIP34: Always Trigger Margin Call When Call Price Above Or At Price Feed](https://github.com/bitshares/bsips/blob/master/bsip-0034.md)
* [BSIP35: Mitigate Rounding Issue On Order Matching](https://github.com/bitshares/bsips/blob/master/bsip-0035.md)
* [BSIP36: Remove expired price feeds on maintenance interval](https://github.com/bitshares/bsips/blob/master/bsip-0036.md)
* [BSIP37: Allow new asset name to end with a number](https://github.com/bitshares/bsips/blob/master/bsip-0037.md)
* [BSIP38: Add target collateral ratio option to short positions](https://github.com/bitshares/bsips/blob/master/bsip-0038.md)
* [Bugfix #184: Potential something-for-nothing fill bug](https://github.com/bitshares/bitshares-core/issues/184)
* [Bugfix #214: Proposal cannot contain proposal_update_operation](https://github.com/bitshares/bitshares-core/issues/214)
* [Bugfix #453: Multiple limit order and call order matching issue](https://github.com/bitshares/bitshares-core/issues/453)
* [Bugfix #588: Virtual operations should be excluded from transactions](https://github.com/bitshares/bitshares-core/issues/588)
* [Bugfix #868: Clear price feed data after updated a bitAsset's backing asset ID](https://github.com/bitshares/bitshares-core/issues/868)
* [Bugfix #890: Update median feeds after feed_lifetime_sec changed](https://github.com/bitshares/bitshares-core/issues/890)
* [Bugfix #922 / #931 / #970] Fixed missing checks when updating a smart coin's `bitasset` options E.G. force settlement delay, backing asset ID or etc;
* [Bugfix #942] Fixed missing asset authorities check for "from" account when claiming from a withdraw permission.

## API changes

* `extensions` field of `call_order_update_operation` changed from an array to an object, which affects all related API's E.G. `get_block`, `get_account_history`, `get_relative_account_history` and etc. Due to this, old version of `cli_wallet` won't be compatible with new API nodes when that operation would occur in result.
* [Issue #862, PR #872] Improved pagination of `list_assets` node API
* [Issue #863, PR #871] Node `get_ticker` API now returns time stamp of latest block instead of server time
* [Issue #811, PR #861] Added `get_full_account` command/API to `cli_wallet`


## Other changes

* [[FC PR #36](https://github.com/bitshares/bitshares-fc/pull/36)] Support Boost 1.64-1.65

* [[FC PR #43](https://github.com/bitshares/bitshares-fc/pull/43)] Fixed a memory leak issue in TCP socket destruction

* [[FC PR #44](https://github.com/bitshares/bitshares-fc/pull/44)] Fixed Diffie-Hellman shared key computation (related to memo encryption)

* [Issue #727, PR #880] Added stack trace printing when node crashes (only for boost 1.65)

* [Issue #878, PR #927] Made number of I/O threads configurable (can be manual or auto)

* [Issue #805, PR #840 / #919 / #937] Improved logging level and messages; added logging options about log-rotation

* [Issue #837, PR #848 / #839] Added cli_wallet to Docker

* [PR #938] Fixed an issue that may cause the node to store incorrect block ID to disk when switching forks

* [Issue #582, PR #813] Fixed macOS witness node crash issue when being used as an API server

* [Issue #776, PR #816 / #955] Fixed missing notification to RPC clients when changes occurred on some types of objects

* [Issue #888, PR #954] Fixed an integer overflow issue when checking whether a price feed has expired

* [Issue #864, PR #865] Fixed a `cli_wallet` transaction signing issue when creating proposals with transaction builder

* [Issue #859, PR #801 / #817] Fixed macOS and Ninja build errors introduced in last release

* [Issue #136, PR #928] Fixed an asset supply calculation error in test case

* [Issue #943, PR #869 / #945] Improved a few assertion error messages

* [PR #850] Removed unused asset cache from `cli_wallet`

* [PR #918] Fixed in-code documentation for `set_desired_witness_and_committee_member_count` command/API in `cli_wallet`

* [PR #804] Refactored `node.cpp` and `application.cpp` for easier testing

* [PR #851 / #853 / #854 / #855] Fixed several compiler warnings

## Contributors

* [@abitmore](https://github.com/abitmore)
* [@jmjatlanta](https://github.com/jmjatlanta)
* [@oxarbitrage](https://github.com/oxarbitrage)
* [@pmconrad](https://github.com/pmconrad)
* [@xeroc](https://github.com/xeroc)
* [@cifer-lee](https://github.com/cifer-lee)
* [@ihla](https://github.com/ihla)
* [@zhuliting](https://github.com/zhuliting)
* [@Zapata](https://github.com/Zapata)


25
中文(Chinese) / 新版重钱包 2.0.180612
« on: June 12, 2018, 05:30:05 pm »
BTS 2.0.180612 新版本已发布。

这是一个协议升级(硬分叉)版本,请所有节点在 2018年7月19日(周四)北京时间晚上22:00前完成升级。

下载地址: https://github.com/bitshares/bitshares-core/releases/tag/2.0.180612

由于有数据变化,升级会自动 replay 。

【注意】前一个版本 2.0.180425 修复了一个账户历史相关的重要问题,主要影响对接,请注意处理以免造成资产损失。详见 https://steemit.com/bitshares/@abit/bitshares-core-release-2-0-180425

* 从 2.0.180425 升级到 2.0.180612 不再需要特殊处理;
* 从低于 2.0.180425 的版本可以直接升级到 2.0.180612 ,但需要参照 上述链接中的方法,自行判断是否需要进行历史对接数据处理。

更新内容参见测试帖:
https://bitsharestalk.org/index.php?topic=26504.0
https://bitsharestalk.org/index.php?topic=26427.0

硬分叉部分:

【BSIP26】如果下单手续费不是用的BTS,撤单返还原始手续费币种而不是返还BTS
【BSIP27】资产发行人可以直接取出资产手续费池中的BTS
【BSIP29】修改资产发行人需要 Owner key
【BSIP30】在爆仓状态可以上调抵押率,不再强制要求必须上调到多少,但抵押率不足最低要求时不能增加借款
【BSIP31】爆仓单部分成交后爆仓价自动更新
【BSIP32】主动吃爆仓单时,成交价是喂价/1.1 (实际数值由喂价产生,1.1是当前大部分智能资产的参数)
【BSIP33】主动吃爆仓单时,会先吃掉比爆仓单价格更低的卖单
【BSIP34】修复买单价高于喂价会导致爆仓单不成交的问题
【BSIP35】降低整除问题对挂单撮合的影响
【BSIP36】删除过期喂价(不再可以通过增加喂价有效期来将已经过期的喂价重新变成有效)
【BSIP37】资产名称可以以数字结尾
【BSIP38】可以设定爆仓后最多归还多少借款(但至少需要满足最低抵押率。默认归还全部欠款)
【Bugfix #184】修正撮合成交会出现付出非0买到0的问题(就是 BSIP35 里的金额为 0 的情况)
【Bugfix #214】修正不能用提案来批准提案的问题
【Bugfix #453】修正多个大爆仓单同时砸盘时可能会和价格不是最高的买单成交的问题
【Bugfix #588】修正可以签虚拟交易上链的问题
【Bugfix #868】修改智能资产的背书资产后,清除现有喂价
【Bugfix #890】修改智能资产的喂价有效时间时,更新喂价并检查爆仓单
【Bugfix #922 / #931 / #970】 当修改BitAsset的参数,比如修改背书资产、修改强清延迟时间等时,遗漏一些检查。现在修正。
【Bugfix #942】 循环扣款时,遗漏对被扣款人进行白名单检查。现在修正。

其他优化部分:

【FC 库 PR #36】 增加支持 Boost 1.64-1.65
【FC 库 PR #43】 修正一处内存泄露问题
【FC 库 PR #44】 修正一个使用diffie-hellman算法计算共享秘钥时的潜在错误(memo加密相关)
【Issue #727, PR #880】 节点崩溃时输出堆栈信息
【Issue #878, PR #927】 可以配置IO线程数,或者根据CPU内核数自动配置IO线程数
【Issue #805, PR #840 / #919 / #937】 增加日志回滚配置项,改进日志记录内容
【Issue #837, PR #848 / #839】将cli_wallet加入Docker

【PR #938】修正一个可能导致错误的区块索引保存到本地磁盘的问题
【Issue #582, PR #813】 修正macOS节点(重钱包)收到挂单后崩溃的问题
【Issue #776, PR #816 / #955】 修正有些交易发生时没有通知客户端、所以客户端不会自动刷新的问题
【Issue #888, PR #954】 修正检查喂价过期时的整型溢出问题
【Issue #864, PR #865】 修正命令行钱包使用 transaction builder 时可能不正确签名的问题
【Issue #859, PR #801 / #817】 修正macOS下、Ninja下编译失败问题
【Iuuse #136, PR #928】修正测试案例中一处资产供应量的计算错误
【Issue #943, PR #869 / #945】 优化报错信息
【Issue #862, PR #872】 优化查询资产列表API的翻页参数
【Issue #863, PR #871】 优化get_ticker API的返回时间戳,现在返回最新块时间戳而不是当前时间
【Issue #811, PR #861】 命令行钱包增加 get_full_account 命令
【PR #850】 命令行钱包不再缓存资产数据
【PR #918】修正一处命令行钱包帮助文档错误
【PR #804】 重构p2p和app模块部分代码以方便测试
【PR #851 / #853 / #854 / #855】修复一些编译警告


代码贡献者:

@abitmore
@jmjatlanta
@oxarbitrage
@pmconrad
@xeroc
@cifer-lee
@ihla
@zhuliting
@Zapata

28
General Discussion / New BitShares TESTNET release: test-2.0.180525
« on: May 25, 2018, 10:49:54 pm »
TESTNET Protocol upgrade (Hard fork) time is scheduled at `Thu, 31 May 2018 14:00:00 UTC`.

Testnet nodes (especially witnesses and public seed nodes and API nodes) please upgrade in time (before the scheduled time).

Github: https://github.com/bitshares/bitshares-core/releases/tag/test-2.0.180525

Details about this release:

### 1. Protocol upgrade (hard fork) related:

* [Bugfix #922 / #931 / #970] Fixed missing checks when updating a smart coin's `bitasset` options E.G. force settlement delay, backing asset ID or etc;

* [Bugfix #935] Fixed missing margin call checks introduced in fix for #868 and #890 in last testnet release.

* [Bugfix #942] Fixed missing asset authorities check for "from" account when claiming from a withdraw permission.

### 2. Other updates (including the ones done in last testnet release but not included in the release notes)

* [FC repository PR #36] Support Boost 1.64-1.65

* [FC repository PR #43] Fixed a memory leak issue in TCP socket destruction

* [FC repository PR #44] Fixed Diffie-Hellman shared key computation (related to memo encryption)

* [PR #938] Fixed an issue that may cause the node to store incorrect block ID to disk when switching forks

* [Issue #582, PR #813] Fixed macOS witness node crash issue when being used as an API server

* [Issue #776, PR #816 / #955] Fixed missing notification to RPC clients when changes occurred on some types of objects

* [Issue #888, PR #954] Fixed an integer overflow issue when checking whether a price feed has expired

* [Issue #864, PR #865] Fixed a `cli_wallet` transaction signing issue when creating proposals with transaction builder

* [Issue #859, PR #801 / #817] Fixed macOS and Ninja build errors introduced in last release

* [Iuuse #136, PR #928] Fixed an asset supply calculation error in test case

* [Issue #805, PR #840 / #919 / #937] Improved logging level and messages; added logging options about log-rotation

* [Issue #943, PR #869 / #945] Improved a few assertion error messages

* [Issue #727, PR #880] Added stack trace printing when node crashes (only for boost 1.65)

* [Issue #878, PR #927] Made number of IO threads configurable (can be manual or auto)

* [Issue #862, PR #872] Improved pagination of `list_assets` node API

* [Issue #863, PR #871] Node `get_ticker` API now returns time stamp of latest block instead of server time

* [Issue #811, PR #861] Added `get_full_account` command/API to `cli_wallet`

* [PR #850] Removed unused asset cache from `cli_wallet`

* [PR #918] Fixed in-code documentation for `set_desired_witness_and_committee_member_count` command/API in `cli_wallet`

* [PR #804] Refactored `node.cpp` and `application.cpp` for easier testing

* [PR #851 / #853 / #854 / #855] Fixed several compiler warnings

29
中文(Chinese) / 新的测试网版本 test-2.0.180525
« on: May 25, 2018, 10:38:32 pm »
【测试网】 硬分叉时间 北京时间 5月31号 (周四) 22:00 。

测试网见证人及其他参与测试的朋友请及时升级(需要在硬分叉时间前升级)。

这个版本修了3个需要硬分叉的bug,以及一些其他优化。

代码: https://github.com/bitshares/bitshares-core/releases/tag/test-2.0.180525

修改内容:

1. 硬分叉部分:

【Bugfix #922 / #931 / #970】 当修改BitAsset的参数,比如修改背书资产、修改强清延迟时间等时,遗漏一些检查。现在修正。

【Bugfix #935】 上个版本里对#868及#890的修复,在某些情况下不会触发爆仓检查,现在修正以及补查。

【Bugfix #942】 循环扣款时,遗漏对被扣款人进行白名单检查。现在修正。

2. 其他优化部分(包含上个测试版本中未列出的内容)

【FC 库 PR #36】 增加支持 Boost 1.64-1.65

【FC 库 PR #43】 修正一处内存泄露问题

【FC 库 PR #44】 修正一个使用diffie-hellman算法计算共享秘钥时的潜在错误(memo加密相关)

【PR #938】修正一个可能导致错误的区块索引保存到本地磁盘的问题

【Issue #582, PR #813】 修正macOS节点(重钱包)收到挂单后崩溃的问题

【Issue #776, PR #816 / #955】 修正有些交易发生时没有通知客户端、所以客户端不会自动刷新的问题

【Issue #888, PR #954】 修正检查喂价过期时的整型溢出问题

【Issue #864, PR #865】 修正命令行钱包使用 transaction builder 时可能不正确签名的问题

【Issue #859, PR #801 / #817】 修正macOS下、Ninja下编译失败问题

【Iuuse #136, PR #928】修正测试案例中一处资产供应量的计算错误

【Issue #805, PR #840 / #919 / #937】 增加日志配置项,改进日志记录内容

【Issue #943, PR #869 / #945】 优化报错信息

【Issue #727, PR #880】 节点崩溃时输出堆栈信息

【Issue #878, PR #927】 可以配置IO线程数,或者根据CPU内核数自动配置IO线程数

【Issue #862, PR #872】 优化查询资产列表API的翻页参数

【Issue #863, PR #871】 优化get_ticker API的返回时间戳,现在返回最新块时间戳而不是当前时间

【Issue #811, PR #861】 命令行钱包增加 get_full_account 命令

【PR #850】 命令行钱包不再缓存资产数据

【PR #918】修正一处命令行钱包帮助文档错误

【PR #804】 重构p2p和app模块部分代码以方便测试

【PR #851 / #853 / #854 / #855】修复一些编译警告

30
BitAssets' MCR (maintenance collateral ratio) is calculated from price feeds (actually it's the median of feeds), it can change when feed changes, although rarely changes (according to current use cases in production aka BitShares mainnet, but perhaps there are potential new use cases which need to change it frequently).

MCR affects all margin positions. When MCR increased, more short positions will be put into margin call territory; when MCR decreased, more short positions will be pull out of margin call territory.

So, ideally, when MCR changed, all short positions should be reevaluated.

Since the quantity of short positions can be very large, for better performance, a caching mechanism is used in current system, aka "call price". When a short position is created, we calculate its call price with current MCR; when its collateral and/or debt got updated, we update its call price according to current MCR. When median feed price reached call price, the short position is put into margin call territory; when feed price changed backwards, the short position is pull out of margin call territory.

However, in current system, we don't refresh the "call price" cache when MCR changed, that said, existing short positions' call prices can be inconsistent with latest MCR. In the meanwhile, call prices of new positions or updated positions will be always up-to-date as long as MCR didn't change. This may lead to unintended margin calls when MCR decreased, or unintended inability to call when MCR increased.

By the way, BSIP31 partially solved the cache refreshing issue: before BSIP31, when a short position is partially called or settled, its call price won't be updated; after BSIP31, it will. https://github.com/bitshares/bsips/blob/master/bsip-0031.md

Another related feature is BSIP38, using "target_collateral_ratio" option will effectively avoid unintended margin calls, somewhat of double insurance. However, if a borrower is not using "target_collateral_ratio" option, her position can be called unintendedly after MCR decreased. https://github.com/bitshares/bsips/blob/master/bsip-0038.md

Now come back to the MCR topic.

To solve the cache inconsistency issue, we have options:

1. totally drop the caching mechanism, calculate call prices on the fly (may impact order matching performance)

2. update "call price" cache immediately when MCR changed (may impact performance since possibly need to update lots of data at a time)

3. update "call price" cache at maintenance interval since maintenance interval is meant to be used to process mass calculation

With the 3rd approach,

3.1 if we don't change MCR update behavior, aka update "current effective" MCR directly when feed changed, then the call price cache will be still inconsistent before maintenance interval;

3.2 we can defer MCR update to maintenance interval, that said, when detected a MCR change due to feed change or asset option e.g. feed lifetime change, don't apply the MCR update immediately, but apply it in next maintenance interval. With this approach, the call price data will be always consistent to "current effective" MCR.
  * pros: data consistency
  * cons: probably poorer user experience (UX), since users (usually asset issuers and feed producers) need to wait when wanted to update MCR.


Summary:
I recommend the 3.2 approach: defer MCR update to maintenance interval, update call price cache every time after MCR updated.
Update: at present I tend to adopt option 1. Actually, we can also try to move the caching to median price feed.

Thoughts?

Pages: 1 [2] 3 4 5 6 7 8 9 ... 11