eclipse-leshan / leshan

Java Library for LWM2M
https://www.eclipse.org/leshan/
BSD 3-Clause "New" or "Revised" License
648 stars 406 forks source link

Read Composite with the overlapping path is not possible #1486

Open Warmek opened 1 year ago

Warmek commented 1 year ago

Version(s)

v2.0.0-M11

Which components

Client and Server

Tested With

No response

What happened

Read Composite with the overlapping path is not possible

We know that there was discussion but we need it for ETS (LightweightM2M-1.1-int-229)

How to reproduce

Preconditions: The Client supports Configuration C.1 as defined in Annex C The client is registered with the L2M2M Server The client supports mandatory resources of Lw2M2M Server and Device Objects

Test Procedure:

  1. Server performs a Read-Composite (CoAP FETCH) on the following combination of Objects, Object Instances, Resources, and Resources Instances: Device Object (/3) L2M2M Server Object Instance (/1/x, where x in a LwM2M Server Object Instance) Lifetime Resource (/1/x/1) Error Code Resource Instance (/3/0/11/0) "Accept: Content-format" is set either to SenML CBOR or SenML JSON

Pass-Criteria: A. Client accepted the request and replied with 2.05 Content. Message payload contains requested data. The content format is either: SenML CBOR or SenML JSON supports

Relevant Output

No response

sbernard31 commented 1 year ago

I guess you are talking about 6.1.3.19 LightweightM2M-1.1-int-229 – Read-Composite Operation from Enabler Test Specification (Interoperability) for Lightweight M2M Draft Version 1.1 – 12 Sep 2019, correct ?

FMPOV,

  1. This use case still doesn't make sense to me. Why reading /1/x and 1/x/1 as 1/x/1 is include in /1/x ? In real life what is the use case for this ?
  2. Not sure but I will not be surprised this is rather a bug in ETS draft OR at least a not so good idea to use this corner case for an interoperability test.

So let's try to get answer from OMA : https://github.com/OpenMobileAlliance/OMA_LwM2M_for_Developers/issues/568

Warmek commented 1 year ago

AVSystem, IoTerop and 6D Tech LwM2M Server implementation of ETS 229 are suporting Read Composite with the overlapping paths, as-is, since the status is "passed" with some clients (for example Paradox client)

https://github.com/OpenMobileAlliance/OMA_LwM2M_for_Developers/wiki/Mar-2021--Virtual-TestFest-Product-Listings