[jboss-dev-forums] [Design of JBoss Remoting, Unified Invokers] - PortUtil - Hits Max Will Always Hand Out 65535
jcreynol
do-not-reply at jboss.com
Fri Mar 7 22:04:52 EST 2008
I think I've done all the requisite searching to see if this has been discussed elsewhere and I'm slightly convinced it may be a bug that hasn't been uncovered in that I'm not certain it has been hit as hard in testing, as it is in our production environment of 6000+ Swing Clients invoking various EJBs for 10 hours straight at sub-second intervals. Some of the behaviors we have seen -- server crashes without log details or errors and hung clients that never receive response nor exception -- may possibly be related to port issues.
private static synchronized int getNextPort()
| {
| if (portCounter < MAX_LEGAL_PORT)
| return portCounter++;
|
| portCounter = MIN_UNPRIVILEGED_PORT;
| return MAX_LEGAL_PORT;
| }
Since these methods are static and portCounter is static, overtime this socket connectors will grow to where all will try MAX_LEGAL_PORT to no avail, no?
As an example, here's the log entry 1.5 seconds before the server was auto-restarted by a cron job:
| 2008-03-07 12:28:14,689 INFO (WorkerThread#140[10.29.10.109:64619]) [xxx.dao.RDBContactEventLogDAO] Option size: 2
| INFO (main) [com.arjuna.ats.jbossatx.jta.TransactionManagerService] JBossTS Transaction Service (JTA version) - JBoss Inc.
Shouldn't we drop back down to the MIN_UNPRIVILEGED_PORT if the MAX_LEGAL_PORT won't work? As it is, the portCounter is initialized to a random number so x number of ports between MIN_UNPRIVILIGED_PORT and RANDOM_PORT go unchecked...
Any thoughts on the topic are very much appreciated.
Thanks,
John
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4135027#4135027
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4135027
More information about the jboss-dev-forums
mailing list