[CONTROLLER-1480] Remove XSQL Created: 04/Feb/16 Updated: 25/Jul/23 Resolved: 14/Apr/17 |
|
| Status: | Resolved |
| Project: | controller |
| Component/s: | clustering |
| Affects Version/s: | None |
| Fix Version/s: | None |
| Type: | Bug | ||
| Reporter: | Luis Gomez | Assignee: | Robert Varga |
| Resolution: | Done | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Environment: |
Operating System: All |
||
| Issue Links: |
|
||||||||
| External issue ID: | 5222 | ||||||||
| Description |
|
Here is my observation: 1) If I start individual features in a fresh controller they normally take less than 30 secs to bring in. There are some yang-parser meesages like below but they go very quick. 2016-02-03 10:37:40,667 | INFO | l for user karaf | YangTextSchemaContextResolver | 78 - org.opendaylight.yangtools.yang-parser-impl - 0.8.0.SNAPSHOT | Provided module name /META-INF/yang/ietf-netconf-notifications@2012-02-06.yang@0000-00-00.yang does not match actual text ietf-netconf-notifications@2012-02-06.yang, corrected Example of single feature install: feature:install odl-bgpcep-bgp-all takes ~ 30 secs 2) If I start to add features on top of others, the yang-parser messages start to appear very slow, CPU and memory goes very high, and the overall feature installation takes very long. Example bring same feature (took 30 secs before) after another: feature:install odl-ovsdb-openstack takes ~ 30 secs I have experienced same delays + high CPU/memory mixing other features, so this is not just related to the example features. This may not be a blocker but the user experience is pretty much impacted. BR/Luis |
| Comments |
| Comment by Peter Kajsa [ 05/Feb/16 ] |
|
The issue was replicated, but it takes approximately 2 mins in my case. We have to investigate a root cause of the issue. |
| Comment by Luis Gomez [ 05/Feb/16 ] |
|
Thanks, I guess it depends on the machine you use to run the controller... |
| Comment by Robert Varga [ 25/Oct/16 ] |
|
This should be quite a bit better with the work done in BUG-6972 – what is the status on current Carbon? |
| Comment by Robert Varga [ 30/Oct/16 ] |
|
I have just tested this with current carbon, the times are below 3 minutes for the second install. I wonder whether the features do not get refreshed and we end up re-creating the context anew. Some debug logs as to what the karaf is doing would be useful, because schema context assembly should really be a background task, which should not be holding feature:install back. |
| Comment by Robert Varga [ 30/Oct/16 ] |
|
One thing that comes to mind is that the infrastructure does not seem to be marked as 'dependency=true' in features.xml, hence the features may be getting reinstalled. |
| Comment by Robert Varga [ 31/Oct/16 ] |
|
patches to attempt to limit reinstalls: https://git.opendaylight.org/gerrit/#/q/topic:bug5222 |
| Comment by Stephen Kitt [ 31/Oct/16 ] |
|
I'm not sure 'dependency=true"' has any effect on features; the Feature.java model in Karaf 3 (and 4) doesn't have a matching JAXB property. |
| Comment by Robert Varga [ 31/Oct/16 ] |
|
Dependency.java (Feature has a List of those) has a dependency at least in 4.x. Note that the 'feature' statement is mapped to dependency in the XSD. |
| Comment by Robert Varga [ 12/Jan/17 ] |
|
I have profiled this a bit more and the second install is now at one minute 40 seconds. The crux of the problem lies with sal-dom-xsql, which leaks memory on global context changes – after the test here it retains 700MiB+ of memory. Therefore I am considering this issue resolved from the perspective of yangtools and moving it to the controller, where it should be treated as a bug. |
| Comment by Robert Varga [ 12/Jan/17 ] |
|
I think the correct action is to open bugs to downstream projects: alto so they stop pulling in sql-dom-xsql and make this the tracker for XSQLs removal. |
| Comment by Robert Varga [ 13/Jan/17 ] |
|
Rename issue to reflect what we need to do, target to Nitrogen. Patches to downstream projects to remove dependencies in Carbon: https://git.opendaylight.org/gerrit/#/q/topic:die-xsql-die |
| Comment by Robert Varga [ 12/Apr/17 ] |