nomad: remove eval broker from state store

This commit is contained in:
Armon Dadgar
2015-08-06 11:09:59 -07:00
parent e0ca9c26e4
commit 305d5024de
3 changed files with 10 additions and 26 deletions

View File

@@ -55,7 +55,7 @@ type snapshotHeader struct {
// NewFSMPath is used to construct a new FSM with a blank state
func NewFSM(evalBroker *EvalBroker, logOutput io.Writer) (*nomadFSM, error) {
// Create a state store
state, err := NewStateStore(evalBroker, logOutput)
state, err := NewStateStore(logOutput)
if err != nil {
return nil, err
}
@@ -244,7 +244,7 @@ func (n *nomadFSM) Restore(old io.ReadCloser) error {
defer old.Close()
// Create a new state store
state, err := NewStateStore(n.evalBroker, n.logOutput)
state, err := NewStateStore(n.logOutput)
if err != nil {
return err
}

View File

@@ -17,9 +17,8 @@ import (
// returned as a result of a read against the state store should be
// considered a constant and NEVER modified in place.
type StateStore struct {
logger *log.Logger
evalBroker *EvalBroker
db *memdb.MemDB
logger *log.Logger
db *memdb.MemDB
}
// StateSnapshot is used to provide a point-in-time snapshot
@@ -52,7 +51,7 @@ type IndexEntry struct {
}
// NewStateStore is used to create a new state store
func NewStateStore(evalBroker *EvalBroker, logOutput io.Writer) (*StateStore, error) {
func NewStateStore(logOutput io.Writer) (*StateStore, error) {
// Create the MemDB
db, err := memdb.NewMemDB(stateStoreSchema())
if err != nil {
@@ -61,9 +60,8 @@ func NewStateStore(evalBroker *EvalBroker, logOutput io.Writer) (*StateStore, er
// Create the state store
s := &StateStore{
logger: log.New(logOutput, "", log.LstdFlags),
evalBroker: evalBroker,
db: db,
logger: log.New(logOutput, "", log.LstdFlags),
db: db,
}
return s, nil
}
@@ -74,9 +72,8 @@ func NewStateStore(evalBroker *EvalBroker, logOutput io.Writer) (*StateStore, er
func (s *StateStore) Snapshot() (*StateSnapshot, error) {
snap := &StateSnapshot{
StateStore: StateStore{
logger: s.logger,
evalBroker: s.evalBroker,
db: s.db.Snapshot(),
logger: s.logger,
db: s.db.Snapshot(),
},
}
return snap, nil
@@ -144,10 +141,6 @@ func (s *StateStore) DeregisterNode(index uint64, nodeID string) error {
return fmt.Errorf("index update failed: %v", err)
}
// TODO: Handle the existing allocations, probably need
// to change their states back to pending and kick the scheduler
// to force it to move things around
txn.Commit()
return nil
}
@@ -242,10 +235,6 @@ func (s *StateStore) RegisterJob(index uint64, job *structs.Job) error {
return fmt.Errorf("index update failed: %v", err)
}
// TODO: Handle the existing allocations, probably need
// to change their states back to pending and kick the scheduler
// to force it to move things around
txn.Commit()
return nil
}
@@ -272,10 +261,6 @@ func (s *StateStore) DeregisterJob(index uint64, jobID string) error {
return fmt.Errorf("index update failed: %v", err)
}
// TODO: Handle the existing allocations, probably need
// to change their states back to pending and kick the scheduler
// to force it to move things around
txn.Commit()
return nil
}

View File

@@ -10,8 +10,7 @@ import (
)
func testStateStore(t *testing.T) *StateStore {
b := testBroker(t, 0)
state, err := NewStateStore(b, os.Stderr)
state, err := NewStateStore(os.Stderr)
if err != nil {
t.Fatalf("err: %v", err)
}