tsconsensus: enable writing state to disk

The comments in the raft code say to only use the InMemStore for tests.

Updates #16027

Signed-off-by: Fran Bull <fran@tailscale.com>
This commit is contained in:
Fran Bull
2025-05-27 08:06:45 -07:00
committed by franbull
parent 84aa7ff3bb
commit c9a5d638e9
5 changed files with 80 additions and 7 deletions

19
tsconsensus/bolt_store.go Normal file
View File

@@ -0,0 +1,19 @@
// Copyright (c) Tailscale Inc & AUTHORS
// SPDX-License-Identifier: BSD-3-Clause
//go:build !loong64
package tsconsensus
import (
"github.com/hashicorp/raft"
raftboltdb "github.com/hashicorp/raft-boltdb/v2"
)
func boltStore(path string) (raft.StableStore, raft.LogStore, error) {
store, err := raftboltdb.NewBoltStore(path)
if err != nil {
return nil, nil, err
}
return store, store, nil
}