Versions Compared

Key

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

...

#

Issue

Notes 

Decision

1Which operation(s) need support for multiple cm handles?
  1. Get
  2. Create
  3. Update (Put)
  4. Patch
  5. Delete

if many what is the priority?

agreed with kieran mccarthy 

Only Get (read)

(in future other operations might be support batch option too)

2

Which datasources should be supported?

Do we need to support passthrough-only no-cached() data only ?
(maybe just start with that, support cached data bulk request later)

agreed with kieran mccarthy :

all passthrough datastores will be supported

Not implemented (yet) response, for other datastores 

3URL  pattern for NCMP bulk endpoints

Existing : /v1/ch/{cm-handle}/data/ds/{datastore-name}

CPS Proposed : /v1/batch/data/ds/{datastore-name}

      ( include cm handles into payload / body and leave datastore into url)

agreed with kieran mccarthy : Follow the existing interfaces as much as possible for consistency and efficiency

4keep datastore, topic and optional parameters in the URL itself instead into body.

CPS prefers keep interface similar as single cm handle interface (consistency and cost)

Existing : ...&topic=topicParamInQuery

agreed with kieran mccarthy : Follow the existing interfaces as much as possible for consistency and efficiency

5

support in ONAP DMI-plugin


agreed with Toine Siebelink : ONAP plugin can respond with not implemented yet code,

6

Response always Async ie. topic is compulsory ?

Assume topic is compulsory (defined in OPenApi) → Response therefore wil be 400 if not supplied

Agreed with kieran mccarthy :

Topic is optional but system will respond with 'Not implemented (yet when not specified or blank

7Should NCMP Amalgamate Async responses from DMI-Plugin before forwarding ?step 6 in flow diagram

Agreed with kieran mccarthy : NCMP wil only forward to client topic no handling tracking or any responses or status of request

8Handle non responding dmi-plugin

Agreed with kieran mccarthy :
No response for 4b then send an error response to the topic given by client

9Should (can) NCMP check if 'MyTopic' specified by client exist

10How to handle non-existing CM-Handled (id)

Suggestions

  1. Silently ignore
  2. (initial) error response
    1. should we combine all errors in one message>message?

11

Overlap/clash with Deutsche Telekom user story:

Jira
serverONAP Jira
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-1377
?!


discussed in weekly ONAP meeting the DT user story is affect CPS-Core interface (not NCMP) and the requirement is to execute a query over ALL cm-handles (cached  only?!) instead of a given list of cm-handles (~anchors)

...

Flow Step

Short description

Message Details

Notes

1

Bulk Get Request


Code Block
title/v1/batch/data/ds/{datastore-name}
collapsetrue
body:
{"Cnhandles":["ch-1",...,"ch-n"]


Define new get operation "getResourceDataForCmHandles" into ncmp.yml

2Ack Client Request


Code Block
titleResponse 200
collapsetrue
{"requestId":"123"}



3DMI Bulk Request


Code Block
titleurl tbd
collapsetrue
body:
tbd


The DMI PLugin should be told (included in request) the client topic so that NCMP does not have to 'remember' to relation between request id and client topic!


Existing DMI endpoints are : 

/v1/ch/{cmHandle}/data/ds/ncmp-datastore:passthrough-operational:
/v1/ch/{cmHandle}/data/ds/ncmp-datastore:passthrough-running


CPS Proposed :

/v1/ch/batch/data/ds/ncmp-datastore:passthrough-operational:
/v1/ch/batch/data/ds/ncmp-datastore:passthrough-running

4Ack Client Request


Code Block
titleResponse 202
collapsetrue



5Kafka Messages from DMI to NCMP


Code Block
titleTopic: ncmp-async-m2m
collapsetrue
Message Details TBD



6Kafka Message(s) from NCMP to Client 



Code Block
titleTopic: <client topic>
collapsetrue
Message Details TBD



7Alternative for 4/5 → Non responding DMI. NCMP will have to create error message detailing cm-handles
See decision # 8

...