2

Here I have the results from the solana stakes <insert validator> CLI command.

{
    "stakePubkey": "47YYxhvHBg2RwDRMFnTh3v2x9wiBp4GwkV3yewNZLsw9",
    "stakeType": "Stake",
    "accountBalance": 100188135717,
    "creditsObserved": 762614,
    "delegatedStake": 100185852837,
    "delegatedVoteAccountAddress": "3nHRjY8y9koWkEzKsh6i4tSmiyYFBXMMiMhZDHLbDcam",
    "activationEpoch": 327,
    "staker": "BYy9ZGnwDaeWPiu6KTjFVPKYcSk3z4QWethGHGQyMt3h",
    "withdrawer": "H6ce5MfQq4qNZpN42QJVb11KFhUAQYWaoRw8qxs8PCpf",
    "rentExemptReserve": 2282880,
    "activeStake": 100185852837
  },

Would someone mind explaining the different key/value pairs and their meaning? Looking to track the delegated/active stake, but sometimes the "activeStake" is missing from some delegators, so I'm also wondering about the significance of that.

Currently, I see that active and delegated are the same, so should I assume them to be equivalent? Just confused because why would there be different keys.

1 Answer 1

1

It's basically a succinct representation of a stake account and its state.

I'll annotate inline, but reordered for clarity

  1. Available in all states

    • "stakePubkey": "47YYxhvHBg2RwDRMFnTh3v2x9wiBp4GwkV3yewNZLsw9",

      The stake account's address

    • "accountBalance": 100188135717,

      The account's lamports balance (ie. AccountInfo::lamports)

    • "stakeType": "Stake",

      The current StakeState of the account. One of:

      • Uninitialized - account has been allocated, but no StakeInstruction::Initialized issued against it. Anyone could assume control of an account in this state, so the aforementioned instruction is typically issued in the same transaction that allocates the account.
      • Initialized - Owner has assumed control of the account, but not yet delegated it to a validator
      • Stake - The account has been delegated and is in one of the following (implicit) sub-states depending on epochs since (de)activation epoch and total (transient) stake changing state at a given epoch boundary
        • activating - During the activation epoch or after, but global transient stake limit has been exceeded (partially active)
        • active - The full delegation has been activated
        • deactivating - During the deactivation epoch or after, but the global transient stake limit has been exceeded (partially deactivated)
        • inactive - The full delegation has been deactivated
      • RewardsPool - Defunct, unimplemented delegation pooling mechanism. See stake pools instead
  2. Available in Initialized or Stake states

    • "staker": "BYy9ZGnwDaeWPiu6KTjFVPKYcSk3z4QWethGHGQyMt3h",

      Pubkey of signing authority which controls delegation. May update itself

    • "withdrawer": "H6ce5MfQq4qNZpN42QJVb11KFhUAQYWaoRw8qxs8PCpf",

      Pubkey of signing authority which may withdraw inactive stake or undelegated lamports. May update itself or the staker authority.

    • "rentExemptReserve": 2282880,

      Lamport balance required to keep the account rent-exempt. Not counted towards delegation

    • "unixTimestamp": 1658565237,

      (not in example) If the account is subject to lockup, the optional block time after which the account is unlocked

    • "epoch": 123,

      (not in example) If the account is subject to lockup, the optional epoch at which the account is unlocked

    • "custodian": "3N5VLFDu5ycWaK5w7fpnpDqPqbkyeeC3xbrvQ9oZdm64",

      (not in example) If the account is subject to lockup, the signing authority able to modify the lockup terms and approve withdraws

  3. Available only in Stake state

    • "activationEpoch": 327,

      Epoch during which the account was last delegated

    • "deactivationEpoch": 420,

      (not in example) Epoch which the account was marked for deactivation

    • "delegatedVoteAccountAddress": "3nHRjY8y9koWkEzKsh6i4tSmiyYFBXMMiMhZDHLbDcam",

      Address of the chosen validator's vote account

    • "creditsObserved": 762614,

      Number of vote credits the validator had at the last epoch boundary. Used to account epoch rewards that this delegation is entitled to receive.

    • "delegatedStake": 100185852837,

      Total lamports in the delegation, regardless of sub-state

    • "activeStake": 100185852837,

      In activating, active and deactivating sub-states, the portion of the delegation which is fully activated

    • "activatingStake": 123456789,

      (not in example) In the activating sub-state, the portion of the delegation that has not yet been activated

    • "deactivatingStake": 123456789,

      (not in example) In the deactivating sub-state, the portion of the delegation that is still active

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.