[OPNFLWPLUG-564] Support table features in OVS 2.4 Created: 14/Oct/15  Updated: 27/Sep/21  Resolved: 20/Jan/17

Status: Resolved
Project: OpenFlowPlugin
Component/s: General
Affects Version/s: None
Fix Version/s: None

Type: Bug
Reporter: Luis Gomez Assignee: Unassigned
Resolution: Duplicate Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Attachments: Text File bug-4473-with-nx.log     Text File karaf.log    
Issue Links:
Duplicate
duplicates OPNFLWJAVA-71 Karaf log many WARNs when OVS 2.4 con... Resolved
is duplicated by OPNFLWJAVA-68 OFDecoder : Message deserialization f... Resolved
External issue ID: 4473

 Description   

According to this mail thread:

https://lists.opendaylight.org/pipermail/openflowplugin-dev/2015-September/003979.html

Our controller is not ready to connect to new OVS 2.4 because of new table features.

This bug is to make the enhancements to provide this support as OVS is the "reference"for not just OpenFlow but many other projects in ODL (ovsdb, sfc, gbp, etc..)

BR/Luis



 Comments   
Comment by Michal Rehak [ 15/Oct/15 ]

Attachment bug-4473-with-nx.log has been added with description: exception with nicira extension installed

Comment by Michal Rehak [ 15/Oct/15 ]

OVS supports nicira extended matches and actions. Those are announced in table features. In order to understand them we need
feature:install odl-openflowplugin-nxm-extensions or
feature:install odl-openflowplugin-nxm-extensions-li (depending on used design).

Having nicira extension codecs installed results into different exception. And it points to a codec issue.

Comment by Michal Polkorab [ 19/Nov/15 ]

Adding HeaderDeserializer<E> interface and implementation to existing nicira codecs should fix the issue.

Comment by Renato Aguiar [ 19/Nov/15 ]

