Model-Driven Service Abstraction Layer (MD-SAL)

Overview

MD-SAL provides infrastructure for binding YANG models to Java object model and infrastructure for providing YANG-defined interaction patterns: * Reactive datastore update * RPC and Action invocation * Notification sourcing and delivery

Behavior/Feature Changes

The (2025.09) Vanadium MDSAL release brings improved DataObjectModification sealed hierarchy in MDSAL-889 and coerceStep method introduced in MDSAL-892.

They together simplifies user experience when dealing with datastore changes enabling usage of Java enhanced switch and getting rid of nullness warnings for dataBefore()/dataAfter() methods.

New Features

  • Added DataObjectModification#coerceKeyStep in MDSAL-892

Deprecated Features

  • Deprecated DataObjectModification#ModificationType in MDSAL-889

Removed Features

  • Removed deprecated DataObjectModification methods in MDSAL-889

Resolved Issues

The following table lists the issues resolved in this release.

Issues resolved in versions 15.0.0 through 15.0.2 (JIRA)

Type

Key

Summary

Resolution

Fix Version(s)

Bug

MDSAL-891

Bad addressing in AbstractDataObjectModification.getModifiedChildContainer(Class, Class)

Done

14.0.18, 15.0.0

Improvement

MDSAL-892

Add DataObjectModification.coerceKeyStep()

Done

14.0.19, 15.0.1

Improvement

MDSAL-889

Remodel DataObjectModification

Done

15.0.0

New Feature

MDSAL-893

Package mdsal-eos-dom-simple as odl-mdsal-eos-single

Done

14.0.20, 15.0.2

Story

MDSAL-875

Migrate features to template-feature-parent

Done

15.0.2

Task

MDSAL-890

Remove DOMRpcRouter.notification(Publish)Service() methods

Done

15.0.0

Task

MDSAL-888

Remove DOMRpcRouter.{action,rpc}(Provider)Service() methods

Done

15.0.0

Task

MDSAL-887

Remove most InstanceIdentifier-using methods from mdsal-binding-api

Done

15.0.0

Task

MDSAL-886

Split out IETF-defined models into their own repository

Done

15.0.0

Task

MDSAL-885

Remove Clustered(DOM)DataTreeChangeListener

Done

15.0.0

Known Issues

The following table lists the known issues that exist in this release.

Resolved Issues in SR1

The following table lists the issues resolved in this release.

Known Issues in SR1

The following table lists the known issues that exist in this release.

Issues affecting versions 15.0.3 through 15.0.4 (JIRA)

Type

Key

Summary

Status

Affected Version(s)

Fix Version(s)

Bug

MDSAL-895

Configuration key keys do not work. Netty replicate 14.0.18

Resolved

14.0.18, 14.0.21, 15.0.4, 16.0.0

14.0.22, 15.0.7, 16.0.3