| ...although none exactly match the scenerio you describe. The closest is:
2.5.4.4 Fixed an Occasional Failure Of
PAMS_GET_MSGA to Activate AST Routine
or Event Flag
A problem was discovered that would occasionally
cause AST routines or event flags not to be triggered.
When this problem occurred, messages would be queued
properly but notification of the event could be lost.
These lost wakeups were caused by a race condition
that has been corrected.
BTW, I tried your example with V3.2B (V3.2A should behave the same) and it ran
until completion. Please upgrade since V2.1 isn't support any more.
Marty
------------------------------------------------------------------------
Here is the first page of output from your test program:
About to call pams_attach_q(primary) ...
Attached to group >345<, primary temporary queue >204<
About to call pams_attach_q(secondary) ...
Attached to group >345<, secondary temporary queue >205<
About to call BugAsynchSetup(simple, 666) ...
About to call pams_get_msga() ...
Called pams_get_msga().
Called BugAsynchSetup(simple, 666).
About to call pams_put_msg(), text: >This is a test!<, target: >345.204< ...
BugAsynchCallbackSimple():
lParm: >666<
cGlblMsgBuf: >This is a test!<,
aGlblRspQ: >345.204<
Called pams_put_msg().
Commencing broadcast registration, server >0.99<, mot >4800< ...
About to call pams_put_msg(), target: >0.99< ...
Called pams_put_msg().
About to call pams_get_msgw(), source: >345.205< ...
Called pams_get_msgw().
Broadcast registration success.
Commencing put-then-get-synch broadcast test loop ...
About to call pams_put_msg(), target: >0.4800< ...
Called pams_put_msg().
About to call pams_get_msgw(), source: >345.204< ...
Called pams_get_msgw().
Broadcast message: >Test broadcast A1!<
About to call pams_put_msg(), target: >0.4800< ...
Called pams_put_msg().
About to call pams_get_msgw(), source: >345.204< ...
Called pams_get_msgw().
Broadcast message: >Test broadcast A2!<
About to call pams_put_msg(), target: >0.4800< ...
Called pams_put_msg().
About to call pams_get_msgw(), source: >345.204< ...
Called pams_get_msgw().
Broadcast message: >Test broadcast A3!<
About to call pams_put_msg(), target: >0.4800< ...
Called pams_put_msg().
About to call pams_get_msgw(), source: >345.204< ...
Called pams_get_msgw().
Broadcast message: >Test broadcast A4!<
About to call pams_put_msg(), target: >0.4800< ...
Called pams_put_msg().
About to call pams_get_msgw(), source: >345.204< ...
Called pams_get_msgw().
Broadcast message: >Test broadcast A5!<
Commencing put-then-get-asynch broadcast test loop ...
About to call pams_put_msg(), target: >0.4800< ...
Called pams_put_msg().
About to call BugAsynchSetup(simple, 33) ...
About to call pams_get_msga() ...
BugAsynchCallbackSimple():
lParm: >33<
|
| Marty,
Thanks for the speedy response. I'm puzzled. I retried the test program that I had posted in 2743.0 on the
following system:
Alpha
VMS V6.1
DEC C V5.5-002
DMQ V3.2-00
(I had to change numerous instances of "long" data type to "int32" to get test program to compile in
newer environment). I still see the same problems. Specifically, when my test program gets to the
point where it announces:
"Commencing get-asynch-then-put broadcast test loop ..."
I still see a total of five (5) messages get broadcast (pams_put_msg) and none of these cause the
callback routine that is preinstalled via pams_get_msga to fire.
Similarly, in the immediately following portion of my test program where it announces:
"Commencing get-asynch-with-rearm-then-put broadcast test loop ..."
I still see five (more) messages broadcast via pams_put_msg and the callback routine
installed via pams_get_msga still does not fire in response.
Please, more advice! And thanks again for the assistance.
Rob Milligan
dtn 225-4868
e-mail: [email protected]
|