Skip to content
This repository has been archived by the owner on Jan 22, 2025. It is now read-only.

PoH ticks are generated at a specific Hz, need to be generated at a specific hash-loop count #1474

Closed
rob-solana opened this issue Oct 11, 2018 · 3 comments

Comments

@rob-solana
Copy link
Contributor

rob-solana commented Oct 11, 2018

Problem:

PoH ticks are generated at a specific Hz, so the "difficultly" (in Bitcoin terms) is implicitly and dynamically adjusted by the leader. This creates a problem when validators are attempting to create "virtual ticks" that they'd all synchronize on if the leader entry doesn't get its 2/3+1 vote.

Proposed solution:

Fullnodes could plan to use the same PoH count for each Tick. This may be problematic if processing transactions takes longer than that count. The leader effectively stalls PoH in that scenario. It also raises the question, how should "difficulty" be upgraded such that PoH Ticks continue to estimate "Hz"?

@garious
Copy link
Contributor

garious commented Oct 15, 2018

@rob-solana, I reverse-engineered the problem your solving as best I could, and used it to write a description for this ticket. If it's accurate, can you please update the title of this ticket to specify the problem and not a potential solution?

@rob-solana
Copy link
Contributor Author

duplicate of #1428

the problem is that the network protocol to support the TDMA-style leader rotation, forking is not implementable if nodes do not agree on a num-hashes-per-tick hyper parameter

@rob-solana rob-solana reopened this Oct 22, 2018
@mvines mvines added this to the The Future! milestone Oct 23, 2018
@rob-solana
Copy link
Contributor Author

all of the code is in place for generating ticks at a specific hash count except for a network hyper-parameter config for it and the default of turning it on

@garious garious modified the milestones: The Future!, v0.11 Tabletops Dec 9, 2018
vkomenda pushed a commit to vkomenda/solana that referenced this issue Aug 29, 2021
)

`P_{margin}=iRP` didn't make sense, as P isn't defined, and i is already defined as the price (from the oracle).
the references doc contains `P_{margin}=iR`, so I assume this is a typo.
joncinque pushed a commit to joncinque/solana that referenced this issue May 24, 2024
Adjust RpcCompletedSlotsService to only be created if --full-rpc-api
is passed into the CLI. This service is unused for non-RPC nodes
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants