Issue 16558: Key attributes and Regular attributes of a topic should be individually de-serializable (ddsi-rtps-rtf) Source: ADLINK Technology Ltd (Angelo Corsaro, PhD., angelo.corsaro(at)adlinktech.com) Nature: Revision Severity: Significant Summary: Key attributes and Regular attributes of a topic should be individually de-serializable (or at least make the keyhash compulsory) [Nature] Architectural [Severity] Major [Description] The "DDS Interoperability Wire Protocol v2.1" defines a a serialization format for topic types in which it is not easy, nor efficient, to simply get access to the key of a given topic. This has to do with how CDR serializes structs but could be worked around with the new X-Types specification. In essence the problem is that some applications such as DDS routers (such as the PrismTech BlendBox) require to perform some operations that while requiring a knowledge of the instance do not require the deserialization of the data payload. [Resolution] For DDS implementation compatible with the X-Types ensure that the regular data attributes and the key attributes are serialized in different chunks and thus individually accessible in an efficient manner -- meaning to access the key I would prefer not to scan all the regular attributes. For non X-Types compatible DDS implementations make the KeyHash compulsory, meaning require DDS compliant implementation to always send a key-hash along with a Data submessage. Resolution: Revised Text: Actions taken: September 19, 2011: received issue Discussion: End of Annotations:===== m: Angelo Corsaro Subject: DDS Interoperability Wire Protocol RFT Issue -- Key attributes vs. Regular Attributes de/serialization Date: Mon, 19 Sep 2011 22:15:54 +0200 Cc: Juergen Boldt To: issues@omg.org, DDSI X-Mailer: Apple Mail (2.1084) [Name] Angelo Corsaro [Employer] PrismTech [eMail] angelo@icorsaro.net [Specification] DDS Interoperability Wire Protocol [Version] 2.1 [Title] Key attributes and Regular attributes of a topic should be individually de-serializable (or at least make the keyhash compulsory) [Nature] Architectural [Severity] Major [Description] The "DDS Interoperability Wire Protocol v2.1" defines a a serialization format for topic types in which it is not easy, nor efficient, to simply get access to the key of a given topic. This has to do with how CDR serializes structs but could be worked around with the new X-Types specification. In essence the problem is that some applications such as DDS routers (such as the PrismTech BlendBox) require to perform some operations that while requiring a knowledge of the instance do not require the deserialization of the data payload. [Resolution] For DDS implementation compatible with the X-Types ensure that the regular data attributes and the key attributes are serialized in different chunks and thus individually accessible in an efficient manner -- meaning to access the key I would prefer not to scan all the regular attributes. For non X-Types compatible DDS implementations make the KeyHash compulsory, meaning require DDS compliant implementation to always send a key-hash along with a Data submessage. -- Angelo Corsaro, PhD Chief Technology Officer PrismTech 4 rue Angiboust | 91460 Marcoussis | France T +33 1 69 01 53 54 | M +33 6 42 30 75 65 ------------------------------------------------------------------------------------------------------------------ http://icorsaro.net | http://twitter.com/acorsaro | http://slideshare.net/angelo.corsaro ------------------------------------------------------------------------------------------------------------------