I have submitted a new patch (https://git.opendaylight.org/gerrit/29905) in order to ignore unknown entries on table features. After this change, OVS 2.4 will be able to connect to ODL.

However, current nicira codecs don't yet implement HeaderDeserializer<E> interface, so they will not be displayed on table features.

There are also some extensions on OVS 2.4 which don't have codec yet, so they will be completely unavailable for now.

Comment by Michal Polkorab [ 20/Nov/15 ]

Change merged.

Bug still needs to fix the HeaderDeserializer<E> problem for existing Nicira Codecs.

Comment by Renato Aguiar [ 23/Nov/15 ]

I've tried to implement the HeaderDeserializer interface on existing nicira codecs, but another error is happening:

java.util.concurrent.ExecutionException: java.lang.IllegalArgumentException: Metadata not available for modification NodeModification [identifier=(urn:opendaylight:flow:inventory?revision=2013-08-19)table[

{(urn:opendaylight:flow:inventory?revision=2013-08-19)id=168}

], modificationType=TOUCH, childModification={AugmentationIdentifier

{childNames=[(urn:opendaylight:flow:table:statistics?revision=2013-12-15)flow-table-statistics]}

=NodeModification [identifier=AugmentationIdentifier

{childNames=[(urn:opendaylight:flow:table:statistics?revision=2013-12-15)flow-table-statistics]}

, modificationType=TOUCH, childModification={(urn:opendaylight:flow:table:statistics?revision=2013-12-15)flow-table-statistics=NodeModification [identifier=(urn:opendaylight:flow:table:statistics?revision=2013-12-15)flow-table-statistics, modificationType=WRITE, childModification={}]}]}]

Patch: https://git.opendaylight.org/gerrit/30081

Installed features: odl-openflowplugin-flow-services-ui-li odl-openflowplugin-nxm-extensions-li

Switch: OVS 2.4 / OF 1.3

Karaf log attached.

Comment by Renato Aguiar [ 23/Nov/15 ]

Attachment karaf.log has been added with description: Karaf logs / HeaderDeserializer

Comment by Luis Gomez [ 24/Jan/16 ]

I would like if possible to get a fix for this for Be release, as too many exceptions are thrown in the karaf log and users would not like that.

Comment by Abhijit Kumbhare [ 25/Jan/16 ]

Renato - is https://git.opendaylight.org/gerrit/#/c/30081/ fixing the errors you mention in your last comment?

Comment by Abhijit Kumbhare [ 25/Jan/16 ]

Added Anil Vishnoi as well - as he is listed as a reviewer of https://git.opendaylight.org/gerrit/#/c/30081/.

Comment by Renato Aguiar [ 25/Jan/16 ]

(In reply to Abhijit Kumbhare from comment #8)
> Renato - is https://git.opendaylight.org/gerrit/#/c/30081/ fixing the errors
> you mention in your last comment?

No, it doesn't. It only implements multipart-related interfaces from operflowjava. We must also fully implement support for those extensions on openflowplugin codecs.

The main problem today is we have some hardcoded table to handle experimenter items on table-features. I've added one API to allow registering new items for matches as a dependency for HPE extensions (https://git.opendaylight.org/gerrit/31387). However, OpenVSwitch also has experimenter actions which requires a new API, similar to what I did for experimenter matches.

Comment by Luis Gomez [ 26/Jan/16 ]

At least for the release I would be happy if we could skip the many error meessages when an OVS 2.4 connects to controller. The nicira extension implementation could come later.

Comment by Luis Gomez [ 26/Jan/16 ]

I refer to all these messages, can we hide them somehow?

light.openflow.oxm.rev150225.match.entries.grouping.MatchEntry msgType: 32769 oxm_field: 0 experimenterID: null
2016-01-25 18:34:18,601 | WARN | entLoopGroup-5-2 | ListDeserializer | 172 - org.opendaylight.openflowjava.openflow-protocol-impl - 0.7.0.SNAPSHOT | Problem during reading table feature property. Skipping unknown feature property: msgVersion: 4 objectClass: org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry msgType: 32769 oxm_field: 1 experimenterID: null
2016-01-25 18:34:18,602 | WARN | entLoopGroup-5-2 | ListDeserializer | 172 - org.opendaylight.openflowjava.openflow-protocol-impl - 0.7.0.SNAPSHOT | Problem during reading table feature property. Skipping unknown feature property: msgVersion: 4 objectClass: org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry msgType: 32769 oxm_field: 2 experimenterID: null
2016-01-25 18:34:18,602 | WARN | entLoopGroup-5-2 | ListDeserializer | 172 - org.opendaylight.openflowjava.openflow-protocol-impl - 0.7.0.SNAPSHOT | Problem during reading table feature property. Skipping unknown feature property: msgVersion: 4 objectClass: org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry msgType: 32769 oxm_field: 3 experimenterID: null
2016-01-25 18:34:18,602 | WARN | entLoopGroup-5-2 | ListDeserializer | 172 - org.opendaylight.openflowjava.openflow-protocol-impl - 0.7.0.SNAPSHOT | Problem during reading table feature property. Skipping unknown feature property: msgVersion: 4 objectClass: org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry msgType: 0 oxm_field: 4 experimenterID: null
2016-01-25 18:34:18,602 | WARN | entLoopGroup-5-2 | ListDeserializer | 172 - org.opendaylight.openflowjava.openflow-protocol-impl - 0.7.0.SNAPSHOT | Problem during reading table feature property. Skipping unknown feature property: msgVersion: 4 objectClass: org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry msgType: 0 oxm_field: 5 experimenterID: null
2016-01-25 18:34:18,602 | WARN | entLoopGroup-5-2 | ListDeserializer | 172 - org.opendaylight.openflowjava.openflow-protocol-impl - 0.7.0.SNAPSHOT | Problem during reading table feature property. Skipping unknown feature property: msgVersion: 4 objectClass: org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry msgType: 1 oxm_field: 29 experimenterID: null
2016-01-25 18:34:18,602 | WARN | entLoopGroup-5-2 | ListDeserializer | 172 - org.opendaylight.openflowjava.openflow-protocol-impl - 0.7.0.SNAPSHOT | Problem during reading table feature property. Skipping unknown feature property: msgVersion: 4 objectClass: org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry msgType: 1 oxm_field: 35 experimenterID: null
2016-01-25 18:34:18,602 | WARN | entLoopGroup-5-2 | ListDeserializer | 172 - org.opendaylight.openflowjava.openflow-protocol-impl - 0.7.0.SNAPSHOT | Problem during reading table feature property. Skipping unknown feature property: msgVersion: 4 objectClass: org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry msgType: 1 oxm_field: 36 experimenterID: null
2016-01-25 18:34:18,602 | WARN | entLoopGroup-5-2 | ListDeserializer | 172 - org.opendaylight.openflowjava.openflow-protocol-impl - 0.7.0.SNAPSHOT | Problem during reading table feature property. Skipping unknown feature property: msgVersion: 4 objectClass: org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry msgType: 1 oxm_field: 37 experimenterID: null
2016-01-25 18:34:18,602 | WARN | entLoopGroup-5-2 | ListDeserializer | 172 - org.opendaylight.openflowjava.openflow-protocol-impl - 0.7.0.SNAPSHOT | Problem during reading table feature property. Skipping unknown feature property: msgVersion: 4 objectClass: org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry msgType: 1 oxm_field: 31 experimenterID: null
2016-01-25 18:34:18,602 | WARN | entLoopGroup-5-2 | ListDeserializer | 172 - org.opendaylight.openflowjava.openflow-protocol-impl - 0.7.0.SNAPSHOT | Problem during reading table feature property. Skipping unknown feature property: msgVersion: 4 objectClass: org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry msgType: 1 oxm_field: 32 experimenterID: null
2016-01-25 18:34:18,602 | WARN | entLoopGroup-5-2 | ListDeserializer | 172 - org.opendaylight.openflowjava.openflow-protocol-impl - 0.7.0.SNAPSHOT | Problem during reading table feature property. Skipping unknown feature property: msgVersion: 4 objectClass: org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry msgType: 1 oxm_field: 38 experimenterID: null
2016-01-25 18:34:18,602 | WARN | entLoopGroup-5-2 | ListDeserializer | 172 - org.opendaylight.openflowjava.openflow-protocol-impl - 0.7.0.SNAPSHOT | Problem during reading table feature property. Skipping unknown feature property: msgVersion: 4 objectClass: org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry msgType: 1 oxm_field: 39 experimenterID: null
2016-01-25 18:34:18,602 | WARN | entLoopGroup-5-2 | ListDeserializer | 172 - org.opendaylight.openflowjava.openflow-protocol-impl - 0.7.0.SNAPSHOT | Problem during reading table feature property. Skipping unknown feature property: msgVersion: 4 objectClass: org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry msgType: 0 oxm_field: 0 experimenterID: null
2016-01-25 18:34:18,602 | WARN | entLoopGroup-5-2 | ListDeserializer | 172 - org.opendaylight.openflowjava.openflow-protocol-impl - 0.7.0.SNAPSHOT | Problem during reading table feature property. Skipping unknown feature property: msgVersion: 4 objectClass: org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry msgType: 65535 oxm_field: 43 experimenterID: 1330529792
2016-01-25 18:34:18,602 | WARN | entLoopGroup-5-2 | ListDeserializer | 172 - org.opendaylight.openflowjava.openflow-protocol-impl - 0.7.0.SNAPSHOT | Problem during reading table feature property. Skipping unknown feature property: msgVersion: 4 objectClass: org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry msgType: 20302 oxm_field: 35 experimenterID: null
2016-01-25 18:34:18,602 | WARN | entLoopGroup-5-2 | ListDeserializer | 172 - org.opendaylight.openflowjava.openflow-protocol-impl - 0.7.0.SNAPSHOT | Problem during reading table feature property. Skipping unknown feature property: msgVersion: 4 objectClass: org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry msgType: 1 oxm_field: 33 experimenterID: null
2016-01-25 18:34:18,602 | WARN | entLoopGroup-5-2 | ListDeserializer | 172 - org.opendaylight.openflowjava.openflow-protocol-impl - 0.7.0.SNAPSHOT | Problem during reading table feature property. Skipping unknown feature property: msgVersion: 4 objectClass: org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry msgType: 1 oxm_field: 0 experimenterID: null
2016-01-25 18:34:18,602 | WARN | entLoopGroup-5-2 | ListDeserializer | 172 - org.opendaylight.openflowjava.openflow-protocol-impl - 0.7.0.SNAPSHOT | Problem during reading table feature property. Skipping unknown feature property: msgVersion: 4 objectClass: org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry msgType: 1 oxm_field: 1 experimenterID: null
2016-01-25 18:34:18,602 | WARN | entLoopGroup-5-2 | ListDeserializer | 172 - org.opendaylight.openflowjava.openflow-protocol-impl - 0.7.0.SNAPSHOT | Problem during reading table feature property. Skipping unknown feature property: msgVersion: 4 objectClass: org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry msgType: 1 oxm_field: 2 experimenterID: null
2016-01-25 18:34:18,602 | WARN | entLoopGroup-5-2 | ListDeserializer | 172 - org.opendaylight.openflowjava.openflow-protocol-impl - 0.7.0.SNAPSHOT | Problem during reading table feature property. Skipping unknown feature property: msgVersion: 4 objectClass: org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry msgType: 1 oxm_field: 3 experimenterID: null
2016-01-25 18:34:18,602 | WARN | entLoopGroup-5-2 | ListDeserializer | 172 - org.opendaylight.openflowjava.openflow-protocol-impl - 0.7.0.SNAPSHOT | Problem during reading table feature property. Skipping unknown feature property: msgVersion: 4 objectClass: org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry msgType: 1 oxm_field: 4 experimenterID: null
2016-01-25 18:34:18,602 | WARN | entLoopGroup-5-2 | ListDeserializer | 172 - org.opendaylight.openflowjava.openflow-protocol-impl - 0.7.0.SNAPSHOT | Problem during reading table feature property. Skipping unknown feature property: msgVersion: 4 objectClass: org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry msgType: 1 oxm_field: 5 experimenterID: null
2016-01-25 18:34:18,602 | WARN | entLoopGroup-5-2 | ListDeserializer | 172 - org.opendaylight.openflowjava.openflow-protocol-impl - 0.7.0.SNAPSHOT | Problem during reading table feature property. Skipping unknown feature property: msgVersion: 4 objectClass: org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry msgType: 1 oxm_field: 6 experimenterID: null
2016-01-25 18:34:18,602 | WARN | entLoopGroup-5-2 | ListDeserializer | 172 - org.opendaylight.openflowjava.openflow-protocol-impl - 0.7.0.SNAPSHOT | Problem during reading table feature property. Skipping unknown feature property: msgVersion: 4 objectClass: org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry msgType: 1 oxm_field: 7 experimenterID: null
2016-01-25 18:34:18,603 | WARN | entLoopGroup-5-2 | ListDeserializer | 172 - org.opendaylight.openflowjava.openflow-protocol-impl - 0.7.0.SNAPSHOT | Problem during reading table feature property. Skipping unknown feature property: msgVersion: 4 objectClass: org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry msgType: 32769 oxm_field: 0 experimenterID: null
2016-01-25 18:34:18,603 | WARN | entLoopGroup-5-2 | ListDeserializer | 172 - org.opendaylight.openflowjava.openflow-protocol-impl - 0.7.0.SNAPSHOT | Problem during reading table feature property. Skipping unknown feature property: msgVersion: 4 objectClass: org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry msgType: 32769 oxm_field: 1 experimenterID: null
2016-01-25 18:34:18,603 | WARN | entLoopGroup-5-2 | ListDeserializer | 172 - org.opendaylight.openflowjava.openflow-protocol-impl - 0.7.0.SNAPSHOT | Problem during reading table feature property. Skipping unknown feature property: msgVersion: 4 objectClass: org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry msgType: 32769 oxm_field: 2 experimenterID: null
2016-01-25 18:34:18,603 | WARN | entLoopGroup-5-2 | ListDeserializer | 172 - org.opendaylight.openflowjava.openflow-protocol-impl - 0.7.0.SNAPSHOT | Problem during reading table feature property. Skipping unknown feature property: msgVersion: 4 objectClass: org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry msgType: 32769 oxm_field: 3 experimenterID: null
2016-01-25 18:34:18,603 | WARN | entLoopGroup-5-2 | ListDeserializer | 172 - org.opendaylight.openflowjava.openflow-protocol-impl - 0.7.0.SNAPSHOT | Problem during reading table feature property. Skipping unknown feature property: msgVersion: 4 objectClass: org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry msgType: 0 oxm_field: 4 experimenterID: null
2016-01-25 18:34:18,603 | WARN | entLoopGroup-5-2 | ListDeserializer | 172 - org.opendaylight.openflowjava.openflow-protocol-impl - 0.7.0.SNAPSHOT | Problem during reading table feature property. Skipping unknown feature property: msgVersion: 4 objectClass: org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry msgType: 0 oxm_field: 5 experimenterID: null
2016-01-25 18:34:18,603 | WARN | entLoopGroup-5-2 | ListDeserializer | 172 - org.opendaylight.openflowjava.openflow-protocol-impl - 0.7.0.SNAPSHOT | Problem during reading table feature property. Skipping unknown feature property: msgVersion: 4 objectClass: org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry msgType: 1 oxm_field: 29 experimenterID: null
2016-01-25 18:34:18,603 | WARN | entLoopGroup-5-2 | ListDeserializer | 172 - org.opendaylight.openflowjava.openflow-protocol-impl - 0.7.0.SNAPSHOT | Problem during reading table feature property. Skipping unknown feature property: msgVersion: 4 objectClass: org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry msgType: 1 oxm_field: 26 experimenterID: null
2016-01-25 18:34:18,603 | WARN | entLoopGroup-5-2 | ListDeserializer | 172 - org.opendaylight.openflowjava.openflow-protocol-impl - 0.7.0.SNAPSHOT | Problem during reading table feature property. Skipping unknown feature property: msgVersion: 4 objectClass: org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry msgType: 65535 oxm_field: 42 experimenterID: 1330529792
2016-01-25 18:34:18,603 | WARN | entLoopGroup-5-2 | ListDeserializer | 172 - org.opendaylight.openflowjava.openflow-protocol-impl - 0.7.0.SNAPSHOT | Problem during reading table feature property. Skipping unknown feature property: msgVersion: 4 objectClass: org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry msgType: 20302 oxm_field: 35 experimenterID: null
2016-01-25 18:34:18,603 | WARN | entLoopGroup-5-2 | ListDeserializer | 172 - org.opendaylight.openflowjava.openflow-protocol-impl - 0.7.0.SNAPSHOT | Problem during reading table feature property. Skipping unknown feature property: msgVersion: 4 objectClass: org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry msgType: 1 oxm_field: 35 experimenterID: null
2016-01-25 18:34:18,603 | WARN | entLoopGroup-5-2 | ListDeserializer | 172 - org.opendaylight.openflowjava.openflow-protocol-impl - 0.7.0.SNAPSHOT | Problem during reading table feature property. Skipping unknown feature property: msgVersion: 4 objectClass: org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry msgType: 1 oxm_field: 36 experimenterID: null
2016-01-25 18:34:18,603 | WARN | entLoopGroup-5-2 | ListDeserializer | 172 - org.opendaylight.openflowjava.openflow-protocol-impl - 0.7.0.SNAPSHOT | Problem during reading table feature property. Skipping unknown feature property: msgVersion: 4 objectClass: org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry msgType: 1 oxm_field: 37 experimenterID: null
2016-01-25 18:34:18,603 | WARN | entLoopGroup-5-2 | ListDeserializer | 172 - org.opendaylight.openflowjava.openflow-protocol-impl - 0.7.0.SNAPSHOT | Problem during reading table feature property. Skipping unknown feature property: msgVersion: 4 objectClass: org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry msgType: 1 oxm_field: 31 experimenterID: null
2016-01-25 18:34:18,603 | WARN | entLoopGroup-5-2 | ListDeserializer | 172 - org.opendaylight.openflowjava.openflow-protocol-impl - 0.7.0.SNAPSHOT | Problem during reading table feature property. Skipping unknown feature property: msgVersion: 4 objectClass: org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry msgType: 1 oxm_field: 32 experimenterID: null
2016-01-25 18:34:18,603 | WARN | entLoopGroup-5-2 | ListDeserializer | 172 - org.opendaylight.openflowjava.openflow-protocol-impl - 0.7.0.SNAPSHOT | Problem during reading table feature property. Skipping unknown feature property: msgVersion: 4 objectClass: org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry msgType: 1 oxm_field: 38 experimenterID: null
2016-01-25 18:34:18,603 | WARN | entLoopGroup-5-2 | ListDeserializer | 172 - org.opendaylight.openflowjava.openflow-protocol-impl - 0.7.0.SNAPSHOT | Problem during reading table feature property. Skipping unknown feature property: msgVersion: 4 objectClass: org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry msgType: 1 oxm_field: 39 experimenterID: null
2016-01-25 18:34:18,603 | WARN | entLoopGroup-5-2 | ListDeserializer | 172 - org.opendaylight.openflowjava.openflow-protocol-impl - 0.7.0.SNAPSHOT | Problem during reading table feature property. Skipping unknown feature property: msgVersion: 4 objectClass: org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry msgType: 0 oxm_field: 0 experimenterID: null
2016-01-25 18:34:18,603 | WARN | entLoopGroup-5-2 | ListDeserializer | 172 - org.opendaylight.openflowjava.openflow-protocol-impl - 0.7.0.SNAPSHOT | Problem during reading table feature property. Skipping unknown feature property: msgVersion: 4 objectClass: org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry msgType: 65535 oxm_field: 43 experimenterID: 1330529792
2016-01-25 18:34:18,603 | WARN | entLoopGroup-5-2 | ListDeserializer | 172 - org.opendaylight.openflowjava.openflow-protocol-impl - 0.7.0.SNAPSHOT | Problem during reading table feature property. Skipping unknown feature property: msgVersion: 4 objectClass: org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry msgType: 20302 oxm_field: 35 experimenterID: null
2016-01-25 18:34:18,603 | WARN | entLoopGroup-5-2 | ListDeserializer | 172 - org.opendaylight.openflowjava.openflow-protocol-impl - 0.7.0.SNAPSHOT | Problem during reading table feature property. Skipping unknown feature property: msgVersion: 4 objectClass: org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry msgType: 1 oxm_field: 33 experimenterID: null
2016-01-25 18:34:18,603 | WARN | entLoopGroup-5-2 | ListDeserializer | 172 - org.opendaylight.openflowjava.openflow-protocol-impl - 0.7.0.SNAPSHOT | Problem during reading table feature property. Skipping unknown feature property: msgVersion: 4 objectClass: org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry msgType: 1 oxm_field: 0 experimenterID: null
2016-01-25 18:34:18,603 | WARN | entLoopGroup-5-2 | ListDeserializer | 172 - org.opendaylight.openflowjava.openflow-protocol-impl - 0.7.0.SNAPSHOT | Problem during reading table feature property. Skipping unknown feature property: msgVersion: 4 objectClass: org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry msgType: 1 oxm_field: 1 experimenterID: null
2016-01-25 18:34:18,603 | WARN | entLoopGroup-5-2 | ListDeserializer | 172 - org.opendaylight.openflowjava.openflow-protocol-impl - 0.7.0.SNAPSHOT | Problem during reading table feature property. Skipping unknown feature property: msgVersion: 4 objectClass: org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry msgType: 1 oxm_field: 2 experimenterID: null
2016-01-25 18:34:18,604 | WARN | entLoopGroup-5-2 | ListDeserializer | 172 - org.opendaylight.openflowjava.openflow-protocol-impl - 0.7.0.SNAPSHOT | Problem during reading table feature property. Skipping unknown feature property: msgVersion: 4 objectClass: org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry msgType: 1 oxm_field: 3 experimenterID: null
2016-01-25 18:34:18,604 | WARN | entLoopGroup-5-2 | ListDeserializer | 172 - org.opendaylight.openflowjava.openflow-protocol-impl - 0.7.0.SNAPSHOT | Problem during reading table feature property. Skipping unknown feature property: msgVersion: 4 objectClass: org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry msgType: 1 oxm_field: 4 experimenterID: null
2016-01-25 18:34:18,604 | WARN | entLoopGroup-5-2 | ListDeserializer | 172 - org.opendaylight.openflowjava.openflow-protocol-impl - 0.7.0.SNAPSHOT | Problem during reading table feature property. Skipping unknown feature property: msgVersion: 4 objectClass: org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry msgType: 1 oxm_field: 5 experimenterID: null
2016-01-25 18:34:18,604 | WARN | entLoopGroup-5-2 | ListDeserializer | 172 - org.opendaylight.openflowjava.openflow-protocol-impl - 0.7.0.SNAPSHOT | Problem during reading table feature property. Skipping unknown feature property: msgVersion: 4 objectClass: org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry msgType: 1 oxm_field: 6 experimenterID: null
2016-01-25 18:34:18,604 | WARN | entLoopGroup-5-2 | ListDeserializer | 172 - org.opendaylight.openflowjava.openflow-protocol-impl - 0.7.0.SNAPSHOT | Problem during reading table feature property. Skipping unknown feature property: msgVersion: 4 objectClass: org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry msgType: 1 oxm_field: 7 experimenterID: null
2016-01-25 18:34:18,604 | WARN | entLoopGroup-5-2 | ListDeserializer | 172 - org.opendaylight.openflowjava.openflow-protocol-impl - 0.7.0.SNAPSHOT | Problem during reading table feature property. Skipping unknown feature property: msgVersion: 4 objectClass: org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry msgType: 32769 oxm_field: 0 experimenterID: null
2016-01-25 18:34:18,604 | WARN | entLoopGroup-5-2 | ListDeserializer | 172 - org.opendaylight.openflowjava.openflow-protocol-impl - 0.7.0.SNAPSHOT | Problem during reading table feature property. Skipping unknown feature property: msgVersion: 4 objectClass: org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry msgType: 32769 oxm_field: 1 experimenterID: null
2016-01-25 18:34:18,604 | WARN | entLoopGroup-5-2 | ListDeserializer | 172 - org.opendaylight.openflowjava.openflow-protocol-impl - 0.7.0.SNAPSHOT | Problem during reading table feature property. Skipping unknown feature property: msgVersion: 4 objectClass: org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry msgType: 32769 oxm_field: 2 experimenterID: null
2016-01-25 18:34:18,604 | WARN | entLoopGroup-5-2 | ListDeserializer | 172 - org.opendaylight.openflowjava.openflow-protocol-impl - 0.7.0.SNAPSHOT | Problem during reading table feature property. Skipping unknown feature property: msgVersion: 4 objectClass: org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry msgType: 32769 oxm_field: 3 experimenterID: null
2016-01-25 18:34:18,604 | WARN | entLoopGroup-5-2 | ListDeserializer | 172 - org.opendaylight.openflowjava.openflow-protocol-impl - 0.7.0.SNAPSHOT | Problem during reading table feature property. Skipping unknown feature property: msgVersion: 4 objectClass: org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry msgType: 0 oxm_field: 4 experimenterID: null
2016-01-25 18:34:18,604 | WARN | entLoopGroup-5-2 | ListDeserializer | 172 - org.opendaylight.openflowjava.openflow-protocol-impl - 0.7.0.SNAPSHOT | Problem during reading table feature property. Skipping unknown feature property: msgVersion: 4 objectClass: org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry msgType: 0 oxm_field: 5 experimenterID: null
2016-01-25 18:34:18,604 | WARN | entLoopGroup-5-2 | ListDeserializer | 172 - org.opendaylight.openflowjava.openflow-protocol-impl - 0.7.0.SNAPSHOT | Problem during reading table feature property. Skipping unknown feature property: msgVersion: 4 objectClass: org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry msgType: 1 oxm_field: 29 experimenterID: null
2016-01-25 18:34:18,604 | WARN | entLoopGroup-5-2 | ListDeserializer | 172 - org.opendaylight.openflowjava.openflow-protocol-impl - 0.7.0.SNAPSHOT | Problem during reading table feature property. Skipping unknown feature property: msgVersion: 4 objectClass: org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry msgType: 1 oxm_field: 26 experimenterID: null
2016-01-25 18:34:18,604 | WARN | entLoopGroup-5-2 | ListDeserializer | 172 - org.opendaylight.openflowjava.openflow-protocol-impl - 0.7.0.SNAPSHOT | Problem during reading table feature property. Skipping unknown feature property: msgVersion: 4 objectClass: org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry msgType: 65535 oxm_field: 42 experimenterID: 1330529792
2016-01-25 18:34:18,604 | WARN | entLoopGroup-5-2 | ListDeserializer | 172 - org.opendaylight.openflowjava.openflow-protocol-impl - 0.7.0.SNAPSHOT | Problem during reading table feature property. Skipping unknown feature property: msgVersion: 4 objectClass: org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry msgType: 20302 oxm_field: 35 experimenterID: null
2016-01-25 18:34:18,604 | WARN | entLoopGroup-5-2 | ListDeserializer | 172 - org.opendaylight.openflowjava.openflow-protocol-impl - 0.7.0.SNAPSHOT | Problem during reading table feature property. Skipping unknown feature property: msgVersion: 4 objectClass: org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry msgType: 1 oxm_field: 31 experimenterID: null
2016-01-25 18:34:18,604 | WARN | entLoopGroup-5-2 | ListDeserializer | 172 - org.opendaylight.openflowjava.openflow-protocol-impl - 0.7.0.SNAPSHOT | Problem during reading table feature property. Skipping unknown feature property: msgVersion: 4 objectClass: org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry msgType: 1 oxm_field: 32 experimenterID: null

Comment by Michal Polkorab [ 26/Jan/16 ]

We can lower the log level of these messages. But not lower than INFO - as we need to inform user / developer, that some features are unknown or not reported.

By the way, are you running tests with openflowplugin extensions enabled ? That might possibly lower the number of logs. But the logs will still show up everytime table features are requested (until support is provided for all OVS 2.4 match entries)

Comment by Luis Gomez [ 26/Jan/16 ]

Can we concentrate the warning message? with nxm extensions disabled (i guess more users will do this way) I get so many lines of WARN that they cannot even fit in bugzilla...

Comment by Michal Polkorab [ 27/Jan/16 ]

Logs concentrated: https://git.opendaylight.org/gerrit/#/c/33653/

Now one exception (not only warn message) will be logged for each multipart reply (table features)

Comment by Abhijit Kumbhare [ 30/Jan/16 ]

Can we now connect to OVS 2.4? I understand we can.

Comment by Luis Gomez [ 30/Jan/16 ]

Agree, connection is good but I still see all the karaf log files filled with openflowjava WARNS, even after last patch:

2016-01-29 18:36:05,600 | WARN | entLoopGroup-5-2 | ListDeserializer | 172 - org.opendaylight.openflowjava.openflow-protocol-impl - 0.7.0.SNAPSHOT | Problem during reading table feature property. Skipping unknown feature property: msgVersion: 4 objectClass: org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry msgType: 1 oxm_field: 31 experimenterID: null
java.lang.IllegalStateException: Deserializer for key: msgVersion: 4 objectClass: org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry msgType: 1 oxm_field: 31 experimenterID: null was not found - please verify that all needed deserializers ale loaded correctly
at org.opendaylight.openflowjava.protocol.impl.deserialization.DeserializerRegistryImpl.getDeserializer(DeserializerRegistryImpl.java:69)[172:org.opendaylight.openflowjava.openflow-protocol-impl:0.7.0.SNAPSHOT]
at org.opendaylight.openflowjava.protocol.impl.util.ListDeserializer.deserializeHeaders(ListDeserializer.java:80)[172:org.opendaylight.openflowjava.openflow-protocol-impl:0.7.0.SNAPSHOT]
at org.opendaylight.openflowjava.protocol.impl.deserialization.factories.MultipartReplyMessageFactory.createTableFeaturesProperties(MultipartReplyMessageFactory.java:444)[172:org.opendaylight.openflowjava.openflow-protocol-impl:0.7.0.SNAPSHOT]
at org.opendaylight.openflowjava.protocol.impl.deserialization.factories.MultipartReplyMessageFactory.setTableFeatures(MultipartReplyMessageFactory.java:379)[172:org.opendaylight.openflowjava.openflow-protocol-impl:0.7.0.SNAPSHOT]
at org.opendaylight.openflowjava.protocol.impl.deserialization.factories.MultipartReplyMessageFactory.deserialize(MultipartReplyMessageFactory.java:232)[172:org.opendaylight.openflowjava.openflow-protocol-impl:0.7.0.SNAPSHOT]
at org.opendaylight.openflowjava.protocol.impl.deserialization.factories.MultipartReplyMessageFactory.deserialize(MultipartReplyMessageFactory.java:149)[172:org.opendaylight.openflowjava.openflow-protocol-impl:0.7.0.SNAPSHOT]
at org.opendaylight.openflowjava.protocol.impl.deserialization.DeserializationFactory.deserialize(DeserializationFactory.java:59)[172:org.opendaylight.openflowjava.openflow-protocol-impl:0.7.0.SNAPSHOT]
at org.opendaylight.openflowjava.protocol.impl.core.OFDecoder.decode(OFDecoder.java:55)[172:org.opendaylight.openflowjava.openflow-protocol-impl:0.7.0.SNAPSHOT]
at org.opendaylight.openflowjava.protocol.impl.core.OFDecoder.decode(OFDecoder.java:28)[172:org.opendaylight.openflowjava.openflow-protocol-impl:0.7.0.SNAPSHOT]
at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:89)[125:io.netty.codec:4.0.33.Final]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:318)[124:io.netty.transport:4.0.33.Final]
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:304)[124:io.netty.transport:4.0.33.Final]
at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:276)[125:io.netty.codec:4.0.33.Final]
at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:263)[125:io.netty.codec:4.0.33.Final]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:318)[124:io.netty.transport:4.0.33.Final]
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:304)[124:io.netty.transport:4.0.33.Final]
at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:276)[125:io.netty.codec:4.0.33.Final]
at io.netty.handler.codec.ByteToMessageDecoder.callDecode(ByteToMessageDecoder.java:354)[125:io.netty.codec:4.0.33.Final]
at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:244)[125:io.netty.codec:4.0.33.Final]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:318)[124:io.netty.transport:4.0.33.Final]
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:304)[124:io.netty.transport:4.0.33.Final]
at io.netty.handler.timeout.ReadTimeoutHandler.channelRead(ReadTimeoutHandler.java:152)[127:io.netty.handler:4.0.33.Final]
at org.opendaylight.openflowjava.protocol.impl.core.IdleHandler.channelRead(IdleHandler.java:39)[172:org.opendaylight.openflowjava.openflow-protocol-impl:0.7.0.SNAPSHOT]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:318)[124:io.netty.transport:4.0.33.Final]
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:304)[124:io.netty.transport:4.0.33.Final]
at io.netty.channel.ChannelInboundHandlerAdapter.channelRead(ChannelInboundHandlerAdapter.java:86)[124:io.netty.transport:4.0.33.Final]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:318)[124:io.netty.transport:4.0.33.Final]
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:304)[124:io.netty.transport:4.0.33.Final]
at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:846)[124:io.netty.transport:4.0.33.Final]
at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:131)[124:io.netty.transport:4.0.33.Final]
at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:511)[124:io.netty.transport:4.0.33.Final]
at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:468)[124:io.netty.transport:4.0.33.Final]
at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:382)[124:io.netty.transport:4.0.33.Final]
at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:349)[124:io.netty.transport:4.0.33.Final]
at io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:112)[123:io.netty.common:4.0.33.Final]
at io.netty.util.concurrent.DefaultThreadFactory$DefaultRunnableDecorator.run(DefaultThreadFactory.java:137)[123:io.netty.common:4.0.33.Final]
at java.lang.Thread.run(Thread.java:745)[:1.7.0_79]

Comment by Luis Gomez [ 30/Jan/16 ]

Also moving to the right project.

Comment by Michal Polkorab [ 01/Feb/16 ]

The right project which should deliver the fix for "Support table features in OVS 2.4" is openflowplugin - as openflowjava supports only messages specified in openflow specification. Other messages (Nicira, experimenter, ...) are supported via Experimenter framework. Any (de)serialization exception must be fixed in (de)serializers itself.

The exception is correctly handled inside openflowjava. So instead of trying to apply a hotfix which would be only a temporary solution, we should focus on delivering the true fix that is needed in openflowplugin (in registered nicira codecs).

Another possibility is to adjust log levels for openflowjava to ERROR.

Comment by Luis Gomez [ 01/Feb/16 ]

OK, fair enough, lets leave this one as it is with normal priority and I will open a new bug for the log fill up.

Comment by Luis Gomez [ 01/Feb/16 ]

New bug for for the log fill up: https://bugs.opendaylight.org/show_bug.cgi?id=5173

Generated at Wed Feb 07 20:32:48 UTC 2024 using Jira 8.20.10#820010-sha1:ace47f9899e9ee25d7157d59aa17ab06aee30d3d.