Skip to content

Commit

Permalink
Merge "Fix agent crash at StatsManager::GetInterfaceStats"
Browse files Browse the repository at this point in the history
  • Loading branch information
Zuul authored and opencontrail-ci-admin committed May 9, 2016
2 parents b6e3b54 + defbc7a commit 83d2b6d
Show file tree
Hide file tree
Showing 3 changed files with 17 additions and 7 deletions.
9 changes: 6 additions & 3 deletions src/vnsw/agent/contrail/contrail_agent_init.cc
Original file line number Diff line number Diff line change
Expand Up @@ -75,9 +75,12 @@ void ContrailAgentInit::CreateModules() {
AgentUveBase::kIncrementalInterval));
agent()->set_uve(uve_.get());

stats_collector_.reset(new AgentStatsCollector(*(agent()->event_manager()->
io_service()), agent()));
agent()->set_stats_collector(stats_collector_.get());
if (agent()->tsn_enabled() == false) {
stats_collector_.reset(new AgentStatsCollector
(*(agent()->event_manager()->io_service()),
agent()));
agent()->set_stats_collector(stats_collector_.get());
}
flow_stats_manager_.reset(new FlowStatsManager(agent()));
flow_stats_manager_->Init(agent()->params()->flow_stats_interval(),
agent()->params()->flow_cache_timeout());
Expand Down
10 changes: 6 additions & 4 deletions src/vnsw/agent/test/test_agent_init.cc
Original file line number Diff line number Diff line change
Expand Up @@ -77,10 +77,12 @@ void TestAgentInit::CreateModules() {
TestAgentInit::kIncrementalInterval));
agent()->set_uve(uve_.get());

stats_collector_.reset(new AgentStatsCollectorTest(
*(agent()->event_manager()->io_service()),
agent()));
agent()->set_stats_collector(stats_collector_.get());
if (agent()->tsn_enabled() == false) {
stats_collector_.reset(new AgentStatsCollectorTest(
*(agent()->event_manager()->io_service()),
agent()));
agent()->set_stats_collector(stats_collector_.get());
}

flow_stats_manager_.reset(new FlowStatsManager(agent()));
flow_stats_manager_->Init(agent()->params()->flow_stats_interval(),
Expand Down
5 changes: 5 additions & 0 deletions src/vnsw/agent/test/test_tsn_route.cc
Original file line number Diff line number Diff line change
Expand Up @@ -92,6 +92,11 @@ class TsnRoute : public ::testing::Test {
Agent *agent_;
};

//Verify that when agent is in TSN mode, AgentStatsCollector is not created
TEST_F(TsnRoute, NoAgentStatsCollector) {
EXPECT_TRUE((agent_->stats_collector() == NULL));
}

TEST_F(TsnRoute, Basic) {
}

Expand Down

0 comments on commit 83d2b6d

Please sign in to comment.