
| Key: |
MB-1161
|
| Type: |
Bug
|
| Status: |
Resolved
|
| Resolution: |
Fixed
|
| Priority: |
Major
|
| Assignee: |
Dejan Bosanac
|
| Reporter: |
Joe Luo
|
| Votes: |
0
|
| Watchers: |
0
|
|
If you were logged in you would be able to see more operations.
|
|
|
CachedLDAPAuthorizationMap can't reconnect to LDAP Server if the LDAP server was temporarily down.
To reproduce configure the CachedLDAPAuthorizationMap with a short "refreshInterval" and shutdown the ldap server ,wait > refreshInterval and start the ldap server again.
2012-05-16 15:51:31,425 | DEBUG | Updating authorization map! | org.apache.activemq.security.CachedLDAPAuthorizationMap | ActiveMQ Transport: tcp:///127.0.0.1:54055
2012-05-16 15:51:31,425 | ERROR | Error updating authorization map | org.apache.activemq.security.CachedLDAPAuthorizationMap | ActiveMQ Transport: tcp:///127.0.0.1:54055
javax.naming.CommunicationException: connection closed [Root exception is java.io.IOException: connection closed]; remaining name 'ou=Destination,ou=ActiveMQ,ou=system'
at com.sun.jndi.ldap.LdapCtx.doSearch(LdapCtx.java:1983)
at com.sun.jndi.ldap.LdapCtx.searchAux(LdapCtx.java:1827)
at com.sun.jndi.ldap.LdapCtx.c_search(LdapCtx.java:1752)
at com.sun.jndi.toolkit.ctx.ComponentDirContext.p_search(ComponentDirContext.java:368)
at com.sun.jndi.toolkit.ctx.PartialCompositeDirContext.search(PartialCompositeDirContext.java:338)
at com.sun.jndi.toolkit.ctx.PartialCompositeDirContext.search(PartialCompositeDirContext.java:321)
at javax.naming.directory.InitialDirContext.search(InitialDirContext.java:248)
at org.apache.activemq.security.CachedLDAPAuthorizationMap.query(CachedLDAPAuthorizationMap.java:121)
at org.apache.activemq.security.CachedLDAPAuthorizationMap.getAllEntries(CachedLDAPAuthorizationMap.java:226)
at org.apache.activemq.security.DefaultAuthorizationMap.getReadACLs(DefaultAuthorizationMap.java:94)
at org.apache.activemq.security.AuthorizationBroker.addConsumer(AuthorizationBroker.java:113)
at org.apache.activemq.broker.BrokerFilter.addConsumer(BrokerFilter.java:89)
at org.apache.activemq.broker.MutableBrokerFilter.addConsumer(MutableBrokerFilter.java:95)
at org.apache.activemq.broker.TransportConnection.processAddConsumer(TransportConnection.java:558)
at org.apache.activemq.command.ConsumerInfo.visit(ConsumerInfo.java:349)
at org.apache.activemq.broker.TransportConnection.service(TransportConnection.java:318)
at org.apache.activemq.broker.TransportConnection$1.onCommand(TransportConnection.java:181)
at org.apache.activemq.transport.MutexTransport.onCommand(MutexTransport.java:50)
at org.apache.activemq.transport.WireFormatNegotiator.onCommand(WireFormatNegotiator.java:113)
at org.apache.activemq.transport.AbstractInactivityMonitor.onCommand(AbstractInactivityMonitor.java:229)
at org.apache.activemq.transport.TransportSupport.doConsume(TransportSupport.java:83)
at org.apache.activemq.transport.tcp.TcpTransport.doRun(TcpTransport.java:221)
at org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:203)
at java.lang.Thread.run(Thread.java:680)
Caused by: java.io.IOException: connection closed
at com.sun.jndi.ldap.LdapClient.ensureOpen(LdapClient.java:1558)
at com.sun.jndi.ldap.LdapClient.search(LdapClient.java:503)
at com.sun.jndi.ldap.LdapCtx.doSearch(LdapCtx.java:1965)
... 23 more
|
|
Description
|
CachedLDAPAuthorizationMap can't reconnect to LDAP Server if the LDAP server was temporarily down.
To reproduce configure the CachedLDAPAuthorizationMap with a short "refreshInterval" and shutdown the ldap server ,wait > refreshInterval and start the ldap server again.
2012-05-16 15:51:31,425 | DEBUG | Updating authorization map! | org.apache.activemq.security.CachedLDAPAuthorizationMap | ActiveMQ Transport: tcp:///127.0.0.1:54055
2012-05-16 15:51:31,425 | ERROR | Error updating authorization map | org.apache.activemq.security.CachedLDAPAuthorizationMap | ActiveMQ Transport: tcp:///127.0.0.1:54055
javax.naming.CommunicationException: connection closed [Root exception is java.io.IOException: connection closed]; remaining name 'ou=Destination,ou=ActiveMQ,ou=system'
at com.sun.jndi.ldap.LdapCtx.doSearch(LdapCtx.java:1983)
at com.sun.jndi.ldap.LdapCtx.searchAux(LdapCtx.java:1827)
at com.sun.jndi.ldap.LdapCtx.c_search(LdapCtx.java:1752)
at com.sun.jndi.toolkit.ctx.ComponentDirContext.p_search(ComponentDirContext.java:368)
at com.sun.jndi.toolkit.ctx.PartialCompositeDirContext.search(PartialCompositeDirContext.java:338)
at com.sun.jndi.toolkit.ctx.PartialCompositeDirContext.search(PartialCompositeDirContext.java:321)
at javax.naming.directory.InitialDirContext.search(InitialDirContext.java:248)
at org.apache.activemq.security.CachedLDAPAuthorizationMap.query(CachedLDAPAuthorizationMap.java:121)
at org.apache.activemq.security.CachedLDAPAuthorizationMap.getAllEntries(CachedLDAPAuthorizationMap.java:226)
at org.apache.activemq.security.DefaultAuthorizationMap.getReadACLs(DefaultAuthorizationMap.java:94)
at org.apache.activemq.security.AuthorizationBroker.addConsumer(AuthorizationBroker.java:113)
at org.apache.activemq.broker.BrokerFilter.addConsumer(BrokerFilter.java:89)
at org.apache.activemq.broker.MutableBrokerFilter.addConsumer(MutableBrokerFilter.java:95)
at org.apache.activemq.broker.TransportConnection.processAddConsumer(TransportConnection.java:558)
at org.apache.activemq.command.ConsumerInfo.visit(ConsumerInfo.java:349)
at org.apache.activemq.broker.TransportConnection.service(TransportConnection.java:318)
at org.apache.activemq.broker.TransportConnection$1.onCommand(TransportConnection.java:181)
at org.apache.activemq.transport.MutexTransport.onCommand(MutexTransport.java:50)
at org.apache.activemq.transport.WireFormatNegotiator.onCommand(WireFormatNegotiator.java:113)
at org.apache.activemq.transport.AbstractInactivityMonitor.onCommand(AbstractInactivityMonitor.java:229)
at org.apache.activemq.transport.TransportSupport.doConsume(TransportSupport.java:83)
at org.apache.activemq.transport.tcp.TcpTransport.doRun(TcpTransport.java:221)
at org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:203)
at java.lang.Thread.run(Thread.java:680)
Caused by: java.io.IOException: connection closed
at com.sun.jndi.ldap.LdapClient.ensureOpen(LdapClient.java:1558)
at com.sun.jndi.ldap.LdapClient.search(LdapClient.java:503)
at com.sun.jndi.ldap.LdapCtx.doSearch(LdapCtx.java:1965)
... 23 more |
Show » |
|
http://repo.fusesource.com/nexus/content/repositories/snapshots/org/apache/activemq/apache-activemq/5.5.1.fuse-SNAPSHOT/
Besides main issue, some more cached ldap auth module fixes have been merged back: