Hi Martin,

CA is publishing events in every 15s by default. If you want to change it,
please add

-Dstats.notifier.interval=xx to stratos.sh of the CA.

In order to add thrift-agent-config.xml to CA:

  - Please create <CA-HOME>/conf/data-bridge folder
  - Place the attached thrift-agent-config.xml with customized
configuration as you need into <CA-HOME>/conf/data-bridge
   - Add below  to stratos.sh of the CA
           -Dcarbon.config.dir.path=<CA-HOME>/conf
           where replace <CA-HOME> with the absolute path

If you perform above steps, data publisher of CA will pick up the updated
thrift-agent-config.xml.

Since PCA is not using the java written thrift library for the
communication, we might not need to do the exact configuration there.

@Chamila, but is it possible to configure anything similar like this in PCA?

Thanks,
Reka


On Mon, Sep 14, 2015 at 11:38 PM, Martin Eppel (meppel) <mep...@cisco.com>
wrote:

> Hi Reka, Akila
>
>
>
> Thanks for the response:
>
>
>
> On the system where we encountered the issue we are still running the java
> agent (JCA). I checked the commit as suggested by Akila and we do have it.
>
>
>
> The secureEvictionTimePeriod is set to the default (5500 ms).
>
>
>
> Question, in STRATOS-739 it states (see quote below) that the
> secureEvictionTimePeriod needs to be tuned according the publishing period
> – how would I determine the publishing period ? Also, I don’t see the
> config file (thrift-agent-config.xml) in the JCA package (client side) ?
> Where should we set the time period, server side or client side ?
>
>
>
> Is this configuration (or something similar ) expected as well in PCA (we
> are migrating over but it’s taking some time) ?
>
>
>
> Thanks
>
>
>
> Martin
>
>
>
> Quote from doc:
>
>
>
> (… If you are publishing events in a periodic interval as more than 5.5s,
> you need to tune the <secureEvictionTimePeriod> parameter accordingly…)
>
>
>
> *From:* Reka Thirunavukkarasu [mailto:r...@wso2.com]
> *Sent:* Sunday, September 13, 2015 10:49 PM
> *To:* dev
> *Cc:* Chamila De Alwis
> *Subject:* Re: Stratos 4.1: "Too many open files" issue
>
>
>
> Hi Martin,
>
> What cartridge agent are you using currently? Is it java or Python? This
> problem was identified from the thrift data publisher side in java. Since
> python agent is using different approach to connect to data receiver, we
> will need to verify whether python agent fixed this particular issue. If
> you could explain who are connecting to stratos using thrift, then we can
> check on the thrift agent version as Akila mentioned and find out the root
> cause of this issue.
>
> Thanks,
>
> Reka
>
>
>
> On Sun, Sep 13, 2015 at 12:46 PM, Akila Ravihansa Perera <
> raviha...@wso2.com> wrote:
>
> Hi Martin,
>
> I think we fixed this problem by uplifting Thrift agent feature in [1].
> The root cause of this issue was that after periodic publishing, thrift
> agent fails to evict the old connection according to [2]. The fix is
> described in [3]. Looks like your stack trace is very similar to what has
> been reported in JIRA.
>
>
>
> Can you check whether you have this fix applied?
>
> [1]
> https://github.com/apache/stratos/commit/8985d96eb811aa8e9ce2c114f1856b4c4e20517b
> [2] https://issues.apache.org/jira/browse/STRATOS-723
> [3] https://issues.apache.org/jira/browse/STRATOS-739
>
>
>
> Thanks.
>
>
>
> On Sun, Sep 13, 2015 at 10:56 AM, Imesh Gunaratne <im...@apache.org>
> wrote:
>
> Hi Martin,
>
>
>
> I believe you are using 4.1.0-RC4 with some custom changes you have done
> locally. Will you be able to test this on stratos-4.1.x branch latest
> commit (without having any other changes)? I cannot recall a fix we did
> after 4.1.0-RC4 for this but it would be better if you can verify with the
> latest code in stratos-4.1.x branch.
>
>
>
> At the same time will you be able to do following:
>
>    - Take a thread dump of the running Stratos, CEP instances once this
>    happens
>    - Check the file descriptor limits of the OS
>
> Thanks
>
>
>
> On Sat, Sep 12, 2015 at 10:56 PM, Martin Eppel (meppel) <mep...@cisco.com>
> wrote:
>
> Resending in case it got lost,
>
>
>
> Thanks
>
>
>
> Martin
>
>
>
> *From:* Martin Eppel (meppel)
> *Sent:* Thursday, September 10, 2015 2:39 PM
> *To:* dev@stratos.apache.org
> *Subject:* Stratos 4.1: "Too many open files" issue
>
>
>
> Hi,
>
>
>
> We are seeing an issue with stratos running out of file handles when
> creating a number of applications and VM instances:
>
>
>
> The scenario is as follows:
>
>
>
> 13 applications are deployed, each with a single cluster and a single
> member instance,
>
>
>
> As the VMs spin up stratos becomes unresponsive and checking the logs we
> find the following exceptions (see below). I remember we had seen similar
> issues (same exceptions) back in stratos 4.0 in the context of longevity
> tests.
>
>
>
> We are running stratos 4.1 RC4 with the latest  commit
>
>
>
> commit 0fd41840fb04d92ba921bf58c59c2c3fbad0c561
>
> Author: Imesh Gunaratne <im...@apache.org>
>
> Date:   Tue Jul 7 12:54:47 2015 +0530
>
>
>
> Is this a known issue which might have been fixed in a later commit or
> something new ? Can we verify that the fixes for the previous issues are
> included in our system (jars, commit,s etc …) ?
>
>
>
>
>
>
>
>
>
> rg.apache.thrift.transport.TTransportException: java.net.SocketException:
> Too many open files
> at
> org.apache.thrift.transport.TServerSocket.acceptImpl(TServerSocket.java:118)
> at
> org.apache.thrift.transport.TServerSocket.acceptImpl(TServerSocket.java:35)
> at
> org.apache.thrift.transport.TServerTransport.accept(TServerTransport.java:31)
> at
> org.apache.thrift.server.TThreadPoolServer.serve(TThreadPoolServer.java:106)
> at
> org.wso2.carbon.databridge.receiver.thrift.internal.ThriftDataReceiver$ServerThread.run(ThriftDataReceiver.java:199)
> at java.lang.Thread.run(Thread.java:745)
> TID: [0] [STRATOS] [2015-08-17 17:38:17,499] WARN
> {org.apache.thrift.server.TThreadPoolServer} - Transport error occurred
> during acceptance of message.
> org.apache.thrift.transport.TTransportException: java.net.SocketException:
> Too many open files
> at
> org.apache.thrift.transport.TServerSocket.acceptImpl(TServerSocket.java:118)
> at
> org.apache.thrift.transport.TServerSocket.acceptImpl(TServerSocket.java:35)
> at
> org.apache.thrift.transport.TServerTransport.accept(TServerTransport.java:31)
> at
> org.apache.thrift.server.TThreadPoolServer.serve(TThreadPoolServer.java:106)
> at
> org.wso2.carbon.databridge.receiver.thrift.internal.ThriftDataReceiver$ServerThread.run(ThriftDataReceiver.java:199)
> at java.lang.Thread.run(Thread.java:745)
> Caused by: java.net.SocketException: Too many open files
>
>
>
> // listing the applications, member isntances and cartridge state:
>
>
>
> [di-000-xxx] – application name,
>
>
>
> di-000-010: applicationInstances 1, groupInstances 0, clusterInstances 1,
> members 1 (Starting 1)
>
> di-000-011: applicationInstances 1, groupInstances 0, clusterInstances 1,
> members 1 (Initialized 1)
>
> cartridge-proxy: applicationInstances 1, groupInstances 0,
> clusterInstances 1, members 1 (Active 1)
>
> di-000-001: applicationInstances 1, groupInstances 0, clusterInstances 1,
> members 1 (Active 1)
>
> di-000-002: applicationInstances 1, groupInstances 0, clusterInstances 1,
> members 1 (Active 1)
>
> di-000-012: applicationInstances 1, groupInstances 0, clusterInstances 1,
> members 1 (Created 1)
>
> di-000-003: applicationInstances 1, groupInstances 0, clusterInstances 1,
> members 1 (Starting 1)
>
> di-000-004: applicationInstances 1, groupInstances 0, clusterInstances 1,
> members 1 (Starting 1)
>
> di-000-006: applicationInstances 1, groupInstances 0, clusterInstances 1,
> members 1 (Starting 1)
>
> di-000-005: applicationInstances 1, groupInstances 0, clusterInstances 1,
> members 1 (Starting 1)
>
> di-000-008: applicationInstances 1, groupInstances 0, clusterInstances 1,
> members 1 (Starting 1)
>
> di-000-007: applicationInstances 1, groupInstances 0, clusterInstances 1,
> members 1 (Starting 1)
>
> di-000-009: applicationInstances 1, groupInstances 0, clusterInstances 1,
> members 1 (Starting 1)
>
>
>
>
>
>
>
> --
>
> Imesh Gunaratne
>
>
>
> Senior Technical Lead, WSO2
>
> Committer & PMC Member, Apache Stratos
>
>
>
>
>
> --
>
> Akila Ravihansa Perera
> WSO2 Inc.;  http://wso2.com/
>
> Blog: http://ravihansa3000.blogspot.com
>
>
>
>
> --
>
> Reka Thirunavukkarasu
> Senior Software Engineer,
> WSO2, Inc.:http://wso2.com,
>
> Mobile: +94776442007
>
>
>



