diff options
author | FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp> | 2015-01-23 00:03:29 +0900 |
---|---|---|
committer | FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp> | 2015-01-23 00:03:29 +0900 |
commit | 12ae36fb0fecdd068fa4b3a8c1ea36d95b29bf7c (patch) | |
tree | 35f34946924dded3fbe59c5d6e4b7cd74e283bd5 /table/destination.go | |
parent | 56f5c27011c50b3073cd30f5e9592da172203766 (diff) |
table: not update timestamp if the path replaces the same path
If a new path has the exact same attributes that the existing one
(after RouteRefresh), we don't update the timestamp.
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
Diffstat (limited to 'table/destination.go')
-rw-r--r-- | table/destination.go | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/table/destination.go b/table/destination.go index 865ab03e..b35d380a 100644 --- a/table/destination.go +++ b/table/destination.go @@ -368,6 +368,9 @@ func (dest *DestinationDefault) removeOldPaths() { // paths and when doing RouteRefresh (not EnhancedRouteRefresh) // we get same paths again. if newPath.getSource() == path.getSource() { + if reflect.DeepEqual(newPath.getPathAttrs(), path.getPathAttrs()) { + newPath.setTimestamp(path.getTimestamp()) + } oldPaths = append(oldPaths, path) break } |