From fba20fd58d1784605e46432e9ddfc918a71e853f Mon Sep 17 00:00:00 2001 From: Alex Dadgar Date: Mon, 26 Feb 2018 15:06:01 -0800 Subject: [PATCH] Remove update time --- nomad/drain_test.go | 2 +- nomad/fsm.go | 2 +- nomad/fsm_test.go | 1 - nomad/node_endpoint.go | 3 --- nomad/node_endpoint_test.go | 2 +- nomad/state/state_store.go | 4 +--- nomad/state/state_store_test.go | 13 ++++++------- nomad/structs/structs.go | 1 - 8 files changed, 10 insertions(+), 18 deletions(-) diff --git a/nomad/drain_test.go b/nomad/drain_test.go index 13465ede0..9bae27fe3 100644 --- a/nomad/drain_test.go +++ b/nomad/drain_test.go @@ -150,7 +150,7 @@ func TestNodeDrainer_SimpleDrain(t *testing.T) { } node, err := state.NodeByID(nil, c1.NodeID()) require.Nil(err) - require.Nil(state.UpdateNodeDrain(node.ModifyIndex+1, node.ID, strategy, 101)) + require.Nil(state.UpdateNodeDrain(node.ModifyIndex+1, node.ID, strategy)) // Start node 2 c2 := client.TestClient(t, func(conf *config.Config) { diff --git a/nomad/fsm.go b/nomad/fsm.go index 58d152751..a946d523f 100644 --- a/nomad/fsm.go +++ b/nomad/fsm.go @@ -328,7 +328,7 @@ func (n *nomadFSM) applyDrainUpdate(buf []byte, index uint64) interface{} { panic(fmt.Errorf("failed to decode request: %v", err)) } - if err := n.state.UpdateNodeDrain(index, req.NodeID, req.DrainStrategy, req.UpdateTime); err != nil { + if err := n.state.UpdateNodeDrain(index, req.NodeID, req.DrainStrategy); err != nil { n.logger.Printf("[ERR] nomad.fsm: UpdateNodeDrain failed: %v", err) return err } diff --git a/nomad/fsm_test.go b/nomad/fsm_test.go index 87c3a8b44..922ba2ca6 100644 --- a/nomad/fsm_test.go +++ b/nomad/fsm_test.go @@ -301,7 +301,6 @@ func TestFSM_UpdateNodeDrain(t *testing.T) { req2 := structs.NodeUpdateDrainRequest{ NodeID: node.ID, DrainStrategy: strategy, - UpdateTime: 101, } buf, err = structs.Encode(structs.NodeUpdateDrainRequestType, req2) require.Nil(err) diff --git a/nomad/node_endpoint.go b/nomad/node_endpoint.go index 2631939ad..2aa02bfce 100644 --- a/nomad/node_endpoint.go +++ b/nomad/node_endpoint.go @@ -433,9 +433,6 @@ func (n *Node) UpdateDrain(args *structs.NodeUpdateDrainRequest, return fmt.Errorf("node not found") } - // Update the timestamp to - args.UpdateTime = time.Now().Unix() - // Commit this update via Raft _, index, err := n.srv.raftApply(structs.NodeUpdateDrainRequestType, args) if err != nil { diff --git a/nomad/node_endpoint_test.go b/nomad/node_endpoint_test.go index 5ce3cc272..7649cc2db 100644 --- a/nomad/node_endpoint_test.go +++ b/nomad/node_endpoint_test.go @@ -2379,7 +2379,7 @@ func TestClientEndpoint_ListNodes_Blocking(t *testing.T) { Deadline: 10 * time.Second, }, } - if err := state.UpdateNodeDrain(3, node.ID, s, 101); err != nil { + if err := state.UpdateNodeDrain(3, node.ID, s); err != nil { t.Fatalf("err: %v", err) } }) diff --git a/nomad/state/state_store.go b/nomad/state/state_store.go index 45c595d04..cfef5e483 100644 --- a/nomad/state/state_store.go +++ b/nomad/state/state_store.go @@ -616,8 +616,7 @@ func (s *StateStore) UpdateNodeStatus(index uint64, nodeID, status string) error } // UpdateNodeDrain is used to update the drain of a node -func (s *StateStore) UpdateNodeDrain(index uint64, nodeID string, - drain *structs.DrainStrategy, updateTime int64) error { +func (s *StateStore) UpdateNodeDrain(index uint64, nodeID string, drain *structs.DrainStrategy) error { txn := s.db.Txn(true) defer txn.Abort() @@ -647,7 +646,6 @@ func (s *StateStore) UpdateNodeDrain(index uint64, nodeID string, } copyNode.ModifyIndex = index - copyNode.StatusUpdatedAt = updateTime // Insert the node if err := txn.Insert("nodes", copyNode); err != nil { diff --git a/nomad/state/state_store_test.go b/nomad/state/state_store_test.go index 3d97cf7f5..81e17eaab 100644 --- a/nomad/state/state_store_test.go +++ b/nomad/state/state_store_test.go @@ -705,19 +705,18 @@ func TestStateStore_UpdateNodeDrain_Node(t *testing.T) { require.Nil(state.UpsertNode(1000, node)) - expectedTime := int64(101) + // Create a watchset so we can test that update node drain fires the watch + ws := memdb.NewWatchSet() + _, err := state.NodeByID(ws, node.ID) + require.Nil(err) + expectedDrain := &structs.DrainStrategy{ DrainSpec: structs.DrainSpec{ Deadline: -1 * time.Second, }, } - // Create a watchset so we can test that update node drain fires the watch - ws := memdb.NewWatchSet() - _, err := state.NodeByID(ws, node.ID) - require.Nil(err) - - require.Nil(state.UpdateNodeDrain(1001, node.ID, expectedDrain, expectedTime)) + require.Nil(state.UpdateNodeDrain(1001, node.ID, expectedDrain)) require.True(watchFired(ws)) ws = memdb.NewWatchSet() diff --git a/nomad/structs/structs.go b/nomad/structs/structs.go index eec0964be..d28c89fa8 100644 --- a/nomad/structs/structs.go +++ b/nomad/structs/structs.go @@ -307,7 +307,6 @@ type NodeUpdateDrainRequest struct { NodeID string Drain bool // TODO Deprecate DrainStrategy *DrainStrategy - UpdateTime int64 WriteRequest }