Issues for Notification Services RTF mailing list

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

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

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

Jira Issues

Issue 1423: Add destroy operations Jira Issue NOT11-2
Issue 1424: Fix existing bug in CosTypedNotifyChannelAdmin IDL Jira Issue NOT11-3
Issue 1425: Define new Service ID Jira Issue NOT11-4
Issue 1426: Make section 2.10 consistent with current CORBA 2.1 Jira Issue NOT11-5
Issue 1427: Clean up description of QoS properties Jira Issue NOT11-6
Issue 1499: Error in Event Type Repos IDL in Notification Jira Issue NOT11-7
Issue 1524: <CompEsc> lexical token issue Jira Issue NOT11-8
Issue 1580: We need default value for DiscardPolicy Jira Issue NOT11-9
Issue 1584: Reference to MaxQueueLength--QoS issue for Notification Jira Issue NOT11-10
Issue 1618: subscription_change issue Jira Issue NOT11-11
Issue 1638: Filter grammar problem Jira Issue NOT11-12
Issue 1660: No way to "quench" to event style supplier Jira Issue NOT11-13
Issue 1680: Use of lexical components Jira Issue NOT11-14
Issue 1681: Syntactic category <Factor> includes <Ident> and \<Ident>...Why? Jira Issue NOT11-15
Issue 1682: Section 2.4.6 : positional notation wrt to unions Jira Issue NOT11-16
Issue 1684: Constraint Language issue Jira Issue NOT11-17
Issue 1706: comment_*() operations needed in CosNotifyComm Interface Jira Issue NOT11-18
Issue 1773: No way to "quench" typed event style clients... Jira Issue NOT11-19
Issue 1774: ProxyConsumer and ProxySupplier need readonly attributes to identify type. Jira Issue NOT11-20
Issue 1791: Move name up to PropertyErorr and create a NamedPropertyRange struct Jira Issue NOT11-21
Issue 1792: Remove the use of CosTrading property types Jira Issue NOT11-22
Issue 1793: Dependance on CosTrading Jira Issue NOT11-23
Issue 2008: Removal of explicit Transactional interfaces Jira Issue NOT11-24
Issue 2113: Editorial issue Jira Issue NOT11-25
Issue 2114: Cardinalities for "imports" and "inherits" wrong Jira Issue NOT11-26
Issue 2120: Suspension of connections Jira Issue NOT11-27
Issue 2121: Another issue related to suspend/resume connection Jira Issue NOT11-28
Issue 2153: CosNotifyChannelAdmin::ConsumerAdmin::obtain_notification_X_supplier oper Jira Issue NOT13-1
Issue 2157: .Clarification of pull_structured_events definition Jira Issue NOT11-29
Issue 2203: Notification Constraint language problem Jira Issue NOT12-1
Issue 2211: The term name-value pair is not well defined Jira Issue NOT12-2
Issue 2212: Footnote on page 34 Jira Issue NOT12-3
Issue 2213: The section 2.4.5 Jira Issue NOT12-4
Issue 2216: Issue with the algorithm for evaluating $<variable> expressions Jira Issue NOT12-5
Issue 2217: Not all references to event types have been updated Jira Issue NOT12-6
Issue 2219: Text on p. 54 describing applicability of EvenReliability QoS out of date Jira Issue NOT12-7
Issue 2220: Explicit statement missing in contraint grammar Jira Issue NOT12-8
Issue 2229: Inconsistency on p 54 Jira Issue NOT12-9
Issue 2297: Unnecessary restriction defined on Mapping Filters Jira Issue NOT12-10
Issue 2433: CosNotification -- MaxEventsPerConsumer = 0 for infinity? Jira Issue NOT12-11
Issue 2434: Default values for PacingInterval and MaximumBatchSize QoS properties? Jira Issue NOT12-12
Issue 2448: EventType IDL typos Jira Issue NOT12-13
Issue 2460: EventTypeRepository class issue Jira Issue NOT13-2
Issue 2501: Premature in eliminating Txn interfaces? Jira Issue NOT13-3
Issue 2512: suspend_connection/resume_connection messages - issue Jira Issue NOT13-4
Issue 2554: Filter evaluation in pull mode Jira Issue NOT12-14
Issue 2555: Semantics of Disconnected exception Jira Issue NOT12-15
Issue 2652: Modify the DiscardPolicy text, paragraph 1 page 56 Jira Issue NOT12-16
Issue 2653: To add to "Reliablity" text, Page 54 after paragraph 3. Jira Issue NOT12-17
Issue 2654: Modify RejectNewEvents description, paragraph 8 page 56 Jira Issue NOT12-18
Issue 2655: Modify paragraph 6, page 52 Jira Issue NOT12-19
Issue 2662: CosNotifyChannelAdmin module: typed proxies not defined in ProxyType enum Jira Issue NOT12-20
Issue 2712: TimeBase::UtcT where TimeBase::TimeT is needed Jira Issue NOT12-21
Issue 2713: Pull Methods on Sequence Suppliers Jira Issue NOT12-22
Issue 2714: Problem with Sequence Pull Model Jira Issue NOT12-23
Issue 2740: Clarify Handling of Priority and Timeout Jira Issue NOT12-24
Issue 2743: Semantics of Timeout Value Jira Issue NOT12-25
Issue 3114: Semantics of Event Service disconnect_push_consumer/supplier() Jira Issue NOT13-11
Issue 3156: Typed event service and disconnect Jira Issue NOT13-12
Issue 3175: Notification service: admin MyChannel attribute Jira Issue NOT13-5
Issue 3517: Section 3.4.17. Page:136 Jira Issue NOT13-6
Issue 3518: Issue with pushing events Jira Issue NOT13-7
Issue 3519: The interface on EventChanel does not have the ability to get the ChannelId Jira Issue NOT13-8
Issue 3520: The interface on EventChanel does not have the ability to get the ChannelId Jira Issue NOT11-30
Issue 3521: The Supplier Proxy & Consumer Proxy interfaces don't get ID's Jira Issue NOT13-9
Issue 6343: Notification Service IDL issues Jira Issue NOT13-10
Issue 9079: MaxEventsPerConsumer Jira Issue NOT11-1

Issue 1423: Add destroy operations (notif_service-rtf)

Click here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: 1) We should add "destroy" operations for the ConsumerAdmin and      SupplierAdmin interfaces defined in CosNotifyChannelAdmin    

Resolution:
Revised Text:
Actions taken:
May 28, 1998: received issue
February 23, 1999: closed issue

Discussion:


Issue 1424: Fix existing bug in CosTypedNotifyChannelAdmin IDL (notif_service-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: 2) We need to fix the existing bug in the CosTypedNotifyChannelAdmin      IDL, caused by the TypedEventChannel interface defined there inheriting      from both CosNotifyChannelAdmin::EventChannel, and       CosTypedEventChannelAdmin::TypedEventChannel. Because the former      also inherits CosEventChannelAdmin::EventChannel,       CosTypedNotifyChannelAdmin::TypedEventChannel is inheriting from      multiple interfaces that each define "for_consumers" and "for_suppliers"      operations, returning values that are scoped differently. This is an      IDL bug that must be resolved.    

Resolution:
Revised Text: :EventChannel, and
Actions taken:
May 28, 1998: received issue
February 23, 1999: closed issue

Discussion:


Issue 1425: Define new Service ID (notif_service-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: 3) We need to define a new Service ID that can be returned by       "resolve_initial_references" for the factory for typed notification       channels    

Resolution:
Revised Text:
Actions taken:
May 28, 1998: received issue
February 23, 1999: closed issue

Discussion:


