Hi Chamila,
I was just wondering if you already merged these fixes back to the master (or
by when ) ?
I think I am hitting these issues, see exceptions below,
Thanks
Martin
[2015-02-24 23:06:02,707] ERROR - [TopologyEventMessageDelegator] Failed to
retrieve topology event message
java.lang.IllegalMonitorStateException: attempt to unlock read lock, not locked
by current thread
at
java.util.concurrent.locks.ReentrantReadWriteLock$Sync.unmatchedUnlockException(ReentrantReadWriteLock.java:447)
at
java.util.concurrent.locks.ReentrantReadWriteLock$Sync.tryReleaseShared(ReentrantReadWriteLock.java:431)
at
java.util.concurrent.locks.AbstractQueuedSynchronizer.releaseShared(AbstractQueuedSynchronizer.java:1340)
at
java.util.concurrent.locks.ReentrantReadWriteLock$ReadLock.unlock(ReentrantReadWriteLock.java:883)
at
org.apache.stratos.common.concurrent.locks.ReadWriteLock.releaseReadLock(ReadWriteLock.java:199)
at
org.apache.stratos.messaging.message.receiver.topology.TopologyManager.releaseReadLockForService(TopologyManager.java:144)
….
[2015-02-24 23:06:07,706] INFO - [CartridgeAgentEventPublisher] Starting
health statistics notifierException in thread "Thread-1"
java.lang.RuntimeException: Could not parse thrift client configuration
at
org.apache.stratos.common.statistics.publisher.wso2.cep.ThriftClientConfigParser.parse(ThriftClientConfigParser.java:136)
at
org.apache.stratos.common.statistics.publisher.wso2.cep.ThriftClientConfig.getInstance(ThriftClientConfig.java:44)
at
org.apache.stratos.common.statistics.publisher.wso2.cep.WSO2CEPStatisticsPublisher.<init>(WSO2CEPStatisticsPublisher.java:56)
at
org.apache.stratos.common.statistics.publisher.wso2.cep.WSO2CEPHealthStatisticsPublisher.<init>(WSO2CEPHealthStatisticsPublisher.java:43)
at
org.apache.stratos.common.statistics.publisher.HealthStatisticsPublisherFactory.createHealthStatisticsPublisher(HealthStatisticsPublisherFactory.java:31)
at
org.apache.stratos.cartridge.agent.statistics.publisher.HealthStatisticsNotifier.<init>(HealthStatisticsNotifier.java:45)
at
org.apache.stratos.cartridge.agent.event.publisher.CartridgeAgentEventPublisher.publishInstanceActivatedEvent(CartridgeAgentEventPublisher.java:129)
at
org.apache.stratos.cartridge.agent.CartridgeAgent.run(CartridgeAgent.java:171)
at java.lang.Thread.run(Thread.java:745)Caused by:
java.lang.NullPointerException
at java.io.File.<init>(File.java:277)
From: Chamila De Alwis [mailto:[email protected]]
Sent: Friday, February 20, 2015 1:36 PM
To: dev
Subject: [Discuss] Java Cartridge Agent Improvements
Hi,
I'm in the process of getting the JCA to a matching state with the PCA. As a
part of this I copied over the integration test that was written by Imesh for
the PCA, to simplify error checks and find bugs in the JCA.
There was an issue in the CartridgeEventListener where
TopologyManager.acquireReadLock() was called after a conditional return
statement. The lock is released in the finally{} block and thus it executes
before the return statement completes, i.e. before actually acquiring the lock.
Another issue I've found so far is the -Dthrift.client.config.file.path system
property and the thrift-client-config.xml being missing in the Cartridge agent
product assembly.
I will soon submit a PR with a stable JCA.
Any feedback, ideas are appreciated! :)
Regards,
Chamila de Alwis
Software Engineer | WSO2 | +94772207163
Blog: code.chamiladealwis.com<http://code.chamiladealwis.com>