tree e85e797ca2e3942fd07d2f763ad0591e1fcfc3e2
parent 7e7c270953aa3020a8c6a390d7e47442ac7a386d
author Masayoshi Kobayashi <masayoshi@onlab.us> 1364331122 +0000
committer Masayoshi Kobayashi <masayoshi@onlab.us> 1364331122 +0000

Fixes toward bug #248:

* Bug fix: Don't delete the Flow entries while processing the list
  of all Flow entries. Instead, add them to a list, and process
  that list after all other processing is done.

* Add a workaround when encountering some bogus Flow Entry
  entries from the database. Apparatenly, sometimes the
  Flow Entries obtained by the getAllFlowEntries() method
  are bogus. E.g., the object is non-null, but fetching (some of)
  its attributes returns null pointers. Those attributes
  (e.g., Flow Entry ID) should always be set.
  This seems to happen only with multiple ONOS instances running:
   - 100 flows are installed
   - The flows are deleted (or "cleared") by using the web/delete_flow.py
     or web/clear_flow.py scripts.
   - While the flows are in the process of deletion/cleanip,
     the periodic mapReader() thread on some of the remote ONOS instances
     shows tens of bogus Flow Entries. If mapReader() ignores
     those entries, on the next iteration (after 3 seconds or so)
     the entries are not there.
  As a work-around, for now the bogus (i.e., with null attributes)
  flow entries are ignored. A separate bug will be opened to trace
  the more generic problem: why the database objects are bogus.