Issue 1426: Make section 2.10 consistent with current CORBA 2.1 (notif_service-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: 4) In section 2.10 we describe how to modify CORBA 2.1 in order to      accommodate our new ID (should be IDs, see #3) that can be      returned by "resolve_initial_references". There, we list       "NamingService" as one of the valid IDs. But in CORBA 2.1, this is      currently "NameService". We should section 2.10 consistent with the      current CORBA 2.1 in this way.    

Resolution:
Revised Text:
Actions taken:
May 28, 1998: received issue
February 23, 1999: closed issue

Discussion:


Issue 1427: Clean up description of QoS properties (notif_service-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: 5) In general we need to clean up the description of QoS properties to      clearly distinguish which properties are valid in the optional header      field of a structured event, and which can be set on proxies, admins,      or channels. Certain properties only make sense on a per-message basis,      and others make no sense on a per-message basis. Currently the spec is      very unclear on this distinction, and we should fix this.    

Resolution:
Revised Text:
Actions taken:
May 28, 1998: received issue
February 23, 1999: closed issue

Discussion:


Issue 1499: Error in Event Type Repos IDL in Notification (notif_service-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: someone looking at the event type repository IDL in the Notification   Service Spec has found a bug in the generated IDL from the MOF model:      > 3. In EventTypeRepositoryClass.create_event_type_repository,   >    why is the parameter a string and not a StringSet?      You are correct. It"s should be StringSet. There was a bug in the   prototype that generated the IDL used in the Event Notification.       

Resolution:
Revised Text:
Actions taken:
June 4, 1998: received issue
February 23, 1999: closed issue

Discussion:


Issue 1524: <CompEsc> lexical token issue (notif_service-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: The <CompEsc> lexical token for the default constraint grammar is    inadvertantly not defined along with the other newly introduced lexical   token. A definition of this token should be added where the other new   tokens are defined.    

Resolution:
Revised Text:
Actions taken:
June 12, 1998: received issue
February 23, 1999: closed issue

Discussion:
 Add definition of CompEsc to section 2.4. 


Issue 1580: We need default value for DiscardPolicy (notif_service-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: In the spec we define the DiscardPolicy QoS property, and the various   settings it can take on. But, we don"t define what the behavior is   when the property is not set, and we don"t define a value of NONE that   can be used to disable the DiscardPolicy after it has been set.   My proposal is to define a new value, say NoOrder, which is the default   value and means that DiscardPolicy is disabled, so attempts to send events   to the channel when the buffer is full will fail, rather than have events   already in the buffer be discarded.      As a related issue, we may also want to define a DiscardInterval, so that   if DiscardPolicy does kick in, the algorithm can select more than one   event from the buffer to discard. This would prevent the channel from    thrashing between executing its discard algorithm, and receiving new events.   I"d be interested in comments about this idea, in addition to the proposal   to define the NoOrder value for DiscardPolicy.    

Resolution:
Revised Text:
Actions taken:
June 25, 1998: received issue
February 23, 1999: closed issue

Discussion:


Issue 1584: Reference to MaxQueueLength--QoS issue for Notification (notif_service-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: I cannot seem to find any refernce to MaxQueueLength   other than in IDL and there is no comment in the IDL explaining this   parameter.  This whole area seems to be under-specified. It is certainly   not in the "Discard Policy" section where it should be.    

Resolution:
Revised Text:
Actions taken:
June 26, 1998: received issue
February 23, 1999: closed issue

Discussion:
  Through discussion of this issue, it was agreed that the  


Issue 1618: subscription_change issue (notif_service-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: The text describing the behaviour of implementations calling   subscription_change on their suppliers:      Suppliers that are not interested in the event types currently   subscribed to will not invoke obtain_subscription_types, and will   raise the NO_IMPLEMENT exception in their implementation of the   subscription_change operation.      The mechanism (raising NO_IMPLEMENT) is crude, and the continuing   behaviour of the channel is unspecified; i.e. should the channel   always call subscription_change and just put up with the exception? I   should think not. However, should the channel assume that this   supplier will never be interested in subscriptions ever again? Perhaps   not. What if the supplier raises NO_IMPLEMENT, and then later calls   obtain_subscription_types - does this indicate that it is now   interested in subscription changes?    

Resolution:
Revised Text:
Actions taken:
June 30, 1998: received issue
February 23, 1999: closed issue

Discussion:


Issue 1638: Filter grammar problem (notif_service-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: The nonterminal symbol <CompEsc> is undefined on page 50.      I suspect it should simply be a terminal "\" (consistent with the use   of "+", "-" and "\\" in other parts of the grammar.    

Resolution:
Revised Text:
Actions taken:
July 7, 1998: received issue
February 23, 1999: closed issue

Discussion:


Issue 1660: No way to "quench" to event style supplier (notif_service-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: In the CosNotifyComm module, we define new client interfaces for clients   that supply and consumer structured events and sequence of structured events.   In the CosNotifyChannelAdmin module, we define different proxy interfaces   for clients that deal with Anys, structured events, and sequences of   structured events. For the proxies that deal with Anys, we rely on    Event tyle clients to connect to them. In other words, the input parameter   to the "connect_*" operations defined on the proxies provided for clients   that deal with Anys are of a type defined in the CosEventComm module. This   is because we don"t redefine Notification-specific interfaces for clients   that deal with Anys.      It has just occurred to us that this makes it impossible to propagate    "subscription_change" requests to clients that deal with Anys. This is   because such clients are defined in CosEventComm, and do not support   the NotifySubscribe or NotifyPublish interfaces.    

Resolution:
Revised Text:
Actions taken:
July 10, 1998: received issue
February 23, 1999: closed issue

Discussion:


Issue 1680: Use of lexical components (notif_service-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: Firstly, due to the use of lexical components such as "and", "or",   "not", etc., the grammar is not context free. A backslash (I assume the   syntactic category <CompEsc> is a backslash) is used to distinguish   runtime variables from symbol names, and this is enough to ensure that   any symbol subsequent to "\" is treated as an <Ident>.      However, the <CompDot> lexical category doesn"t provide for an escaped   <Ident>. However, I believe the following is legal IDL:      struct A {       long and;   };      This leads to a situation where a constraint such as:      $.A.and == 34      must be regarded as syntactically incorrect for the grammar to remain   context free.      I believe that the issue can be resolved without ambiguity by extending   <CompDot> to allow a backslash followed by a <CompIdent>.    

Resolution:
Revised Text:
Actions taken:
July 15, 1998: received issue
February 23, 1999: closed issue

Discussion:


Issue 1681: Syntactic category <Factor> includes <Ident> and \<Ident>...Why? (notif_service-rtf)

Click
here for this issue's archive.
Nature: Clarification
Severity:
Summary:
Summary: Secondly, I"d like to have something clarified, if possible. The   syntactic category <Factor> includes <Ident> and \ <Ident>. What is the   reason for this? It seems to me that the only use for <Ident> in this   context is as a check for the existence of a runtime variable. $var is   used to denote the value of runtime variable var. However the "exist"   operator is used for this.      Would the semantics be any clearer if "$" was not used for runtime   variables at all? In this case a standalone <Ident> (not part of the   current event) would denote a variable. 

Resolution:
Revised Text:
Actions taken:
July 15, 1998: received issue
February 23, 1999: closed issue

Discussion:


Issue 1682: Section 2.4.6 : positional notation wrt to unions (notif_service-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: In section 2.4.6 of the Notification Spec, there"s a discussion about   positional notation wrt to unions. Examples are given using the   constraints of the form $.(nn). e.g.,   $.(3).2 < 128      However, this isn"t syntactically correct. the Compdot syntactic   category is given as:      <CompDot> := <CompIdent> | <CompPos> | ** the "_" literals **      <CompIdent> must begin with an <Ident> which must begin with an   aphabetic char.   <CompPos> must begin with a digit.      <Component> may be empty, in which case an operator like +,-, and, or,   etc will be expected, but not a "(".   The same mistake is made throughout Section 2.4.6, in the fifth,   sixth, and seventh paragraphs. There are also some comments such as "   .. using run time variables as "$(3).2 < 128" .." in the fifth   paragraph that don"t make sense. (That example is wrong because a   runtime variables must be introduced by $<Ident>.)     

Resolution:
Revised Text:
Actions taken:
July 15, 1998: received issue
February 23, 1999: closed issue

Discussion:
 


Issue 1684: Constraint Language issue (notif_service-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: Because the constraint language is inherited from the Trader specification, we   have these categories:      <expr_in> := <expr_twiddle> in <Ident> | <expr_twiddle>   <expr_twiddle> := <expr> ~ <expr> | <expr>      It seems that the point of the "in" operator is to determine whether the LHE   is in the RHE where the RHE is a sequence. However, there"s no way to access   the current event since the RHE is only allowed to be an Ident, not "$"   <Component>. It appears that the RHE could only be an unstructured runtime   variable in practice. If this is not the case, how is it supposed to work?      In addition, the <preference> syntactic category makes no sense. I assume that   it is not be supported. This is perhaps a small point, but I can"t find a   reference to it.    

Resolution:
Revised Text:
Actions taken:
July 15, 1998: received issue
February 23, 1999: closed issue

Discussion:


Issue 1706: comment_*() operations needed in CosNotifyComm Interface (notif_service-rtf)

Click
here for this issue's archive.
Nature: Uncategorized Issue
Severity:
Summary:
Summary: One of the missing pieces in the Notification Service is that   connect_*() operations are needed on the CosNotifyComm interfaces.  That   way a third party can connect the end points and channel together.  With   the current spec the end points have to connect them self to the channel   or a third party needs to know the proprietary extensions of the   endpoint to set up the connection.  The endpoints that ALWAYS connect   themself to the channel could throw the NO_IMPLEMENT exception.          

Resolution:
Revised Text:
Actions taken:
July 20, 1998: received issue
February 23, 1999: closed issue

Discussion:


Issue 1773: No way to "quench" typed event style clients... (notif_service-rtf)

Click
here for this issue's archive.
Nature: Uncategorized Issue
Severity:
Summary:
Summary: Similar to the problem described in Issue 1660 for Any-style clients,   there is no way to pass quench or offer information to typed event style   clients. This is because typed event style clients are either defined   in CosEventComm or CosTypedEventComm, depending on the client type, and   these interfaces do not inherit NotifyPublish or NotifySubscribe.       

Resolution:
Revised Text:
Actions taken:
August 4, 1998: received issue
February 23, 1999: closed issue

Discussion:


Issue 1774: ProxyConsumer and ProxySupplier need readonly attributes to identify type. (notif_service-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: Currently it is possible to obtain a list of all ProxyConsumers being   managed by a SupplierAdmin, and a list of all ProxySuppliers being managed   by a ConsumerAdmin. But, given an entry on either one of these lists,   the only way to determine its actual type is to try narrowing it to the   Any, Structured, or Sequence version of the Proxy. If the ProxyConsumer   and ProxySupplier interfaces maintained a readonly attribute that    distinguishes each Proxy"s type, however, it would be easier for    clients to walk through a list of Proxies obtained by performing    a "get" operation on an Admin, and determine which type of Proxy each   entry is.           

Resolution:
Revised Text:
Actions taken:
August 4, 1998: received issue
February 23, 1999: closed issue

Discussion:


Issue 1791: Move name up to PropertyErorr and create a NamedPropertyRange struct (notif_service-rtf)

Click
here for this issue's archive.
Nature: Uncategorized Issue
Severity:
Summary:
Summary: I have an issue which CORBA Notification specification in the area of   Properties.      In CosNotification.idl PropertyError the name of the property in error   is burried the PropertyRange. This seems to have been done for reuse in   the PropertyRangeSeq. It is confusing and likely to cause error. I   suggest we move name up to PropertyErorr and create a NamedPropertyRange   struct.        

Resolution:
Revised Text:
Actions taken:
August 10, 1998: received issue
February 23, 1999: closed issue

Discussion:


Issue 1792: Remove the use of CosTrading property types (notif_service-rtf)

Click
here for this issue's archive.
Nature: Uncategorized Issue
Severity:
Summary:
Summary: [the following is raised as a separate issue] Lets remove the use of CosTrading property types.   This is an unnecessary dependancy for such simple types.    

Resolution:
Revised Text:
Actions taken:
August 10, 1998: received issue
February 23, 1999: closed issue

Discussion:


Issue 1793: Dependance on CosTrading (notif_service-rtf)

Click
here for this issue's archive.
Nature: Uncategorized Issue
Severity:
Summary:
Summary: We re-use the type CosTrading::PropertySeq in the Notification IDL,   and this is the only this that"s re-used from this module. The result   is that code in C++ and Java implementing the entire CosTrading IDL   stubs in linked or loaded into a running Notification Service. This   creates an unacceptable bloat for such a trivial re-use.       

Resolution:
Revised Text:
Actions taken:
August 10, 1998: received issue
February 23, 1999: closed issue

Discussion:


Issue 2008: Removal of explicit Transactional interfaces (notif_service-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: As a result of the deprecation of the TransactionalObject interface    defined by the recently adopted CORBA Messaging specification, it is no   longer necessary for the Notification Service to explicitly define    transactional client and proxy interfaces. Instead, descriptive text should   be added to Chapter 2 explaining how an implementation of Notification   should support transactional event tranmission.       

Resolution:
Revised Text:
Actions taken:
September 28, 1998: received issue
February 23, 1999: closed issue

Discussion:


Issue 2113: Editorial issue (notif_service-rtf)

Click
here for this issue's archive.
Nature: Uncategorized Issue
Severity:
Summary:
Summary: QoSAdmin::get_qos and QoSAdmin::set_qos are spelled get_QoS and set_QoS in   paras 3.1.4.1 and 3.1.4.2.    

Resolution:
Revised Text:
Actions taken:
October 21, 1998: received issue
February 23, 1999: closed issue

Discussion:


Issue 2114: Cardinalities for "imports" and "inherits" wrong (notif_service-rtf)

Click
here for this issue's archive.
Nature: Uncategorized Issue
Severity:
Summary:
Summary: The UML diagram in appendix A of the Notification Service has the   cardinalities for "imports" and "inherits" associations the wrong way   around. This makes it inconsistent with the description text and MODL.      Proposed resolution: The "imports" association should be [0..*] to   [0..*], and "inherits" should be 1 to [0..*].    

Resolution:
Revised Text:
Actions taken:
October 21, 1998: received issue
February 23, 1999: closed issue

Discussion:


Issue 2120: Suspension of connections (notif_service-rtf)

Click
here for this issue's archive.
Nature: Uncategorized Issue
Severity:
Summary:
Summary: This issue relates to the ability provided in Notification Service   ProxyPushSuppliers for a consumer to suspend a connection to the channel   (stop the channel pushing events to it) which is unavailable to the   other passive clients of the service - pull suppliers.       The problem arises because, without the ability for a pull supplier to   suspend a connection, its only choices are           (a) to block the return of a pull() call until it is able to   	supply an event - resulting in some ORB-dependent timeout on   	the call, or a blocked thread in the channel.          (b) to reply to many unnecessary try_pull() calls with a FALSE   	result - expecting that the channel will use some sort of   	backoff algorithm.          (c) to disconnect from the proxy and obtain a new one when it is   	ready to supply events again  - causing significant overhead   	for both itself and the channel.   I suspect that we only provided one set of suspend/resume operations   because the only circumatance we considered in the design was data   overrun at consumer clients. We ignored the traditional symmetry, and   neglected "under-run" and its less disasterous, but still significant   problems.       

Resolution:
Revised Text:
Actions taken:
October 27, 1998: received issue
February 23, 1999: closed issue

Discussion:


Issue 2121: Another issue related to suspend/resume connection (notif_service-rtf)

Click
here for this issue's archive.
Nature: Uncategorized Issue
Severity:
Summary:
Summary: I would like to register another issue related to suspend_connection   and resume_connection. I feel a new exception should be defined for each   of these operations, to cover the case in which a client invokes one   of these operations on a Proxy which has not yet been connected to by   a client. Currently, it is possible for a client to invoke one of these   operations on a Proxy that is not connected to a client, but there is   no appropriate exception to raise. 

Resolution:
Revised Text:
Actions taken:
October 27, 1998: received issue
February 23, 1999: closed issue

Discussion:


Issue 2153: CosNotifyChannelAdmin::ConsumerAdmin::obtain_notification_X_supplier oper (notif_service-rtf)

Click
here for this issue's archive.
Nature: Uncategorized Issue
Severity:
Summary:
Summary: The CosNotifyChannelAdmin::ConsumerAdmin::obtain_notification_X_supplier   operation, when asked for a proxy for a ClientType of ANY_EVENT,   returns a proxy that is unuasable by event service clients.      The reason is that the CosNotifyChannelAdmin::ProxyXSupplier interface   returned inherits only from CosEventChannelAdmin::XSupplier, and then   redefines the connect operation that was available in CosEventChannelAdmin::   ProxyXSupplier as connect_any_x_supplier. The interface can never be   narrowed to CosEventChannelAdmin::ProxyXSupplier, and therfore is   unusable by the Event Service style client.       

Resolution:
Revised Text:
Actions taken:
October 30, 1998: received issue

Discussion:
: 


Issue 2157: .Clarification of pull_structured_events definition (notif_service-rtf)

Click
here for this issue's archive.
Nature: Clarification
Severity:
Summary:
Summary: Section 3.3.13.1 pull_structured_events      "...the amount of time a supplier will accumulate events into the sequence   before transmitting it...are controlled bu QoS property settings as described   in section 2.5.5."      Followed in the next paragraph by:      "...Note that the operation will block until there is a sequence available   to return."      Proposed resolution:      The final sentence quoted should read:      " Note that the operation will block until there is a sequence available   to return unless overridden by QoS pacing policies."      Alternatively the final sentence could be deleted..       

Resolution:
Revised Text:
Actions taken:
November 2, 1998: received issue
February 23, 1999: closed issue

Discussion:
 


Issue 2203: Notification Constraint language problem (notif_service-rtf)

Click
here for this issue's archive.
Nature: Uncategorized Issue
Severity:
Summary:
Summary: Section 2.4.3 (final bullet) says:          * When a boolean operand is used in an arithmetic operation, it is   	treated as weakly-typed CORBA::Long.      This is semantically very dubious. What value is used for TRUE and   FALSE? 1 and 0 perhaps? This results in "TRUE + TRUE == 2" producing a   match and "TRUE / FALSE" producing a divide by zero error!    

Resolution: Added text at end of 3rd bullet from top of new page 45
Revised Text:
Actions taken:
November 11, 1998: received issue
November 16, 1999: closed issue

Discussion:
Synopsis: DSTC questioned the final bullet in section 2.4.3 which states that,              with respect to the constraint grammar, boolean values are treated              as weakly typed CORBA::Longs when used in arithmetic operations.              In their message raising this issue, DSTC complained that this is              semantically weak, although they added that some members of DSTC              actually like this feature.                  DSTC proposed two alternative solutions to this issues:                  1) Get rid of the feature by changing the bullet to state that usage                 of boolean values in an arithmetic operation is a type mismatch                 error, causing whatever "match" operation within which they are                  used to fail                  2) Clarify that the value of TRUE and FALSE, when used in arithmetic                 operations, correspond to 1 and 0 respectively        Disposition: We at NEC like this feature, and feel it is both required and                 standard with the way CORBA treats boolean values. We feel it's                 required because it allows the constraint grammar to handle                 expressions that combine the results of boolean comparisons,                  which we feel is typically expected of a constraint grammar                 (e.g., ($.fruit = apples) + ($.color = red) +                     ($.kind = macintosh) > 2)                     Furthermore, while we have no fundamental opposition to explicitly                 stating that TRUE=1 and FALSE=0, we don't necessarily feel it's                 necessary because section 12.3.1 of CORBA alread states that                  "Boolean values are encoded as single octets, where TRUE is the                 value 1, and FALSE is 0." Essentially, we feel CORBA already                  defines TRUE to be 1 and FALSE to be 0, however we are not                  opposed to adding such a statement into Notification if folks                  feel it's necessary.        VOTE: This vote is being subdivided into 2203a and 2203b. Voting YES on          2203a means to accept option 1) described above. Voting YES on          2203b means to accept option 2) described above. Voting NO means to          do nothing. It is invalid to vote YES on both 2203a and 2203b.        NOTE: Only 2203b passed    


Issue 2211: The term name-value pair is not well defined (notif_service-rtf)

Click
here for this issue's archive.
Nature: Uncategorized Issue
Severity:
Summary:
Summary: 1) The term name-value pair is not well defined in the Notification   document.       Suggested resolution:      We need to decide as a group to explicitly state that either only   CosNotification::PropertySeq is supported (as well as structutally   equivalent types only when IIOP messages elide member naming or IR   info), OR that any structurally equivalent type is supported.   I would favour the former - as it allows implementers to rely on the   TypeCode::equal() operation to do comparisons portably rather   than doing explicit traversals of the typecode.    

Resolution: Added text to 2nd paragraph of section 2.5.2
Revised Text:
Actions taken:
November 16, 1998: received issue
November 16, 1999: closed issue

Discussion:
Synopsis: DSTC feels that the term "name-value pair" is used too freely               throughout the spec without a clear definition of what's meant by              it. They suggested that we should either explicitly state that               either CosNotification::PropertySeq must be used wherever a              name-value pair is called for (except where IIOP messages elide              member naming or IR info, in which case structurally equivalent types              may be used instead), or that any structurally equivalent type can              always be substituted for a CosNotification::PropertySeq. DSTC              mentioned that their preference is the former, as it allows for               explicit, portable type comparisons rather than requiring typecode              traversal to do type checking.        Disposition: I have no objection to DSTC's first proposed resolution,                 except that I do not understand the parenthetical part, which                 I abstracted from DSTC's original mail describing the issue to                 make sure it wasn't dropped, even though I don't understand it.                 Essentially, I feel DSTC wants Notification to explicitly state                 the name-value pairs used throughout Notification must always                  be the data type CosNotification::PropertySeq, and not some                  structural equivalent, except in one exception case which I'm not                 quite clear about. Once DSTC clarifies this last part, I would                  be happy to incorporate the suggested change.        VOTE: YES means to add text clarifying that name-value pairs in Notification          are always of type CosNotification::PropertySeq; NO means to do nothing    


Issue 2212: Footnote on page 34 (notif_service-rtf)

Click
here for this issue's archive.
Nature: Uncategorized Issue
Severity:
Summary:
Summary: 2) I note that a footnote on page 34 of the spec says that the term   "name-value pair" is not meant to denote CORBA::NVList, but it doesn"t   actually say what it does mean. This should be fixed too (before table   2.2 where it"s used first).    

Resolution: Added text to footnote on page 34
Revised Text:
Actions taken:
November 16, 1998: received issue
November 16, 1999: closed issue

Discussion:
Synopsis: This issue is related to issue 2211. There is currently a footnote               on the bottom of page 34 which states that the term "name-value               pair", as used thoroughout Notification, should not be construed to              mean CORBA::NVList. However, the footnote does not clearly state              what "name-value pair" does mean. The proposed resolution is to add              text to the footnote to clarify that "name-value pair" means              CosNotification::PropertySeq        Disposition: I agree with the issue and the proposed resolution.        VOTE: YES means to add the recommended text to the footnote; NO means to do          nothing    


Issue 2213: The section 2.4.5 (notif_service-rtf)

Click
here for this issue's archive.
Nature: Uncategorized Issue
Severity:
Summary:
Summary: 3) The section  2.4.5 - "A Short-hand Notation for Filtering   a Generic Event" is supposed to provide a way of addressing all event   types, IMO including typed event transmissions that appear within an   Any as a CosNotification::PropertySeq with properties for the   operation name and each parameter.   Some text should be included which states that $<ident> matches not   only $.<ident> for anys, but also $(<ident>) in the case where the any   contains a single CosNotification::PropertySeq.    

Resolution: Added text to end of 2nd to last paragraph in section 2.4.5 (the 2nd change bar on page 47)
Revised Text:
Actions taken:
November 16, 1998: received issue
November 16, 1999: closed issue

Discussion:
Synopsis: It was pointed out that the short-hand notation for filtering               generic events described in section 2.4.5 does not clearly              indicate the notation can be used to designate typed events              that have been wrapped into an Any as a CosNotification::PropertySeq.              It was proposed to add text to this section to indicate that               $<ident> matches not only $.<ident> for Anys, but also $(<ident>)              in the case the Any contains a single CosNotification::PropertySeq.        Disposition: I agree with the issue and proposed resolution. Specifically,                 I propose to modify the last sentence of the 4th paragraph                 of section 2.4.5 to read:                     "If no match is found, the translation defaults to either                 $.variable, or in the case of a CORBA::Any that encapsulates                  a single unnamed name-value pair list (Sec 2.4.4), $(variable)."        VOTE: YES means to add the proposed text; NO means to do nothing


Issue 2216: Issue with the algorithm for evaluating $<variable> expressions (notif_service-rtf)

Click
here for this issue's archive.
Nature: Uncategorized Issue
Severity:
Summary:
Summary: The algorithm for evaluating $<variable> expressions does not       allow for $domain_name and $type_name to be used.    

Resolution: Added text to middle of 2nd to last paragraph in section 2.4.5 (the 1st change bar on page 47)
Revised Text:
Actions taken:
November 17, 1998: received issue
November 16, 1999: closed issue

Discussion:
Synopsis: Section 2.4.5 describes an algorithm for evaluationg $<variable>              expressions. As currently stated, the algorithm would not allow              for $domain_name and $type_name to be used, since the text states              that it can only be applied to resolve simple-typed members of              $.header.fixed_header, when in fact the domain_name and type_name              members of the fixed header are nested within the EventType              structure, and are therefore non-simple-typed members. The proposed              resolution is to re-word the relevant text to state the the              algorithm can resolve $domain_name, $type_name, and $event_name to              $.header.fixed_header.event_type.domain_name,                $.header.fixed_header.event_type.type_name, and              $.header.fixed_header.event_name, respectively.         Disposition: I agree with the issue and the proposed resolution. The current                 text is legacy from before the fields in question were made part                 of a complex data type.        VOTE: YES means to re-word the text as recommended; NO means to do nothing


Issue 2217: Not all references to event types have been updated (notif_service-rtf)

Click
here for this issue's archive.
Nature: Uncategorized Issue
Severity:
Summary:
Summary: Not all references to event types have been updated to refer to   the correct IDL type names:      struct EventType {   	string domain_name;   	string type_name;   };    

Resolution: fix see below
Revised Text: I used "Find" to find all errant occurances of "domain_type" and "event_type". I made appropriate changes in following places: Table 2-2, Figure 2-2, 2nd paragraph after Fig 2-2, filtering example in section 2.3, 2nd to last paragraph in section 2.8, section 3.1.1.1.
Actions taken:
November 17, 1998: received issue
November 16, 1999: closed issue

Discussion:
Synopsis: An older, pre-adoption revision of the spec defined the fixed header              of a structured event to contain string type members named               "domain_type" and "event_type". Prior to adoption of the spec, this              was changed to be the following data structure                        struct EventType {                            string domain_name;                            string type_name;                    };                  The submitter of this issue pointed out several places in the              spec where the legacy fixed header member names "domain_type"              and "event_type" are still used, and recommends they be changed              to make them consistent with the actual member names.        Disposition: I agree with the issue and the proposed resolution        VOTE: YES means to make the recommended changes; NO means to do nothing


Issue 2219: Text on p. 54 describing applicability of EvenReliability QoS out of date (notif_service-rtf)

Click
here for this issue's archive.
Nature: Uncategorized Issue
Severity:
Summary:
Summary: The text on page 54 describing the applicability of EventReliability   QoS is out of date:      	"Note that the QoS properties related to reliability can be   	set at the channel, group, and proxy levels, but not on an   	individual event basis."    

Resolution: Reworded last paragraph in Reliability section of section 2.5.5
Revised Text:
Actions taken:
November 18, 1998: received issue
November 16, 1999: closed issue

Discussion:
Synopsis: There is text on page 54 that states that the EventReliability              QoS property can be applied per-Channel, per-Admin, and per-Proxy              but not per-event. Elsewhere in the spec, it claims EventReliability              can be applied per-Channel and per-event. The proposed resolution              is to change the text on page 54 to make it consistent with the              rest of the spec.        Disposition: I agree with the issue and the proposed resolution        VOTE: YES means to make the recommended change; NO means to do nothing    


Issue 2220: Explicit statement missing in contraint grammar (notif_service-rtf)

Click
here for this issue's archive.
Nature: Uncategorized Issue
Severity:
Summary:
Summary: Issue: No explicit statement is given in the contraint grammar about   which operators apply to enumerated types.      Suggested solution:      Only equality and inequality operators (== != >= > < <=) should be   defined as legal on enums... as these are all that CORBA requires are   available in a language mapping.    

Resolution: fix see below
Revised Text: 2 changes in section 2.4.3: 1) Added "enum" as one of the types an operand could be classfied as (2nd change bar on page 45), 2) Added a bullet towards the bottom of page 45 stating that only equality and inequality operations apply to enums (3rd change bar on page 45).
Actions taken:
November 18, 1998: received issue
November 16, 1999: closed issue

Discussion:
Synopsis: No explicit statement is made in the description of the constraint              grammar about which operators can be applied to enumerated types.              The proposed resolution is to add text stating that only               equality and inequality (== != >= <= > <) can be applied to enums.        Disposition: I agree with the issue and the proposed resolution        VOTE: YES means to add the recommended text; NO means to do nothing


Issue 2229: Inconsistency on p 54 (notif_service-rtf)

Click
here for this issue's archive.
Nature: Revision
Severity:
Summary:
Summary: Just a minor note to page 54 in the 98-11-01 spec. In the last paragraph   of the Reliability section, you say that EventReliability can be set   both at channel, admin and group level. This is inconsistent with Table   2-4. If the table is correct you should probably remove that last   paragraph completely as I think it makes sense to set   ConnectionReliability at any level.    

Resolution: Fix for issue 2219 also fixed this problem
Revised Text:
Actions taken:
November 30, 1998: received issue
November 16, 1999: closed issue

Discussion:
Synopsis: This issue points out text on page 54 that claims the EventReliablity              QoS property can be applied to an EventChannel, Admin, or Proxy.              Table 2-4 which summarizes which QoS properties apply to which              objects indicates EventReliability can be applied to an EventChannel,              or on a per-message basis. The proposed resolution is to modify the              text to make it consistent with the table.         Disposition: I agree with the issue and the proposed resolution        VOTE: YES means to make the recommended change; NO means to do nothing      


Issue 2297: Unnecessary restriction defined on Mapping Filters (notif_service-rtf)

Click
here for this issue's archive.
Nature: Uncategorized Issue
Severity:
Summary:
Summary: The sections in Chapter 3 that discuss the semantics of priority_filter and   lifetime_filter associated with Proxy objects indicate that Mapping Filters   associated with Proxy objects are only applied if there is no equivalent   Mapping Filter defined for the Admin that created the Proxy. If there   is a Mapping Filter defined at the Admin level, the one defined at the   Proxy level is ignored.      We feel this restriction is unnecessary, and in some cases even undesirable.   We thus feel the text that indicates this semantic should be removed wherever   it appears.    

Resolution: fix see below
Revised Text: Added sentence to next to last paragraph of section 2.3.1. Rewordedsections 3.4.15.4 and 3.4.15.5.
Actions taken:
January 7, 1999: received issue
November 16, 1999: closed issue

Discussion:
Synopsis: The sections in Chapter 3 that discuss the semantics of               priority_filter and lifetime_filter associated with Proxy objects              indicate that Mapping Filters associated with Proxy objects are              only applied if there is no equivalent Mapping Filter defined              for the Admin that created the Proxy. If there is a Mapping              Filter defined at the Admin level, the one defined at the Proxy              level is ignored. We (NEC) feel this restriction is unnecessary,              and in some cases undesirable, as it may be desirable to define              a Mapping Filter at the Proxy level which overrides that set at              the Admin level. Our proposed resolution is to remove the text              that states this restriction.        Addendum: This issue was re-raised recently. The current consensus seems to              be that the text should explicitly say that the MappingFilter at              the Proxy level overrides on set at the Admin level.        Disposition: I agree with the issue and the proposed resolution described in                 the addendum.        VOTE: YES means to change the text according to the addendum. NO means to do          nothing.      


Issue 2433: CosNotification -- MaxEventsPerConsumer = 0 for infinity? (notif_service-rtf)

Click
here for this issue's archive.
Nature: Uncategorized Issue
Severity:
Summary:
Summary: The CosNotification spec is careful to say that, for the administrative   properties (MaxQueueLength, MaxConsumers and MaxSuppliers), the default    value is zero, and it means that there is no limit.      As far as I can see there is not similar wording for the QoS property   MaxEventsPerConsumer.  Two questions that should probably be answered are:            -	is there a magic value that means "no limit"?            -	what is the default value if it"s not eqplicitly set at any level?      I would suggest that, for consistency with MaxQueueLength, the magic value   should be 0, and the default should be that same value.    

Resolution: Added sentence to end of MaxEventsPerConsumer section of section 2.5.5
Revised Text:
Actions taken:
February 3, 1999: received issue
November 16, 1999: closed issue

Discussion:
Synopsis: The spec states that a 0 value for MaxQueueLength, MaxConsumers              and MaxSuppliers means those QoS properties impose no limited on              the entity they are intended to constrain. The is not similar              wording for MaxEventsPerConsumer. The proposed resolution is to              add similar wording for MaxEventsPerConsumer, making 0 be the              default value meaning there is no limit on the number of events              that can be queued per consumer.          Disposition: I agree with the issue and the proposed resolution        VOTE: YES means to add the recommended text; NO means to do nothing    


Issue 2434: Default values for PacingInterval and MaximumBatchSize QoS properties? (notif_service-rtf)

Click
here for this issue's archive.
Nature: Uncategorized Issue
Severity:
Summary:
Summary: Are there any default values for the PacingInterval and MaximumBatchSize QoS   properties? The default value for PacingInterval could be 0 meaning that a   sequence type consumer is willing to wait indefinitely for an event sequence.   But the MaximumBatchSize can"t be 0 as both zero and an indefinite number of   events are infeasible (an exception could be raised if this QoS is set to a   value less than 1).    

Resolution: Added sentences to end of MaximumBatchSize and PacingInterval sections in section 2.5.5
Revised Text:
Actions taken:
February 3, 1999: received issue
November 16, 1999: closed issue

Discussion:
Synopsis: The spec does not define what the default values for PacingInterval              and MaximumBatchSize are. Furthermore, the meaning of 0 for those              properties is unclear. The proposed resolution is to make 0 be              the default for PacingInterval, and have it mean that the client              is willing to wait indefinitely for the batch to fill up, but              the author of the issue was not sure how to handle the default              value and meaning of 0 for MaximumBatchSize.        Disposition: I agree that the default value for PacingInterval should be 0,                 and that it should mean the Proxy on which it is set will never                 forward a "partial" batch, instead waiting for MaximumBatchSize                 events to accumulate before forwarding the any batch. As for                 MaximumBatchSize, I propose that the default value be 1, for                 lack of a better default value (really, the user should always                 explicitly set this property if using sequence proxies).                 Furthermore, I feel (like the author of the issue) that an attempt                 to set MaximumBatchSize to 0 should cause the UnsupportedQoS                  (BAD_VALUE) exception to be raised.        VOTE: YES means to make the changes described above in the "Disposition"          section; NO means to do nothing


Issue 2448: EventType IDL typos (notif_service-rtf)

Click
here for this issue's archive.
Nature: Uncategorized Issue
Severity:
Summary:
Summary: The Notification Service IDL EventType contains the element domain_name.   In the text of the specification this is refered to as domain_type on   pages 28, 29, 33, 37, 79 etc.        

Resolution: Fix to issue 2217 fixed this problem
Revised Text:
Actions taken:
February 10, 1999: received issue
November 16, 1999: closed issue

Discussion:
Synopsis: Essentially, this issue is a duplicate of issue 2217. It points out              that in several places throughout the spec the fixed header field              "domain_type" is mentioned, when the field its referring to is              really named "domain_name" in the IDL.        Disposition: The issue points out obvious typos which should be fixed in the                  next revision.        VOTE: YES means to make the recommended changes; NO means to do nothing


Issue 2460: EventTypeRepository class issue (notif_service-rtf)

Click
here for this issue's archive.
Nature: Uncategorized Issue
Severity:
Summary:
Summary: In Appendix A it is stated that "the EventTypeRepository class only has   one instance in any given implementation of the Repository". At the same   time, there is a package interface and a package factory that implies   that it"s possible to create multiple repositories (unless the   NotificationTypesPackage interface is expected to always returns the   same objects, no matter how many packages one have created).    

Resolution:
Revised Text:
Actions taken:
February 19, 1999: received issue

Discussion:


Issue 2501: Premature in eliminating Txn interfaces? (notif_service-rtf)

Click
here for this issue's archive.
Nature: Uncategorized Issue
Severity:
Summary:
Summary: I feel there is a flaw in the model described in the current Notification    Service spec for supporting Transactional Notification.    

Resolution:
Revised Text:
Actions taken:
March 3, 1999: received issue

Discussion:


Issue 2512: suspend_connection/resume_connection messages - issue (notif_service-rtf)

Click
here for this issue's archive.
Nature: Uncategorized Issue
Severity:
Summary:
Summary:     The  suspend_connection/resume_connection messages do not describe what should happen  to messages that are queued up.  Are new messages rejected for the duration  between the disconect and resume?  Are messages that were queued up  flushed?  How does the Persistent Event Reliablity QoS effect the way both  are handled? size=2>  Along  the same lines, what happens to events when a consumer disconnects?  I  assume events in this case would be lost. 

Resolution:
Revised Text:
Actions taken:
March 4, 1999: received issue

Discussion:


Issue 2554: Filter evaluation in pull mode (notif_service-rtf)

Click
here for this issue's archive.
Nature: Uncategorized Issue
Severity:
Summary:
Summary: It is unclear from the spec when filters are evaluated in pull mode. For   suppliers there"s no problem as the filter is evaluated when the event   is received. On the consumer side, the filter can either be evaluated   when the event is entered into an internal queue (i.e. when the supplier   proxy "receives" the event) or when the consumer decides to pull the   event.      This is only a problem when a filter constraint contains the $curtime   reserved run-time variable. Perhaps the most intuitive for a user is   filter evalution at pull time? However, the implications can be quite   significant for sequence type consumers when invoking the   try_pull_structured_events operation. The proxy will have to match all   required events against the filters - and if there"s not enough events   all filter results must be discarded.    

Resolution: Added 2 sentences to 5th paragraph after constraints examples in section 2.3
Revised Text:
Actions taken:
March 29, 1999: received issue
November 16, 1999: closed issue

Discussion:
Synopsis: The spec does not currently state when filtering is performed in              the case of pull-style consumers pulling events from pull-style               proxy suppliers. This is mainly an issue when filtering is done               based on $curtime. The submitter of this issue recommends that              filtering be done when the consumer actually invokes "pull", but              points out that the issue becomes very tricky in the case of              sequence pull consumers invoking a "try_pull_structured_events".        Disposition: My personal recommendation is that if the spec is going to                  specify when filtering is performed in the case of pull-style                 proxy suppliers, that it be specified to be done immediately as                 the proxy receives events (and not delay the filtering until the                 consumer invokes "pull" as recommended by the issue submitter).                 The main reason for this is to keep the implementation more                 straightforward. In general, there will be complications using the                 delayed semantic with regard to the "try_pull" varients because                 the results of "try_pull" on the same set of events would be                 variable over time if filtering is delayed until "try_pull" is                 attempted. For instance, "try_pull" may return TRUE if an event                 exist that is being filtered based on $curtime, and the event                 passes the filter when "try_pull" is invoke. Then, the consumer                 would invoke "pull" assuming an event existed, but the "pull"                 could result in the event being filtered based on $curtime. Now,                 the pull consumer would block due to no event being available                 to pull, even though the consumer had intentionally postponed                 doing "pull" until "try_pull" returned TRUE.                      So, my recommendation would be to specify the semantic such that                 filtering is done only when the proxy supplier first queues the                 event. If this semantic is well-defined, consumers can construct                 their filters accordingly, and be aware of what will happen when                 they specify constraints based on $curtime.        VOTE: YES means to add text to the spec specifying that filtering by pull-style          ProxySuppliers is performed prior to the proxy queuing the event to make          it available for pulling (i.e., as soon as the Proxy receives the event).          NO means to do nothing.


Issue 2555: Semantics of Disconnected exception (notif_service-rtf)

Click
here for this issue's archive.
Nature: Uncategorized Issue
Severity:
Summary:
Summary: It would be nice if the spec explicitly stated what happens when a pull   supplier or push consumer raises the Disconnected exception. One way to   look at it is that when the client raises Disconnected it no longer   wants to send or receive any events and it"s basically disconnected   (i.e. the same as if the disconnect_xx_yy operation was invoked).      I believe this is an issue because the disconnect_xx_yy operation   controls the lifecycle of the proxy. If the above interpretation is   valid, the proxy will be destroyed when the client raises Disconnected.   Alternatively, the proxy could just change its state back to not   connected (the same state as when the proxy was just created by an admin   object).    

Resolution: resolved, see below
Revised Text: Added text to end of 1st paragraph in sections 3.3.71., 3.3.9.1, 3.3.9.2, 3.3.11.1, 3.3.13.1, 3.3.13.2
Actions taken:
March 29, 1999: received issue
November 16, 1999: closed issue

Discussion:
ynopsis: The spec does not define specifically what happens when an endpoint              pull-supplier or push-consumer raises the Disconnected exception.              The submitter of the issue mentions one interpretation is that              when an endpoint client raises Disconnected, it no longer wants to              send/receive events and is basically disconnected. He adds that this              is an issue because being disconnected has object lifecycle               implications for the proxies that the clients are connected to...              essentially being disconnected implies that the proxies no longer              exists. So, one possible semantic that could be defined is that the              proxy that the client is connected to could invoke its own              disconnect_xx_yy operation to force the proxy to be cleaned up.               Another possible semantic, however, is that the proxy could change              its state back to existing but being not connected, such as it              was when it was created and prior to the client connecting.                  The submitter of the issue goes on to say that it would be useful              to specify in what states (i.e., between CONNECTED, NOT_CONNECTED,              SUSPENDED, and DESTROYED) event type information is propagated              through the NotifyPublish/NotifySubscribe interfaces.            Disposition: Regarding the main issue, I feel the issue author's first                  recommendation is correct...the semantic should be that if                 an endpoint raises the "Disconnected" exception during a proxy's                 attempt to send/receive an event, the proxy's disconnect_xx_yy                 method should be invoked to destroy the proxy. As the issue                 author pointed out, the intended semantic of Notification is                 such that when a client disconnects, its proxy should be                  destroyed. This implies that proxies are not intended to be                 reused by multiple clients. If the proxy is attempting to perform                 event transmission to/from its client, then this implies the                  client had explicitly connected at some point. If the client                 later on decides it is disconnected, then the proxy should update                 its state to be consistent. This means that the proxy should be                 destroyed.                     And, regarding the second part of the issue, I feel event type                 information should be propagated to a client when its proxy is                 in the CONNECTED or SUSPENDED state. Note that a client can                 turn off event type propagation at any time by invoking the                 obtain_*_types operation on its proxy with an argument of                 ALL_NOW_UPDATES_OFF or NONE_NOW_UPDATES_OFF.        VOTE: YES means to add text specifying that when a client raises the           "Disconnected" exception, its proxy's disconnect_xx_yy method is          automatically invoked to destroy the proxy, and to add text that states          event type information is propagated to a client in the CONNECTED or          SUSPENDED state. NO means to do nothing.      


Issue 2652: Modify the DiscardPolicy text, paragraph 1 page 56 (notif_service-rtf)

Click
here for this issue's archive.
Nature: Uncategorized Issue
Severity:
Summary:
Summary: The description of when and how to apply discard policies is ambiguous.     It is unclear whether the discard policy is intended to be applied on    the events in their original order or as ordered by an order policy.    

Resolution: resolved, see below
Revised Text: Made several changes to section 2.5.7. Made corresponding changes to Discard Policy section of Section 2.5.5. Made appropriate changes to IDL in Table 3.1 and Table B.1 (removed RejectNewEvents as possible setting of DiscardPolicy, added RejectNewEvents as a possible Admin property).
Actions taken:
May 18, 1999: received issue
November 16, 1999: closed issue

Discussion:
Synopsis: The issue submitter feels that description of when and how to apply              discard policy is ambiguous with respect to whether the policy is              intended to be applied on the events in their original order or as              ordered by an order policy. The issue submitter proposed the               following rewording of paragraph 1 on page 56:                  "This QoS property enables a user of the Notification Service to              specify in what order the channel should begin discarding events              in the case of an internal buffer overflow."                  "If a discard policy is set on a channel, it is applied when the               total number of events already queued in the channel is equal to              the MaxQueueLength administrative property (defined in               section 2.5.7). If set on a per-ConsumerAdmin basis, the discard              policy is applied when the number of events queued on behalf of one              of the consumers exceeds the MaxEventsPerConsumer QoS property for              that consumer. If set on a per-proxy basis, the discard policy is              applied whenever the number of events queued on behalf of the               connected consumer exceeds the MaxEventsPerConsumer setting for the              proxy supplier. In the latter two cases, an event is discarded only              with respect to its scheduled delivery to the consumer(s) on whose              behalf the policy is being applied. Events queued for delivery to a              consumer for which the discard policy does not apply are not affected              and remain queued for that consumer."                  "In all cases, discard policies are applied after the event has been              received and queued. The RejectNewEvents discard policy is the only              exception as it is applied before the event is queued."                 In addition, the issue submitter proposed the following rewording             for the descriptions of the LifeOrder and FifoOrder discard policy             settings:                 "FifoOrder - The first event in the queue is the first discarded."             "LifeOrder - The last event in the queue is the first discarded."                The above is the original proposed resolution, and is now considered            resolution 2652a. Below are proposed resolutions 2652b and 2652c:                First, the background for the new proposed resolution:                There are some issues that appear in connection with the DiscardPolicy            that are hinted at in the issue (2652) description, but not addressed            in the text for the resolution. I think we need to seriously consider            amending the resolution to fix these:                1) RejectNewEvents not appropriate at any level other than EventChannel                    The RejectNewEvents value of DiscardPolicy is now the _default_                value. BUT this value is meaningless at Admin and Proxy levels (I                assume that we don't want the behaviour that setting RejectNew on                any SupplierProxy results in all ConsumerProxies rejecting push                calls (or not making any further pull calls) until the                SupplierProxy's queue has space again - and I can't think of any                other plausible semantics). Therefore its inheritance as the value                for created Admins and Proxies is inappropriate. There are several                ways in which this can be fixed:                Here are the proposed alternative resolutions. Note that I've             relabel them as b) and c), so that the initial proposed resolution            can be considered resolution a).                b) [Minimal change model] State somewhere that although this value                    is the default at the Channel, that when Admins and Proxies                    are created the value that they inherit when RejectNewEvents                    is set at the Channel will be Any.                        Note that this is really a quick and dirty fix, as it breaks                    the QoS inheritance model, and (c) provides a more considered                    approach.                c) [is RejectNew really a DiscardPolicy?] Given that the                    inheritance of DiscardPolicy to Admins and their Proxies makes                    sense when its value is set to anything other than RejectNew,                    it seems that this value is inappropriate for this policy. In                    fact, because the value applies only at the channel level, it                    seems that it would be better to have it as a separate                    property (rather than an "orthogonal value" of an existing                    property). AND it seems that this property would be better                    grouped with other properties that apply to the channel as a                    whole - the Admin Properties. It would be a boolean valued                    property with the semantics:                        TRUE: when queue resources for the channel are full, do not                        discard events - rather suspend all pull calls from Proxy                        Pull Consumers, and raise a <Name of System Exception>                        exception to all incoming push calls on Proxy Push                        Consumers.                        FALSE: when queue resources for the channel are full apply the                        Discard Policy to avoid overruns at each appropriate                        object where there is a queue.                        With this resolution the Any value for Discard Policy would                    become the default.            Disposition: I personally have no strong feelings about this issue, since                 we (NEC) feel that DiscardPolicy only makes sense on a                  per-channel basis anyway. But, I'll go along with option c),                 since technically it is the most correct.        VOTE: Voters can vote YES to at most one of 2652a, 2652b, or 2652c. Voting          YES to one of these means that proposed resolution is the one of choice          for your company. Voting NO to all 3 is also valid, and means that no          change should be made with regard to this issue.        NOTE: Only 2652c passed    


