Problem: csit test cases failing due to empty table stats
Root Casue: First time when table stats are collected, they
are written into operational inventory. But consequently at
the time of writing flow stats to datastore, table stats
transaction was still not complete. So when fow stats are
written with empty table stats which are read from
operational inventory
Fix: Collecting flow stats first followed by table stats,
which prevents overwrite of table stats.
Signed-off-by: Somashekhar Javalagi <somashekhar.manohara.javalagi@ericsson.com>
Change-Id: I39bf7ffe9b12a4d3a03efbec95f75dd1a0ef70f6
public void initializeDevice() {
final List<MultipartType> statListForCollecting = new ArrayList<>();
public void initializeDevice() {
final List<MultipartType> statListForCollecting = new ArrayList<>();
- if (devState.isTableStatisticsAvailable() && config.isIsTableStatisticsPollingOn()) {
- statListForCollecting.add(MultipartType.OFPMPTABLE);
- }
-
if (devState.isGroupAvailable() && config.isIsGroupStatisticsPollingOn()) {
statListForCollecting.add(MultipartType.OFPMPGROUPDESC);
statListForCollecting.add(MultipartType.OFPMPGROUP);
if (devState.isGroupAvailable() && config.isIsGroupStatisticsPollingOn()) {
statListForCollecting.add(MultipartType.OFPMPGROUPDESC);
statListForCollecting.add(MultipartType.OFPMPGROUP);
statListForCollecting.add(MultipartType.OFPMPFLOW);
}
statListForCollecting.add(MultipartType.OFPMPFLOW);
}
+ if (devState.isTableStatisticsAvailable() && config.isIsTableStatisticsPollingOn()) {
+ statListForCollecting.add(MultipartType.OFPMPTABLE);
+ }
+
if (devState.isPortStatisticsAvailable() && config.isIsPortStatisticsPollingOn()) {
statListForCollecting.add(MultipartType.OFPMPPORTSTATS);
}
if (devState.isPortStatisticsAvailable() && config.isIsPortStatisticsPollingOn()) {
statListForCollecting.add(MultipartType.OFPMPPORTSTATS);
}