Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • Jira
    serverONAP Jira
    columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
    columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
    serverId425b2b0a-557c-3c0c-b515-579789cceedb
    keyCPS-1964

Proposed JIRAs

Priority

Component 

Description

JIRA

Confluence 

1NCMPCreate implementation proposal for NCMP to provide support for Data jobs qualifier during registration

Image ModifiedCPS-2096 - Create implementation proposal for NCMP to provide support for Data jobs qualifier during registration. CLOSED

2NCMPNCMP to provide support for data producer identifier during registration

Image ModifiedCPS-2105 - NCMP to provide support for data producer identifier during registration CLOSED


3NCMPSupport of Datajobs qualifier during registration

Image ModifiedCPS-2084 - Support of Datajobs qualifier during registration CLOSED


4NCMPModify the get cmHandle api to return dataProducerIdentifier, moduleSetTag, and alternateId

Image ModifiedCPS-2113 - Modify the get cmHandle api to return dataProducerIdentifier, moduleSetTag, and alternateId CLOSED


5NCMPModify lcm events to include dataProducerIdentifier and moduleSetTag

Image ModifiedCPS-2114 - Modify lcm events to include dataProducerIdentifier and moduleSetTag CLOSED


6NCMPCreate implementation proposal for NCMP to provide Java interface that can support Data jobs request

Image ModifiedCPS-2097 - Create implementation proposal for NCMP to provide Java interface that can support Data jobs request CLOSED


7NCMPDefine a java based datastructure for DataJob

Image ModifiedCPS-2155 - Define a java based datastructure for DataJob CLOSED

8NCMPHandle Datajob request in java interface

Image ModifiedCPS-2142 - Spliting a data-job into sub-jobs forward those to dmi IN PROGRESS


9NCMPHandle async datajob response in java interface

Image ModifiedCPS-2143 - Handle Async Datajob Response OPEN


10DMIDefine DMI REST interface for Datajobs

Image ModifiedCPS-2141 - Define DMI REST interface for Datajobs IN PROGRESS

11DMIDefine a java based datastructure dmi request for dmi endpoint

Image ModifiedCPS-2163 - Use dmi REST endpoint to forward datajob read and write request IN PROGRESS


12DMIResponse schema for DMI dataJob response

Image ModifiedCPS-2154 - Response schema for DMI dataJob response CLOSED


13NCMPForward dataJob response from DMI to client topic in header as destination 

Image ModifiedCPS-2098 - Forward dataJob response from DMI to Client Topic OPEN


14DMIStub should be modified to use generated code from OpenAPI

Image ModifiedCPS-2145 - Move DMI Stub from NCMP to DMI-Plugin OPEN


15
E2E demo for internal team and stakeholder 

Image ModifiedCPS-2144 - End to End Demo OPEN


Issues & Decisions


IssueNotesDecision
1CPS to deliver java-interface only

This affects our Wow in many aspects.

  1. Requirements on Java interface instead of REST
    1. REST first or Java first, parallel?
  2. How to Test & Demo in CPS Team

 

Csaba Kocsis  proposed that CPS Team will deliver Java impl. first and then E// will take our code and wrap and a REST interface around it.

Toine Siebelink CPS team will work out during Grooming how to demo withour REST interface, most like using Groovy (semi) Integartion Tests. Daniel Hanrahan his about to complete a test framework for test NCMP services.

2Validation in REST or Java Service

Balance between early validation and common code

Continue with current process. Review case by case Toine Siebelink  Csaba Kocsis  

3Why is NCMP forwarding the response, DMI could do this ?Involve extra performance cost from CPS 

  Implementation needed because of TBAC 

4Are Java doc expected to be publishedYes. Agreed to deliver as a separate artefact (Shall be versioned ... where should it go ?)

Versioning of the interface shall be the same as the service delivered by CPS. New v should not affect the interface, version numbers could change and shall be documented  

5Delivery artefacts

Required Artefacts

  1. JavaDoc for new interface
  2. Jar(s ?) for services support new interface

 Csaba Kocsis to revert

6CharacteristicsNeed to discuss priority of this. Delivering a functioning MVP for EPIC is important. Discussion and agreement with Peter T needed

 Csaba Kocsis  to revert

7Results - Why can't DMI send result after completion of job with be told to do soSimply less work if DMI can decide itself, no additional interface in other components needed to trigger this....
8Exact form of Alternate ID(s) FDNs

uri-FDN and  LDNs should contain "/" and not "," as delimiters at the start of the naming attribute