Issue 2653: To add to "Reliablity" text, Page 54 after paragraph 3. (notif_service-rtf)

Click
here for this issue's archive.
Nature: Uncategorized Issue
Severity:
Summary:
Summary: The current description of the Reliability quality of service settings   allows the possibility of modifying quality of service values in    a way that would violate validatation rules.    

Resolution: Added text to bottom of Reliability section of Section 2.5.5.
Revised Text:
Actions taken:
May 18, 1999: received issue
November 16, 1999: closed issue

Discussion:
Synopsis: The current description of the Reliability QoS settings allows the              possibility of modifying QoS values in a way that would violate              validation rules. The issue submitter proposes to add the following              text to the "Reliability" description on page 54 after paragraph 3:                  "The validity of quality of service reliability level modifications              depends on the state of Notification Service objects. In general,              reliability levels may not be modified after a "child" object has              been created. Such modifications may violate quality of service              validation rules of the Notification Service."                  "Specifically,                        - modifying the event channel reliability setting through                      set_qos after ConsumerAdmin or SupplierAdmin objects have                      been created is invalid, and                        - modifying the ConsumerAdmin or SupplierAdmin reliability                      settings through set_qos after proxy supplier and proxy                      consumer objects are created is invalid.        Disposition: I personally do not have any real objection to these proposed                 restrictions on implementations, but I'm not entirely convinced                 they are necessary. We have had extensive e-mail discussions                 about this issue, and I've never fully been convinced that these                 changes are necessary. I would probably vote "abstain" on a vote                 for this issue, and leave it to the consensus to determine whether                 or not to incorporate the proposed changes.        VOTE: YES means to make the changes recommended by the issue author.          NO means to do nothing.    


