stratos-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Chamila De Alwis <chami...@wso2.com>
Subject Re: ISSUE: java cartridge agent throwing exception was ....RE: [Discuss] Java Cartridge Agent Improvements
Date Wed, 25 Feb 2015 05:03:34 GMT
Hi Udara,

I don't think that might be the case, though I'll have to check that too.
There are several events that pass an empty map to the extensions, which do
not seem to  give rise to these errors. Furthermore these errors did not
come with the integration test, which feeds a typical payload. I'll
investigate more.
On Feb 25, 2015 9:31 AM, "Udara Liyanage" <udara@wso2.com> wrote:

> Hi Chamila,
>
> This culprit seems to be the following line in startServerExtension()
> method of DefaultExtensionHandler
> ExtensionUtils.executeStartServersExtension(Collections.<String,
> String>emptyMap());
>
> It is trying to add elements to the empty map created above
> envParameters.put("STRATOS_APP_PATH",
> CartridgeAgentConfiguration.getInstance().getAppPath());
>
> On Wed, Feb 25, 2015 at 8:22 AM, Martin Eppel (meppel) <meppel@cisco.com>
> wrote:
>
>>  Hi Chamila,
>>
>>
>>
>> With the latest code as of today (see last commit) and run into the
>> exceptions (see below) when bringing up the cartridge agent ? Not sure if
>> something is missing or the code is simple not yet ready ?
>>
>>
>>
>> I attached the logs as well,
>>
>>
>>
>> Thanks
>>
>>
>>
>> Martin
>>
>>
>>
>> Last commit:
>>
>> commit a0003d85353bea6d1937f2e06db05f6335f34078
>>
>> Author: Lahiru Sandaruwan <lahirus@apache.org>
>>
>> Date:   Wed Feb 25 05:40:42 2015 +0530
>>
>>
>>
>> Exceptions:
>>
>>
>>
>> [2015-02-25 02:38:05,563]  INFO - [CartridgeAgentEventPublisher] Instance
>> started event published
>>
>> [2015-02-25 02:38:05,563]  INFO - [DefaultExtensionHandler] [start server
>> extension] complete topology event received
>>
>> [2015-02-25 02:38:05,564] ERROR - [ExtensionUtils] Could not execute
>> start servers extension
>>
>> java.lang.UnsupportedOperationException
>>
>>                at java.util.AbstractMap.put(AbstractMap.java:203)
>>
>>                at
>> org.apache.stratos.cartridge.agent.util.ExtensionUtils.addPayloadParameters(ExtensionUtils.java:66)
>>
>>                at
>> org.apache.stratos.cartridge.agent.util.ExtensionUtils.executeStartServersExtension(ExtensionUtils.java:153)
>>
>>                at
>> org.apache.stratos.cartridge.agent.extensions.DefaultExtensionHandler.startServerExtension(DefaultExtensionHandler.java:426)
>>
>>                at
>> org.apache.stratos.cartridge.agent.CartridgeAgent.run(CartridgeAgent.java:122)
>>
>>                at java.lang.Thread.run(Thread.java:745)
>>
>>
>>
>> …
>>
>> [2015-02-25 02:38:10,633]  INFO - [CartridgeAgentEventPublisher] Starting
>> health statistics notifier
>>
>> Exception 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:139)
>>
>>                at
>> org.apache.stratos.cartridge.agent.CartridgeAgent.run(CartridgeAgent.java:145)
>>
>>                at java.lang.Thread.run(Thread.java:745)
>>
>> Caused by: java.lang.NullPointerException
>>
>>                at java.io.File.<init>(File.java:277)
>>
>>                at
>> org.apache.stratos.common.statistics.publisher.wso2.cep.ThriftClientConfigParser.parse(ThriftClientConfigParser.java:67)
>>
>>                ... 8 more
>>
>>
>>
>> ….
>>
>> [2015-02-25 02:40:14,097] ERROR - [CartridgeAgentEventListeners] Error
>> processing member terminated event
>>
>> java.lang.NullPointerException
>>
>>                at
>> org.apache.stratos.cartridge.agent.util.ExtensionUtils.checkTopologyConsistency(ExtensionUtils.java:500)
>>
>>                at
>> org.apache.stratos.cartridge.agent.extensions.DefaultExtensionHandler.onMemberTerminatedEvent(DefaultExtensionHandler.java:345)
>>
>>                at
>> org.apache.stratos.cartridge.agent.CartridgeAgentEventListeners$11.onEvent(CartridgeAgentEventListeners.java:292)
>>
>>                at
>> org.apache.stratos.messaging.listener.EventListener.update(EventListener.java:42)
>>
>>                at
>> java.util.Observable.notifyObservers(Observable.java:159)
>>
>>                at
>> org.apache.stratos.messaging.event.EventObservable.notifyEventListeners(EventObservable.java:51)
>>
>>                at
>> org.apache.stratos.messaging.message.processor.topology.MemberTerminatedMessageProcessor.doProcess(MemberTerminatedMessageProcessor.java:129)
>>
>>                at
>> org.apache.stratos.messaging.message.processor.topology.MemberTerminatedMessageProcessor.process(MemberTerminatedMessageProcessor.java:59)
>>
>>                at
>> org.apache.stratos.messaging.message.processor.topology.MemberSuspendedMessageProcessor.process(MemberSuspendedMessageProcessor.java:69)
>>
>> …
>>
>>
>>
>> *From:* Martin Eppel (meppel)
>> *Sent:* Tuesday, February 24, 2015 4:45 PM
>> *To:* dev@stratos.apache.org
>> *Subject:* RE: [Discuss] Java Cartridge Agent Improvements
>>
>>
>>
>> Never mind, I see the commits
>>
>>
>>
>> Thanks
>>
>>
>>
>> Martin
>>
>> *From:* Martin Eppel (meppel)
>> *Sent:* Tuesday, February 24, 2015 3:17 PM
>> *To:* dev@stratos.apache.org
>> *Subject:* RE: [Discuss] Java Cartridge Agent Improvements
>>
>>
>>
>> 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:chamilad@wso2.com <chamilad@wso2.com>]
>> *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
>>
>>
>>
>>
>>
>
>
>
> --
>
> Udara Liyanage
> Software Engineer
> WSO2, Inc.: http://wso2.com
> lean. enterprise. middleware
>
> web: http://udaraliyanage.wordpress.com
> phone: +94 71 443 6897
>

Mime
View raw message