[omniORB] [OmniNotify] ProxyPullSupplier::connect_pull_consumer wants non-nil parameter

Robert E. Gruber gruber@research.att.com
Wed, 28 Nov 2001 10:50:07 -0500


Somehow I missed this until Mike Ladwig sent a second email.  Thanks Mark.

It is a bug, and it has been fixed.  You can get the fix if you are using
CVS with tag omniNotify1_develop, or by obtaining the patch file.  For more
info, see
http://www.research.att.com/~ready/omniNotify/nfy_patch_and_bug_list.html

We did the legacy CosEvent API after we had implemented the CosNotification
API, and in this case we followed the CosNotification style error checking
without noticing that for 2 CosEvent cases (connect_push_supplier,
connect_pull_consumer) it is OK to pass a nil argument.

-- Bob

-----Original Message-----

From: Alexey Syomichev (asyomichev@marketswitch.com)
Date: Sat Nov 24 2001 - 23:38:32 GMT

omniNotify 1.1 (pre-built) runs on Solaris 7 (SunOS 5.7);
Application runs on Windows NT and uses omniORB4 (snapshot from
11/02/2001);

I don't need a full-blown notification service, so I widen a
CosNotifyChannelAdmin::EventChannel reference to a
CosEventChannelAdmin::EventChannel one.
The problem arises on a consumer side (hybrid push/pull model) when I
try to invoke ProxyPullSupplier::connect_pull_consumer(nil). Passing a
nil argument to connect_pull_consumer() is acceptable according to the
Event Service specification, but omniNotify raises a BAD_PARAM. At the
other hand, when I pass an object reference to a live PullSupplier, it
works fine. I would be just happy to catch a Disconnected from
try_pull() rather than implement the PullSupplier.


The question is: whether such behavior is compliant to the Notification
Service specification or it is an omniNotify bug? Is there any
workaround on the omniNotify side to preserve usual for Event Service
behavior?
Can it be caused by core ORB version difference between a consumer and
EventChannel (omniNotify 1.1 is based on omniORB3)?


Thank you in advance.

--
Alexey Syomichev      email:  asyomichev@marketswitch.com
Marketswitch corp.    phone:  (571) 434 4355


-----Original Message-----
From: Mike Ladwig [mailto:mike@twinpeaks.prc.com]
Sent: Tuesday, November 27, 2001 2:57 PM
To: ready@research.att.com
Subject: omniNotify bug/issue?


This has been asked and not answered on the mailing list, so I'm trying a
direct appeal!

According to the spec, the Notification Service is backwards compatible with
the EventService.  Also according to the spec, a pull consumer can pass a
nil
argument to connect_pull_consumer(), but the omniNotification service does
not allow this (throwing BAD_PARAM).

Any ideas?  I've got a fair bit of code that depends on compliance in this
respect, so I'm screwed if I can't get it.

Thanks,
mike.