mirror of
https://gitlab.com/pulsechaincom/erigon-pulse.git
synced 2024-12-24 12:37:16 +00:00
17b2a9ba93
* Integration to work with bor * Turn off validator set check * disable verifySeal, add skeleton of postExec stage * Pass around syscall * Print * Print more * Default heimdall values for integration * restore contract * Print * Print * Print * Print * Print * Print * Print * Print * Fix nonce of system contract * Remove prints * Revert some more printing * More fixes * Print log * Fix transfer log * More printing * More printing * Print * Print * Print * Print * Print * Print * Print * Fix validaor reward * Remove printing * Remove more prints * Less printing * Fetch validators from heimdall * Remove syscall from Seal and CalcDifficulty * Remove syscall from Prepare * Print * Remove DNS discovery * Print apply snapshot * Print * Chunk up snapshot generation * Chunk up snapshot generation * Better logs when snapshotting * Handle parents * Prevent shadowing of snap * Fix heimdall fetch * Logging fixes * Save generated snapshots * Add header * Less logging Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local> Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro.local>
30 lines
882 B
Go
30 lines
882 B
Go
package bor
|
|
|
|
import (
|
|
"github.com/google/btree"
|
|
)
|
|
|
|
// Span represents a current bor span
|
|
type Span struct {
|
|
ID uint64 `json:"span_id" yaml:"span_id"`
|
|
StartBlock uint64 `json:"start_block" yaml:"start_block"`
|
|
EndBlock uint64 `json:"end_block" yaml:"end_block"`
|
|
}
|
|
|
|
// HeimdallSpan represents span from heimdall APIs
|
|
type HeimdallSpan struct {
|
|
Span
|
|
ValidatorSet ValidatorSet `json:"validator_set" yaml:"validator_set"`
|
|
SelectedProducers []Validator `json:"selected_producers" yaml:"selected_producers"`
|
|
ChainID string `json:"bor_chain_id" yaml:"bor_chain_id"`
|
|
}
|
|
|
|
func (hs *HeimdallSpan) Less(other btree.Item) bool {
|
|
otherHs := other.(*HeimdallSpan)
|
|
if hs.EndBlock == 0 || otherHs.EndBlock == 0 {
|
|
// if endblock is not specified in one of the items, allow search by ID
|
|
return hs.ID < otherHs.ID
|
|
}
|
|
return hs.EndBlock < otherHs.EndBlock
|
|
}
|