[jboss-cvs] JBossRemoting/src/main/org/jboss/remoting/transport/multiplex ...
Ron Sigal
ron_sigal at yahoo.com
Sat Jul 22 18:12:25 EDT 2006
User: rsigal
Date: 06/07/22 18:12:25
Modified: src/main/org/jboss/remoting/transport/multiplex
OutputMultiplexor.java
Log:
JBREM-534: Added a maxErrors counter.
Revision Changes Path
1.28 +16 -2 JBossRemoting/src/main/org/jboss/remoting/transport/multiplex/OutputMultiplexor.java
(In the diff below, changes in quantity of whitespace are not shown.)
Index: OutputMultiplexor.java
===================================================================
RCS file: /cvsroot/jboss/JBossRemoting/src/main/org/jboss/remoting/transport/multiplex/OutputMultiplexor.java,v
retrieving revision 1.27
retrieving revision 1.28
diff -u -b -r1.27 -r1.28
--- OutputMultiplexor.java 20 Jul 2006 07:26:13 -0000 1.27
+++ OutputMultiplexor.java 22 Jul 2006 22:12:25 -0000 1.28
@@ -101,6 +101,7 @@
private int maxChunkSize;
private int maxTimeSlice;
private int maxDataSlice;
+ private int maxErrors;
private Map configuration = new HashMap();
private Map writeQueues = Collections.synchronizedMap(new HashMap());
@@ -110,6 +111,7 @@
private List messagePool;
private ByteBuffer buffer;
private byte[] header = new byte[HEADER_SIZE];
+ private int errorCount;
private boolean trace;
private boolean debug;
@@ -150,11 +152,18 @@
Multiplex.OUTPUT_MAX_DATA_SLICE,
Multiplex.OUTPUT_MAX_DATA_SLICE_DEFAULT);
+ maxErrors
+ = Multiplex.getOneParameter(configuration,
+ "maxErrors",
+ Multiplex.OUTPUT_MAX_ERRORS,
+ Multiplex.OUTPUT_MAX_ERRORS_DEFAULT);
+
log.debug("messagePoolSize: " + messagePoolSize);
log.debug("messageSize: " + messageSize);
log.debug("maxChunkSize: " + maxChunkSize);
log.debug("maxTimeSlice: " + maxTimeSlice);
log.debug("maxDataSlice: " + maxDataSlice);
+ log.debug("maxErrors: " + maxErrors);
messagePool = Collections.synchronizedList(new ArrayList(messagePoolSize));
for (int i = 0; i < messagePoolSize; i++)
@@ -287,7 +296,7 @@
List writeQueue = (List) writeQueues.get(client);
if (writeQueue == null)
{
- log.error("attempt to unregister unknown Listener: " + client);
+ log.debug("attempt to unregister unknown Listener: " + client);
return;
}
@@ -461,12 +470,17 @@
manager.setWriteException(e);
break;
}
- else
+ else if (++errorCount > maxErrors)
{
log.error(e);
manager.setWriteException(e);
throw e;
}
+ else
+ {
+// Haven't reached maxErrors yet
+ throw e;
+ }
}
// If it's a long message with bytes left over, return to message queue.
More information about the jboss-cvs-commits
mailing list