[
https://issues.jboss.org/browse/JBAS-9373?page=com.atlassian.jira.plugin....
]
Jonathan Halliday commented on JBAS-9373:
-----------------------------------------
We don't make it possible to override that interface at an AS server instance level as
it is not permitted to have different servers running SocketProcessId on different
interfaces. To do so would invalidate its purpose. The only guaranteed way to achieve the
desired behaviour is not to allow users to configure it - they can't be trusted to
ensure all server instances use a consistent value. If you don't like it, use a
process id implementaiton other than the socket based one.
Arjuna service creating an anonymous localhost binding outside of
standalone.xml configuration.
-----------------------------------------------------------------------------------------------
Key: JBAS-9373
URL:
https://issues.jboss.org/browse/JBAS-9373
Project: JBoss Application Server
Issue Type: Bug
Security Level: Public(Everyone can see)
Components: Transaction Manager Integration (Arjuna)
Affects Versions: 7.0.0.Beta3
Reporter: Scott Stark
Assignee: Jonathan Halliday
I'm seeing an attempt to bind an anonymous socket to localhost/127.0.0.1 even when
the standalone.xml configuration has specified a loopback-address other than
localhost/127.0.0.1 as the default:
<interfaces>
<interface name="default">
<loopback-address value="127.0.250.1"/>
</interface>
The port is also not one listed in the socket-binding-group section. Both the interface
and port should be coming from the server configuration.
Thread attempting bind call:
Socket[addr=localhost/127.0.0.1,port=0,localport=52394]
Transaction Expired Entry Monitor@2745 daemon, prio=5, in group 'main', status:
'RUNNING'
blocks MSC service thread 1-1@1104
at java.net.PlainSocketImpl.listen(PlainSocketImpl.java:398)
at java.net.ServerSocket.bind(ServerSocket.java:329)
at java.net.ServerSocket.<init>(ServerSocket.java:194)
at
com.arjuna.ats.internal.arjuna.utils.SocketProcessId.createSocket(SocketProcessId.java:99)
at
com.arjuna.ats.internal.arjuna.utils.SocketProcessId.<init>(SocketProcessId.java:76)
at
sun.reflect.NativeConstructorAccessorImpl.newInstance0(NativeConstructorAccessorImpl.java:-1)
at
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
at
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at java.lang.Class.newInstance0(Class.java:355)
at java.lang.Class.newInstance(Class.java:308)
at com.arjuna.ats.arjuna.utils.Utility.initDefaultProcess(Utility.java:336)
at com.arjuna.ats.arjuna.utils.Utility.getProcess(Utility.java:348)
at com.arjuna.ats.arjuna.utils.Utility.getpid(Utility.java:287)
at com.arjuna.ats.arjuna.common.Uid.<init>(Uid.java:84)
at
com.arjuna.ats.arjuna.state.OutputObjectState.<init>(OutputObjectState.java:63)
at
com.arjuna.ats.internal.arjuna.objectstore.FileSystemStore.allObjUids(FileSystemStore.java:158)
at com.arjuna.ats.arjuna.objectstore.ObjectStore.allObjUids(ObjectStore.java:70)
at
com.arjuna.ats.internal.arjuna.recovery.ExpiredTransactionStatusManagerScanner.scan(ExpiredTransactionStatusManagerScanner.java:82)
at
com.arjuna.ats.internal.arjuna.recovery.ExpiredEntryMonitor.run(ExpiredEntryMonitor.java:172)
--
This message is automatically generated by JIRA.
For more information on JIRA, see:
http://www.atlassian.com/software/jira