[CONTROLLER-1349] Typo in unrelated config file can block netconf-connector functionality Created: 29/May/15  Updated: 19/Oct/17  Resolved: 05/Jul/17

Status: Resolved
Project: controller
Component/s: config
Affects Version/s: Post-Helium
Fix Version/s: None

Type: Bug
Reporter: Vratko Polak Assignee: Unassigned
Resolution: Won't Do Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Issue Links:
Blocks
blocks CONTROLLER-523 Milestone: Continuos: Improve error-r... Resolved
External issue ID: 3430

 Description   

The severity of the resulting buggy state may be caused by some other component, but config subsystem should filter out the triggering condition of this bug.

This description uses PCEP as the component with config files unrelated to netconf connector.

Steps to reproduce:
0. Download an unpack a recent Lithium snapshot build with otherwise working netconf connector.
1. start ODL
2. feature:install odl-restconf-noauth odl-bgpcep-pcep-all odl-netconf-connector-all
3. wait few minutes to make sure netconf-connector had time to start
4. curl -s 127.0.0.1:8181/restconf/config/network-topology:network-topology/topology/topology-netconf/node/controller-config/yang-ext:mount/config:modules
5. see all modules configured as intended
6. kill ODL java process
7. rm -rf data/ snapshots/ journal/ lock idmlight.db.mv.db
8. edit etc/opendaylight/karaf/39-pcep-provider.xml value in line 52, from "stateful07" to "stateful06".
9. - 12. repeat steps 1. - 4.
13. see {"errors":{"error":[

{"error-type":"protocol","error-tag":"unknown-element","error-message":"Mount point does not exist."}

]}}

Alternative to step 3: monitor karaf.log till you see netconf-connector success message.
Alternative to step 11: monitor karaf.log, see it stops scrolling forever just after Leader moves node to [Up].

The only interesting log I see buried in such step 11 is this:
2015-05-29 09:50:46,959 | WARN | r - ConfigPusher | FeatureConfigPusher | 132 - config-persister-feature-adapter - 0.3.0.SNAPSHOT | Karaf featuresService.listInstalledFeatures() has not yet finished installing feature (retry 0) odl-bgpcep-pcep-all 0.4.0-SNAPSHOT



 Comments   
Comment by Maros Marsalek [ 01/Jun/15 ]

Postponing for Beryllium. This needs to be thought through a bit more and theres not much time for Lithium left.

ConfigPusher halts its execution after a semantic failure(in an initial config) by design. With current implementation, this would be possible, but very confusing in case of a failed config for core services or services that are dependencies for others. Also whats the point of trying to spawn user services if the core has already failed...

If ConfigPusher knew whats critical config snapshot and whats not, it could possibly ignore the semantic failures in non critical snapshots at least.

Comment by Vratko Polak [ 17/Jun/15 ]

Current behavior in Lithium is that semantic error stops config subsystem (this bug), but syntactic error makes config subsystem to just ignore the offending configfile and continue as if nothing happened (as verified in CONTROLLER-922). One of the behavior should be changed.

As resolution of this bug is postponed, I have created improvement CONTROLLER-1372 to at least log that an error has happened.

Comment by Vratko Polak [ 05/Nov/15 ]

Change 28985 was merged to lithium (not Beryllium yet).
That implementation does not stops the whole karaf, but it still stops pushing configs upon first failure, preventing unrelated configs to be applied.

Comment by Tom Pantelis [ 05/Jul/17 ]

Not sure what the ask is here but the CSS is being deprecated so not worth addressing.

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