-- 
Reka Thirunavukkarasu
Senior Software Engineer,
WSO2, Inc.:http://wso2.com,
Mobile: +94776442007
<thriftAgentConfiguration xmlns="http://wso2.org/carbon/databridge/agent/thrift";>

    <bufferedEventsSize>1000</bufferedEventsSize>
    <poolSize>50</poolSize>
    <maxTransportPoolSize>250</maxTransportPoolSize>
    <maxIdleConnections>250</maxIdleConnections>
    <evictionTimePeriod>5500</evictionTimePeriod>
    <minIdleTimeInPool>5000</minIdleTimeInPool>
    <secureMaxTransportPoolSize>250</secureMaxTransportPoolSize>
    <secureMaxIdleConnections>250</secureMaxIdleConnections>
    <secureEvictionTimePeriod>5500</secureEvictionTimePeriod>
    <secureMinIdleTimeInPool>5000</secureMinIdleTimeInPool>
    <lbDataPublisherBufferedEventSize>1</lbDataPublisherBufferedEventSize>
    <maxMessageBundleSize>100</maxMessageBundleSize>
    <asyncDataPublisherBufferedEventSize>1</asyncDataPublisherBufferedEventSize>
    <loadBalancingReconnectionInterval>30</loadBalancingReconnectionInterval>
    <!--<trustStore>
            .../wso2cep-1.0.0-SNAPSHOT/repository/resources/security/client-truststore.jks
        </trustStore>
        <trustStorePassword>wso2carbon</trustStorePassword>-->
</thriftAgentConfiguration>

Reply via email to