Publish/subscribe within WebSphere Business Integration Event Broker is managed from the workbench, which is used to connect brokers in a topology or hierarchy, and to administer topic-based security (if a User Name Server is in use). Like other workbench changes, you need to deploy any changes that you make so that updates are sent to the broker.
This section outlines some common problems that can arise when using publish/subscribe. It contains advice for dealing with the problems:
BIP8303W: The Broker's user/group cache is empty. BIP8303W: The Broker's user/group cache is empty.
+() 0 BIP8204I: User Name Server is registering a client with UUID 15db2a8e-869e-11d5-8000-091465ac0000, and cache version 0.
This should always be possible for a subscriber, but for the publishing side, a message might be published without the knowledge of the originating application (for example, by using the default topic property on the input node). The results of processing that message are still logged in user trace, which might give clues as to what is happening.
If your application is not asking for responses (that is, not using messages of type MQMT_REQUEST) consider doing so, particularly when developing applications.
Subscribers are sent messages only if they match the topic, the subscription point, and the filter. Because the subscription point is specified in the message flow, not in the publication message, an incorrect message flow setting can cause unexpected failures.
Also, if a filter is being used, a user trace shows you whether this is being evaluated as expected.
The case with multiple execution groups, or multiple brokers, is more complex. A response is sent to a subscriber once the message has been processed by the target execution group. Other execution groups (and brokers) are updated asynchronously. As a result, there might be a delay before publications made elsewhere are received. If the broker is busy, there can be a delay before messages are fully processed. In a multibroker setup, if communications have been suspended, subscription changes are propagated through the network of brokers. Check the channels.
With multiple execution groups or brokers, it might be possible to fill intermediate WebSphere MQ queues if the load is very high. This might be reported in the syslog (if a broker cannot put to a queue because it is full) or in the WebSphere MQ log (if a message coming across a channel cannot be put to the target queue because it is full). If you see messages of this type, display the queue depths on all your queue managers to see if any are close to being full.
If BIP8303 errors are recorded in any broker's log after startup, it indicates a communication problem with the User Name Server. Check your WebSphere MQ channels to and from the User Name Server and try again. You should see event message BIP8204I for both the Configuration Manager and any brokers, showing that they have successfully registered with the User Name Server.
If your publish/subscribe request fails, and event BIP7017 is recorded, check that the client user ID is known to the system that the User Name Server is running on. Also, if you are operating in a Windows domain environment, ensure that the User Name Server was created with the -d flag on the mqsicreateusernameserver command set to the appropriate domain, and that all client application user IDs are members of this domain.
Message persistence in publish/subscribe is normally preserved. However, a subscriber might not get the expected persistence if ACLs do not allow it.
Symbol | Escape character |
---|---|
< | < |
> | > |
" | " |
' | ' |
& | & |
For example, if you want to use:
<Filter>Body.e_ALERT_BODY.eqnum<6</Filter>
you must specify:
<Filter>Body.e_ALERT_BODY.eqnum<6</Filter>
When the configuration is deployed, a response is received from each broker. These appear in the workbench. However, each broker's local log should also be checked. For each connection, a BIP7113 message appears. To test communications, the Soccer sample application might prove useful. It is possible to run each part on a separate broker to test communications between them.
You need to have both sender and receiver channels and transmission queues established to and from both the Configuration Manager queue manager and the User Name Server queue manager. Check that these channels have been created and are currently running.
If you make any changes, restart the Configuration Manager and check for Windows event message 8258, which shows that the Configuration Manager has successfully registered with the User Name Server. If you make any changes, for example to channels, you also need to restart the workbench to refresh the displayed list of users.
On z/OS, if the User Name Server is running, and if you have the above set correctly, but you are still not seeing z/OS users listed on the Topics view of the Broker Administration perspective, check that the z/OS users all have OMVS segments defined. They are not listed by the User Name Server if they don't.
The JIT compiler will load and run correctly if LIBPATH is not set. This is the simpler case and you are recommended not to set LIBPATH. You can make libraries available by linking them into /var/wmqi/lib (for all WebSphere Business Integration Event Broker for AIX processes) or /usr/lib (for all processes on the system). WebSphere Business Integration Event Broker for AIX configuration does this for DB2 libraries.
If it is necessary to set LIBPATH, update it to include the directory /usr/java130/bin.
For example, you can use the following command to start the broker:LIBPATH=/usr/local/lib:/usr/java130/bin mqsistart mybroker
#DFL0 DSNILMCL RESOURCE UNAVAILABLE 558 CORRELATION-ID=ST03BRK CONNECTION-ID=RRSAF LUW-ID=* REASON 00C90092 TYPE 00000905 NAME IRLM *DXR175E IFL0001 IRLM IS UNABLE TO OBTAIN STORAGE - ECSA DSNT501I #DFL0 DSNILMCL RESOURCE UNAVAILABLE 560 CORRELATION-ID=ST04BRK CONNECTION-ID=RRSAF LUW-ID=* REASON 00C90092 TYPE 00000905 NAME IRLM
Related concepts
Publish/Subscribe
Trace
Related tasks
Developing publish/subscribe applications
Viewing broker domain log information
Viewing WebSphere MQ log information
Interpreting trace
Dealing with problems
Related reference
User trace
Publish/subscribe
mqsicreatebroker command
mqsichangebroker command
Notices |
Trademarks |
Downloads |
Library |
Support |
Feedback
![]() ![]() |
au16630_ |