Issue 2654: Modify RejectNewEvents description, paragraph 8 page 56 (notif_service-rtf)

Click
here for this issue's archive.
Nature: Uncategorized Issue
Severity:
Summary:
Summary: The description of the RejectNewEvents does not sufficiently constrain   its use to the event channel.      

Resolution: resolved, see below
Revised Text: This issue is actually superceded by the acceptance of issue 2652c. The fix for issue 2652c makes this issue obsolete.
Actions taken:
May 18, 1999: received issue
November 16, 1999: closed issue

Discussion:
Synopsis: The description of the RejectNewEvents setting for DiscardPolicy does              not sufficiently constrain its use to the event channel. The issue              submitter proposes the following change to the description of this              setting in paragraph 8 on page 56:                  "RejectNewEvents - Do not accept new events if the number of queued                                 events in the event channel equals MaxQueueLength                                 and raise the IMPL_LIMIT system exception. Note                                 that this DiscardPolicy setting has meaning only                                 when set on the event channel.        Disposition: I agree with this proposed change.        VOTE: YES means to make the change recommended by the issue author.          NO means to do nothing.    


Issue 2655: Modify paragraph 6, page 52 (notif_service-rtf)

Click
here for this issue's archive.
Nature: Uncategorized Issue
Severity:
Summary:
Summary: The document implies that all factories can assign quality of service   properties when objects are created. This is not the case.    

