Details
-
Bug
-
Status: Resolved
-
Resolution: Done
-
None
-
None
-
None
-
Operating System: Mac OS
Platform: Macintosh
-
284
Description
When a flow is deleted, its operational data (collected stats) are left dangling in the oper space. The delete operation is performed properly, the flow is deleted from OVS and from the ODL config space, but not from the oper space. Also, statistics updates to the flow stop.
Use, for example:
1. Do PUT http://192.168.4.1:8080/restconf/config/opendaylight-inventory:nodes/node/openflow:1/table/2/flow/135, Accept & Content-Type = application/xml,
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<flow xmlns="urn:opendaylight:flow:inventory">
<strict>false</strict>
<flow-name>FooXf20</flow-name>
<id>135</id>
<cookie_mask>255</cookie_mask>
<cookie>20</cookie>
<table_id>2</table_id>
<priority>2</priority>
<hard-timeout>1200</hard-timeout>
<idle-timeout>3400</idle-timeout>
<installHw>false</installHw>
<instructions>
<instruction>
<order>0</order>
<apply-actions>
<action>
<order>0</order>
<dec-nw-ttl/>
</action>
</apply-actions>
</instruction>
</instructions>
<match>
<metadata>
<metadata>12345</metadata>
</metadata>
</match>
</flow>
2. Verify that the flow is instantiated in config space:
GET http://192.168.4.1:8080/restconf/config/opendaylight-inventory:nodes/node/openflow:1/table/2
3. Verify that the flow is instantiated in operational space:
http://192.168.4.1:8080/restconf/operational/opendaylight-inventory:nodes/node/openflow:1/table/2
4. Repeat Step 3 a few times to see that flow duration changes
5. Verify flow in ovs in mininet:
sudo ovs-ofctl -O OpenFlow13 dump-flows s1
You should see:
OFPST_FLOW reply (OF1.3) (xid=0x2):
cookie=0x14, duration=8.586s, table=2, n_packets=0, n_bytes=0, idle_timeout=3400, hard_timeout=1200, send_flow_rem priority=2,metadata=0x3039 actions=dec_ttl
mininet@mininet-vm:~$ sudo ovs-ofctl -O OpenFlow13 dump-flows s1
6. Delete the flow:
Do 'DELETE http://192.168.4.1:8080/restconf/config/opendaylight-inventory:nodes/node/openflow:1/table/2/flow/135'
7. Verify that flow is no longer present in config space (Repeat Step 2)
8. Verify that fhlow has been deleted from OVS (Repeat Step 5). You should see:
OFPST_FLOW reply (OF1.3) (xid=0x2):
9. Verify that flow is still in the oper space (Repeat Step 3).