small qol items

This commit is contained in:
Cassandra Heart 2024-03-24 03:11:00 -05:00
parent 5afabc401b
commit 286d38e054
No known key found for this signature in database
GPG Key ID: 6352152859385958
7 changed files with 30 additions and 17 deletions

View File

@ -41,7 +41,7 @@ func (e *CeremonyDataClockConsensusEngine) publishProof(
panic(err) panic(err)
} }
peers, max, err := e.GetMostAheadPeer() peers, max, err := e.GetMostAheadPeer(head.FrameNumber)
if err != nil || len(peers) == 0 || head.FrameNumber > max { if err != nil || len(peers) == 0 || head.FrameNumber > max {
if err := e.publishMessage(e.filter, frame); err != nil { if err := e.publishMessage(e.filter, frame); err != nil {
return errors.Wrap( return errors.Wrap(

View File

@ -566,6 +566,7 @@ func (e *CeremonyDataClockConsensusEngine) Stop(force bool) <-chan error {
wg.Wait() wg.Wait()
e.logger.Info("execution engines stopped") e.logger.Info("execution engines stopped")
e.dataTimeReel.Stop()
e.state = consensus.EngineStateStopped e.state = consensus.EngineStateStopped
e.engineMx.Lock() e.engineMx.Lock()

View File

@ -143,24 +143,21 @@ func (e *CeremonyDataClockConsensusEngine) prove(
return frame, nil return frame, nil
} }
func (e *CeremonyDataClockConsensusEngine) GetMostAheadPeer() ( func (e *CeremonyDataClockConsensusEngine) GetMostAheadPeer(
frameNumber uint64,
) (
[]byte, []byte,
uint64, uint64,
error, error,
) { ) {
frame, err := e.dataTimeReel.Head()
if err != nil {
panic(err)
}
e.logger.Info( e.logger.Info(
"checking peer list", "checking peer list",
zap.Int("peers", len(e.peerMap)), zap.Int("peers", len(e.peerMap)),
zap.Int("uncooperative_peers", len(e.uncooperativePeersMap)), zap.Int("uncooperative_peers", len(e.uncooperativePeersMap)),
zap.Uint64("current_head_frame", frame.FrameNumber), zap.Uint64("current_head_frame", frameNumber),
) )
max := frame.FrameNumber max := frameNumber
var peer []byte = nil var peer []byte = nil
e.peerMapMx.RLock() e.peerMapMx.RLock()
for _, v := range e.peerMap { for _, v := range e.peerMap {
@ -514,7 +511,7 @@ func (e *CeremonyDataClockConsensusEngine) collect(
latest := currentFramePublished latest := currentFramePublished
for { for {
peerId, maxFrame, err := e.GetMostAheadPeer() peerId, maxFrame, err := e.GetMostAheadPeer(latest.FrameNumber)
if maxFrame > latest.FrameNumber { if maxFrame > latest.FrameNumber {
e.syncingStatus = SyncStatusSynchronizing e.syncingStatus = SyncStatusSynchronizing
if err != nil { if err != nil {

View File

@ -325,7 +325,7 @@ func (e *MasterClockConsensusEngine) performBandwidthTest(peerID []byte) {
cc, err := e.pubSub.GetDirectChannel(peerID, "validation") cc, err := e.pubSub.GetDirectChannel(peerID, "validation")
if err != nil { if err != nil {
e.logger.Info( e.logger.Debug(
"could not connect to peer for validation", "could not connect to peer for validation",
zap.String("peer_id", base58.Encode(peerID)), zap.String("peer_id", base58.Encode(peerID)),
) )
@ -348,7 +348,7 @@ func (e *MasterClockConsensusEngine) performBandwidthTest(peerID []byte) {
end := time.Now().UnixMilli() end := time.Now().UnixMilli()
if err != nil && err != io.EOF { if err != nil && err != io.EOF {
cc.Close() cc.Close()
e.logger.Info( e.logger.Debug(
"peer returned error", "peer returned error",
zap.String("peer_id", base58.Encode(peerID)), zap.String("peer_id", base58.Encode(peerID)),
zap.Error(err), zap.Error(err),
@ -360,7 +360,7 @@ func (e *MasterClockConsensusEngine) performBandwidthTest(peerID []byte) {
cc.Close() cc.Close()
if !bytes.Equal(verification, validation.Validation) { if !bytes.Equal(verification, validation.Validation) {
e.logger.Info( e.logger.Debug(
"peer provided invalid verification", "peer provided invalid verification",
zap.String("peer_id", base58.Encode(peerID)), zap.String("peer_id", base58.Encode(peerID)),
) )
@ -370,7 +370,7 @@ func (e *MasterClockConsensusEngine) performBandwidthTest(peerID []byte) {
} }
if end-start > 2000 { if end-start > 2000 {
e.logger.Info( e.logger.Debug(
"peer has slow bandwidth, scoring out", "peer has slow bandwidth, scoring out",
zap.String("peer_id", base58.Encode(peerID)), zap.String("peer_id", base58.Encode(peerID)),
) )

View File

@ -458,11 +458,11 @@ func (e *CeremonyExecutionEngine) Start() <-chan error {
} }
// Stop implements ExecutionEngine // Stop implements ExecutionEngine
func (*CeremonyExecutionEngine) Stop(force bool) <-chan error { func (e *CeremonyExecutionEngine) Stop(force bool) <-chan error {
errChan := make(chan error) errChan := make(chan error)
go func() { go func() {
errChan <- nil errChan <- <-e.clock.Stop(force)
}() }()
return errChan return errChan

View File

@ -1251,6 +1251,21 @@ func (p *PebbleClockStore) Compact(
); err != nil { ); err != nil {
return errors.Wrap(err, "compact") return errors.Wrap(err, "compact")
} }
if err := p.db.DeleteRange(
clockDataParentIndexKey(
make([]byte, 32),
0,
make([]byte, 32),
),
clockDataParentIndexKey(
bytes.Repeat([]byte{0xff}, 32),
0,
bytes.Repeat([]byte{0xff}, 32),
),
); err != nil {
return errors.Wrap(err, "compact")
}
} }
if dataFilter != nil && !cleared { if dataFilter != nil && !cleared {

View File

@ -78,7 +78,7 @@ func (p *PebbleDB) CompactAll() error {
return errors.Wrap(err, "compact all") return errors.Wrap(err, "compact all")
} }
if err := p.Compact(first, last, true); err != nil { if err := p.Compact(first, last, false); err != nil {
return errors.Wrap(err, "compact all") return errors.Wrap(err, "compact all")
} }