Resolution: resolved, see below
Revised Text: : Modified next to last paragraph of section 2.5.3. Note that I used slightly different wording than that which was recommended.
Actions taken:
May 18, 1999: received issue
November 16, 1999: closed issue

Discussion:
Synopsis: The document implies that all factories can assign QoS properties              when objects are created. This is not the case. The issue submitter              proposes the following rewording of paragraph 6 on page 52:                  "The actual set of properties that should be applied by a component              is derived from merging the set of properties passed to the factory              with the properties of the component in the higher scope level. In              cases when a property is present in both places, the property value              explicitly expressed in the lower level applies."        Disposition: A bit of a nit but I have no problem with this proposed change.        VOTE: YES means to make the change recommended by the issue author.          NO means to do nothing.    


Issue 2662: CosNotifyChannelAdmin module: typed proxies not defined in ProxyType enum (notif_service-rtf)

Click
here for this issue's archive.
Nature: Uncategorized Issue
Severity:
Summary:
Summary: The CosNotifyChannelAdmin::ProxyConsumer and the   CosNotifyChannelAdmin::ProxySupplier interfaces define   the MyType attribute as a ProxyType.       This ProxyType enum is defined as:      enum ProxyType {   	PUSH_ANY,   	PULL_ANY,   	PUSH_STRUCTURED,   	PULL_STRUCTURED,   	PUSH_SEQUENCE,   	PULL_SEQUENCE   };      The CosTypedNotifyChannelAdmin::TypedProxyPushConsumer and   the CosTypedNotifyChannelAdmin::TypedProxyPullConsumer   interfaces inherit the CosNotifyChannelAdmin::ProxyConsumer   interface.   Likewise, the CosTypedNotifyChannelAdmin::TypedProxyPushSupplier   and the CosTypedNotifyChannelAdmin::TypedProxyPullSupplier   interfaces inherit the CosNotifyChannelAdmin::ProxySupplier   interface.      The objects inheriting those typed interfaces have no meaningfull   way to initialize the MyType attribute, therefore I think the    PUSH_TYPED and PULL_TYPED values are missing to this enum.      Thua, the resulting ProxyType enum should be defined as:      enum ProxyType {   	PUSH_ANY,   	PULL_ANY,   	PUSH_STRUCTURED,   	PULL_STRUCTURED,   	PUSH_SEQUENCE,   	PULL_SEQUENCE,   	PUSH_TYPED,   	PULL_TYPED   };    

