[BGPCEP-223] If no LSP Identifiers TLV is present in PCRpt message updateLsp in DS throws exception Created: 13/May/15  Updated: 03/Mar/19  Due: 17/Jun/15  Resolved: 16/Jun/15

Status: Resolved
Project: bgpcep
Component/s: PCEP
Affects Version/s: Bugzilla Migration
Fix Version/s: Bugzilla Migration

Type: Bug
Reporter: Francesco Fondelli Assignee: Milos Fabian
Resolution: Done Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


External issue ID: 3204

 Description   

The 'LSP Identifiers TLV' must be included in the LSP object in PCRpt messages for RSVP-signaled LSPs (draft-ietf-pce-stateful-pce-07). However, in case the path is setup using Segment Routing technique (PST=1) the 'LSP Identifiers TLV' might be not present. In this case LspId is not set in the PathBuilder and the updateLsp DS operation throws the following exception:

2015-05-08 11:11:03,783 | WARN | oupCloseable-3-1 | DefaultChannelPipeline | 104 - io.netty.common - 4.0.26.Final | An exceptionCaught() event was fired, and it reached at the tail of the pipeline. It usually means the last handler in the pipeline did not handle the exception.
java.lang.IllegalArgumentException: All keys must be specified for class org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.topology.pcep.rev131024.pcep.client.attributes.path.computation.client.reported.lsp.PathKey. Missing key is getLspId. Supplied key is PathKey []

The reported LSP is not written in the DS.



 Comments   
Comment by Francesco Fondelli [ 13/May/15 ]

please consider patch https://git.opendaylight.org/gerrit/#/c/20259/

ciao
fra

Comment by Vratko Polak [ 15/May/15 ]

> in case the path is setup using Segment Routing technique (PST=1)
> the 'LSP Identifiers TLV' might be not present

My expectation is that as the first step towards the solution, a new design for this file (in BGPCEP repository) needs to be agreed upon:
/pcep/topology-api/src/main/yang/network-topology-pcep.yang
as currently lines 101 - 109 state this:
list path {
leaf lsp-id

{ type rsvp:lsp-id; mandatory true; }

key lsp-id;

uses pcep:path-definition;
}

The change in Java code then would depend on how the "type rsvp:lsp-id;" condition gets relaxed to accommodate for SR paths.

Comment by Francesco Fondelli [ 15/May/15 ]

Hi Vratko,

yes you are right.

What about replacing it with:

list path {
leaf plsp-id

{ type plsp-id; mandatory true; }

key plsp-id;

uses pcep:path-definition;
}

The plsp-id has PCC scope and is valid in both cases (RSVP-TE and SR). The rsvp:lsp-id is broken anyway because is unique within the scope of the tunnel-id (i.e. 2 RSVP-TE tunnels on the same PCC with the same lsp-id would collide in the reported-lsp list).

ciao
fra

Comment by Ladislav Borak [ 04/Jun/15 ]

proposed patch:

https://git.opendaylight.org/gerrit/#/c/21672/

Comment by Robert Varga [ 11/Jun/15 ]

Needs to be fixed before Lithium goes out.

Comment by Milos Fabian [ 16/Jun/15 ]

stable/lithium: https://git.opendaylight.org/gerrit/#/c/22570/

Comment by Dana Kutenicsova [ 16/Jun/15 ]

master: https://git.opendaylight.org/gerrit/22675

Generated at Wed Feb 07 19:12:23 UTC 2024 using Jira 8.20.10#820010-sha1:ace47f9899e9ee25d7157d59aa17ab06aee30d3d.