#opendaylight-meeting: kernel projects
Meeting started by rgoulding at 15:59:14 UTC
(full logs).
Meeting summary
- agenda bashing (rgoulding, 15:59:18)
- odlparent-3.1.2 timing (rgoulding,
15:59:25)
- odlparent 3.2.0 (rgoulding,
15:59:30)
- odlparent-4.0.0: karaf 4.2.X in Neon?
(rgoulding,
15:59:43)
- clustering topics contd. from netvirt
call (rgoulding,
16:08:45)
- odlparent 3.1.2 (rgoulding, 16:09:04)
- skitt has a multipatch running and release
notes prepared (rgoulding,
16:09:17)
- rovarga to submit patch to disable SFT on
Java9+ (rgoulding,
16:09:39)
- one more patch is expected (rgoulding,
16:09:44)
- then it should be released (rgoulding,
16:09:48)
- odlparent 3.2.0 (rgoulding, 16:09:55)
- Fluorine or beyond? (rgoulding,
16:10:40)
- the integration window has gone (rgoulding,
16:10:46)
- vorburger is not pushing for Fluorine
(rgoulding,
16:10:56)
- live with this for Fl (rgoulding,
16:11:17)
- odlparent 4.0.0 (rgoulding, 16:11:26)
- includes karaf-4.2.X (rgoulding,
16:11:31)
- expect to be in Neon (rgoulding,
16:11:36)
- guava 26 / 27 (rgoulding,
16:11:48)
- what is the compatibility? (rgoulding,
16:11:57)
- Java 9 requires karaf 4.2.X (rgoulding,
16:12:24)
- given the timeline, skitt brings up looking at
java 10 for Neon (rgoulding,
16:12:35)
- rovarga unsure about how to spin the java
upgrade (rgoulding,
16:12:52)
- in sept java 11 will hit (rgoulding,
16:13:04)
- oracle will pick up java 11 as LTS (rgoulding,
16:13:11)
- how will we handle runtime compat? (rgoulding,
16:13:19)
- as well as source code compat going
forward (rgoulding,
16:13:25)
- so we can run verify jobs with java 9/10 to get
some meaningful output so we can even think about upgrade
(rgoulding,
16:13:55)
- java9/10 compat is needed for Neon timeframe,
as well as enabling a full developer environment on top of it.
However, we should require java 8 compat, according to skitt
(rgoulding,
16:14:38)
- vorburger brings up how much variability we
wnat to support going forward (rgoulding,
16:14:57)
- rovarga brings up the fact that not too many
projects are actually using JVM internals particular to a particular
JVM flavor/version (rgoulding,
16:16:06)
- so we may not have an explosion in our testing
matrix (rgoulding,
16:16:20)
- w/ JVM releases every 6 months, the compat
matrix will explode (rgoulding,
16:17:06)
- we will need some strategy to prune jvms to not
get stuck (rgoulding,
16:17:19)
- rovarga is in favor of keeping the test matrix
as small as possible (rgoulding,
16:17:49)
- vorburger expresses desire to avoid overhead by
picking too many (rgoulding,
16:19:04)
- we need a release that supports 2 JDKs
simultaneously before we bump the requirements (rgoulding,
16:19:25)
- telcos generally require a longer support for
two releases in order to qualify new java releases (rgoulding,
16:19:52)
- locking down into a potentially broken jdk
needs to be avoided (rgoulding,
16:20:06)
- clustering cont’d from netvirt call (rgoulding, 16:21:56)
- skitt there was discussion in netvirt call
surrounding clustering (rgoulding,
16:22:29)
- there are some issues with 3 node csit for
netvirt/controller (rgoulding,
16:22:40)
- want to focus on fixing those bugs (rgoulding,
16:22:50)
- plan is to tackle things on two angles. 1)
look at actual failures that are understandable/reproducible. fix
in targeted manner. 2) figure out the bad practices in code wrt
clustering behavior (how transactions are built, etc.) and figure
out ways to prevent making these same mistakes in the future (maybe
APIs can be improved) (rgoulding,
16:24:10)
- for point #2, there are a number of questions
brought up on best-practices (rgoulding,
16:24:25)
- i.e., what are the impacts of having a
transaction on 1 shard versus many shards. (rgoulding,
16:24:40)
- how can we deal with code that writes to
config/operational in the same transaction? (rgoulding,
16:24:54)
- split up application logic so it is writing to
only config or operational (rgoulding,
16:25:16)
- rovarga writing config/operational at the same
time has been deprecated for 4 years and it is going away. it does
not make any sense to do so (rgoulding,
16:25:37)
- they are not an atomic entity (rgoulding,
16:25:46)
- early patch set to enforce config/operational split: https://git.opendaylight.org/gerrit/73041
(skitt,
16:26:07)
- you should be writing to config DS and then
write to operational once the config write has completed
(rgoulding,
16:26:15)
- there hasn’t been a use case brought up for
this (rgoulding,
16:26:47)
- rovarga has asked several times, and no one has
come back with a use case that actually requires this
functionality (rgoulding,
16:27:08)
- ACTION: daya to come
back with use case for this in the future (rgoulding,
16:27:23)
- example patchset under discussion, with blind config/operational
split: https://git.opendaylight.org/gerrit/72871
(skitt,
16:27:26)
- operational state needs to be derived from
configuration state separately (rgoulding,
16:28:18)
- ACTION: daya to ask
the original authors why they decided to write the code this
way (rgoulding,
16:29:17)
- this may just be a misuse of the technology due
to lack of understanding (rgoulding,
16:29:45)
- and not an true use case (rgoulding,
16:29:51)
- rovarga brings up that if we plan to stay
current with ietf network data store architecture, we must treat the
data stores as separate entitites (rgoulding,
16:31:17)
- that architecture was based on ODL, so shoudl
be possible (rgoulding,
16:31:37)
- https://git.opendaylight.org/gerrit/#/c/73041/
(rgoulding,
16:31:56)
- https://tools.ietf.org/html/rfc8342
NMDA (rovarga_,
16:32:03)
- another thing that NETVIRT team has been
thinking about for a while is how to deal with shards (rgoulding,
16:34:09)
- skitt poses question how hard it would be to
have something that says, I want a transaction, and I’m going to be
reading and writing from these subtrees (rgoulding,
16:35:14)
- tpantelis and rovarga bring up that this is the
producer API (rgoulding,
16:35:23)
- https://github.com/opendaylight/mdsal/blob/master/dom/mdsal-dom-api/src/main/java/org/opendaylight/mdsal/dom/api/DOMDataTreeProducerFactory.java
(rgoulding,
16:36:17)
- see also https://github.com/opendaylight/mdsal/blob/master/dom/mdsal-dom-api/src/main/java/org/opendaylight/mdsal/dom/api/DOMDataTreeProducer.java
(rgoulding,
16:38:08)
- there is some revisiting that is needed to this
code, but this is basically what Stephen was wondering about
(rgoulding,
16:40:42)
- these add a performance boost as well
(rgoulding,
16:45:31)
- tell-based protocol (rgoulding, 16:47:42)
- what is the status of this? (rgoulding,
16:47:51)
- daya asks if it is mature enough to move to the
tell-based protocol or at least start exploring the migration
(rgoulding,
16:48:17)
- luis brings up the fact that he tried in
openflowplugin and that he had to disable it because it iddnt
improve performance (rgoulding,
16:48:44)
- tpantelis brings up that it won’t necessary
improve perforamnce, its more around resiliency (rgoulding,
16:48:56)
- i.e., eliminate possibility of
AskTimeoutException (rgoulding,
16:49:11)
- somebody needs to pick this up and drive
benchmarking and testing (rgoulding,
16:50:01)
- in Carbon this increased performance, decreased
in Nitrogen+ when Luis tested. (rgoulding,
16:50:16)
- we need to ensure that all patches were moved
from Carbon into Nitrogen+ (look at git logs) (rgoulding,
16:50:40)
- rovarga brings up that bgpcep with a single
node performed markedly better (rgoulding,
16:52:54)
- Luis asks if this applies to single node
to? (rgoulding,
16:53:18)
- it does (rgoulding,
16:53:20)
- https://lists.opendaylight.org/pipermail/controller-dev/2016-January/011401.html
(rovarga_,
17:00:30)
Meeting ended at 17:00:59 UTC
(full logs).
Action items
- daya to come back with use case for this in the future
- daya to ask the original authors why they decided to write the code this way
People present (lines said)
- rgoulding (88)
- odl_meetbot (5)
- skitt (5)
- rovarga_ (4)
- vorburger (2)
Generated by MeetBot 0.1.4.