Resolution: resolved, see below
Revised Text: Modified IDL definition of ProxyType in Table 3-4 and B-4. Made appropriate changes to sections 3.4.1.1 and 3.4.2.1.
Actions taken:
May 25, 1999: received issue
November 16, 1999: closed issue

Discussion:
Synopsis: The ProxyConsumer and ProxySupplier interfaces defined in the              CosNotifyChannelAdmin module define the MyType attribute, which              is of type ProxyType. ProxyType is an enumerated type that is              intended to indicate the specify type of Proxy that an instance              supporting either the ProxyConsumer or ProxySupplier interfaces              represents. It's possible values can indicate any of the Proxy              types defined in the CosNotifyChannelAdmin module. However, the              Proxy interfaces defined in the CosTypedNotifyChannelAdmin               module also inherit either the ProxyConsumer or ProxySupplier              interfaces, yet the ProxyType data type does not include an              enumaration that can be used to represent one of the types of              proxies. To resolve this problem, the following should be added              as possible values to the ProxyType enum: PUSH_TYPED, PULL_TYPED.        Disposition: I agree with this proposed change.        VOTE: YES means to make the change recommended by the issue author.          NO means to do nothing.    


Issue 2712: TimeBase::UtcT where TimeBase::TimeT is needed (notif_service-rtf)

