Skip to content

Transaction expiration calculation -> change times to only block time #1060

Closed

Description

@kristjank

Is your feature request related to a problem? Please describe.
Now it is possible to set transaction expiration in two ways (block-time and also normal time-to-live before expiration).

Describe the solution you'd like
The only true and measurable time is block height and so in this case also transaction expiration should be set, in explicit value of block height when it should expires.transaction: {

 expiration: 5980000
}

For usability the client applications would still calculate this in a time-spam, so we can show more friendly information to the user sending the transaction. The clients can also suggest like 10 blocks, 2 rounds and then the explicit block expiration height is calculated in the background.

Activity

  1. added this to the milestone on Oct 24, 2018
  2. kristjank commented on Oct 31, 2018

    @kristjank
    ContributorAuthor

    @vasild did you manage to check into this

  3. vasild commented on Oct 31, 2018

    @vasild
    Contributor

    No, but I have a rough idea:

    1. Rename transaction.expiration -> transaction.expirationSecondsSinceGenesis
    2. Introduce new transaction.expirationHeight
      If 2. is set then override/ignore 1. and expire based on blocks, if 2. is not set then do as the current code does (expire by seconds).
    3. Get the user-facing apps to set 2.
    4. Delete 1. from the code as it will be unused after 3.

    IMO the user-facing apps should present the user time-based expiration dialogs, like "expire after N hours approximately" or "expire at 14:56 on Nov 1 2018 approximately" and convert into block number under the hood. Then maybe have some advanced, geeks-only option to set/view expiration block number directly.

  4. modified the milestones: , on Nov 7, 2018
  5. 9 remaining items

  6. modified the milestones: , on Jan 30, 2019
  7. modified the milestones: , on Feb 19, 2019
  8. modified the milestones: , on Apr 3, 2019
  9. modified the milestones: , on Apr 23, 2019
  10. added 2 commits that reference this issue on Apr 23, 2019
    b471384
    525f165
  11. vasild commented on Apr 26, 2019

    @vasild
    Contributor

    Implemented in #2461

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

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions