Skip to content

Conversation

@artem-yazkov
Copy link
Contributor

@artem-yazkov artem-yazkov commented Mar 17, 2025

We have two new commands in Proxy Client concerning legacy holder accounts

  • holder legacy-list
    the command prints a list of all legacy holder accounts grouped by operator keys
    the output format is the same as with holder list command, but
    • only legacy holder accounts are displayed, not all accounts as holder list does
    • positional arguments are not supported. All legacy accounts are displayed in a full list

The command example

root@proxy:/opt/neon-proxy# ./proxy-cli holder legacy-list
.....

CXJy6dzL8kAazo5jhBf8MuW17nJ8dW23EfzPmqTJ6P5H:
  2jhNofg4XirzoH6vyyT9S9VrtbNR2W5D1eMFuSn5rRmp: status=Holder, tx=None, size=262144 bytes, balance=1.825413120 SOLs
  DLrd1jmAugSpSpFa625QwxSezqUDxd5fMK5Ye4fTmQi5ne: status=Holder, tx=None, size=262144 bytes, balance=1.825413120 SOLs
total CXJy6dzL8kAazo5jhBf8MuW17nJ8dW23EfzPmqTJ6P5H: 2 holder accounts with 3.650826240 SOLs

V6fr3EgLUYFSGgzPBxTnhrieeAratBX46AGvAtmQ2Xe:
  36oPGZHHQhWhXjS2e8Q4MoXTJQwsU86QSVu4sVkeziX7: status=Holder, tx=None, size=262144 bytes, balance=1.825413120 SOLs
  8wRFH4bpVsUwPrucfw8XhHWzMrfdYfKYhYHxu4Ewjum8: status=Holder, tx=None, size=262144 bytes, balance=1.825413120 SOLs
total V6fr3EgLUYFSGgzPBxTnhrieeAratBX46AGvAtmQ2Xe: 2 holder accounts with 3.650826240 SOLs

F4nLmDy62mhYiY4gGmRXDYpdFM4mLrm9t5YLpqTDMBz5:
  HLefDAdP79Bsz87C6K8kGQGQVAvnfyHiWJKtTp47mtA6wq: status=Holder, tx=None, size=262144 bytes, balance=1.825413120 SOLs
total F4nLmLmDy62mhYiY4gGmRXDYpdFM4mLrm9t5YLpqTDMBz5: 1 holder accounts with 1.825413120 SOLs

total: 28 operator keys with 55 holder accounts and 100.397721600 SOLs
  • holder legacy-delete
    the command generates transactions to delete all existing holder accounts
    after legacy holder accounts deletion is complete, the holder legacy-list command will return an empty legacy list

You can monitor the presence of legacy holder accounts before and after their deletion

  root@proxy:/opt/neon-proxy# ./proxy-cli holder legacy-list
  ....
  total: 28 operator keys with 55 holder accounts and 100.397721600 SOLs

  root@proxy:/opt/neon-proxy# ./proxy-cli holder legacy-destroy
  { ‘level’: ‘INFO’, “date”: “2025-03-21T08:06:31.368540”, “pid”: 6462, “puid”: 5832, “module”: ‘proxy_client/holder_cmd.py:208’, “message”: “destroy 55 legacy holder accounts”, “uuid”: “a4d81ee3-00ee-4331-90c0-2402ee3a6494”}

  root@proxy:/opt/neon-proxy# ./proxy-cli holder legacy-list
  total: 0 operator keys with 0 holder accounts and 0.000000000 SOLs

Please note that SOLs on the balance of deleted accounts that have been moved to the operator account are the property of Neon.

@artem-yazkov artem-yazkov requested a review from afalaleev March 17, 2025 17:56
Copy link
Member

@afalaleev afalaleev left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good!
Please fix 1 comment

@classmethod
async def destroy_holder(
cls,
core_api_client: CoreApiClient,
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

core_api_client isn't used in the function.
Please remove it from the argument list.

@neonlabstech
Copy link

Dapps report

🔗Cost report

@neonlabstech
Copy link

Solana Requests Statistics
count min_time max_time average_time median_time
getAccountInfo 47248 0 0.227 0.000849835 0.001
getBlocks 30787 0 0.193 0.000984117 0.001
getBlock 15377 0 0.035 0.00147539 0.001
getTransaction 11194 0 0.15 0.00714704 0.003
getMultipleAccounts 8060 0 0.229 0.00261998 0.002
sendTransaction 5516 0 0.229 0.0108934 0.005
getLatestBlockhash 4981 0 0.138 0.00273861 0.001
getBalance 1771 0 0.023 0.0007476 0.001
getSignatureStatuses 448 0 0.01 0.000607143 0.001
isBlockhashValid 206 0 0.002 0.00038835 0
getVersion 182 0 0.056 0.000791209 0
getSignaturesForAddress 73 0 0.005 0.0019863 0.002
simulateTransaction 42 0 0.001 0.0005 0.0005
requestAirdrop 32 0 0.004 0.00090625 0.001
getBlockHeight 19 0 0.003 0.000789474 0.001
getSlot 17 0 0.004 0.000882353 0.001
getHealth 3 0.001 0.003 0.00233333 0.003
getTokenAccountBalance 3 0 0.001 0.000333333 0
getFirstAvailableBlock 2 0 0 0 0
getMinimumBalanceForRentExemption 1 0.001 0.001 0.001 0.001
getProgramAccounts 1 0.032 0.032 0.032 0.032
getClusterNodes 1 0.003 0.003 0.003 0.003

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants