You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 8 Next »

CPS-872

NCMP should be able to handle a large (10,000s!) batch of registrations at once. To make this possible we need to 


Task
1Create updated DMI Registry Yang Schema (using @yyyy-mm-dd) in changelog/db/changes/data/yang-models/dmi-registry @ 2021-12-13.yang to store Handle State
2

Add StateLockReason and LockReasonDetails as (Yang)Strings to the schema. Any validation or enum-limitations can be handled in the Java code.

3

Consider timestamp for retry and timeout related scenarios as part of same schema update to reduce overhead of Liquibase changesets

Schedule meeting for retry mechanism and necessary variables

4

Test/demo using CPS-Core 

  1. Can create anchor with new schema
  2. Can add and create data 
dmi-registry@2021-12-13.yang
module dmi-registry {

  yang-version 1.1;

  namespace "org:onap:cps:ncmp";

  prefix dmi-reg;

  contact "dylan.byrne@est.tech";

  revision "2022-02-10" {
    description
    "Added State, LockReason, LockReasonDetails to aid with cmHandle sync and timestamp to aid with retry/timeout scenarios";
  }

  revision "2021-12-13" {
    description
    "Added new list of public additional properties for a Cm-Handle which are exposed to clients of the NCMP interface";
  }

  revision "2021-10-20" {
    description
    "Added dmi-data-service-name & dmi-model-service-name to allow separate DMI instances for each responsibility";
  }

  revision "2021-05-20" {
    description
    "Initial Version";
  }

  container dmi-registry {
    list cm-handles {
      key "id";
      leaf id {
        type string;
      }
      leaf dmi-service-name {
        type string;
      }
      leaf dmi-data-service-name {
        type string;
      }
      leaf dmi-model-service-name {
        type string;
      }

      list additional-properties {
        key "name";
        leaf name {
          type string;
        }
        leaf value {
          type string;
        }
      }

      list public-properties {
        key "name";
        leaf name {
          type string;
        }
        leaf value {
          type string;
        }
      }

      leaf state {
        type string;
      }
      leaf lock-reason {
        type string;
      }
      leaf lock-reason-details {
        type string;
      }
      leaf timestamp {
        type string;
      }
    }
  }
}


A/C
1

Propose and agree new model with team and stakeholders

2Demo 
  1. Can create anchor using new model
  2. Can add data for new model
  3. Can query data using file based on state
3

Agree new name for dataspace. Replace Admin dataspace?

4

Describe impacts to codebase


Decision on variables

VariableProsConsDecision
state


lock-reason


lock-reason-details


timestamp



  • No labels