Click
here for this issue's archive.
Nature:
Severity:
Summary:
TimeBase::UtcT where TimeBase::TimeT is needed    

Resolution: Modified offending text in Pacing Interval section of section 2.5.5
Revised Text:
Actions taken:
June 8, 1999: received issue
November 16, 1999: closed issue

Discussion:
Synopsis: The description of the PacingInterval QoS property in section 2.5.5              states that the data type of the value associated with PacingInterval              should be TimeBase::UtcT. In the IDL listing in Chapter 3 and also              Appendix B, the comment under PacingInterval claims the data type              fo the associated value should be TimeBase::TimeT. The issue author              proposes to change the text in section 2.5.5 to make it consistent              with the IDL (i.e., the data type of the associated value should be              TimeBase::TimeT).        Disposition: I agree with this proposed change.        VOTE: YES means to make the change recommended by the issue author.          NO means to do nothing.    


Issue 2713: Pull Methods on Sequence Suppliers (notif_service-rtf)

Click
here for this issue's archive.
Nature:
Severity:
Summary:

Resolution: Modified text in sections 3.3.13.1 and 3.3.13.2
Revised Text:
Actions taken:
June 8, 1999: received issue
November 16, 1999: closed issue

Discussion:
Synopsis: The "pull" and "try_pull" methods supported by a               SequencePullSupplier take an input parameter that indicates the              maximum number of events the invoker wants to pull.               SequencePullSuppliers may also have a MaximumBatchSize QoS              property associated with them, that also controls the size of the              batch that will be pulled. The issue author recommends wording be              added to the spec to state that the input parameter to these methods              may request some number of events less than or equal to the              current MaximumBatchSize setting on that proxy, but not more.        Disposition: I agree with this proposed change.    


Issue 2714: Problem with Sequence Pull Model (notif_service-rtf)

Click
here for this issue's archive.
Nature:
Severity:
Summary:

Resolution: Modified text in sections 3.3.13.1 and 3.3.13.2
Revised Text:
Actions taken:
June 9, 1999: received issue
October 30, 2000: closed issue

Discussion:
Synopsis: The spec is not clear on the interaction between PacingInterval              and blocking pull operations. The issue author recommends that               specific wording be added to the spec to state that the               PacingInterval timer begins at the instance that a sequence-style              pull supplier receives its first event in a new batch.        Disposition: In our implementation, we start the PacingInterval timer as                 soon as the sequence-style consumer invokes a blocking pull. We                 do not wait until the first event in a new batch is received.                 Personally, I feel our semantic makes a lot more sense. If the                 Consumer configured PacingInterval to a specific value, I think                 it implies that Consumer wants to receive events within that                 time period, if any our available.                      To more clearly demonstrate the difference between the two                  semantics here, suppose you have a situation in which a                 SequencePullConsumer has set the PacingInterval of its                 SequenceProxyPullSupplier to 1 minute and has invoked a blocking                 "pull". Now, suppose 10 minutes elapse without any events                  arriving at that SequenceProxyPullSupplier. If DSTC's semantic                 were applied, the SequenceProxyPullSupplier would still wait an                 additional minute before returning that event, even though the                 Consumer had indicated that it only wanted to wait at most 1                  minute between receiving event batches. If NEC's semantic were                 applied, the "pull" operation would return immediately after                 reception of the event, because 10 minutes had elapsed since the                 "pull" was invoked, and PacingInterval was only set to 1 minute                 (and thus had long since expired).        VOTE: Because there are two different proposed semantics to resolve this issue,          I will divide the voting on this issue into 2714a and 2714b. Voting          YES on issue 2714a means to adopt DSTC's recommended semantic. Voting          YES on issue 2714b means to adopt NEC's recommended semantic. Voting          NO on both 2714a and 2714b means to not make any changes in response to          this issue (since one could argue that this is an implementation detail          that should not be addressed in the spec). Voting YES on both 2714a and          2714b is invalid...if you do this I will ask you to recast your vote.        NOTE: Only 2714b passed    


Issue 2740: Clarify Handling of Priority and Timeout (notif_service-rtf)

Click
here for this issue's archive.
Nature:
Severity:
Summary:
The issue author describes the various ways that the Priority              and Timeout QoS properties can be influenced, and mentions that              the spec is too vague about the interactions between the various              mechanisms. Specifically, the issue author enumerates the following              problems in the spec with respect to this issue:                1) If the StructuredEvent specifies a Priority/Timeout, and the                ProxyConsumer specifies a Priority/Timeout, which one "wins"?                2) Setting Priority/Timeout on a SupplierAdmin or on the Channel               is only enabled to be inherited down to a ProxyConsumer, and not               to have any actual effect. The spec does not state this.                3) Setting Priority/Timeout on a ConsumerAdmin or ProxySupplier should               be made illegal (cause UnsupportedQoS with UNSUPPORTED_PROPERTY               error code to be raised).                4) If a StructuredEvent does not contain a Priority/Timeout, does               having this property set on the ProxyConsumer affect the contents               of the StructuredEvent, or just the way the StructuredEvent is               treated with respect to these properties.                5) In the case that a Mapping filter is associated with a               ProxySupplier, and its constraints all evaluate to FALSE for a               particular event, does the "default_value" or the value for               Priority/Timeout associated with the ProxyConsumer take precedence?    

Resolution: Only 2740d passed
Revised Text:
Actions taken:
June 16, 1999: received issue
November 16, 1999: closed issue

Discussion:
Synopsis: The issue author describes the various ways that the Priority              and Timeout QoS properties can be influenced, and mentions that              the spec is too vague about the interactions between the various              mechanisms. Specifically, the issue author enumerates the following              problems in the spec with respect to this issue:                1) If the StructuredEvent specifies a Priority/Timeout, and the                ProxyConsumer specifies a Priority/Timeout, which one "wins"?                2) Setting Priority/Timeout on a SupplierAdmin or on the Channel               is only enabled to be inherited down to a ProxyConsumer, and not               to have any actual effect. The spec does not state this.                3) Setting Priority/Timeout on a ConsumerAdmin or ProxySupplier should               be made illegal (cause UnsupportedQoS with UNSUPPORTED_PROPERTY               error code to be raised).                4) If a StructuredEvent does not contain a Priority/Timeout, does               having this property set on the ProxyConsumer affect the contents               of the StructuredEvent, or just the way the StructuredEvent is               treated with respect to these properties.                5) In the case that a Mapping filter is associated with a               ProxySupplier, and its constraints all evaluate to FALSE for a               particular event, does the "default_value" or the value for               Priority/Timeout associated with the ProxyConsumer take precedence?                       Disposition: I personally disagree that most of the above claims are really                 issues. Firstly, the order of precedence for the way QoS                  properties are treated is clearly stated in the spec on page 52                 in section 2.5.3. There, it clearly states that QoS set on a                 per-message level overrides the setting of QoS on any object                 within a channel, and that a MappingFilter is the only thing                 that can override per-message QoS. This takes care of issue 1)                 above.                      Regarding issue 2), the text in the spec already explains that                 in general, QoS set at a higher level of the object hierarchy                 is used as the default value for the same QoS property at the                 lower levels of the hierarchy, unless specifically set at the                 lower levels. So, of course setting Priority/Timeout on a                  SupplierAdmin or Channel would be inherited down to a                  ProxyConsumer. And, I think the model of Notification implies                 that these properties set at the SupplierAdmin or Channel could                 not themselves have any other side-effect.                      Regarding issue 3), I disagree that setting these properties                 on a ConsumerAdmin or ProxySupplier should be made illegal. If                 a specific implementation cannot derive a useful semantic for                 setting these properties on these objects, they can always raise                 UnsupportedQoS. However I don't think we should preclude the                 possibility that an implementer may find a useful semantic                 for these properties being set on these objects (our does, for                 instance).                     Regarding issue 4), this may be the only point in this issue                 where I agree that the author may have a point. Nowhere does                 it explicitly state that if a StructuredEvent does not contain                 a Priority/Timeout, but one or both of these properties is set                 on the ProxyConsumer that receives it, that the contents of the                 StructuredEvent are not modified, although I believe that's the                 intent. I remember we discussed this issue in our original                  submitters meeting, and the consensus seemed to be that the                  channel should never modify the contents of events...in this case                 it would use the QoS properties set at the Proxy level just to                 affect the way the event is treated, and not modify its contents.                 Note that the spec does explicitly state this with regard to                 MappingFilters, but there is no similar text to cover the specific                 case mentioned here.                     Regarding issue 5), the text already specifically states that                 a QoS property's value set as the result of a MappingFilter                  overrides any other setting of that QoS property, which to me                 means that the default value would take precedence in this case.                 I believe this semantic is already implied by the spec, and that                 no change is necessary.        VOTE: I can't figure out any other way to vote on this issue than to break          it down to 5 sub-issues. So, the voting will be interpreted as follows:                      Issue 2740d: Voting YES means to add text to the spec explicitly                          stating that if these properties are set at the Proxy                         level but not within a StructuredEvent, they are only used                         to affect the way the event is handled by the channel,                         and does not cause the event to be modified in anyway.                         Voting NO means to make no change.


