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

Prefer ActorID where possible #289

Closed
Stebalien opened this issue Jan 21, 2022 · 3 comments
Closed

Prefer ActorID where possible #289

Stebalien opened this issue Jan 21, 2022 · 3 comments
Labels
Kind: Improvement An improvement of something that exists. P2 P2: Should be resolved Topic: Built-in actors Topic: Syscalls
Milestone

Comments

@Stebalien
Copy link
Member

Currently, we have quite a few places in the code where we:

  1. Resolve an actor address into an actor ID.
  2. Turn it back into an Address.

Ideally, we'd:

  1. Store ActorIDs in state (smaller).
  2. Use actor IDs in all syscalls except resolve_address:
    1. Easier to reason about gas usage.
    2. More efficient when the address has already been resolved.

However, this is a significant refactor and likely isn't worth it for now.

@Stebalien Stebalien added Kind: Improvement An improvement of something that exists. P3 P3: Might get resolved Topic: Built-in actors area/fvm Topic: Syscalls labels Jan 21, 2022
@jennijuju jennijuju added this to the Phase 1 milestone Mar 7, 2022
@jennijuju
Copy link
Member

this may result in different gas charges, including in self_destruct and such.

@jennijuju jennijuju added P2 P2: Should be resolved and removed P3 P3: Might get resolved labels Mar 7, 2022
@anorth
Copy link
Member

anorth commented Mar 9, 2022

Replaced by filecoin-project/builtin-actors#56.

We can't do this without a state migration.

@anorth anorth closed this as completed Mar 9, 2022
@anorth
Copy link
Member

anorth commented Mar 9, 2022

Re-open if you want to change the syscall APIs

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Kind: Improvement An improvement of something that exists. P2 P2: Should be resolved Topic: Built-in actors Topic: Syscalls
Projects
No open projects
Development

No branches or pull requests

3 participants