Information about “Notification queue exceeded its maximum size” log message and how to avoid it in Silver Fabric versions 5.8.1 and below
book
Article ID: KB0081567
calendar_today
Updated On:
Products
Versions
TIBCO Silver Fabric
5.5.x, 5.6.x, 5.7.x, 5.8.x
Description
Silver Fabric broker comes with a Notification queue whose maximum size is set to 100. This is a hard-coded value and cannot be changed in Silver Fabric Versions 5.8.1 and below. When this queue exceeds its maximum size, below log message will be printed in broker logs:-
SEVERE: [BrokerFileUpdateServer] while notifying proxy of file update java.io.IOException: Notification queue exceeded its maximum size The message above is seen when multiple threads try to enqueue notifications (example of such notifications can be, large number of resources being updated, too many events sent to engines for the broker to handle all at once, etc) at the same time resulting in the queue growing larger than the maximum size. In most cases, this should recover by itself that is, it will persist for some time with the notification events retrying until they are able to get a chance to complete.
In ideal cases, this particular SEVERE message should not have any serious effect on the product's behavior or performance.
Issue/Introduction
Information about “Notification queue exceeded its maximum size” log message and how to avoid it in Silver Fabric versions 5.8.1 and below
Resolution
To avoid these exceptions in the broker logs, notifications can be blocked when the queue size exceeds its limit by adding system property "com.livecluster.connection.socket.SocketSender.blockIfBacklogged=true".
set SERVICE_JVM_OPTS=-Xrs -Xmx%MAX_HEAP%;-Dds.logToSystem=true; -Dcom.livecluster.connection.socket.SocketSender.blockIfBacklogged=true ;-XX:+UseConcMarkSweepGC;-XX:+CMSClassUnloadingEnabled;-XX:PermSize=128m;-XX:MaxPermSize=512m;-Duser.region=US;-Duser.language=en;-Dfile.encoding=UTF8;%FABRIC_OPTS%;-Djava.io.tmpdir=%CATALINA_TMPDIR%