FDN example : 

Subnetwork=22,MeContext=Kista,ManagedElement=Kista,GNBDUFunction=1,UECC=1

URI FDN example : 

/Subnetwork=22/MeContext=Kista/ManagedElement=Kista/GNBDUFunction=1/UECC=1

Should be compliant with 3GPP, should start with '/ '  

https://github.com/jdegre/5GC_APIs/blob/Rel-18/TS28532_ProvMnS.yaml



Kieran Mccarthy A  Users are advised to use URI-FDNs for alternate IDs to minimize performance impacts of conversions etc.   Rafael Rocha  ALL  cps

9MVP (Minimum Viable Product) for DCM
  1. Expected Delivery to EIC  Q3(August) to EIC. (Fossing and Testing)

  2. Write Only Should be prioritized for target delivery (Q3). It should include
    - Batch write
    - NCMP should only check the cmhanlde of the first operation 
    - Should Databag be populated or not kieran mccarthy / Csaba Kocsis ?
  3. NCMP should prioritize CPS-2009 Update remaining existing/legacy NCMP APIs to support alternate Id (FDN) - Developer Wiki - Confluence (onap.org) - over datajob Read. New Epic to be created for DataJob Read sperate this from 1964 - > CPS-2189
  1. EIC Expected Delivery  Q3(August)
10DataJob Read v Write prioritizationWrite should be prioritized over read

11Use of '/ ' causes some issues

kieran mccarthy Csaba Kocsis  to review this impact on querying of FDN

12

Prioritize CPS-2009 Update remaining existing/legacy NCMP APIs to support alternate Id (FDN) - Developer Wiki - Confluence (onap.org) - over Read.

New Epic requested for DataJob Read sperate this from 1964.

Expected even earlier than q3

Agreed to move higher on R14 - #17

13

NCMP still need to convert Legacy Event to Cloud Event before we can Update the Legacy APIs to support AlternateId

Currently ETH are only consuming the LCM event and we agreed shall remain Legacy event for MVP delivery.

Kolawole Adebisi-Adeolokun Peter Turcsanyi Csaba Kocsis

...


Functional Requirement

Error Scenario

Expected Behavior

Sign-off

1

#2

Non Responding DMI during new DataJob Request

NCM shall send asynchronous message containing:

  • Subjobs that have not started with the DMI and the qualifier (after http timeout), no subJobs Ids since they would have to be assigned by south bound system

Client is responsible for retry. 

Wait for implantation proposal 

 Csaba Kocsis , CPS

2

#2

Unmatched Alternate IDs 

Toine Siebelink  : Not discussed yet but  I would suggest similar behavior as legacy bulk interface (async response with failed FDNS) - If an unmatched alternated (1 or more), send a response back to client saying no jobs or 0 subjob

If request contains none-exited alternateid ? - Goes to client


 Csaba Kocsis, all cps 

3

#3

Non Responding DMI during new status update

Error handling just by HTTP timeout (java interface will throw an exception)

 Csaba Kocsis all cps 

4

#4 
General

Not existing Topics

NCMP is NOT responsible for checking or handling messages to non existing (client) topics
Also 'internal' topics are assumed to be set up correctly

 Csaba Kocsis  all cps

5

Misc.

Other Robustness 

  1. NCMP Down
  1. What happens to Sub-jobs that have not started with the DMI and the qualifier (after http timeout)
  2. What happens to if NCMP crashes immediately after responding to the request ?

 Agreed to revisit robustness once basic happy and standard error scenarios (DMI not responding) have been implemented 



High Level Solution




Gliffy Diagram
macroId

...

d1631b9a-

...

be48-

...

4bc6-

...

96b7-

...

364b3cf77464

...

nameAsync_

...

Datajob
pagePin1

The 8 Steps

  1. DCM REST endpoint forwards request to NCMP for processing
  2. When processed subjobs are sent to relevent DMI
  3. DMI responds with acknowledgement of datajob received to NCMP
  4. NCMP informs DCM
  5. Job status sent to internal topic
  6. Topic published on Kafka channel
  7. Clients subscribed get status
  8. rApps receive status


Considerations

...

Java interface to process a data job request

Splitting the main job into multiple DMI sub-jobs

Synchronous response with sub jobid

Async mechanism to return list of jobs

DMI or ENM responses ( Not CPS responsibility )

Listen to the responses on internal topics 

Forward responses to the relevant topics

Error Handling

Specify the REST interface spec between NCMP and DMI plugin


Suggested User Story Breakdown

...