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

Node V14.2 - New Accounts in wallet set representative to themselves upon opening, instead of using the wallet representative #1019

Closed
bbedward opened this issue Aug 2, 2018 · 4 comments

Comments

Projects
5 participants
@bbedward
Copy link

commented Aug 2, 2018

Description of bug:

I've noticed for quite awhile now, that new accounts in a wallet set the representative to themselves instead of to the wallet representative.

This is in a wallet with over 4,000 accounts, and I never used to have the issue so I'm not sure if it's possibly related to the large number of accounts this wallet has - or if it's just something that happened in a newer node version.

E.g - I RPC account_create, and get an address like xrb_1hmefcfq35td5f6rkh15hbpr4bkkhyyhmfhm7511jaka811bfp17xhkboyxo . When the account is opened by receiving a transaction, the representative is set to itself. Example: xrb_1hmefcfq35td5f6rkh15hbpr4bkkhyyhmfhm7511jaka811bfp17xhkboyxo is represented by xrb_1hmefcfq35td5f6rkh15hbpr4bkkhyyhmfhm7511jaka811bfp17xhkboyxo after the account is opened.

I have used the CLI --wallet_representative_set and the RPC wallet_representative_set. Neither of which change the behavior described above.

Steps to reproduce the issue:

  1. Create a wallet via --wallet_create
  2. Change rep via --wallet_representative_set
  3. Create thousands of accounts
  4. Open accounts via RPC receive, or by the automatic node pocketing mechanism.

Describe the results you received:

Accounts upon opening represent themselves.

After a period of time, my node becomes unresponsive until I set the representatives using account_representative_set. Likely due to my node having hundreds of representatives voting.

Describe the results you expected:

Accounts upon opening are represented by the wallet representative

Additional information you deem important (e.g. issue happens only occasionally):

Issue happens consistently and is repeatable.

Environment:

  • Ubuntu 18.04
  • Node 14.2 (tested on both docker node and node built from source)
@renesq

This comment has been minimized.

Copy link

commented Aug 2, 2018

This unexpected behavior is closely related:
Right now, the wallet_representative_set command generally only affects accounts that were created afterwards. Since state blocks contain the representative in every single block, it should probably always use the one that was set in wallet_representative_set when creating a new block. At least, this command should trigger a wallet-wide overwrite of existing reps at the time of execution. Maybe also add a switch to choose between "instant change" and "change on next send/receive" and "apply to new accounts only".

@rkeene rkeene added this to Needs triage in Improve Desktop Wallet via automation Aug 24, 2018

@rkeene rkeene added the bug label Aug 24, 2018

@zhyatt zhyatt removed this from Needs triage in Improve Desktop Wallet Dec 27, 2018

@zhyatt zhyatt added the experiment label Dec 27, 2018

@zhyatt zhyatt added this to the V18.0 milestone Dec 27, 2018

@zhyatt zhyatt added this to Unscheduled in V18 Dec 27, 2018

@zhyatt zhyatt moved this from Unscheduled to Unassigned in V18 Dec 27, 2018

@zhyatt zhyatt moved this from Unassigned to CP 1 (2018-01-09) in V18 Dec 28, 2018

@SergiySW

This comment has been minimized.

Copy link
Collaborator

commented Jan 1, 2019

Cannot reproduce such issue. Some 3rd party wallets set representative for account itself, but official node / QT wallet not doing so.
Provided account (xrb_1hmefcfq35td5f6rkh15hbpr4bkkhyyhmfhm7511jaka811bfp17xhkboyxo) contains one of the default representatives in open block
https://nanocrawler.cc/explorer/block/1D2CE62FE2B4F02F43F1A1C6071DCCD8AF803F3573124F5F9C57CD38D47FD2A9

Representative was changed 3 times for xrb_1i9ugg14c5sph67z4st9xk8xatz59xntofqpbagaihctg6ngog1f45mwoa54:
https://nanocrawler.cc/explorer/block/4EA2702DE65D17489734FA25C99C407D0B2F12C2AA87913A9E72DE3F95D61A34
https://nanocrawler.cc/explorer/block/F3A7FD676EADD223E7306D1DAFCA01CB797BCBD745958FD0D76BED7BC92B9173
https://nanocrawler.cc/explorer/block/28B1FBDAE4A126953CB4B7FAA5C28852AA9F5A99A816CAEF9334A08DF5547272

Then for xrb_1x7biz69cem95oo7gxkrw6kzhfywq4x5dupw4z1bdzkb74dk9kpxwzjbdhhs:
https://nanocrawler.cc/explorer/block/BCC5852B8E643FA892B13FF3164D5B225B6C62E869EE5D72A72715A193E5F421
Then for xrb_3arg3asgtigae3xckabaaewkx3bzsh7nwz7jkmjos79ihyaxwphhm6qgjps4:
https://nanocrawler.cc/explorer/block/398A2B3BF998E3263D85A6CF27D220D2E76228D2BCE438963EB2BDDB717A8FC1
Then for xrb_1i9ugg14c5sph67z4st9xk8xatz59xntofqpbagaihctg6ngog1f45mwoa54 (again):
https://nanocrawler.cc/explorer/block/883A88F542E8FD4CE9C4690B32CE313D5334FC2163B94BDD3576D23290D8657F
Then for xrb_3arg3asgtigae3xckabaaewkx3bzsh7nwz7jkmjos79ihyaxwphhm6qgjps4 (again):
https://nanocrawler.cc/explorer/block/ECCAE3C2E2E04FA5CB7E99E4281C0D8DF4067E58F75AEB46B3C3E519305B656E
Then 2 times for xrb_1i9ugg14c5sph67z4st9xk8xatz59xntofqpbagaihctg6ngog1f45mwoa54 (again):
https://nanocrawler.cc/explorer/block/79444DB5CC6AF2946FC8ECDF1DFAEB06EB37A711D7960F4B85766BF76C007FA2
https://nanocrawler.cc/explorer/block/ED9C30F2E763B56E5EC7AAD4D0BE1DB64D6DDCA89BF2973EB9BD392D40E84482

Then for xrb_3o7uzba8b9e1wqu5ziwpruteyrs3scyqr761x7ke6w1xctohxfh5du75qgaj:
https://nanocrawler.cc/explorer/block/E54993207225725C2A2AD7C132CCB38431F0D834CEF6568B80D7E6971229F509

So, representative never was xrb_1hmefcfq35td5f6rkh15hbpr4bkkhyyhmfhm7511jaka811bfp17xhkboyxo for provided account. It's likely related to explorers representation issues

@SergiySW

This comment has been minimized.

Copy link
Collaborator

commented Jan 2, 2019

@renesq. Changing representative for all accounts in wallet may require a lot of time. Changing each receive transaction to wallet default representative will not allow you to balance delegated wallet weight between multiple representatives (and changing current wallet behavior a lot).
Options are possible, but I don't think it worth efforts. Are there other users/services expecting such change?

@zhyatt

This comment has been minimized.

Copy link
Collaborator

commented Jan 14, 2019

Closing as the original issue cannot be reproduced and the secondary item of account reps not being changed on wallet_representative_set call was resolved in #1531

@zhyatt zhyatt closed this Jan 14, 2019

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.