Issues for Mailing list of the DDS for (Light Weight) CORBA Component Model 1.0 Finalization Task Force

To comment on any of these issues, send email to dds4ccm-ftf@omg.org. (Please include the issue number in the Subject: header, thusly: [Issue ###].) To submit a new issue, send email to issues@omg.org.

List of issues (green=resolved, yellow=pending Board vote, red=unresolved)

List options: All ; Open Issues only; or Closed Issues only

Issue 13884: push operation should be push_T$
Issue 13885: Shouldn't table 10 take parameterized connectors into account?
Issue 13886: Should be as below (lower case) 7.2.3.4.1 set_configuration_values
Issue 13888: wouldn't it be more maintainable to add to lines 35-40 a typedef for the return value (and other interfaces)?
Issue 13889: change nb to number in the comment on line 29/32/35
Issue 13890: Change on line 5 StringSeq to CORBA::StringSeq
Issue 13891: line 29, change On_data to on_data (lower case)
Issue 13892: line 52, change DDS_StateLsisten to DDS_StateListen
Issue 13893: line 27, change attributre to attribute also change StringSeq to CORBA::StringSeq
Issue 13894: line 8, shouldn't DDS_KEEP_ALL_HISTORY_QOS be replaces with KEEP_ALL_HISTORY_QOS
Issue 13895: Line 13/16/21/24, shouldn't the DDS_ be removed from the kind?
Issue 13896: line 4, replace the with The (T upper case)
Issue 13897: Line 15,19, use CORBA::ULongSeq instead of ULongSeq Line 23, use an enum for the error_code?
Issue 13946: Figure 1 should say IDL3+ instead of Extended IDL3
Issue 13949: The usage of ULongSeq should be CORBA::ULongSeq
Issue 13952: this struct uses a StringSeq but the namespace is lacking
Issue 13953: DDS_Listen is never defined in this spec
Issue 13954: For 3, check UML CCM reference, it says 5formal, is that ok?
Issue 13955: Section: 6.1.2: It should be ExtendedPort and MirrorPort, not InversePort
Issue 13956: Section 7.1.2: Layout of figure 2 and 3 can be improved
Issue 13957: Section 7.2.1.2: Line 16 ends with two semi colons instead of 1
Issue 13958: Section 7.2.3: Line 38-39 starting with "note that events" doesn't read
Issue 13959: Section: 7.2.4.2.1
Issue 13960: Section 7.2.4.4: Line 3-4 doesn't read
Issue 13961: Section 7.2.4.5: this seems to lack a figure, line 7 ends with "extrat below:" but nothing is below line 7
Issue 13962: Section 8.2.2.1.1: what about making is_lifecycle_checked a regular attribute, so not read only?
Issue 13963: why not use an exception instead of a return value for the methods in Getter<>?
Issue 13964: Section: 8.2.2.1.2 font
Issue 13965: Section 8.3.1: On line 19, after DDS_Base it should be a {
Issue 13966: Section 8.4.2: On line 1, the annex numbers are lacking
Issue 13967: Section 8.4.2: For Table 12, Boolean, font of BOOLEAN_TRUE is not ok
Issue 13968: Section 8.2.2.2.5: On line 5 DURATION_INFINITE_NSEC should be used
Issue 13969: Section 9: Line 4 should start with a capital
Issue 13970: Section 9.2.1.1: line 39 should be indented
Issue 13971: Section 9.2.2: Line 13 says DCPOS, shouldn't this be DCPS?
Issue 13972: Section 9.2.2: Line 16 doesn't read, line 33 should also be clear
Issue 13973: Shouldnh't InternalError use DDS::ReturnCode_t
Issue 13974: Annex D: Font of line 20 not ok
Issue 14017: Section: 8.2.2.1.4 and annex A missing parameter name
Issue 14020: The spec uses $ as string replacement for IDL3+
Issue 14024: keywords that can't be used in other IDL anymore
Issue 14025: table 2 on page 16 (adobe number) on line 1 should have the same fonts as table 1
Issue 14028: The spec doesn't say anything about forward declared IDL3+ interfaces
Issue 14037: DDS4LwCCM - template interface IDL grammar
Issue 14038: DDS4LwCCM - template interface body
Issue 14039: DDS4LwCCM - forward declared template interface?
Issue 14040: DDS4LwCCM - standalone template interfaces?
Issue 14046: DDS4LwCCM - concatentation symbol usage
Issue 14057: the spec should be more clear for which constructs the $ can be used
Issue 14060: Section 8.4.4 talks about threading, but this section is really under specified
Issue 14080: propose to read the AMI chapter that was part of the alpha spec
Issue 14110: SampleInfo
Issue 14117: ListenerControl
Issue 14118: Section 8.2.2.1.3: ListenerControl attribute
Issue 14119: What are the semantics of the 'primitive' keyword? Letting it match any primitive type seems too vague
Issue 14120: The non-terminal 'extended_port_decl' appears as both a component export and a connector export.
Issue 14121: On line 24, the term '<connector_export>' should be '<connector_export>+'.
Issue 14122: Lines 32-36 imply that value declarations and type declarations may be parameterized
Issue 14168: We propose to change the tags to <dds> and </dds>
Issue 14174: One line 24 the spec uses BadParameter, but it doesn't describe when this exception has to be thrown.
Issue 14175: if no key is specified the an_instance is supposed to be empty?
Issue 14176: line 17 and 21 the exception NonExistent: under which conditions has this exception to be thrown?
Issue 14177: For timestamp, is this the DDS source_timestamp? If yes, rename the member to source_timestamp
Issue 14178: For line 44 and 20 I would recommend to have update/create/delete as bold font
Issue 14179: Line 14, change inees to fields
Issue 14180: MultiWriter
Issue 14181: or MultiUpdater the return value of unsigned long doesn't make sense
Issue 14182: Return type of the MultiWriter/MultiUpdater?
Issue 14201: Destination module for implied template interfaces
Issue 14202: Reader::read_all_history
Issue 14203: QueryFilter
Issue 14204: Typo, 8.3.1
Issue 14205: Return value of operations on MultiUpdater/MultiWriter/
Issue 14206: Typo, erroneaous
Issue 14207: Typo, betwen
Issue 14208: Reader interface
Issue 14209: Dds4ccm and includes
Issue 14210: Reader port question
Issue 14211: non-keyed datatypes
Issue 14212: NonExisting::indexes with Reader/Getter/Writer
Issue 14213: Sequence typedef leads to multiple sequences
Issue 14214: Do we need the Multi* interfaces/ports?
Issue 14217: QoS profile attribute name?
Issue 14534: MultiListener
Issue 14558: Extended ports
Issue 14562: (Multi)Updater method names?
Issue 14567: Updater and instance handle
Issue 14574: topic_name attribute
Issue 14578: on_subscription_matched missing
Issue 14581: readonly attribute DDS::StringSeq key_fields;?
Issue 14590: DDS port interfaces should be local
Issue 14611: DDS4CCM module name
Issue 14612: mirrorport in CCMComponentPortKind
Issue 14825: DDS_TopicBase::key_fields
Issue 14830: csl::on_inconsistent_topic
Issue 14836: IDL3+ keyword question/issue
Issue 14845: read_last
Issue 14846: Typo, 09-10-25, ExtendePortType
Issue 14847: getter text should be clearer about the behavior
Issue 15160: Type, DDS Listen instead of DDS_Listen
Issue 15172: Supporting Content Filtered Topics
Issue 15173: InstanceHandleManager, local?
Issue 15174: ConnectorStatusListener::on_unexpected_stat
Issue 15225: inout data parameters
Issue 15231: issue create/addressed?
Issue 15238: Let the user be able to instantiate one dds connector
Issue 15282: attributes as part of porttype do appear on port and mirrorport
Issue 15286: Layout issue test
Issue 15287: Make all arguments inout
Issue 15313: StateListenerControl:: is_filter_interpreted should be documented as optional
Issue 15888: section 8.3.1 Base Connectors
Issue 16603: Make topic_name changeable
Issue 17399: Name patterns should support underscores and scoping

Issue 13884: push operation should be push_T$ (dds4ccm-ftf)

Click here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Clarification
Severity: Minor
Summary:
Page 15 lists: // Parameterized interface interface EventsPusher <typename T> { typedef sequence<T> T$Seq; // construction of a type name void push (in T$Seq events); void push_$T (in T event); // construction of an operation name }; The replacement, is that T$ or $T, seems the push operation should be push_T$

Resolution: The new template support in response to issue 14201 removes the need for that controversial concatenation operator.
Revised Text: None as already covered by resolution of issue 14201
Actions taken:
April 24, 2009: received issue
April 26, 2010: closed issue

Issue 13885: Shouldn't table 10 take parameterized connectors into account? (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Clarification
Severity: Minor
Summary:
Shouldn't table 10 take parameterized connectors into account?

Resolution: Disposition: See issue 14201 for disposition
Revised Text:
Actions taken:
April 24, 2009: received issue
April 26, 2010: closed issue

Issue 13886: Should be as below (lower case) 7.2.3.4.1 set_configuration_values (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Clarification
Severity: Minor
Summary:
Line 18, has 7.2.3.4.1 Set_configuration_values Should be as below (lower case) 7.2.3.4.1 set_configuration_values

Resolution: correct the typo
Revised Text: Page 20 / line 12 Change Set_configuration_values ¨ set_configuration_values
Actions taken:
April 24, 2009: received issue
April 26, 2010: closed issue

Issue 13888: wouldn't it be more maintainable to add to lines 35-40 a typedef for the return value (and other interfaces)? (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Clarification
Severity: Minor
Summary:
wouldn't it be more maintainable to add to lines 35-40 a typedef for the return value (and other interfaces)? typedef unsigned long bytes; Also change the comment to // returns number of bytes written interface MultiWriter<typename T> { // T assumed to be a data type typedef sequence<T> T$Seq; nb_bytes write(in T$Seq instances) // returns nb of written raises (InternalError); attribute boolean is_coherent_write; };

Resolution: The idea is good but the proposed name (bytes) is misleading as what is returned is a count of data samples. In addition, it in inconsistent to let unsigned long as index in lists of data. It is thus proposed to name that typedef DataNumber_t, to create also DataNumberSeq and to use them each time the unsigned long or sequence of Ulong were used.
Revised Text: Page 29 / line 37 Change: unsigned long ¨ DataNumber_t Change in comment: nb ¨ number Page 30 / lines 29, 33, 37 Change: unsigned long ¨ DataNumber_t Change in comment: nb ¨ number Page 31 / line 34 Change: unsigned long ¨ DataNumber_t Page 48, after line 5, Insert: // -------- // Typedefs // -------- typedef unsigned long DataNumber_t typedef sequence<DataNumber_t> DataNumberSeq Page 48 / lines 17, 21 Change: ULlongSeq ¨ DataNumberSeq Page 48 / lines 27 Change: unsigned long ¨ DataNumber_t Page 48 / lines 46 Change: unsigned long ¨ DataNumber_t Change in comment: nb ¨ number Page 48 / lines 23, 26, 29 Change unsigned long ¨ DataNumber_t Change in comment: nb ¨ number Page 50 / line 6 Change: unsigned long ¨ DataNumber_t However, further issue resolution (cf. Issue 14201) deprecates some of those changes.
Actions taken:
April 24, 2009: received issue
April 26, 2010: closed issue

Issue 13889: change nb to number in the comment on line 29/32/35 (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Clarification
Severity: Minor
Summary:
change nb to number in the comment on line 29/32/35

Resolution: Disposition: See issue 13888 for disposition
Revised Text:
Actions taken:
April 24, 2009: received issue
April 26, 2010: closed issue

Issue 13890: Change on line 5 StringSeq to CORBA::StringSeq (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Clarification
Severity: Minor
Summary:
Change on line 5 StringSeq to CORBA::StringSeq

Resolution: As CCM is meant to abstract from CORBA, it is not a good thing to create here a dependency to CORBA In addition, those StringSeq will be passed to DDS, DDS::StringSeq is therefore a much better choice. This concerns the query parameters as well as the topic key fields
Revised Text: Page 34 / line 17 Page 41 / line 14 Page 51 / line 32 Change: StringSeq ¨ DDS::StringSeq
Actions taken:
April 24, 2009: received issue
April 26, 2010: closed issue

Issue 13891: line 29, change On_data to on_data (lower case) (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Clarification
Severity: Minor
Summary:
line 29, change On_data to on_data (lower case)

Resolution: correct the typo
Revised Text: Page 34 / line 29 Change: On_data ¨ on_data, However, further issue resolution (cf. Issue 14214) deprecates that change
Actions taken:
April 24, 2009: received issue
April 26, 2010: closed issue

Issue 13892: line 52, change DDS_StateLsisten to DDS_StateListen (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Clarification
Severity: Minor
Summary:
line 52, change DDS_StateLsisten to DDS_StateListen

Resolution: correct the typo
Revised Text: Page 36 / line 52, Change: DDS_StateLsisten ¨ DDS_StateListen However, further issue resolution (cf. Issue 14214) deprecates that change
Actions taken:
April 24, 2009: received issue
April 26, 2010: closed issue

Issue 13893: line 27, change attributre to attribute also change StringSeq to CORBA::StringSeq (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Clarification
Severity: Minor
Summary:
line 27, change attributre to attribute also change StringSeq to CORBA::StringSeq

Resolution: Correct the typo (the second part of the issue is already in issue 13890)
Revised Text: Page 41 / line 14 Change: attributre ¨ attribute
Actions taken:
April 24, 2009: received issue
April 26, 2010: closed issue

Issue 13894: line 8, shouldn't DDS_KEEP_ALL_HISTORY_QOS be replaces with KEEP_ALL_HISTORY_QOS (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Clarification
Severity: Minor
Summary:
line 8, shouldn't DDS_KEEP_ALL_HISTORY_QOS be replaces with KEEP_ALL_HISTORY_QOS

Resolution: Discard DDS_ in front of all QoS values
Revised Text: Page 43 / line 17 Page 46 / lines 6, 9, 14, 17, 35, 38, 43, 46 Page 47 / line 13 Remove: DDS_
Actions taken:
April 24, 2009: received issue
April 26, 2010: closed issue

Issue 13895: Line 13/16/21/24, shouldn't the DDS_ be removed from the kind? (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Clarification
Severity: Minor
Summary:
Line 13/16/21/24, shouldn't the DDS_ be removed from the kind?

Resolution: Disposition: See issue 13894 for disposition
Revised Text:
Actions taken:
April 24, 2009: received issue
April 26, 2010: closed issue

Issue 13896: line 4, replace the with The (T upper case) (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Clarification
Severity: Minor
Summary:
line 4, replace the with The (T upper case)

Resolution: correct the typo
Revised Text: Page 48 / line 4 Change: the ¨ The
Actions taken:
April 24, 2009: received issue
April 26, 2010: closed issue

Issue 13897: Line 15,19, use CORBA::ULongSeq instead of ULongSeq Line 23, use an enum for the error_code? (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Clarification
Severity: Minor
Summary:
Line 15,19, use CORBA::ULongSeq instead of ULongSeq Line 23, use an enum for the error_code?

Resolution: Disposition: See issues 13949 + 13973 for disposition
Revised Text:
Actions taken:
April 24, 2009: received issue
April 26, 2010: closed issue

Issue 13946: Figure 1 should say IDL3+ instead of Extended IDL3 (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Uncategorized Issue
Severity:
Summary:
Figure 1 should say IDL3+ instead of Extended IDL3

Resolution: Replace Extended IDL3 by IDL3+
Revised Text: Page 5 Change: Extended IDL3 ¨ IDL3+ in Figure 1 Change: IDL3 ¨ IDL3+ in the title of Figure 1
Actions taken:
June 2, 2009: received issue
April 26, 2010: closed issue

Issue 13949: The usage of ULongSeq should be CORBA::ULongSeq (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Clarification
Severity: Minor
Summary:
The usage of ULongSeq should be CORBA::ULongSeq to show that these types are coming from the CORBA namespace

Resolution: Disposition: See issue 13888 for disposition
Revised Text:
Actions taken:
June 8, 2009: received issue
April 26, 2010: closed issue

Issue 13952: this struct uses a StringSeq but the namespace is lacking (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Clarification
Severity: Minor
Summary:
this struct uses a StringSeq but the namespace is lacking, should it be CORBA::StringSeq? struct QueryFilter { string query; StringSeq query_parameters; }; 

Resolution: Disposition: See issue 13890 for disposition
Revised Text:
Actions taken:
June 8, 2009: received issue
April 26, 2010: closed issue

Issue 13953: DDS_Listen is never defined in this spec (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Clarification
Severity: Minor
Summary:
The spec uses DDS_Listen<> on page 38 and 54, but DDS_Listen is never defined in this spec

Resolution: The correct name is DDS_RawListen
Revised Text: Page 38 / line 19 Change: DDS_Listen ¨ DDS_RawListen Page 54 / line 12 Change: DDS_Listen ¨ DDS_RawListen However, further issue resolution (cf. Issue 14214) deprecates that change.
Actions taken:
June 8, 2009: received issue
April 26, 2010: closed issue

Issue 13954: For 3, check UML CCM reference, it says 5formal, is that ok? (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Clarification
Severity: Minor
Summary:
For 3, check UML CCM reference, it says 5formal, is that ok?

Resolution: correct the typo
Revised Text: Page 2 / line 6 Change: 5 ¨ (
Actions taken:
June 9, 2009: received issue
April 26, 2010: closed issue

Issue 13955: Section: 6.1.2: It should be ExtendedPort and MirrorPort, not InversePort (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Clarification
Severity: Minor
Summary:
It should be ExtendedPort and MirrorPort, not InversePort

Resolution: correct the typo
Revised Text: Page 3 / line 23 Change: InversePort ¨ MirrorPort
Actions taken:
June 9, 2009: received issue
April 26, 2010: closed issue

Discussion:


Issue 13956: Section 7.1.2: Layout of figure 2 and 3 can be improved (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Clarification
Severity: Minor
Summary:
Layout of figure 2 and 3 can be improved, not all lines hit the connector, text is not all readable

Resolution: Change the figures
Revised Text: see page 27 of ptc/2009-12-12 for details
Actions taken:
June 9, 2009: received issue
April 26, 2010: closed issue

Issue 13957: Section 7.2.1.2: Line 16 ends with two semi colons instead of 1 (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Clarification
Severity: Minor
Summary:
Line 16 ends with two semi colons instead of 1

Resolution: correct the typo
Revised Text: Page 23;15 / line 16 Discard extra semi-colon However, further issue resolution (cf. Issue 14201) deprecates that change
Actions taken:
June 9, 2009: received issue
April 26, 2010: closed issue

Issue 13958: Section 7.2.3: Line 38-39 starting with "note that events" doesn't read (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Clarification
Severity: Minor
Summary:
Line 38-39 starting with "note that events" doesn't read

Resolution: clarify the text
Revised Text: Page 19 / line 30 Change the whole paragraph from: Note that Events CCM interface is never used in the connector's executor. The reason is that the connector' fragment and the component itself, are only interacting via synchronous calls as they are collocated. The actual interaction semantics between components is carried by connector' fragments themselves. ¨ Note that the Events CCM interface is never used in connectors' executors. The reason is that, as the component and its connector's fragment are collocated, they only interact via synchronous calls (a potential asynchronous nature of the actual interaction between components would be provided by connector's fragments themselves).
Actions taken:
June 9, 2009: received issue
April 26, 2010: closed issue

Issue 13959: Section: 7.2.4.2.1 (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Clarification
Severity: Minor
Summary:
Line 2, remove - from ConnectorPackage-Description Fix type in footer 3, ComponentUsageDescription and ComponentPackage Description (typo in first, space in second)

Resolution: correct the typos
Revised Text: Page 21 / line 29 Change: ConnectorPackage-Description ¨ ConnectorPackageDescription Page 21 / in the footnote Change: ComponentUsageDesription ¨ ComponentUsageDescription Change: ComponentPackage Description ¨ ComponentPackageDescription
Actions taken:
June 9, 2009: received issue
April 26, 2010: closed issue

Issue 13960: Section 7.2.4.4: Line 3-4 doesn't read (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Clarification
Severity: Minor
Summary:
Line 3-4 doesn't read

Resolution: clarify the text
Revised Text: Page 26 / lines 3 Change the whole paragraph: Each fragment of a connector providing an implementation of an extended-port, have to be linked to its dual one, the mirror-port. In some cases, to be configured and linked together, fragment to configure have to query some data from the dual one. Taken into account that, the two fragments can be installed on different nodes, the process of configuration has to be remote. ¨ All fragments of a given connector are in relation and have to be configured consistently. In some cases, this could require them to share configuration information that cannot be set statically. This dynamic initialization, if required, is connector implementation-specific and thus not specified. However it has to be completed by the end of the 'configuration_complete' phase of CCM deployment.
Actions taken:
June 9, 2009: received issue
April 26, 2010: closed issue

Issue 13961: Section 7.2.4.5: this seems to lack a figure, line 7 ends with "extrat below:" but nothing is below line 7 (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Clarification
Severity: Minor
Summary:
this seems to lack a figure, line 7 ends with "extrat below:" but nothing is below line 7

Resolution: clarify the test
Revised Text: Page 27/ lines 6 Change the whole paragraph: In addition to the ExtendedPortDef and ExtendedPortType, the concept of connector is introduced, represented in the meta-model extract below: ¨ Finally, ConnectorDef is a new construct of the Component meta-model allowing modeling of connectors. All those extensions are represented in figure 11.
Actions taken:
June 9, 2009: received issue
April 26, 2010: closed issue

Issue 13962: Section 8.2.2.1.1: what about making is_lifecycle_checked a regular attribute, so not read only? (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Clarification
Severity: Minor
Summary:
what about making is_lifecycle_checked a regular attribute, so not read only?

Resolution:
Revised Text:
Actions taken:
June 9, 2009: received issue

Discussion:
As stated in the spec, checking the lifecycle is quite an heavy process as it may
imply to create a reader for that purpose. In addition, whether this behavior has
to be enforced is unlikely to change over the component's life. For those reasons,
the behavior has to be set at init time and in not changeable after that.
Disposition: Closed, no change


Issue 13963: why not use an exception instead of a return value for the methods in Getter<>? (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Clarification
Severity: Minor
Summary:
why not use an exception instead of a return value for the methods in Getter<>? On line 28, it should say "return as result" when decided to keep bool. For the time_out, what about making this an argument of all methods, is setting this at this level at the correct level?

Resolution: Proposed solution 1. keep the boolean as result and correct the text line 28 2. let the time_out as an attribute as purpose is to simplify as much as possible the API . Reducing the number of parameters goes in that direction. We noticed in our systems that time-out value was unlikely to change from one call to another, making it a recurring value is therefore sensible;
Revised Text: Page 36 / line 20 Change the sentence: They all receive as result a boolean that indicates ¨ They all return a boolean as result indicating
Actions taken:
June 9, 2009: received issue
April 26, 2010: closed issue

Issue 13964: Section: 8.2.2.1.2 font (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Clarification
Severity: Minor
Summary:
The font of line 11,12,13 should show the name of the methods in bold On line 29, On_data should start with lower capital 

Resolution: correct the typos
Revised Text: Page 34 / line 11,12,13 Change the font of the name of the methods to bold . 11: on_creation . 12: on_update . 13: on_deletion Page 34 / line 29 Change: On_data ¨ on_data However, further issue resolution (cf. Issue 14214) deprecates that change
Actions taken:
June 9, 2009: received issue
April 26, 2010: closed issue

Issue 13965: Section 8.3.1: On line 19, after DDS_Base it should be a { (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Clarification
Severity: Minor
Summary:
On line 19, after DDS_Base it should be a {

Resolution: correct the typo
Revised Text: Page 41 / line 2 Change: [ ¨ {
Actions taken:
June 9, 2009: received issue
April 26, 2010: closed issue

Issue 13966: Section 8.4.2: On line 1, the annex numbers are lacking (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Clarification
Severity: Minor
Summary:
On line 1, the annex numbers are lacking 

Resolution: Insert correctly the cross-references to the annexes.
Revised Text: Page 42 / line 24 ¨ default values QoS policies, as specified in [DDS], are in Annex C: and Annex D: respectively.
Actions taken:
June 9, 2009: received issue
April 26, 2010: closed issue

Issue 13967: Section 8.4.2: For Table 12, Boolean, font of BOOLEAN_TRUE is not ok (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Clarification
Severity: Minor
Summary:
For Table 12, Boolean, font of BOOLEAN_TRUE is not ok 

Resolution: correct the typo
Revised Text: Page 43 / in table 4 Change the character style of the last character of BOOLEAN_TRUE to the proper one (named “keyword”, which results in Arial+bold+9pt)
Actions taken:
June 9, 2009: received issue
April 26, 2010: closed issue

Issue 13968: Section 8.2.2.2.5: On line 5 DURATION_INFINITE_NSEC should be used (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Clarification
Severity: Minor
Summary:
On line 5 DURATION_INFINITE_NSEC should be used 

Resolution: correct the typo
Revised Text: Page 45 / line 40 Change: DURATION_INFINITE_SEC ¨ DURATION_INFINITE_NSEC
Actions taken:
June 9, 2009: received issue
April 26, 2010: closed issue

Issue 13969: Section 9: Line 4 should start with a capital (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Clarification
Severity: Minor
Summary:
Line 4 should start with a capital 

Resolution: Disposition: See issue 13896 for disposition
Revised Text:
Actions taken:
June 9, 2009: received issue
April 26, 2010: closed issue

Issue 13970: Section 9.2.1.1: line 39 should be indented (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Clarification
Severity: Minor
Summary:
line 39 should be indented 

Resolution: correct the typo
Revised Text: Page 49 / line 39 Insert a TAB before raises Page 58 / line 38 Insert a TAB before raises
Actions taken:
June 9, 2009: received issue
April 26, 2010: closed issue

Issue 13971: Section 9.2.2: Line 13 says DCPOS, shouldn't this be DCPS? (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Clarification
Severity: Minor
Summary:
Line 13 says DCPOS, shouldn't this be DCPS?

Resolution: correct the typo
Revised Text: Page 50 / line 13 Change DCPOS ¨ DCPS
Actions taken:
June 9, 2009: received issue
April 26, 2010: closed issue

Issue 13972: Section 9.2.2: Line 16 doesn't read, line 33 should also be clear (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Clarification
Severity: Minor
Summary:
Line 16 doesn't read, line 33 should also be clear, "is likely" should be specified more strict 

Resolution: clarify the text
Revised Text: Page 51 / line 16 Change the sentence: A DLRL connector is also essentially variable in its composition for it contains as many mirror ports as there are different object models to share the related topics. It... ¨ As a DLRL connector aims at gathering as many mirror ports as there are different object models in the system sharing the related topics, its composition is essentially variable and application-dependent and a unique standard DLRL connector cannot be defined. A DLRL connector... Page 51 / line 33 Remove likely and add at the end of the sentence: in case there is a need to specify different QoS values for different topics.
Actions taken:
June 9, 2009: received issue
April 26, 2010: closed issue

Issue 13973: Shouldnh't InternalError use DDS::ReturnCode_t (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Clarification
Severity: Minor
Summary:
Shouldnh't InternalError use DDS::ReturnCode_t 

Resolution: apply change
Revised Text: Page 52 / line 6 Change: unsigned long ¨ DDS::ReturnCode_t
Actions taken:
June 9, 2009: received issue
April 26, 2010: closed issue

Issue 13974: Annex D: Font of line 20 not ok (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Clarification
Severity: Minor
Summary:
Font of line 20 not ok 

Resolution: correct the typo
Revised Text: Line 67 / line 13 Change the style of the line to the proper one(named “IDL Last”, which results in left-aligned; 0.5cm from the page margin to the left side of the paragraph; 0cm space before and after the paragraph; font Arial+bold+9pt)
Actions taken:
June 9, 2009: received issue
April 26, 2010: closed issue

Issue 14017: Section: 8.2.2.1.4 and annex A missing parameter name (dds4ccm-ftf)

Click
here for this issue's archive.
Source: THALES (Ms. Virginie Watine, virginie.watine(at)thalesgroup.com)
Nature: Clarification
Severity: Minor
Summary:
Last parameter of ConnectorStatusListener:: on_unexpected_status ( in DDS::Entity the_entity, in DDS::StatusKind); should be given a parameter name 

Resolution: correct the error
Revised Text: Page 39 / line 18 Page 59 / line 19 Add status_kind as parameter name, new definition is on_unexpected_status ( in DDS::Entity the_entity, in DDS::StatusKind status_kind); Disposition: Resolved
Actions taken:
June 19, 2009: received issue
April 26, 2010: closed issue

Issue 14020: The spec uses $ as string replacement for IDL3+ (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Clarification
Severity: Minor
Summary:
The spec uses $ as string replacement for IDL3+. We find this not real and doubt whether a new string substitution should be added to the world. We would propose to use a different form, based on 'variable substitution' as found in unix shells, perl, ruby Two other options where we prefer the first one - use ${var} or #{var} or %var%; this is much clearer and matches already supported substitution options The new way would be: interface EventsPusher <typename T> { typedef sequence<T> #{T}Seq; void push (in #{T}Seq events); void push_#{T} (in T event); }; The other option is to use the C preprocessor way X##Y -> XY It then becomes interface EventsPusher <typename T> { typedef sequence<T> T##Seq; void push (in T##Seq events); void push_##T (in T event); }; 

Resolution: Disposition: See issue 13884 for disposition
Revised Text:
Actions taken:
June 22, 2009: received issue
April 26, 2010: closed issue

Issue 14024: keywords that can't be used in other IDL anymore (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Clarification
Severity: Minor
Summary:
The spec adds typename, primitive, port, mirrorport, porttype, and connector as keywords meaning that they can't be used anymore in other IDL. Below a list of files for TAO that have port, all from CORBA specs and for the keyword port. * orbsvcs/orbsvcs/SSLIOP.idl: * orbsvcs/orbsvcs/HTIOP.idl: * orbsvcs/orbsvcs/CSIIOP.idl: * tao/EndpointPolicy/IIOPEndpointValue.pidl: * tao/Strategies/sciop_endpoints.pidl: * tao/IIOP_Endpoints.pidl: * tao/IIOP.pidl: Because of this we need to use the _ prefix mechanism as specified in CORBA 7.2.3.1. To our idea the DDS4CCM spec should clearly specify all new keywords together and refer to the section in the corba spec. At the end also the CORBA spec has to be updated to list the new keywords 

Resolution: Gather all the new keywords in a table
Revised Text: Page 18 / line 21 Insert new section 7.3.6: 7.3.6 Summary of New IDL Keywords The following table gathers all new keywords introduced by this specification. Table 1: New IDL Keywords alias connector mirrorport port porttype typename As all IDL keywords, they are now reserved and thus may not be used otherwise, unless escaped with a leading underscore.
Actions taken:
June 23, 2009: received issue
April 26, 2010: closed issue

Issue 14025: table 2 on page 16 (adobe number) on line 1 should have the same fonts as table 1 (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Clarification
Severity: Minor
Summary:
table 2 on page 16 (adobe number) on line 1 should have the same fonts as table 1

Resolution: correct the typo
Revised Text: Page 16;8 / table 2 Interface, typename | struct | eventtype | primitive | fixed | sequence | interface | valuetype ¨ in bold interface_type ¨ in italics Page 8 / table 3 Porttype ¨ port_type (2 times) However, further issue resolution (cf. Issue 14201) deprecates that change
Actions taken:
June 23, 2009: received issue
April 26, 2010: closed issue

Issue 14028: The spec doesn't say anything about forward declared IDL3+ interfaces (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Clarification
Severity: Minor
Summary:
The spec doesn't say anything about forward declared IDL3+ interfaces. If it is not allowed, it should be mentioned. If it is allowed, the spec should mention it and describe it like section 7.8.4 of the regular CORBA spec for regular interfaces

Resolution: Disposition: See issue 14201 for disposition
Revised Text:
Actions taken:
June 24, 2009: received issue
April 26, 2010: closed issue

Issue 14037: DDS4LwCCM - template interface IDL grammar (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Vanderbilt University (Mr. Jeffrey Parsons, j.parsons(at)vanderbilt.edu)
Nature: Uncategorized Issue
Severity:
Summary:
On page 11, line10, it appears that the (optional) inheritance spec comes after the interface body. This is probably not intended.

Resolution: Disposition: See issue 14201 for disposition
Revised Text:
Actions taken:
June 30, 2009: received issue
April 26, 2010: closed issue

Issue 14038: DDS4LwCCM - template interface body (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Vanderbilt University (Mr. Jeffrey Parsons, j.parsons(at)vanderbilt.edu)
Nature: Uncategorized Issue
Severity:
Summary:
On page 11,  line 10, the body of a template interface is given as identical to that of a non-template interface. However, if the concatenation symbol $ can be used in a template interface member, how can this be? The $ symbol can't be part of a legal identifier, so it will have to be a token in its own right. This changes the grammar at some level, whether it be in the definition of an individual export, such as an operation, or in the definition of an identifier itself.

Resolution: Disposition: See issue 14201 for disposition
Revised Text:
Actions taken:
June 30, 2009: received issue
April 26, 2010: closed issue

Issue 14039: DDS4LwCCM - forward declared template interface? (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Vanderbilt University (Mr. Jeffrey Parsons, j.parsons(at)vanderbilt.edu)
Nature: Uncategorized Issue
Severity:
Summary:
Nothing in the new IDL3+ production rules suggests that a template interface can be forward declared. This restriction makes sense if a template interface may be used only in an extended port definition (submitted as a separate issue), but it would be helpful to state the restriction explicitly in the document.

Resolution: Disposition: See issue 14201 for disposition
Revised Text:
Actions taken:
June 30, 2009: received issue
April 26, 2010: closed issue

Discussion:


Issue 14040: DDS4LwCCM - standalone template interfaces? (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Vanderbilt University (Mr. Jeffrey Parsons, j.parsons(at)vanderbilt.edu)
Nature: Uncategorized Issue
Severity:
Summary:
Is it illegal to use a template interface to define an 'interface type' which may then be specialized for simple CORBA object requests? My guess would be that a template interface is intended for use only in an extended port, but it would be helpful to state it explicitly in the document.

Resolution: Disposition: See issue 14201 for disposition
Revised Text:
Actions taken:
June 30, 2009: received issue
April 26, 2010: closed issue

Discussion:


Issue 14046: DDS4LwCCM - concatentation symbol usage (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Vanderbilt University (Mr. Jeffrey Parsons, j.parsons(at)vanderbilt.edu)
Nature: Uncategorized Issue
Severity:
Summary:
On page 7, lines 24-26, there are examples of $ usage.
These all apply to the parameter value following the
type classifier 'typename'. Will it also be legal to
use it with parameter values following other type
classifiers?

Resolution: Disposition: See issue 13884 for disposition
Revised Text:
Actions taken:
July 1, 2009: received issue
April 26, 2010: closed issue

Issue 14057: the spec should be more clear for which constructs the $ can be used (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Clarification
Severity: Minor
Summary:
the spec should be more clear for which constructs the $ can be used. The rules for the regular IDL should be extended. Is this possible for attributes, exceptions, etc?

Resolution: Disposition: See issue 13884 for disposition
Revised Text:
Actions taken:
July 7, 2009: received issue
April 26, 2010: closed issue

Issue 14060: Section 8.4.4 talks about threading, but this section is really under specified (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Clarification
Severity: Minor
Summary:
Section 8.4.4 talks about threading, but this section is really under specified. It should be much clearer how threading works and what guarantees are given. 

Resolution: No time to tackle it completely - deferred
Revised Text:
Actions taken:
July 8, 2009: received issue

Discussion:
No time to tackle it completely. In any case, will not change the already defined
interfaces.
Disposition: Deferred


Issue 14080: propose to read the AMI chapter that was part of the alpha spec (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Clarification
Severity: Minor
Summary:
We propose to read the AMI chapter that was part of the alpha spec. It seems useful for ccm to also standardize the ami ports. the chapter will need some more work and fine tuning

Resolution:
Revised Text:
Actions taken:
July 16, 2009: received issue
April 26, 2010: closed issue

Discussion:
As its title says, this specification is aiming at standardizing ports for DDS and
proposes a general framework to add ports (GIS – Generic Interaction Support),
then uses it for DDS. Standardizing AMI ports is out of RFP scope.
This example was provided in the submission only as a rationale for the GIS. It
was never intended to be normative.
Disposition: Closed, no change


Issue 14110: SampleInfo (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Clarification
Severity: Minor
Summary:
The CCM4DDS spec defines SampleInfo in its own IDL. It describes that this is a simplified version of DDS::SampleInfo. This new struct has the following disadvantages to our idea: - the struct that gets received from DDS itself has to be converted to the CCM4DDS struct taking performance - not all DDS information is available anymore for the component We propose to use DDS::SampleInfo throughout the spec instead of introducing a simplified shadow struct 

Resolution:
Revised Text:
Actions taken:
July 26, 2009: received issue
April 26, 2010: closed issue

Discussion:
The spec intended to ease use of DDS. Many DDS users feedback show that
they can be easily lost with some SampleInfo information. SampleInfo is the pure
view on the internal state of the data. ReadInfo attempts to translate it a more
user-centric view. Note that translation SampleInfos in ReadInfos is not only
copying a few fields from the firsts to the seconds: it requires also combining
them.
Disposition: Closed, no change


Issue 14117: ListenerControl (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Clarification
Severity: Minor
Summary:
The DDS4CCM spec defines the interface ListenerControl. This is used for the various ports of 8.2.2.2. Some ports (like DDS_RawListen) do specify multiple listen ports, listener and status. There is now just one flag to enable/disable them both. maybe I am just interested in the status and not listener. We propose to move the attribute enabled to each listen interface and remove the ListenerControl interface from the spec. Then each listener can be enabled/disabled independently of each other

Resolution: The data listening extended ports are defined based on the fact that very often (not to say all times) an application component which wants to be notified of modifications of data (listener mode) needs to start by an initialization phase where he gets all the existing data (and not receive thousands of notifications to get the data that were existing before its creation). It is why they combine a Data Listener basic port with a Reader one. Before that init phase is completed, the component cannot treat well incoming notifications. This is why that DataListenerControl port is also provided to turn on/off the data 'tap'. In return, Status Listeners are slightly different in nature: they are there to allow the component receive errors. The component has no choice with that and should be in position to get errors even during the init phase! It is the reason why those are always enabled (enabled at creation and no means / needs to enable them explicitly). The recasting of DDS listen ports has added the necessity for two enabled modes (ONE_BY_ONE and MANY_BY_MANY). In addition, the StateListener is given a specific control interface allowing in addition to control how filtering in and out is reflected in the notifications.
Revised Text: Page 37/ line 26 Replace the whole section 8.2.2.1.3 ¨ 8.2.2.1.3 Data Listener Control The following interface allows controlling the data listener attached to the port to which they are attached. There are two data listener controls: . DataListenerControl which embed the basic controlling behavior for any kind of data listeners; . StateListenerControl which is a specialization of the former which add extra feature for a StateListener. Interface DataListenerControl enum ListenerMode { NOT_ENABLED, ONE_BY_ONE, MANY_BY_MANY }; local interface DataListenerControl { attribute ListenerMode mode; // default NOT_ENABLED attribute DataNumber_t max_delivered_data; // default 0 (no limit) }; The two attributes of a DataListenerControl allows controlling the associated data listener as follows: . If the mode is NOT_ENABLED, the associated listener's operations are not triggered. This is the default setting as it allows the component to perform its initialization phase (likely using the associated Reader) before receiving any data notifications. . If the mode is ONE_BY_ONE, the unitary operations (i.e. on_one_data or on_one_update) of the associated listener are triggered . If the mode is MANY_BY_MANY, the grouped operations (i.e. on_many_data or on_many_updates) of the associated listener are triggered. These operations are called with as many relevant samples as available, possibly limited by the value of max_delivered_data. The default value for that attribute is UNLIMITED (0). StateListenerControl local interface StateListenerControl : DataListenerControl { attribute boolean is_filter_interpreted; // default FALSE }; This listener control, specific to control a StateListener, extends the former DataListenerControl with the attribute is_filter_interpreted. • If TRUE, the associated listener should consider an instance entering in (resp. going out) the filter (if any) of the related Reader, as an instance creation (resp. deletion) and thus trigger the operation on_creation (resp. on_deletion). • If FALSE, those events should be considered as normal instance updates and thus lead to triggering on_one_update or on_many_updates, depending on the mode. Note: DDS is not currently reporting that an instance has been filtered out. This behavior has been thus added for provision. A compliant implementation of this specification is not required to support it as long as DDS does not report when instances are filtered out.
Actions taken:
July 28, 2009: received issue
April 26, 2010: closed issue

Issue 14118: Section 8.2.2.1.3: ListenerControl attribute (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Clarification
Severity: Minor
Summary:
The ListenerControl defines the attribute enabled. When checking the DDS spec I see that DDS only has the feature to enable an entity, not disable it. Shouldn't this attribute not be defined as: void enable (); as in the dds spec 7.1.2.1.1.7 enable Also DDS says an entity is enabled by default, the DDS4CCM says false in 8.2.2.1.3 What is the background of this, shouldn't DDS4CCM say it is enabled by default?

Resolution: Disposition: See issue 14117 for disposition
Revised Text:
Actions taken:
July 28, 2009: received issue
April 26, 2010: closed issue

Issue 14119: What are the semantics of the 'primitive' keyword? Letting it match any primitive type seems too vague (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Vanderbilt University (Mr. Jeffrey Parsons, j.parsons(at)vanderbilt.edu)
Nature: Clarification
Severity: Significant
Summary:
What are the semantics of the 'primitive' keyword? Letting it match any primitive type seems too vague

Resolution: Disposition: See issue 14201 for disposition
Revised Text:
Actions taken:
July 28, 2009: received issue
April 26, 2010: closed issue

Issue 14120: The non-terminal 'extended_port_decl' appears as both a component export and a connector export. (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Vanderbilt University (Mr. Jeffrey Parsons, j.parsons(at)vanderbilt.edu)
Nature: Clarification
Severity: Significant
Summary:
The non-terminal 'extended_port_decl' appears as both a component export and a connector export. In particular, the 'generic_template_spec' non-terminal is problematic here. Since a component cannot be parameterized, as a component export, it must be the scoped name of a previously defined IDL type. As a connector export, however, it would appear to be legal IDL in this form, but also as a simple identifier matching one of the connector's template parameters. Are both constructs legal as connector exports? If so, they can't both be covered by 'generic_template_spec'.

Resolution: Disposition: See issue 14201 for disposition
Revised Text:
Actions taken:
July 28, 2009: received issue
April 26, 2010: closed issue

Issue 14121: On line 24, the term '<connector_export>' should be '<connector_export>+'. (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Vanderbilt University (Mr. Jeffrey Parsons, j.parsons(at)vanderbilt.edu)
Nature: Clarification
Severity: Minor
Summary:
On line 24, the term '<connector_export>' should be '<connector_export>+'.

Resolution: Disposition: See issue 14201 for disposition
Revised Text:
Actions taken:
July 28, 2009: received issue
April 26, 2010: closed issue

Issue 14122: Lines 32-36 imply that value declarations and type declarations may be parameterized (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Vanderbilt University (Mr. Jeffrey Parsons, j.parsons(at)vanderbilt.edu)
Nature: Clarification
Severity: Minor
Summary:
Lines 32-36 imply that value declarations and type declarations may be parameterized the same as interface declarations. By extension, lines 14 & 15 imply that value declarations and type declaration may also be used to implement 'provides' and 'uses' ports.

Resolution: Disposition: See issue 14201 for disposition
Revised Text:
Actions taken:
July 28, 2009: received issue
April 26, 2010: closed issue

Issue 14168: We propose to change the tags to <dds> and </dds> (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Clarification
Severity: Minor
Summary:
On line 11 it says: The root tag of the configuration file must be <dds_ccm> and end with </dds_ccm>. We propose to change the tags to <dds> and </dds>. The XML QoS is coming from this spec but shouldn't be tied to it, it can be used without ccm at all.

Resolution: appply change
Revised Text: Page 42 / line 2 Replace: dds_ccm ¨ dds (2 times) Page 66 / line 7 Page 69 / line 12 Replace: dds_ccm ¨ dds
Actions taken:
July 31, 2009: received issue
April 26, 2010: closed issue'

Issue 14174: One line 24 the spec uses BadParameter, but it doesn't describe when this exception has to be thrown. (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Clarification
Severity: Minor
Summary:
One line 24 the spec uses BadParameter, but it doesn't describe when this exception has to be thrown. On line 8 a void query is mentioned, but what is a void query? A string of size 0? 

Resolution: Clarify that the test of validity for query and query parameters is to be done by DDS.
Revised Text: Page 35 / line 2 Replace the last sentence: A void query means no query ¨ An empty string query means no query. This query and its related parameters are for DDS use and must comply with DDS rules (c.f. DDS specification for more details). Any attempt to set the attribute with values that are not accepted by DDS will result in a InternalError exception. Remove the BadParameter exception in the IDL description.
Actions taken:
August 3, 2009: received issue
April 26, 2010: closed issue

Issue 14175: if no key is specified the an_instance is supposed to be empty? (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Clarification
Severity: Minor
Summary:
On line 34 and 36 the spec mentions that the parameter an_instance has to be filled with the key value, but what if the topic doesn't have a key? I think the spec should mention this, if no key is specified the an_instance is supposed to be empty?

Resolution: clarify the text
Revised Text: Page 35 / line 40 Add the following sentence at the end of the line: In case of a keyless topic, the last value in the topic will be returned as DDS considers all values in such a topic as samples of one unique instance. Page 36 / line 2 Add the following sentence at the end of the line: In case of a keyless topic, all values will be returned as DDS considers all values in such a topic as samples of one unique instance.
Actions taken:
August 3, 2009: received issue
April 26, 2010: closed issue

Issue 14176: line 17 and 21 the exception NonExistent: under which conditions has this exception to be thrown? (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Clarification
Severity: Minor
Summary:
On line 17 and 21 the exception NonExistent is mentioned but this chapter doesn't describe under which conditions this exception has to be thrown. What should the read_one and read_one_history do when there are no samples? Throw an exception? what is an_istance then with read_one?

Resolution: As part of the DDS-DCPS ports reorganization, improve the description of the Reader operations has been improved
Revised Text: Page 35 / line 33 Replace the description of the targeted operations (read_one_last and read_one_all) ¨ . read_one_last returns the last sample of a given instanceThe targeted instance is designated by the passed instance handle (instance_handle) if not DDS::HANDLE_NIL or by the key value in the passed data (datum) otherwise. If a valid handle is passed, it must be in accordance with the key value of the passed data otherwise an InternalError exception is raised with the returned DDS error code. More generally, any DDS error when reading the data will be reported by an InternalError exception. In case the instance does not exist (no data are registered for that instance in DDS), the exception NonExistent is raised. In case of a keyless topic, the last value in the topic will be returned as DDS considers all values in such a topic as samples of one unique instance. . read_one_all returns all the samples of a given instance The targeted instance is designated by the passed instance handle (instance_handle) if not DDS::HANDLE_NIL or by the key value in the passed data (datum) otherwise. If a valid handle is passed, it must be in accordance with the key value of the passed data otherwise an InternalError exception is raised with the returned DDS error code. More generally, any DDS error when reading the data will be reported by an InternalError exception. In case the instance does not exist (no data are registered for that instance in DDS), the exception NonExistent is raised. In case of a keyless topic, all values will be returned as DDS considers all values in such a topic as samples of one unique instance
Actions taken:
August 3, 2009: received issue
April 26, 2010: closed issue

Discussion:


Issue 14177: For timestamp, is this the DDS source_timestamp? If yes, rename the member to source_timestamp (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Clarification
Severity: Minor
Summary:
For timestamp, is this the DDS source_timestamp? If yes, rename the member to source_timestamp

Resolution: change the attribute
Revised Text: Page 33 / line 29, 38, Page 52 / line 34 Replace: timestamp ¨ source_timestamp
Actions taken:
August 3, 2009: received issue
April 26, 2010: closed issue

Issue 14178: For line 44 and 20 I would recommend to have update/create/delete as bold font (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Clarification
Severity: Minor
Summary:
For line 44 and 20 I would recommend to have update/create/delete as bold font, this refers to method names. Maybe split it in 2 sentences. For example: If is_lifecycle_checked is TRUE, then create checks that the instances are not already existing and update and delete that the instances are existing; AlreadyCreated and NonExistent exceptions may be raised. Change If is_lifecycle_checked is TRUE, then create checks that the instances are not already existing. Update and delete check that the instances are existing. AlreadyCreated and NonExistent exceptions may be raised. On page 31/39 line3, it says: The write or dispose orders are stopped. Write/dispose is DDS terminology, use: The update and delete calls are stopped ... On pase 31/39 line 3, say what happens with the create call? Does it stop on the first error? 

Resolution: clarify the text
Revised Text: Page 30 / line 2 Replace: the write orders are embedded between DDS begin_coherent_updates and a end_coherent_updates ¨ the write DDS orders are placed between a DDS begin_coherent_updates and an end_coherent_updates Page 30 / line 4 Change: write orders ¨ write DDS orders Page 30 / line 20 Change the font for create, update and delete to bold Page 30 / lines 45,46 Change the font for create, update and delete to bold Page 30 / line 47: Replace: attempt to write or dispose ¨ attempt to order DDS to write or dispose Page 31 / line 2 Replace: the write orders are embedded between DDS begin_coherent_updates and a end_coherent_updates ¨ the write or dispose DDS orders are placed between a DDS begin_coherent_updates and an end_coherent_updates Page 31 / line 4 Replace: write or dispose orders ¨ write or dispose DDS orders However, further issue resolution (cf. Issue 14214) deprecates some of those changes.
Actions taken:
August 3, 2009: received issue
April 26, 2010: closed issue

Issue 14179: Line 14, change inees to fields (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Clarification
Severity: Minor
Summary:
Line 14, change inees to fields

Resolution: correct typo
Revised Text: Page 37 / line 16 Change: inees ¨ ones
Actions taken:
August 3, 2009: received issue
April 26, 2010: closed issue

Issue 14180: MultiWriter (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Clarification
Severity: Minor
Summary:
For MultiWriter we have: unsigned long write(in T$Seq instances) // returns nb of written raises (InternalError); But, when write fails we get an exception. So, when it success all data has been written and then the return value is not needed. I would recommend to make this method void. In case it succeeds all instances are written, if it fails, the exception will tell you the number failed, so it the number written is one less then the number failed

Resolution: Disposition: See issue 14182 for disposition
Revised Text:
Actions taken:
August 4, 2009: received issue
April 26, 2010: closed issue

Issue 14181: or MultiUpdater the return value of unsigned long doesn't make sense (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Clarification
Severity: Minor
Summary:
Also for MultiUpdater the return value of unsigned long doesn't make sense, if the methods work, the number of elements written is all, if it fails, the exception will tell you the number failed

Resolution: Disposition: See issue 14182 for disposition
Revised Text:
Actions taken:
August 4, 2009: received issue
April 26, 2010: closed issue

Issue 14182: Return type of the MultiWriter/MultiUpdater? (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Uncategorized Issue
Severity:
Summary:
Why do the MultWriter/MultiUpdater methods have a return value of unsigned
long and not void? When the method succeeds all elements are written, if it
fails, the return value itself is worthless because we get an exception.
When it has succeeded the number of instances written is the same as the
number of instances passed, or not?

Resolution: Disposition: See issue 14214 for disposition
Revised Text:
Actions taken:
August 4, 2009: received issue
April 26, 2010: closed issue

Issue 14201: Destination module for implied template interfaces (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Vanderbilt University (Mr. William Otte, wotte(at)dre.vanderbilt.edu)
Nature: Uncategorized Issue
Severity:
Summary:
Suppose we have this:


========
foo.idl:
module Foo
{
    interface Foo_Intf < typename T >
    {
    };
};


=========
bar.idl:
#include "foo.idl"
module Bar
{
    porttype Bar_Port <typename T>
    {
        uses Foo_Intf<T> foo_port;
    };
};


=========
baz.idl:
#include "bar.idl"
module Baz
{
    struct Baz_Struct
    {
    };
};


=========
foobarbaz.idl:
#include "baz.idl"
module FooBarBaz
{
    connector FooBarBaz_Connector
    {
        mirrorport Bar_Port < Baz::Baz_Struct > foobarbaz_port;
    };
};


=========


In which module(s) are the implicit interfaces for Bar_Port and  
Foo_Intf (with respect to their parameterization with Baz_Struct)  
assumed to be declared?


Resolution: To give names to the instantiated interfaces, the initial version of the specification was proposing a naming convention which was far from covering all the cases as shown by this issue. In addition, this strategy was not in line with the one selected by IDL to get rid of anonymous types resulting from instantiation of existing templates (such as sequences). IDL now requires an explicit instantiation with a name allocated by the developer. It has thus been decided to remove that naming convention and to rely on explicit instantiations. Ina addition, a typical use case for parametrized extended ports and connectors is as follows: a parametrized interface is used in a similarly parametrized port type, which itself is used in a similarly parametrized connector. Eventually, when instantiated, it is mandatory that the concrete interface in support of the extended port attached to a component be exactly the same type as the one if support to the corresponding mirror port of the connector (otherwise connections will not be feasible), when in fact two explicit interface instantiations would result in two different types (even if identical). Therefore it is mandatory that the interface, the port type and the connector be in the same template scope, to allow a unique interface instantiation be shared by the instantiated port type and connector. This lead to proposing template support for the only grouping structure of IDL, namely the module. Adding template modules is on the one hand less intrusive in the existing IDL grammar and on the other hand far more versatile than the initial proposed support. As it is needed to support almost all the possible extended ports and connectors and enough for that purpose, it was decided to limit the template support to template modules. Consequently it was needed to recast almost entirely chapter 7, in order to present in one place the template support (while in the initial chapter organization, it was spread over the descriptions of each of the interaction constructs – port types, ports, connectors). The resulting outline is as follows: 7 Generic Interaction Support 7.1 Simple Generic Interaction Support 7.2 Generic Interaction Support with Templates 7.3 IDL3+ Grammar 7.4 Programming Model for Connectors 7.5 Connector Deployment and Configuration taking the opportunity of this recast, the whole grammar description has been rewritten in order to make it closer to the initial IDL grammar.
Revised Text: Section 7.1, 7.2 and 7.3 are totally reorganized and are now as follows (for the correct formatting, refer to the convenience document): Document ***see pages 61 through 77 of ptc/2009-12-12 for details***
Actions taken:
August 23, 2009: received issue
April 26, 2010: closed issue

Issue 14202: Reader::read_all_history (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Uncategorized Issue
Severity:
Summary:
The Reader::read_all_history is documented as:
read_all_history returns all samples of all instances


This could return a lot of data, the reader has no idea how much he will
get. Does this make sense? There is no way the Reader can limit the history
to a certain size as we could do with DDS directly. 

Resolution: Disposition: See issue 14214 for disposition
Revised Text:
Actions taken:
August 4, 2009: received issue
April 26, 2010: closed issue

Issue 14203: QueryFilter (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Uncategorized Issue
Severity:
Summary:
A small question related to QueryFilter. From which namespace is StringSeq
coming? Is this from the DDS namespace or from the CORBA namespace?


Johnny


struct QueryFilter {
        string                  query;
        StringSeq               query_parameters
        };

Resolution: withdrawn by submitter
Revised Text:
Actions taken:
August 4, 2009: received issue
August 26, 2009: withdrawn by submitter

Issue 14204: Typo, 8.3.1 (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Clarification
Severity: Minor
Summary:
8.3.1 has a typo on line 27 (page 37), attributre

Resolution: withdrawn by submitter
Revised Text:
Actions taken:
August 4, 2009: received issue
August 26, 2009: closed issue

Discussion:


Issue 14205: Return value of operations on MultiUpdater/MultiWriter/ (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Uncategorized Issue
Severity:
Summary:
A question, several of the methods on MultiUpdater/MultWriter return an
unsigned long for nb of instances update/written/etc. At the moment the
method succeeds all instances are updated, the caller has passed in the
sequence, so he knows which elements got updated. If it failed, we get an
exception with the index failed (so no return value). It looks that the
return value doesn't add a thing, why not make it void?

Resolution: withdrawn by submitter
Revised Text:
Actions taken:
August 4, 2009: received issue
August 26, 2009: closed issue

Discussion:


Issue 14206: Typo, erroneaous (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Clarification
Severity: Minor
Summary:
There is a typo in the batch 2 document, page 48, line 21: erroneaous

Resolution: correct typo
Revised Text: Page 51 / line 57 Change: erroneaous ¨ erroneous
Actions taken:
August 4, 2009: received issue
April 26, 2010: closed issue

Issue 14207: Typo, betwen (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Uncategorized Issue
Severity: Minor
Summary:
In the spec there is a typo, between instead of betwen


Page 48, line 45. Page 49, line 41


Also page 49, line 18, or instead of od

Resolution: correct typo
Revised Text: Page 53 / line 56 Replace between ¨ between Page 54 / line 36 Change: between ¨ between Page 54 / line 62 Replace od ¨ or
Actions taken:
August 4, 2009: received issue
April 26, 2010: closed issue

Discussion:


Issue 14208: Reader interface (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Uncategorized Issue
Severity:
Summary:
I noticed that all methods on the Reader<typename T> interface have only out
arguments. Some return all samples for all instances, with just out, the
caller can't preallocate a buffer that can be used, the memory has to be
allocated each time again and released when not used. This doesn't really
use the power of DDS to my idea, any ideas on this?

Resolution:
Revised Text:
Actions taken:
August 7, 2009: received issue
April 26, 2010: closed issue

Discussion:
Purpose is to get IDL simple interfaces.
In case performance is really a huge concern, the DDS basic port can be used
Disposition: Closed, no change


Issue 14209: Dds4ccm and includes (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Uncategorized Issue
Severity:
Summary:
I got this questions from one of our users. I think it would be a good thing
to standardize the IDL filenames where the dds ports are defined in to get
interoperability in the user code. What are the ideas of others on this?


Johnny


> Are the headers to include in idl to get dds4ccm capabilities
> standardized? My guess is no. I need to include more than
> components.idl to get definitions. Do we need to raise this with omg?

Resolution: Give the name “ccm_dds.idl” to the idl file.
Revised Text: Page 30 / line 35 Add the following paragraph: This IDL file is named "ccm_dds.idl".
Actions taken:
August 12, 2009: received issue
April 26, 2010: closed issue

Issue 14210: Reader port question (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Uncategorized Issue
Severity:
Summary:
What is the behavior of the methods on the Reader interface when there is no
data? Should the methods throw an exception or return a Boolean (but all
read methods are void)

Resolution: clarify text
Revised Text: Page 34 / lines 35, 46 In the description of the operations Reader::read_one_last and read_one_all, add the following sentence: In case the instance does not exist (no data are registered for that instance in DDS), the exception NonExistent is raised
Actions taken:
August 13, 2009: received issue
April 26, 2010: closed issue

Issue 14211: non-keyed datatypes (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Uncategorized Issue
Severity:
Summary:
When I look at the reader I get the impression this interface is designed
with keyed data types in mind. How would for example read_one work when
there is no key defined? What is the value that then should be passed in as
instance?

Resolution: Disposition: See issue 14176 for disposition
Revised Text:
Actions taken:
August 13, 2009: received issue
April 26, 2010: closed issue

Issue 14212: NonExisting::indexes with Reader/Getter/Writer (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Uncategorized Issue
Severity:
Summary:
With the Reader/Getter/Writer we always handle one instance. When we can't
find that instance, should NonExisting::indexes then just be a sequence that
is empty, or with one index in it, 0?

Resolution: Clarify that in this case, the sequence should contain the only index 0
Revised Text: Page 33 / line 2 Add the following paragraph: Note: In case of a single operation (create_one, update_one or delete_one) failing on the life cycle check, the sequence parameter of the exception (AlreadyExisting or NonExistent) will contain 0.
Actions taken:
August 13, 2009: received issue
April 26, 2010: closed issue

Issue 14213: Sequence typedef leads to multiple sequences (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Uncategorized Issue
Severity:
Summary:
Several of the DDS ports have the following typedef:
typedef sequence<T> T$Seq;


This leads to an unique sequence type for each DDS interface (MultiWriter,
MultiUpdater, Reader, Getter, MultiListener). This leads to 5 times
typecodes, footprint, but also the sequences are really from a different
type in the programming language.  A sequence returned from a Reader, just
can't passed directly into a writer, it are different sequences.


I think we do want to have the same sequence to be used, the one related to
T and this then has to be in the same namespace of T (the topic). 


If we for example have 
struct GPS {
  long x;
  long y;
}


We want to get sequence<GPS> GPSSeq in the global namespace.


Not ::CCM_DDS::GPS_reader::GPSSeq, ::CCM_DDS::GPS_getter::GPSSeq, etc.


I think we should remove the typedef of the interfaces and add it as a
template argument, so that for example we get a reader below. 


interface Reader <typename T, typename TSeq> {
        void read_all (out TSeq instances, out ReadInfoSeq infos)
                raises (InternalError);
        void read_all_history (out TSeq instances, out ReadInfoSeq infos)
                raises (InternalError);
        void read_one (inout T an_instance, out ReadInfo info)
                raises (NonExistent,
                        InternalError);
        void read_one_history (in T an_instance, 
                               out TSeq instances, out ReadInfoSeq infos)
                raises (NonExistent,
                        InternalError);
        attribute QueryFilter filter
                setraises (BadParameter);
}


This would mean that the user of the interface/port has to instantiate it
with the basic type and the sequence type, but that seems the only way to
get only one sequence definition used between all the ports, corba, and dds
itself. The seqeunce just also has to be in the same namespace as the
original type T, we just can't do that with a typedef in an interface that
uses the sequence.


Resolution: The whole template support has been revisited. According to that new support all parametrized constructs are now grouped in a module. The CCM_DDS::Typed module is parameterized with T and Tseq – sequence <T>). Making the second parameter of type sequence<T> allows to check at compile time that the type of the second parameter is actually sequence of the first one.
Revised Text: Page 29 / line 6 Change the paragraph ¨ DDS-DCPS ports and connectors will be grouped in a module, itself parameterized by the data type and a sequence type of that data type. . Grouping the definitions for port types and connectors in the same module allows that they share the same concrete interface when eventually instantiated. . Passing that second parameter may seem redundant but it is the only way to allow sharing the sequence definition with the rest of the application10. To avoid useless duplications when instantiated, this template module will only contain the constructs that depend on the data-type. It will be included in a more general module that will also contain all the constructs that do not depend on the data-type. 10 Otherwise, the sequence created by this definition would be a type different (even if actually identical) from the one used by the application (created by the application or by DDS), which would lead to continual copies between one and the other. Page 30 / line 23 Add the following text: All those constructs are included in the Typed template sub-module of the CCM_DDS module, as follows: module CCM_DDS { // Non-typed definitions ... module Typed <typename T, sequence<T> TSeq> { // Typed definitions c }; }; In the following sections are thus listed extracts from the template module CCM_DDS::Typed<typename T, sequence<T> Tseq>.
Actions taken:
August 14, 2009: received issue
April 26, 2010: closed issue

Issue 14214: Do we need the Multi* interfaces/ports? (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Uncategorized Issue
Severity:
Summary:
I have been thinking of how I could use the Multi* interfaces/ports. I can
imagine that a component developer first starts to use the basic ports and
when he is more concerned with efficiency/performance he wants to use the
Multi ports where he can send batches of data to DDS in one call. This looks
nice, but when he wants todo that, he has to use different ports, which
leads to a different component design. It is just not an easy change to make
a new implementation of the component, it will become something completely
different by use the other ports. No easy swap to a more efficient component
implementation.


I think we should remove all Multi ports and merge their functionality into
the regular ports. That way a component developer can use the more efficient
sequences based interfaces without large changes in models and deployment
plants.


Resolution: Merge the multi-operations with the simple ones in a consolidated interface: Writer + MultiWriter ¨ Writer Updater + MultiUpdater ¨ Updater RawListener + MultiListener ¨ Listener StateLisener + MultiLisener ¨ StateListener Take the opportunity of this recast of the IDL description for the DDS ports, to better harmonize the names of the operations and to rationalize the roles of each interface.
Revised Text: Page 31 to 39 Replace the whole section 8.2.2.1 DDS-DCPS Basic Port Interfaces. (Cf. Convenience document for the new text) Page 39 / line 31 Replace the list of port types ¨ porttype DDS_Write { uses Writer data; uses DDS::DataWriter dds_entity; }; porttype DDS_Update { uses Updater data; uses DDS::DataWriter dds_entity; }; porttype DDS_Read { uses Reader data; uses DDS::DataReader dds_entity; provides PortStatusListener status; }; porttype DDS_Get { uses Reader data; uses Getter fresh_data; uses DDS::DataReader dds_entity; provides PortStatusListener status; }; porttype DDS Listen { uses Reader data; uses DataListenerControl data_control; provides Listener data_listener; uses DDS::DataReader dds_entity; provides PortStatusListener status; }; porttype DDS_StateListen { uses Reader data; uses StateListenerControl data_control; provides StateListener data_listener; uses DDS::DataReader dds_entity; provides PortStatusListener status; }; Page 40 / line 16 Change the whole paragraph ¨ All proposed DDS ports combine at least a basic port to access data with a basic port to access underlying DDS entity. DDS_Get, DDS_Listen and DDS_StateListen split the data access functionality in two ports; the first one (Reader) is there to set the read criterion and provide operations for the initialization phase, while the second one (Getter, Listener or StateListener) is rather intended to be used in the application processing loop. All the ports intended for the subscribing side comprise also a port to be notified of the relevant statuses. Page 41 / line 26 Add the following bullet . push_state_observer are being notified with the state changes with different operations depending on the instance status. Page 41 / line 29 Replace the connector description ¨ connector DDS_State : DDS_TopicBase { mirrorport DDS_Update observable; mirrorport DDS_Read passive_observer; mirrorport DDS_Get pull_observer; mirrorport DDS_Listen push_observer; mirrorport DDS_StateListen push_state_observer; }; Page 41 / line 3 Replace the connector description ¨ connector DDS_Event : DDS_TopicBase { mirrorport DDS_Write supplier; mirrorport DDS_Get pull_consumer; mirrorport DDS_Listen push_consumer; } Page 50 Replace the whole annex A with the one in the convenience document
Actions taken:
August 16, 2009: received issue
April 26, 2010: closed issue

Issue 14217: QoS profile attribute name? (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Uncategorized Issue
Severity:
Summary:
The DDS4CCM spec says the following about specifying  qos profiles
> > through
> > XML
> > ***
> > A QoS Profile shall be attached as a configuration attribute to a DDS
> > connector. This profile should contain all values for
> > initializing DDS Entities that are required by the connector.
> > ***
> > Shouldn't the attribute name also be standardized?

Resolution:
Revised Text:
Actions taken:
August 4, 2009: received issue
April 26, 2010: closed issue

Discussion:
The name is given in the DDS_Base connector description (qos_profile)
Disposition: Closed, no change


Issue 14534: MultiListener (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Uncategorized Issue
Severity:
Summary:
On page 34 (word) on line 30 it gives the paragraph below. There is an
> inconsistency there, it says "a sequence" and the next sentence it says
> "each sequence". Looking at the IDL, it just is one sequence, so it
> should
> probably be "Depending of grouping mode, the sequence will contain"
> 
> Johnny
> 
> Behavior of a MultiListener is as follows:
> on_data is here called with a sequence of new values. Depending of
> grouping_mode, each sequence will contain 1) all the samples of an
> instance,
> 2) all new last samples or 3) all new samples.
> Query filter (if any) will be found in the associated Reader (see below
> -
> definition of DDS extended ports).

Resolution: Disposition: See issue 14214 for disposition
Revised Text:
Actions taken:
October 7, 2009: received issue
April 26, 2010: closed issue

Issue 14558: Extended ports (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Uncategorized Issue
Severity:
Summary:
On page 5, line 17, the spec says the following of extended ports:
> 
> Extended ports allow grouping a set of single CCM ports (facet/provides
> and
> receptacle/uses), to define a particular semantic. The extended ports
> are
> declared in IDL3+ (extended IDL3 with new keywords). A new keyword is
> introduced to define extended ports (porttype) and to declare an
> extended
> port at component level (port).
> 
> Shouldn't this be:
> 
> Extended ports allow grouping a set of single CCM ports (facet/provides
> and
> receptacle/uses) and extended ports, to define a particular semantic.
> The
> extended ports are declared in IDL3+ (extended IDL3 with new keywords).
> A
> new keyword is introduced to define extended ports (porttype) and to
> declare
> an extended port at component level (port).
> 
> So, add that an extended port can contain extended ports again.

Resolution:
Revised Text:
Actions taken:
September 9, 2009: received issue
April 26, 2010: closed issue

Discussion:
Currently it is not planned that an extended port be recursive. The reason is that
while we fail to see any use case where that feature would really add something
(apart being intellectually satisfactory), it brings an extra-complexity, not only at
the CIF level (name of the resulting ports) but also at D&C tooling level.
Therefore it is decided not to change that feature.
Disposition: Closed, no change


Issue 14562: (Multi)Updater method names? (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Uncategorized Issue
Severity:
Summary:
We noticed that the (Multi)Updater uses delete as method name, this is a
reserved keyword in C++ which leads to _cxx_delete in the C++ mapping. Maybe
it is an idea to use different method names, like register/write/dispose as
in DDS? It is now a small change, but prevents users to use _cxx_delete when
using C++.

Resolution: Disposition: See issue 14214 for disposition
Revised Text:
Actions taken:
October 13, 2009: received issue
April 26, 2010: closed issue

Discussion:


Issue 14567: Updater and instance handle (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Uncategorized Issue
Severity:
Summary:
Currently DDS4CCM specifies the Updater port below. We are looking at using
register_instance/write/unregister_instance for this? If this port is
intended to deliver an abstraction of these methods, why don't we pass the
instancehandle back to the CCM Level?

Johnny


interface Updater<typename T> {          // T assumed to be a data type
        void create (in T an_instance)
                 raises (AlreadyCreated,
                           InternalError);
        void update (in T an_instance)
                 raises (NonExistent,
                           InternalError);
        void delete (in T an_instance)
                 raises (NonExistent,
                           InternalError);
        readonly attribute boolean is_lifecycle_checked;
        }; 

 


Resolution: Add the optional instance_handle parameter to each operation dealing with a specific instance
Revised Text: Page 31 / line 10 Add the following section: InstanceHandleManager abstract interface InstanceHandleManager { DDS::InstanceHandle_t register_instance (in T datum) raises (InternalError); void unregister_instance (in T datum, in DDS::InstanceHandle_t instance_handle) raises (InternalError); }; This interface gathers the two operations that allows manipulating DDS instance handles and will serve as a basis for the Writer or the Updater interfaces. • register_instance asks DDS to register an instance, which results in allocating it a local instance handle. The targeted instance is indicated by the key value in the passed data (datum). • unregister_instance asks DDS to unregister the instance, indicated by the passed instance_handle and thus to release the instance handle. Both operations are very similar to the DDS ones and are just passed to the DDS DataReader in support for the relater DDS port. Cf. the DDS documentation for more details. Any DDS error will be reported through an InternalError exception. Page 31 / line 25 Replace the beginning of Writer definition ¨ Interface Writer local interface Writer : InstanceHandleManager { void write_one (in T datum, in DDS::InstanceHandle_t instance_handle) raises (InternalError); void write_many (in TSeq data) raises (InternalError); attribute boolean is_coherent_write; // FALSE by default }; Behavior of a Writer is as follows: . write_one allows publishing one instance value. The targeted instance is designated by the passed instance handle (instance_handle) if not DDS::HANDLE_NIL or by the key value in the passed data (datum) otherwise. If a valid handle is passed, it must be in accordance with the key value of the passed data otherwise an InternalError exception is raised with the returned DDS error code. More generally, any DDS error when publishing the data will be reported by an InternalError exception. Page 31 / line 43 Replace the beginning of Updater definition ¨ : Interface Updater local interface Updater : InstanceHandleManager { void create_one (in T datum) raises (AlreadyCreated, InternalError); void update_one (in T datum, in DDS::InstanceHandle_t instance_handle) raises (NonExistent, InternalError); void delete_one (in T datum, in DDS::InstanceHandle_t instance_handle) raises (NonExistent, InternalError); void create_many (in TSeq data) raises (AlreadyCreated, InternalError); void update_many (in TSeq data) raises (NonExistent, InternalError); void delete_many (in TSeq data) raises (NonExistent, InternalError); readonly attribute boolean is_global_scope; //FALSE by default attribute boolean is_coherent_write; // FALSE by default }; Behavior of an Updater is as follows: • create_one (resp. update_one, delete_one) allows creating (resp. updating, deleting) one instance. For create_one this instance is designated by the key value in datum. For the two others, it is designated by the passed instance handle (instance_handle) if not DDS::HANDLE_NIL or by the key value in the passed instance data (datum) otherwise. If a valid handle is passed, it must be in accordance with the key value of the passed instance data otherwise an InternalError exception is raised with the returned DDS error code. More generally, any DDS error when publishing the data will be reported by an InternalError exception.
Actions taken:
October 15, 2009: received issue
April 26, 2010: closed issue

Issue 14574: topic_name attribute (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Clarification
Severity: Minor
Summary:
we propose to change the topic_name attribute to a regular attribute, not readonly

Resolution: This attribute as well as the others on DDS-DCPS connectors are not changeable dynamically as they are used to create and configure the DDS entities in support to this DDS pattern. However as their configuration by an external tool is highly desirable, they have been turned into regular attributes which can raise a NonChangeable exception.
Revised Text: Page 40 / line 37 Change section 8.3.1 text ¨ DDS_Base connector uses a ConnectorStatusListener port for reporting configuration errors and contains attributes to store the Domain identifier and the QoS profile (c.f. section 8.4.2 for more details on QoS profile). The QoS profile could be given either as a file URL or as the XML string itself. Any attempt to change those attributes once the configuration is complete will raise a NonChangeable exception. All DDS connectors should inherit from that base. connector DDS_Base { uses ConnectorStatusListener error_listener; attribute DDS:DomainId_t domain_id setraises (NonChangeable); attribute string qos_profile // File URL or XML string setraises (NonChangeable); }; DDS_TopicBase extends the DDS_Base with the name of one topic and its key description. DDS_TopicBase should be the base for all mono-topic connectors connector DDS_TopicBase : DDS_Base { attribute string topic_name setraises (NonChangeable); attribute DDS::StringSeq key_fields setraises (NonChangeable); }; As the attributes of DDS_Base, the attributes of DDS_TopicBase are also non changeable once configured. Any attempt to change them once the configuration is complete will raise a NonChangeable exception.
Actions taken:
October 20, 2009: recived isuse
April 26, 2010: closed issue

Issue 14578: on_subscription_matched missing (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Clarification
Severity: Minor
Summary:
on_subscription_matched is missing from the connectorstatuslistener, we propose to add this to one of the listeners

Resolution:
Revised Text:
Actions taken:
October 26, 2009: received issue
April 26, 2010: closed issue

Discussion:
DDS states this feature as optional
In case it is really needed the provided port DDS entity allows accessing it
Disposition: Closed, no change


Issue 14581: readonly attribute DDS::StringSeq key_fields;? (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Clarification
Severity: Minor
Summary:
Why does 8.3.1 add the following attribute to the DDS_TopicBase? What is the functional meaning of this, shouldn't we just remove this attribute?


readonly attribute DDS::StringSeq       key_fields;

Resolution:
Revised Text:
Actions taken:
October 27, 2009: received issue
April 26, 2010: closed issue

Discussion:
There is currently no standard DDS way to indicate the key fields. Placing this
information at the connector level is useful for system documentation.
Disposition: Closed, no change


Issue 14590: DDS port interfaces should be local (dds4ccm-ftf)

Click
here for this issue's archive.
Source: THALES (Ms. Virginie Watine, virginie.watine(at)thalesgroup.com)
Nature: Clarification
Severity:
Summary:
The DDS4CCM specification states that a component with a DDS port and the fragment of connector supporting this DDS port should be collocated but the related interfaces are not defined as local.

Resolution: Define all interfaces used in the DDS ports as local
Revised Text: Page 31 / lines 26, 44 Page 35 / line 4 Page 36 / lines 5, 27 page 37 / line 35 Page 38 / lines 7, 32 Page 39 / line 2 Page 49 / line 8 Page 52 / lines 23, 28, 34, 45 Page 53 / lines 47, 62 Page 54 / line 44 Page 55 / lines 14, 38, 52 Page 57 / line 7 Replace: interface ¨ local interface
Actions taken:
October 30, 2009: received issue
April 26, 2010: closed issue

Issue 14611: DDS4CCM module name (dds4ccm-ftf)

Click
here for this issue's archive.
Source: THALES (Ms. Virginie Watine, virginie.watine(at)thalesgroup.com)
Nature: Uncategorized Issue
Severity:
Summary:
In the DDS4CCM specification the IDL module name is sometimes CCM_DDS sometimes DDS_CCM. It should be CCM_DDS everywhere.


Resolution: Nme always the module CCM_DDS
Revised Text: Page 50 / lines 5, 22 Page 58 / line 5 Replace: DDS_CCM ¨ CCM_DDS
Actions taken:
November 4, 2009: received issue
April 26, 2010: closed issue

Issue 14612: mirrorport in CCMComponentPortKind (dds4ccm-ftf)

Click
here for this issue's archive. Click here for this issue's attachments.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Uncategorized Issue
Severity:
Summary:
In CCMComponentPortKind ExtendedPort and Mirrorport are added. First in
update 5, page 11, line 21, font of MirrorPort is not ok. The other issue is
that MirrorPort is a keyword, so it should be _MirrorPort or maybe
ExtendedMirrorPort to match the ExtendedPort.

Resolution: In addition to the change “MirrorPort” to “ExtendedMirrorPort”, correction of two other related mistakes • “CCMPortKind” does not exist (“CCMComponentPortKind” instead) • The name of the attribute is "kind" (“CCMComponentPortKind” is the name of the enumeration)
Revised Text: Page 3, line 23 Change “MirrorPort” ? “ExtendedMirrorPort” Page 23, line 18 Change “CCMPortKind” ? “CCMComponentPortKind” Page 23, line 19 Change “MirrorPort” ? “ExtendedMirrorPort” Page 23, line 23 Change “CCMComponentPortKind” ? “kind” Change “MirrorPort” ? “ExtendedMirrorPort” Change Figure 9 Page 24 with the following:
Actions taken:
November 4, 2009: received issue
April 26, 2010: closed issue
October 21, 2010: closed issue

Discussion:
No time to tackle it completely
Disposition: Deferred


Issue 14825: DDS_TopicBase::key_fields (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Uncategorized Issue
Severity:
Summary:
DDS_TopicBase::key_fields is read/write with nonchangeble. I am aware that
DDS doesn't have a standardized way to specify keys in IDL. At the CCM level
we always instantiate a connector for a specific IDL type. It looks a nice
feature to be able to ask to the connector what the key_fields are, that is
something the tooling can't get from the IDL itself. But, why should this be
a writable (but not changeable) attribute, couldn't it just be readonly, it
is just there for the component to retrieve, it can probably be implemented
with some vendor specific code.


Resolution:
Revised Text:
Actions taken:
November 23, 2009: received issue
October 21, 2010: closed issue

Discussion:
Having the key fields expressed in the CDP is a nice feature at least for systemwide
documentation purpose.
If the DDS implementation does not provide any means to retrieve this
information, the tooling can fill the gap by propagating it.
Disposition: Closed, no change


Issue 14830: csl::on_inconsistent_topic (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Uncategorized Issue
Severity:
Summary:
When we check the ConnectorStatusListener we see that it has an
on_inconsistent_topic. The CSL is part of the DDS_Base connector, but the
concept of a topic is added to the DDS_TopicBase which is derived from
DDS_Base. It looks inconsistent that the CSL has a callback for something
that is not known at that connector level. 


Why do we have a DDS_Base and a DDS_TopicBase, why not merge them into one
connector base? 

Resolution:
Revised Text:
Actions taken:
December 1, 2009: received issue
October 21, 2010: closed issue

Discussion:
DDS connectors not concerned with any topic make no sense but some
connectors are concerned with several topics (and in particular DLRL's ones if
we talk about standardized ones). If the root of all connectors were
DDS_TopicBase (as suggested), all the attached topics would not be treated
equally, which is quite strange.
• DDS_Base is the root for all connectors
• DDS_TopicBase:DDS_Base is the root for all mono-topic connectors
Disposition: Closed, no change


Issue 14836: IDL3+ keyword question/issue (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Vanderbilt University (Mr. Jeffrey Parsons, j.parsons(at)vanderbilt.edu)
Nature: Uncategorized Issue
Severity:
Summary:
I just noticed, in section 7.2.2.1, that 'array' is allowed as a type
designator for template parameters. So now it is also a keyword? it
isn't on the list of new keywords in 7.3.6.

Resolution: Remove 'array' from allowed type designator. Rationale: Purpose was to avoid as much as possible new keywords. Expressing the fact that the parameter type must be of type array does not appear to be such a significant use case that a new keyword is justified.
Revised Text: Page 11, line 31 Discard line : (array meaning all array types)
Actions taken:
November 11, 2009: received issue
October 21, 2010: closed issue

Issue 14845: read_last (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Uncategorized Issue
Severity:
Summary:
read_last returns the last sample of all instances. Any DDS error when
> reading the data will be reported by an InternalError exception.
> read_all returns all samples of all instances. Any DDS error when reading
> the data will be reported by an InternalError exception.
> 
> But, what is a DDS error, is this != DDS_RETCODE_OK? What todo with
> DDS_RETCODE_NO_DATA, also then throw an exception or return an empty
> sequence?

Resolution: Add a better explanation
Revised Text: Page 35, lines 30 and 32, • Add after the first sentence, the following one: “In case of no data, the resulting data will be a void sequence”. • In the sentence that follows, change:”Any DDS error” ? “Any other DDS error”
Actions taken:
December 3, 2009: received issue
October 21, 2010: closed issue

Issue 14846: Typo, 09-10-25, ExtendePortType (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Uncategorized Issue
Severity:
Summary:
In 09-10-25, page 3, line 17, it says ExtendePortType instead of
> ExtendedPortType

Resolution: Correct the typo
Revised Text: Page 3, line 17, Insert the missing 'd' in "ExtendedPortType"
Actions taken:
December 8, 2009: received issue
April 26, 2010: closed issue
October 21, 2010: closed issue

Issue 14847: getter text should be clearer about the behavior (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Uncategorized Issue
Severity:
Summary:
Consider that timeout and max_delivered_data act as maximum boundaries
(not minimums to be enforced). These just mean that you will never wait
more than timeout nor receive more than max_delivered_data data.
Applied to you precise questions:
 
1) should directly return with the 50 samples.
 
2) should return after receiving the first sample.
 

Resolution: Add a better explanation
Revised Text: Page 36, line 20 Change the sentence: “Get operations are performed with the following parameters” ? “Get operations are meant to provide information that has not been previously communicated to the participant. They may wait until fresh information is available and are performed with the following parameters:” Page36, line 30 Change the sentences “get_many returns all the available samples in the limits set by the attribute max_delivered_data. In case there are more available samples, only the first max_delivered_data are returned.” ? “get_many returns all the available samples within the limits set by the attribute max_delivered_data. In case there are too many available samples, only the first max_delivered_data ones are returned, the others remaining available for a subsequent call.”
Actions taken:
December 11, 2009: received issue
April 26, 2010: closed issue
October 21, 2010: closed issue

Issue 15160: Type, DDS Listen instead of DDS_Listen (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Clarification
Severity: Minor
Summary:
page 40 line one has a type, DDS Listen should be DDS_Listen for the port name

Resolution: Correct the typo
Revised Text: Page 40, line 39: Change “DDS Listen” ? “DDS_Listen”
Actions taken:
April 6, 2010: received issue
October 21, 2010: closed issue

Discussion:


Issue 15172: Supporting Content Filtered Topics (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Uncategorized Issue
Severity:
Summary:
The current QueryFilter in the spec seems to match best to a QueryCondition.
But DDS also provides the ContentFilteredTopic support, that doesn't seem to
be available at the ccm-dds level, is this intended?

Resolution: The resolution is to add on the reading-side DDS ports a filter attribute and a basic port to change filter parameters when appropriate (this basic port will be used in the port and provided in the associated mirrorport). This disposal implies to add configuration attributes in porttype definitions. In addition, for clarity purpose, the formerly named "filter" attribute on the Reader interface is renamed "query" and inside the QueryFilter structure, the first field (formerly "query") is renamed "expression" and the second (formerly "query_parameters") simplified to become "parameters". Rationale: • The current QueryFilter is definitively intended to match the DDS query. ContentFilteredTopic is also a very important DDS feature that should be accessible through ccm-dds. • Configuration attributes fin porttype definitions is also useful for many other uses of the GIS (was missing)
Revised Text: Page 6, line 6 Add at the end of the sentence: “and attributes to configure them if needed.” Page 6, line 9 Add at the end of the sentence “and attributes.” Page 7, line 3 Add a semi-colon at the end of the line Page 7, line 5 Change the ending dot into a semi-colon Add two extra bullets • An attribute in a port or a mirrorport becomes an attribute in the equivalent IDL3 declaration of the component; • The name of the generated attribute is the concatenation of the extended port name and the related attribute name of the porttype, separated by '_'. Page 13, line 19 Add | <attr_dcl> ";" Page 15, line 22 Add | <attr_dcl> ";" Page 15, line 26 Insert after "basic ports", “and attributes,” Page 34, line 18 Change query ? expression Page 34, line 19 Change query_parameters ? parameters Page 35 , line 1, 4 Change “query” ? “query expression” Page 35, line 3 Change “query” ? “expression” Page 35, line 15 Change filter ? query page 35, line 29 Replace the line with: “Through the query as specified in the query ("" as expression means no query)” Page 38, line 35 Insert a new section 8.1.2.2.4 ----------------- 8.1.2.2.4 Content Filter Management In addition to plain topics, DDS provides content-filtered topics for content-based subscriptions. Such a topic has to be created in relation with a classical one and given a filter expression. All data provided by this topic must pass the filter expression. Apart that characteristic, content-filter topics and classical ones can be used the same way. The following attribute allows declaring a filter to the port that will be used for DDS content-filtered subscriptions, in case it is given a value at configuration time. Attribute Filter attribute QueryFilter filter setraises (NonChangeable); While the filter expression is immutable and can be thus considered as a structural configuration attribute of a given port, its parameters can be modified dynamically. The following interface allows changing those parameters. Interface ContentFilterSetting local interface ContentFilterSetting { void set_filter_parameters (in DDS::StringSeq parameters) raises (InternalError); }; -------------------- (note that previous section 8.1.2.2.4 is now 8.1.2.2.5) Page 40, lines 22, 33, 43 Page 41, line 5 Insert the following attribute QueryFilter filter setraises(NonChangeable); uses ContentFilterSetting filter_config; Page 51, line 15 Change the last sentence of the paragraph ? “All the ports intended for the subscribing side comprise also a configuration attribute (filter) to set the content filter, a basic port to change the parameters of the filter expression (filter_config) and a port to be notified of the relevant statuses (status).” Page 52, line 41 Change query ? expression Page 52, line 42 Change query_parameters ? parameters Page 54, line 31 Insert the following // Content Filter Parameters Setting // --------------------------------- local interface ContentFilterSetting { void set_filter_parameters (in DDS::StringSeq parameters) raises (InternalError); }; Page 55, line 6 Change filter ? query page 56, line 7 Replace the line with: // - through the query as specified ("" expression means no query) Page 57, lines 40, 49 Page 58, lines 1, 12 Insert the following: attribute QueryFilter filter setraises(NonChangeable); uses ContentFilterSetting filter_config; Disposition: Resolved
Actions taken:
February 15, 2010: received issue
October 21, 2010: closed issue

Issue 15173: InstanceHandleManager, local? (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Uncategorized Issue
Severity:
Summary:
The InstanceHandleManager interface is defined as abstract, but shouldn't
this one also be defined as local (which means remove abstract, you can't
have both). By now having abstract, it is technically possible to derive a
regular (non local) interface from it. This means we have todo more code
generation as necessary.


We would like to propose to replace abstract with local.

Resolution: Make this (abstract) interface local
Revised Text: Page 31, line 11 Change abstract ? local Page 31, line 17 Change “This interface” ? “this abstract interface” Page 54, line 47 Change abstract ? local
Actions taken:
February 22, 2010: received issue
October 21, 2010: closed issue

Discussion:


Issue 15174: ConnectorStatusListener::on_unexpected_stat (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Uncategorized Issue
Severity:
Summary:
On the ConnectorStatusListener there is an on_unexpected_status method. What
is meant with an unexpected status, I don't find the spec clear in this
area. If this are the statuses we don't handle explicitly, what can the user
do with it? He gets the entity and the kind, but now the status field
itself? Is this usefull to add?

Resolution:
Revised Text:
Actions taken:
November 6, 2009: received issue
October 21, 2010: closed issue

Discussion:
Unfortunately, it is not possible to get simply the status fields for unknown
statuses... Fortunately, this should never happen (except if the DDS
implementation bugs)
Disposition: Closed, no change


Issue 15225: inout data parameters (dds4ccm-ftf)

Click
here for this issue's archive.
Source: THALES (Ms. Virginie Watine, virginie.watine(at)thalesgroup.com)
Nature: Enhancement
Severity: Minor
Summary:
Currently in the spec when several data are to be returned, the related parameter is an 'out' sequence. Even if this is semantically correct, it makes implementation of smart memory management impossible. 
Suggestion is then to turn those parameters into 'inout' ones.

Resolution: Change the sequence out parameters into inout.
Revised Text: Page 30, line 13 Insert the following: “Sequences to be returned (of data and of accompanying information) are designed as 'inout' parameters, even if the actual information flow is only 'out'. This disposal allows for implementation of smarter memory management.” Page 35, line 9, 11, 17 Page 36, line 14 Page 56, lines 56, 58 Page 57, lines 2, 30 Change out Tseq ? inout Tseq Change out readInfoSeq ? inout ReadInfoSeq
Actions taken:
April 26, 2010: received issue
October 21, 2010: closed issue

Issue 15231: issue create/addressed? (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Vanderbilt University (Mr. Jeffrey Parsons, j.parsons(at)vanderbilt.edu)
Nature: Uncategorized Issue
Severity:
Summary:
The version of IDL3+ grammar extensions that I have shows 

<connector_body> ::= "{" <connector_export> "}"

Shouldn't that line be

<connector_body> ::= "{" <connector_export>* "}"

?


Resolution: issue withdrawn by submitter
Revised Text:
Actions taken:
February 15, 2010: received issue
May 4, 2010: closed issue

Issue 15238: Let the user be able to instantiate one dds connector (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Clarification
Severity: Minor
Summary:
Currently the DDS4CCM specification puts within the Typed module the extended ports, but also the dds connectors. The drawback of this approach is that when the user instantiates this templated module he gets both connectors, even when he is only interested in using one. We propose to move the DDS_State and DDS_Event to their own typed module so that the end user can instantiate just one of these connectors. This also makes it easier for a code generator to just generate the implementation for a specific connector, at this moment there is nothing in idl which can be used to determine whether the end user wants to use DDS_Event and/or DDS_State

Resolution:
Revised Text:
Actions taken:
May 3, 2010: received issue

Discussion:
No time to tackle it completely. Other solutions to minimize code generation are
under investigation.
Disposition: Deferred


Issue 15282: attributes as part of porttype do appear on port and mirrorport (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Clarification
Severity: Significant
Summary:
This version of DDS4CCM adds the functionality to specify attributes as part of a porttype. This porttype can than be used by a component or connector as port or as mirrorport. The problem we see is that the attribute appears on the component/connector that uses the porttype as port or mirrorport. To our opinion the grammer should be more specific where the attribute appear, we propose to add the attribute by default to the component that uses the porttype as port, when the attribute has to appear on the component that uses the port as mirrorport we propose to define the attribute as:
mirror attribute my_attribute;

In case of DDS4CCM we see that the dds4ccm DDS_State connector gets 4 attributes which is what we want, but any user component using the porttype also gets a filter attribute

Resolution:
Revised Text:
Actions taken:
June 8, 2010: received issue

Issue 15286: Layout issue test (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Clarification
Severity: Minor
Summary:
See page 35, line 35, 


 read_one_last returns the last sample of a given instanceThe targeted 

Missing dot after instance

Resolution:
Revised Text:
Actions taken:
June 10, 2010: received issue

Discussion:


Issue 15287: Make all arguments inout (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Clarification
Severity: Minor
Summary:
In order to have the same memory management for the single data and datum operations, we propose to make all out arguments inout. This impacts:
Reader::read_one_last, info to inout
Getter::get_one, all arguments to inout

Resolution:
Revised Text:
Actions taken:
June 10, 2010: received issue

Issue 15313: StateListenerControl:: is_filter_interpreted should be documented as optional (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Clarification
Severity: Minor
Summary:
is_filter_interpreted has to be documented as optional, not just the filtering of out. 

This is because there is no required feature in the DDS core or part of the DDS DCPS specification which provides the INSTANCE_FILTERED_IN or INSTANCE_FILTERED_OUT status. Near as I can tell, this functionality comes as part of the DLRL layer "Selection_Listener" object (8.1.6.3.13).

Resolution:
Revised Text:
Actions taken:
June 29, 2010: received issue

Issue 15888: section 8.3.1 Base Connectors (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Northrop Grumman (Mr. Perry King, perry.king(at)ngc.com)
Nature: Uncategorized Issue
Severity:
Summary:
Right now (in section 8.3.1 Base Connectors)  the DDS_Base connector has an attribute named qos_profile and the only thing said about it is that it contains a File URL or XML string.

Excerpt from 8.3.1 Base Connectors:
connector DDS_Base {

uses ConnectorStatusListener error_listener;

attribute DDS:DomainId_t domain_id

setraises (NonChangeable);

attribute string qos_profile // File URL or XML string

setraises (NonChangeable);

};

 

However, section 8.4.2.3 QoS Profiles talks about qos_profiles that are actually specified within the xml file.

 

So the problems are:

 

1.       The same name “qos_profile” is used to mean both an attribute referring to a file URL or XML string as well as referring to a subsection within the XML file.

2.       There is no mechanism for the user to reference the qos_profile name that was defined within the xml file (the “subsection within the XML file “) which makes it useless.

 

A possible solution would be to:

 

1.       Change the meaning of the qos_profile attribute to be a reference to the qos_profile defined within the XML file.

2.       Add another optional attribute for specifying the path to the xml file.


Resolution:
Revised Text:
Actions taken:
December 9, 2010: received issue
January 4, 2011: moved tp DDS for CCM FTF or RTF

Issue 16603: Make topic_name changeable (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Enhancement
Severity: Minor
Summary:
In some systems they are receiving the topic_name after startup, at some moment they just get it and want to set it to a new value. We propose to remove topic_name, there seems to be no technical or structural reason not to allow the user to change the topic_name after the connector fragment has been initialized

Resolution:
Revised Text:
Actions taken:
October 14, 2011: received issue

Issue 17399: Name patterns should support underscores and scoping (dds4ccm-ftf)

Click
here for this issue's archive.
Source: Northrop Grumman (Mr. Trent Nadeau, trent.nadeau(at)ngc.com)
Nature: Revision
Severity: Minor
Summary:
The name patterns in the normative XML schema in Annex C do not support underscores. For detailed or lengthy profile names (especially including internal acronyms), using underscores significantly improves readability.


In addition, the elementName type is used both for the name and base_name attributes of the qosProfile type; however, the pattern for the elementName type does not support scoping, which is needed for inheritance between profiles in different libraries.


In order to address these, I propose that the elementName and topicNameFilter patterns be changed from:


"([a-zA-Z0-9 ])+"


to:


"^((::)?([a-zA-Z0-9_])+(::([a-zA-Z0-9_])+)*)$"

The latter is the currently commented-out pattern in the schema with the addition of the underscore.

Resolution:
Revised Text:
Actions taken:
May 30, 2012: received issue