Issue 2743: Semantics of Timeout Value (notif_service-rtf)

Click
here for this issue's archive.
Nature:
Severity:
Summary:
The issue author claims that the spec does not explicitly state               when the service starts the "clock" with respect to an event's              Timeout value. One possibility would be to start the clock as soon              as the event enters the channel (i.e, at the receiving               ProxyConsumer). Another would be to start the clock when the event              is queued for delivery at the ProxySupplier.

Resolution: fixed, see below
Revised Text: Sentence added to description of Timeout property in Expiry Time section of section 2.5.5
Actions taken:
June 16, 1999: received issue
November 16, 1999: closed issue

Discussion:
Disposition: The issue author did not state which of the above two possible                 semantics they prefer. Personally, I think the semantic that the                 clock starts ticking as soon as the event is received by the                 ProxyConsumer is the only one that makes sense, so I'll propose                 the voting that way. In reality, though, this is another issue                 in which I feel common sense overrides the need for explicit                 statement.        VOTE: YES means add text stating that the clock starts ticking when the event          is received by the ProxyConsumer.                NO means to do nothing.    


Issue 3114: Semantics of Event Service disconnect_push_consumer/supplier() (notif_service-rtf)

Click
here for this issue's archive.
Source: Motorola (Mr. Tom Ziomek, CTZ001(at)email.mot.com)
Nature: Uncategorized Issue
Severity:
Summary:
The question concerns the disconnect_push_consumer() family of operations  (push and pull, consumer and supplier) on both the Event Svc side (proxy  suppliers and consumers) and application side (suppliers and consumers).    1) Is a proxy's disconnect_..._...() meant to be called by (any or all of)     - the corresponding application supplier/consumer?     - some other part of the application?     - any portion of the Event Svc implementation?  If "yes" in this case,       is the connected application object also supposed to be invoked, to       notify it of the proxy's shutdown?    2) Is an application consumer/supplier's disconnect_..._...() meant to be     called by     - some other part of the application?  If "yes" in this case, is the       application consumer/supplier then expected to invoke disconnect_()       on the corresponding proxy object?     - any portion of the Event Svc implementation?  If "yes", under what       circumstances?    The specific issue at hand presumes the application object's disconnect_()  operation is to be invoked by the Event Svc.  The question is when -- one  opinion is that a call to the proxy's disconnect_() results in the invoca-  tion of disconnect_() on the proxy's application object.  The opposing o-  pinion is that the application object's disconnect_() is invoked only when  the application object is being disconnected by some means other than a  call to the proxy's disconnect_() (for example, if the event channel's  destroy() is called while application objects are still connected).  

Resolution:
Revised Text:
Actions taken:
November 19, 1999: received issue
February 27, 2001: closed issue

Discussion:
When a channel is destroyed, all its proxies invoke the disconnect callback (if a callback was registered). In addition, calling a disconnect operation on a proxy causes the proxy to make the appropriate disconnect callback. Proxy implementations are responsible for avoiding infinite recursion. See http://cgi.omg.org/pub/notification-rtf/2_modules_draft1.pdf for a version of the original specification that includes the edits for this issue marked with change bars.


Issue 3156: Typed event service and disconnect (notif_service-rtf)

Click
here for this issue's archive.
Source: Triodia Technologies Pty Ltd (Mr. Michi Henning, michi(at)triodia.com)
Nature: Uncategorized Issue
Severity:
Summary:
For the untyped event service, a Disconnected exception is raised  if push() or pull() are called by the appropriate connect operation wasn't  called previously.    What should happen if I use a typed event service?  

Resolution:
Revised Text: Append the following to the end of the final para on page 2-12: (Note that, if a consumer operation is declared oneway, there is no way for the caller to find out if the consumer is in the disconnected state because, for oneway calls, the servant cannot raise exceptions.) Append the following para at the end of section 2.5.1: If a TypedPushConsumer is in the disconnected state and a supplier attempts to deliver a typed event, the consumer shall raise a BAD_INV_ORDER exception. Append the following para at the end of section 2.5.2: If a TypedPullSupplier is in the disconnected state and a consumer attempts to retrieve a typed event, the supplier shall raise a BAD_INV_ORDER exception.
Actions taken:
December 21, 1999: received issue
February 27, 2001: closed issue

Discussion:
Typed consumers and suppliers cannot be forced to offer a Disconnected exception, so a system exception must be used.


Issue 3175: Notification service: admin MyChannel attribute (notif_service-rtf)

Click
here for this issue's archive.
Source: Micro Focus (Mr. Bjarne Rasmussen, nobodybrasmussen(at)silverstream.com)
Nature: Uncategorized Issue
Severity:
Summary:
The notification service administration objects support an attribute  called MyChannel that returns the event channel that first created the  administration object. The value type of this attribute is EventChannel.  For typed administration objects, the typed channel can not be returned  because a TypedEventChannel is not compatible with an EventChannel. One  solution is to change the value type of this attribute to a generic  Object, which can be narrowed to the correct type.  

Resolution:
Revised Text:
Actions taken:
January 4, 2000: received issue

Issue 3517: Section 3.4.17. Page:136 (notif_service-rtf)

Click
here for this issue's archive.
Nature: Uncategorized Issue
Severity:
Summary:
I see the following features lacking in CosNotification spec.  What is the process on having this raised as   an issue, and if all agree add it to the spec in the later revisions.  Any info is appreciated.    1. Section 3.4.17.  Page:136. The EventChannel interface in CosNotification, does not allow to retrieve  its ChannelId.  This is unlike the interface on the admins which allow to get the adminids?  It would be   very handy to retrieve the channel id given event channel.  I also do not see a way to retrieve   proxyId's given a consumer proxy or supplier proxy.  

Resolution:
Revised Text:
Actions taken:
March 30, 2000: received issue

Issue 3518: Issue with pushing events (notif_service-rtf)

Click
here for this issue's archive.
Nature: Uncategorized Issue
Severity:
Summary:
2. Publishers are allowed to push events for the types they have not offered using offer_change().   This can allow publishers to never advertise the event types they are offerring.  For Example, as   a consumer it can not tell what are the event types that will be offered on the channel.     Can we require publishers to always call offer_change() on the new event types before pushing them to   the event channel?  If this behavior breaks existing functionality, then how about having push_xxx()  check to see if the event type is offered, if not add it to the aggregate list?  

Resolution:
Revised Text:
Actions taken:
March 30, 2000: received issue

Issue 3519: The interface on EventChanel does not have the ability to get the ChannelId (notif_service-rtf)

Click
here for this issue's archive.
Nature: Uncategorized Issue
Severity:
Summary:
1. The interface on EventChanel does not have the ability to get the ChannelId?  This   is quite contrary to the ability on the admin interfaces to retrieve the adminId's.   Given a proxy to EventChannels's it will be very handy to retrieve the channelId's.

Resolution:
Revised Text:
Actions taken:
March 30, 2000: received issue

Issue 3520: The interface on EventChanel does not have the ability to get the ChannelId (notif_service-rtf)

Click
here for this issue's archive.
Nature: Uncategorized Issue
Severity:
Summary:
1. The interface on EventChanel does not have the ability to get the ChannelId?  This   is quite contrary to the ability on the admin interfaces to retrieve the adminId's.   Given a proxy to EventChannels's it will be very handy to retrieve the channelId's.

Resolution: duplicate, close issue
Revised Text:
Actions taken:
March 30, 2000: received issue
November 7, 2000: closed issue; Duplicate or Merged

Issue 3521: The Supplier Proxy & Consumer Proxy interfaces don't get ID's (notif_service-rtf)

Click
here for this issue's archive.
Nature: Uncategorized Issue
Severity:
Summary:
The interface on EventChanel does not have the ability to get the ChannelId?  This   is quite contrary to the ability on the admin interfaces to retrieve the adminId's.   Given a proxy to EventChannels's it will be very handy to retrieve the channelId's. The Supplier Proxy & Consumer Proxy interfaces also do not have the ability to get   the ID's.

Resolution:
Revised Text:
Actions taken:
March 30, 2000: received issue

Issue 6343: Notification Service IDL issues (notif_service-rtf)

Click
here for this issue's archive.
Nature: Uncategorized Issue
Severity:
Summary:
just came across Notification Service IDL where  you are mentioned as contact person:      When I  "grep"  on  all  IDL files I notice that   orb.idl is not included.       I notice further that file        CosNotifyFilter.idl      in line 105 makes use of TypeCode:        readonly attribute CORBA::TypeCode value_type;       However section 3.19 "CORBA Module" of current   CORBA standard 3.0.2 reads as:      >> Names defined by the CORBA specification are in a module named CORBA. In an  >> OMG IDL specification, however, OMG IDL keywords such as Object must not be  >> preceded by a "CORBA::" prefix. Other interface names such as TypeCode are not  >> OMG IDL keywords, so they must be referred to by their fully scoped names (e.g.,  >> CORBA::TypeCode) within an OMG IDL specification.  >> For example in:  >> #include <orb.idl>  >> module M {  >> typedef CORBA::Object myObjRef; // Error: keyword Object scoped  >> typedef TypeCode myTypeCode; // Error: TypeCode undefined  >> typedef CORBA::TypeCode TypeCode;// OK  >> };  >> The file orb.idl contains the IDL definitions for the CORBA module. Except for  >> CORBA::TypeCode, the file orb.idl must be included in IDL files that use names  >> defined in the CORBA module. IDL files that use CORBA::TypeCode may obtain its  >> definition by including either the file orb.idl or the file TypeCode.idl.      In my humble opinion, "your" Notification IDL is  not correct.      Perhaps  you  have  some time left to comment on  this?  

Resolution:
Revised Text:
Actions taken:
October 13, 2003: received issue

Issue 9079: MaxEventsPerConsumer (notif_service-rtf)

Click
here for this issue's archive.
Source: Remedy IT (Mr. Johnny Willemsen, jwillemsen(at)remedy.nl)
Nature: Revision
Severity: Minor
Summary:
The type of MaxEventsPerConsumer should be an unsigned long, why should this be long, so far as I can't tell there is no need for a negative number  

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