Hi Indika,

Reviewed the pull request and merged the changes into both wso2-dev and
wso2 repositories.

Cheers,
Prabath

On Fri, Oct 31, 2014 at 4:53 PM, Indika Sampath <[email protected]> wrote:

> Hi Prabath,
>
> I have created a public JIRA [1] and add pull request URL to that. Please
> review and merge it.
>
> [1] https://wso2.org/jira/browse/SS-442
>
> Cheers!
>
> On Wed, Oct 29, 2014 at 5:01 PM, Indika Sampath <[email protected]> wrote:
>
>> Hi Prabath,
>>
>> Found the root cause with the help of SameeraJ. Below exceptions occurred
>> when calling initSystemDataSources() method because following dependencies
>> not available in org.wso2.carbon.cassandra.datareader.feature. It's working
>> without issue once I add these dependencies to
>> org.wso2.carbon.cassandra.datareader.feature and build product-mb. Shall I
>> send you a pull request with changes I made to
>> org.wso2.carbon.cassandra.datareader.feature?
>>
>> <dependency>
>>             <groupId>snappy-java.wso2</groupId>
>>             <artifactId>snappy-java</artifactId>
>>             <version>${snappy-java.version}</version>
>>         </dependency>
>>
>> <dependency>
>>             <groupId>metrics-core.wso2</groupId>
>>             <artifactId>metrics-core</artifactId>
>>         </dependency>
>>
>> <dependency>
>>             <groupId>org.codehaus.jackson</groupId>
>>             <artifactId>jackson-core-asl</artifactId>
>>         </dependency>
>>
>>         <dependency>
>>             <groupId>org.codehaus.jackson</groupId>
>>             <artifactId>jackson-mapper-asl</artifactId>
>>         </dependency>
>>
>> java.lang.NoClassDefFoundError: org/xerial/snappy/SnappyError
>>     at
>> com.datastax.driver.core.ProtocolOptions$Compression.<clinit>(ProtocolOptions.java:32)
>>     at com.datastax.driver.core.Cluster$Builder.<init>(Cluster.java:370)
>>     at com.datastax.driver.core.Cluster.builder(Cluster.java:131)
>>     at
>> org.wso2.carbon.cassandra.datareader.datasource.CassandraDataSourceReader.createCluster(CassandraDataSourceReader.java:135)
>>     at
>> org.wso2.carbon.cassandra.datareader.datasource.CassandraDataSourceReader.createDataSource(CassandraDataSourceReader.java:70)
>>     at
>> org.wso2.carbon.ndatasource.core.DataSourceRepository.createDataSourceObject(DataSourceRepository.java:202)
>>     at
>> org.wso2.carbon.ndatasource.core.DataSourceRepository.registerDataSource(DataSourceRepository.java:359)
>>     at
>> org.wso2.carbon.ndatasource.core.DataSourceRepository.addDataSource(DataSourceRepository.java:473)
>>     at
>> org.wso2.carbon.ndatasource.core.DataSourceManager.initSystemDataSource(DataSourceManager.java:185)
>>     at
>> org.wso2.carbon.ndatasource.core.DataSourceManager.initSystemDataSources(DataSourceManager.java:157)
>>     at
>> org.wso2.carbon.ndatasource.core.internal.DataSourceServiceComponent.initSystemDataSources(DataSourceServiceComponent.java:195)
>>     at
>> org.wso2.carbon.ndatasource.core.internal.DataSourceServiceComponent.setSecretCallbackHandlerService(DataSourceServiceComponent.java:178)
>>     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>     at
>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>>     at
>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>>     at java.lang.reflect.Method.invoke(Method.java:597)
>>     at
>> org.eclipse.equinox.internal.ds.model.ComponentReference.bind(ComponentReference.java:376)
>>     at
>> org.eclipse.equinox.internal.ds.model.ServiceComponentProp.bindReference(ServiceComponentProp.java:432)
>>     at
>> org.eclipse.equinox.internal.ds.model.ServiceComponentProp.bind(ServiceComponentProp.java:218)
>>     at
>> org.eclipse.equinox.internal.ds.model.ServiceComponentProp.build(ServiceComponentProp.java:345)
>>     at
>> org.eclipse.equinox.internal.ds.InstanceProcess.buildComponent(InstanceProcess.java:620)
>>     at
>> org.eclipse.equinox.internal.ds.InstanceProcess.buildComponents(InstanceProcess.java:197)
>>     at
>> org.eclipse.equinox.internal.ds.Resolver.getEligible(Resolver.java:343)
>>     at
>> org.eclipse.equinox.internal.ds.SCRManager.serviceChanged(SCRManager.java:222)
>>     at
>> org.eclipse.osgi.internal.serviceregistry.FilteredServiceListener.serviceChanged(FilteredServiceListener.java:107)
>>     at
>> org.eclipse.osgi.framework.internal.core.BundleContextImpl.dispatchEvent(BundleContextImpl.java:861)
>>     at
>> org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230)
>>     at
>> org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:148)
>>     at
>> org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEventPrivileged(ServiceRegistry.java:819)
>>     at
>> org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEvent(ServiceRegistry.java:771)
>>     at
>> org.eclipse.osgi.internal.serviceregistry.ServiceRegistrationImpl.register(ServiceRegistrationImpl.java:130)
>>     at
>> org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.registerService(ServiceRegistry.java:214)
>>     at
>> org.eclipse.osgi.framework.internal.core.BundleContextImpl.registerService(BundleContextImpl.java:433)
>>     at
>> org.eclipse.osgi.framework.internal.core.BundleContextImpl.registerService(BundleContextImpl.java:451)
>>     at
>> org.wso2.carbon.securevault.internal.SecretManagerInitializerComponent.activate(SecretManagerInitializerComponent.java:48)
>>     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>     at
>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>>     at
>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>>     at java.lang.reflect.Method.invoke(Method.java:597)
>>     at
>> org.eclipse.equinox.internal.ds.model.ServiceComponent.activate(ServiceComponent.java:260)
>>     at
>> org.eclipse.equinox.internal.ds.model.ServiceComponentProp.activate(ServiceComponentProp.java:146)
>>     at
>> org.eclipse.equinox.internal.ds.model.ServiceComponentProp.build(ServiceComponentProp.java:347)
>>     at
>> org.eclipse.equinox.internal.ds.InstanceProcess.buildComponent(InstanceProcess.java:620)
>>     at
>> org.eclipse.equinox.internal.ds.InstanceProcess.buildComponents(InstanceProcess.java:197)
>>     at
>> org.eclipse.equinox.internal.ds.Resolver.buildNewlySatisfied(Resolver.java:473)
>>     at
>> org.eclipse.equinox.internal.ds.Resolver.enableComponents(Resolver.java:217)
>>     at
>> org.eclipse.equinox.internal.ds.SCRManager.performWork(SCRManager.java:816)
>>     at
>> org.eclipse.equinox.internal.ds.SCRManager$QueuedJob.dispatch(SCRManager.java:783)
>>     at org.eclipse.equinox.internal.ds.WorkThread.run(WorkThread.java:89)
>>     at java.lang.Thread.run(Thread.java:662)
>> Caused by: java.lang.ClassNotFoundException: org.xerial.snappy.SnappyError
>>     at
>> org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:501)
>>     at
>> org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:421)
>>     at
>> org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:412)
>>     at
>> org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:107)
>>     at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
>>     ... 50 more
>>
>> java.lang.NoClassDefFoundError: com/yammer/metrics/core/Gauge
>>     at com.datastax.driver.core.Cluster$Manager.<init>(Cluster.java:815)
>>     at com.datastax.driver.core.Cluster$Manager.<init>(Cluster.java:763)
>>     at com.datastax.driver.core.Cluster.<init>(Cluster.java:91)
>>     at com.datastax.driver.core.Cluster$Builder.build(Cluster.java:732)
>>     at
>> org.wso2.carbon.cassandra.datareader.datasource.CassandraDataSourceReader.createCluster(CassandraDataSourceReader.java:158)
>>     at
>> org.wso2.carbon.cassandra.datareader.datasource.CassandraDataSourceReader.createDataSource(CassandraDataSourceReader.java:70)
>>     at
>> org.wso2.carbon.ndatasource.core.DataSourceRepository.createDataSourceObject(DataSourceRepository.java:202)
>>     at
>> org.wso2.carbon.ndatasource.core.DataSourceRepository.registerDataSource(DataSourceRepository.java:359)
>>     at
>> org.wso2.carbon.ndatasource.core.DataSourceRepository.addDataSource(DataSourceRepository.java:473)
>>     at
>> org.wso2.carbon.ndatasource.core.DataSourceManager.initSystemDataSource(DataSourceManager.java:185)
>>     at
>> org.wso2.carbon.ndatasource.core.DataSourceManager.initSystemDataSources(DataSourceManager.java:157)
>>     at
>> org.wso2.carbon.ndatasource.core.internal.DataSourceServiceComponent.initSystemDataSources(DataSourceServiceComponent.java:195)
>>     at
>> org.wso2.carbon.ndatasource.core.internal.DataSourceServiceComponent.setSecretCallbackHandlerService(DataSourceServiceComponent.java:178)
>>     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>     at
>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>>     at
>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>>     at java.lang.reflect.Method.invoke(Method.java:597)
>>     at
>> org.eclipse.equinox.internal.ds.model.ComponentReference.bind(ComponentReference.java:376)
>>     at
>> org.eclipse.equinox.internal.ds.model.ServiceComponentProp.bindReference(ServiceComponentProp.java:432)
>>     at
>> org.eclipse.equinox.internal.ds.model.ServiceComponentProp.bind(ServiceComponentProp.java:218)
>>     at
>> org.eclipse.equinox.internal.ds.model.ServiceComponentProp.build(ServiceComponentProp.java:345)
>>     at
>> org.eclipse.equinox.internal.ds.InstanceProcess.buildComponent(InstanceProcess.java:620)
>>     at
>> org.eclipse.equinox.internal.ds.InstanceProcess.buildComponents(InstanceProcess.java:197)
>>     at
>> org.eclipse.equinox.internal.ds.Resolver.getEligible(Resolver.java:343)
>>     at
>> org.eclipse.equinox.internal.ds.SCRManager.serviceChanged(SCRManager.java:222)
>>     at
>> org.eclipse.osgi.internal.serviceregistry.FilteredServiceListener.serviceChanged(FilteredServiceListener.java:107)
>>     at
>> org.eclipse.osgi.framework.internal.core.BundleContextImpl.dispatchEvent(BundleContextImpl.java:861)
>>     at
>> org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230)
>>     at
>> org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:148)
>>     at
>> org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEventPrivileged(ServiceRegistry.java:819)
>>     at
>> org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEvent(ServiceRegistry.java:771)
>>     at
>> org.eclipse.osgi.internal.serviceregistry.ServiceRegistrationImpl.register(ServiceRegistrationImpl.java:130)
>>     at
>> org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.registerService(ServiceRegistry.java:214)
>>     at
>> org.eclipse.osgi.framework.internal.core.BundleContextImpl.registerService(BundleContextImpl.java:433)
>>     at
>> org.eclipse.osgi.framework.internal.core.BundleContextImpl.registerService(BundleContextImpl.java:451)
>>     at
>> org.wso2.carbon.securevault.internal.SecretManagerInitializerComponent.activate(SecretManagerInitializerComponent.java:48)
>>     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>     at
>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>>     at
>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>>     at java.lang.reflect.Method.invoke(Method.java:597)
>>     at
>> org.eclipse.equinox.internal.ds.model.ServiceComponent.activate(ServiceComponent.java:260)
>>     at
>> org.eclipse.equinox.internal.ds.model.ServiceComponentProp.activate(ServiceComponentProp.java:146)
>>     at
>> org.eclipse.equinox.internal.ds.model.ServiceComponentProp.build(ServiceComponentProp.java:347)
>>     at
>> org.eclipse.equinox.internal.ds.InstanceProcess.buildComponent(InstanceProcess.java:620)
>>     at
>> org.eclipse.equinox.internal.ds.InstanceProcess.buildComponents(InstanceProcess.java:197)
>>     at
>> org.eclipse.equinox.internal.ds.Resolver.buildNewlySatisfied(Resolver.java:473)
>>     at
>> org.eclipse.equinox.internal.ds.Resolver.enableComponents(Resolver.java:217)
>>     at
>> org.eclipse.equinox.internal.ds.SCRManager.performWork(SCRManager.java:816)
>>     at
>> org.eclipse.equinox.internal.ds.SCRManager$QueuedJob.dispatch(SCRManager.java:783)
>>     at org.eclipse.equinox.internal.ds.WorkThread.run(WorkThread.java:89)
>>     at java.lang.Thread.run(Thread.java:662)
>> Caused by: java.lang.ClassNotFoundException: com.yammer.metrics.core.Gauge
>>     at
>> org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:501)
>>     at
>> org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:421)
>>     at
>> org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:412)
>>     at
>> org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:107)
>>     at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
>>     ... 51 more
>>
>> java.lang.NoClassDefFoundError: org/codehaus/jackson/map/ObjectMapper
>>     at
>> com.datastax.driver.core.TableMetadata.<clinit>(TableMetadata.java:294)
>>     at
>> com.datastax.driver.core.KeyspaceMetadata.build(KeyspaceMetadata.java:50)
>>     at com.datastax.driver.core.Metadata.rebuildSchema(Metadata.java:86)
>>     at
>> com.datastax.driver.core.ControlConnection.refreshSchema(ControlConnection.java:268)
>>     at
>> com.datastax.driver.core.ControlConnection.tryConnect(ControlConnection.java:219)
>>     at
>> com.datastax.driver.core.ControlConnection.reconnectInternal(ControlConnection.java:167)
>>     at
>> com.datastax.driver.core.ControlConnection.connect(ControlConnection.java:80)
>>     at com.datastax.driver.core.Cluster$Manager.init(Cluster.java:839)
>>     at
>> com.datastax.driver.core.Cluster$Manager.access$100(Cluster.java:763)
>>     at com.datastax.driver.core.Cluster.<init>(Cluster.java:93)
>>     at com.datastax.driver.core.Cluster$Builder.build(Cluster.java:732)
>>     at
>> org.wso2.carbon.cassandra.datareader.datasource.CassandraDataSourceReader.createCluster(CassandraDataSourceReader.java:158)
>>     at
>> org.wso2.carbon.cassandra.datareader.datasource.CassandraDataSourceReader.createDataSource(CassandraDataSourceReader.java:70)
>>     at
>> org.wso2.carbon.ndatasource.core.DataSourceRepository.createDataSourceObject(DataSourceRepository.java:202)
>>     at
>> org.wso2.carbon.ndatasource.core.DataSourceRepository.registerDataSource(DataSourceRepository.java:359)
>>     at
>> org.wso2.carbon.ndatasource.core.DataSourceRepository.addDataSource(DataSourceRepository.java:473)
>>     at
>> org.wso2.carbon.ndatasource.core.DataSourceManager.initSystemDataSource(DataSourceManager.java:185)
>>     at
>> org.wso2.carbon.ndatasource.core.DataSourceManager.initSystemDataSources(DataSourceManager.java:157)
>>     at
>> org.wso2.carbon.ndatasource.core.internal.DataSourceServiceComponent.initSystemDataSources(DataSourceServiceComponent.java:195)
>>     at
>> org.wso2.carbon.ndatasource.core.internal.DataSourceServiceComponent.setSecretCallbackHandlerService(DataSourceServiceComponent.java:178)
>>     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>     at
>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>>     at
>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>>     at java.lang.reflect.Method.invoke(Method.java:597)
>>     at
>> org.eclipse.equinox.internal.ds.model.ComponentReference.bind(ComponentReference.java:376)
>>     at
>> org.eclipse.equinox.internal.ds.model.ServiceComponentProp.bindReference(ServiceComponentProp.java:432)
>>     at
>> org.eclipse.equinox.internal.ds.model.ServiceComponentProp.bind(ServiceComponentProp.java:218)
>>     at
>> org.eclipse.equinox.internal.ds.model.ServiceComponentProp.build(ServiceComponentProp.java:345)
>>     at
>> org.eclipse.equinox.internal.ds.InstanceProcess.buildComponent(InstanceProcess.java:620)
>>     at
>> org.eclipse.equinox.internal.ds.InstanceProcess.buildComponents(InstanceProcess.java:197)
>>     at
>> org.eclipse.equinox.internal.ds.Resolver.getEligible(Resolver.java:343)
>>     at
>> org.eclipse.equinox.internal.ds.SCRManager.serviceChanged(SCRManager.java:222)
>>     at
>> org.eclipse.osgi.internal.serviceregistry.FilteredServiceListener.serviceChanged(FilteredServiceListener.java:107)
>>     at
>> org.eclipse.osgi.framework.internal.core.BundleContextImpl.dispatchEvent(BundleContextImpl.java:861)
>>     at
>> org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230)
>>     at
>> org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:148)
>>     at
>> org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEventPrivileged(ServiceRegistry.java:819)
>>     at
>> org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEvent(ServiceRegistry.java:771)
>>     at
>> org.eclipse.osgi.internal.serviceregistry.ServiceRegistrationImpl.register(ServiceRegistrationImpl.java:130)
>>     at
>> org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.registerService(ServiceRegistry.java:214)
>>     at
>> org.eclipse.osgi.framework.internal.core.BundleContextImpl.registerService(BundleContextImpl.java:433)
>>     at
>> org.eclipse.osgi.framework.internal.core.BundleContextImpl.registerService(BundleContextImpl.java:451)
>>     at
>> org.wso2.carbon.securevault.internal.SecretManagerInitializerComponent.activate(SecretManagerInitializerComponent.java:48)
>>     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>     at
>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>>     at
>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>>     at java.lang.reflect.Method.invoke(Method.java:597)
>>     at
>> org.eclipse.equinox.internal.ds.model.ServiceComponent.activate(ServiceComponent.java:260)
>>     at
>> org.eclipse.equinox.internal.ds.model.ServiceComponentProp.activate(ServiceComponentProp.java:146)
>>     at
>> org.eclipse.equinox.internal.ds.model.ServiceComponentProp.build(ServiceComponentProp.java:347)
>>     at
>> org.eclipse.equinox.internal.ds.InstanceProcess.buildComponent(InstanceProcess.java:620)
>>     at
>> org.eclipse.equinox.internal.ds.InstanceProcess.buildComponents(InstanceProcess.java:197)
>>     at
>> org.eclipse.equinox.internal.ds.Resolver.buildNewlySatisfied(Resolver.java:473)
>>     at
>> org.eclipse.equinox.internal.ds.Resolver.enableComponents(Resolver.java:217)
>>     at
>> org.eclipse.equinox.internal.ds.SCRManager.performWork(SCRManager.java:816)
>>     at
>> org.eclipse.equinox.internal.ds.SCRManager$QueuedJob.dispatch(SCRManager.java:783)
>>     at org.eclipse.equinox.internal.ds.WorkThread.run(WorkThread.java:89)
>>     at java.lang.Thread.run(Thread.java:662)
>> Caused by: java.lang.ClassNotFoundException:
>> org.codehaus.jackson.map.ObjectMapper
>>     at
>> org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:501)
>>     at
>> org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:421)
>>     at
>> org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:412)
>>     at
>> org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:107)
>>     at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
>>     ... 58 more
>>
>> Cheers!
>>
>>
>> On Wed, Oct 29, 2014 at 11:01 AM, Indika Sampath <[email protected]>
>> wrote:
>>
>>> Hi Prabath,
>>>
>>> On Wed, Oct 29, 2014 at 10:29 AM, Prabath Abeysekera <[email protected]>
>>> wrote:
>>>
>>>> Hi Indika,
>>>>
>>>> Please correct me if I'm wrong, the error trace posted in your mail
>>>> doesn't seem to suggest that the problem reported was caused by something
>>>> specific to Cassandra datasource configurations. Would you be able to
>>>> explain a little further as to how you concluded it that way?
>>>>
>>> The above exception occurred only when enabled cassadra datasource in
>>> master-datasources.xml. I have configured RDBMS datasource i.e. MySQL. But
>>> it's not gave any exception like above.
>>>
>>>>
>>>> FYI, we'd used the same configurations a few week backs while trying to
>>>> fix some Cassandra related dependency issue seen in MB, but had never come
>>>> across something like this. and I'm sure there hasn't been any changes in
>>>> Cassandra data reader implementation since then, as well. Perhaps, it's a
>>>> good idea to debug the ndatasource component and see what's gone wrong?
>>>>
>>> Yes. I will look into ndatasource component with the help of carbon
>>> team. This worked previously. The change I did is removed cassandra server
>>> feature, cassandra common feature and cassandra profile from product-mb
>>> since we are no longer using embedded cassandra. Now we use cassandra
>>> datareader feature only.
>>>
>>> Cheers!
>>>
>>>>
>>>> Cheers,
>>>> Prabath
>>>>
>>>> On Tue, Oct 28, 2014 at 4:03 PM, Indika Sampath <[email protected]>
>>>> wrote:
>>>>
>>>>> Hi All,
>>>>>
>>>>> Cassandra server no longer embedded into WSO2 MB 3.0.0. Therefore I
>>>>> have removed following features from the product as well as removed
>>>>> cassandra profile too.
>>>>>
>>>>> org.wso2.carbon.cassandra.server
>>>>> org.wso2.carbon.cassandra.common
>>>>>
>>>>> The only remain cassandra related feature is
>>>>> org.wso2.carbon.cassandra.datareader. We use this feature to connect with
>>>>> external cassandra server by enabling cassandra datasource in
>>>>> master-datasources.xml. Communication happen with cassandra via
>>>>> cql-driver_1.0.8.wso2v1.
>>>>>
>>>>> We have added following <provider> under <providers> in
>>>>> master-datasources.xml
>>>>>
>>>>>
>>>>> <provider>org.wso2.carbon.cassandra.datareader.datasource.CassandraDataSourceReader</provider>
>>>>>
>>>>> Here is datasource we used to connect to external cassandra server
>>>>>
>>>>> <datasource>
>>>>>             <name>WSO2_CASSANDRA_DB</name>
>>>>>             <description>The datasource used for
>>>>> cassandra</description>
>>>>>             <jndiConfig>
>>>>>                 <name>CassandraRepo</name>
>>>>>             </jndiConfig>
>>>>>             <definition type="CASSANDRA">
>>>>>                 <configuration>
>>>>>                     <async>false</async>
>>>>>                     <clusterName>TestCluster</clusterName>
>>>>>                     <compression>SNAPPY</compression>
>>>>>                     <concurrency>100</concurrency>
>>>>>                     <username>admin</username>
>>>>>                     <password encrypted="true">admin</password>
>>>>>                     <port>9042</port>
>>>>>                     <maxConnections>100</maxConnections>
>>>>>
>>>>>                     <hosts>
>>>>>                         <host>127.0.0.1</host>
>>>>>                     </hosts>
>>>>>                     <loadBalancePolicy>
>>>>>                         <exclusionThreshold>2.5</exclusionThreshold>
>>>>>                         <latencyAware>true</latencyAware>
>>>>>                         <minMeasure>100</minMeasure>
>>>>>                         <policyName>RoundRobinPolicy</policyName>
>>>>>                         <retryPeriod>10</retryPeriod>
>>>>>                         <scale>2</scale>
>>>>>                     </loadBalancePolicy>
>>>>>
>>>>>                     <poolOptions>
>>>>>
>>>>> <coreConnectionsForLocal>10</coreConnectionsForLocal>
>>>>>
>>>>> <coreConnectionsForRemote>10</coreConnectionsForRemote>
>>>>>
>>>>> <maxConnectionsForLocal>10</maxConnectionsForLocal>
>>>>>
>>>>> <maxConnectionsForRemote>10</maxConnectionsForRemote>
>>>>>
>>>>> <maxSimultaneousRequestsForLocal>10</maxSimultaneousRequestsForLocal>
>>>>>
>>>>> <maxSimultaneousRequestsForRemote>10</maxSimultaneousRequestsForRemote>
>>>>>
>>>>> <minSimultaneousRequestsForLocal>10</minSimultaneousRequestsForLocal>
>>>>>
>>>>> <minSimultaneousRequestsForRemote>10</minSimultaneousRequestsForRemote>
>>>>>                     </poolOptions>
>>>>>
>>>>>                     <reconnectPolicy>
>>>>>                         <baseDelayMs>100</baseDelayMs>
>>>>>
>>>>> <policyName>ConstantReconnectionPolicy</policyName>
>>>>>                     </reconnectPolicy>
>>>>>                     <socketOptions>
>>>>>
>>>>> <connectTimeoutMillis>200</connectTimeoutMillis>
>>>>>                         <keepAlive>true</keepAlive>
>>>>>                         <readTimeoutMillis>200</readTimeoutMillis>
>>>>>                         <tcpNoDelay>true</tcpNoDelay>
>>>>>                     </socketOptions>
>>>>>
>>>>>                 </configuration>
>>>>>
>>>>>             </definition>
>>>>>         </datasource>
>>>>>
>>>>> State of org.wso2.carbon.cassandra.datareader as below.
>>>>>
>>>>> 136    ACTIVE      org.wso2.carbon.cassandra.datareader_4.3.0.SNAPSHOT
>>>>>
>>>>> I have enabled DEBUG logs of DataSourceServiceComponent and it seems
>>>>> setSecretCallbackHandlerService() method called twice when bundle
>>>>> activation and private void initSystemDataSources() get called inside this
>>>>> setter method. It gives the below exception when second time calling
>>>>> initSystemDataSources() method. Is there anything wrong in our side with
>>>>> the implementation of connect to cassandra enabling datasource?
>>>>>
>>>>> [2014-10-28 14:50:23,521]  INFO
>>>>> {org.wso2.carbon.databridge.agent.thrift.internal.AgentDS} -  Successfully
>>>>> deployed Agent Client
>>>>> [2014-10-28 14:50:23,586] DEBUG
>>>>> {org.wso2.carbon.ndatasource.core.internal.DataSourceServiceComponent} -
>>>>> SecretCallbackHandlerService acquired
>>>>> [2014-10-28 14:50:23,586] DEBUG
>>>>> {org.wso2.carbon.ndatasource.core.internal.DataSourceServiceComponent} -
>>>>> Initializing system data sources...
>>>>> [2014-10-28 14:50:23,778] DEBUG
>>>>> {org.wso2.carbon.ndatasource.core.internal.DataSourceServiceComponent} -
>>>>> SecretCallbackHandlerService acquired
>>>>> [2014-10-28 14:50:23,778] DEBUG
>>>>> {org.wso2.carbon.ndatasource.core.internal.DataSourceServiceComponent} -
>>>>> Initializing system data sources...
>>>>> [2014-10-28 14:50:23,793] ERROR
>>>>> {org.wso2.carbon.ndatasource.core.internal.DataSourceServiceComponent} -
>>>>> Error in intializing system data sources: Error in initializing system 
>>>>> data
>>>>> sources: Error in initializing system data sources at
>>>>> '/home/indika/dev-zone/wso2-dev/fork/product-mb/modules/distribution/target/wso2mb-3.0.0-SNAPSHOT/repository/conf/datasources/master-datasources.xml'
>>>>> - System datasource WSO2_CARBON_DBcan not be updated.
>>>>> org.wso2.carbon.ndatasource.common.DataSourceException: Error in
>>>>> initializing system data sources: Error in initializing system data 
>>>>> sources
>>>>> at
>>>>> '/home/indika/dev-zone/wso2-dev/fork/product-mb/modules/distribution/target/wso2mb-3.0.0-SNAPSHOT/repository/conf/datasources/master-datasources.xml'
>>>>> - System datasource WSO2_CARBON_DBcan not be updated.
>>>>>     at
>>>>> org.wso2.carbon.ndatasource.core.DataSourceManager.initSystemDataSources(DataSourceManager.java:168)
>>>>>     at
>>>>> org.wso2.carbon.ndatasource.core.internal.DataSourceServiceComponent.initSystemDataSources(DataSourceServiceComponent.java:191)
>>>>>     at
>>>>> org.wso2.carbon.ndatasource.core.internal.DataSourceServiceComponent.setSecretCallbackHandlerService(DataSourceServiceComponent.java:177)
>>>>>     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>>>>     at
>>>>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>>>>>     at
>>>>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>>>>>     at java.lang.reflect.Method.invoke(Method.java:597)
>>>>>     at
>>>>> org.eclipse.equinox.internal.ds.model.ComponentReference.bind(ComponentReference.java:376)
>>>>>     at
>>>>> org.eclipse.equinox.internal.ds.model.ServiceComponentProp.bindReference(ServiceComponentProp.java:432)
>>>>>     at
>>>>> org.eclipse.equinox.internal.ds.model.ServiceComponentProp.bind(ServiceComponentProp.java:218)
>>>>>     at
>>>>> org.eclipse.equinox.internal.ds.model.ServiceComponentProp.build(ServiceComponentProp.java:345)
>>>>>     at
>>>>> org.eclipse.equinox.internal.ds.InstanceProcess.buildComponent(InstanceProcess.java:620)
>>>>>     at
>>>>> org.eclipse.equinox.internal.ds.InstanceProcess.buildComponents(InstanceProcess.java:197)
>>>>>     at
>>>>> org.eclipse.equinox.internal.ds.Resolver.buildNewlySatisfied(Resolver.java:473)
>>>>>     at
>>>>> org.eclipse.equinox.internal.ds.Resolver.enableComponents(Resolver.java:217)
>>>>>     at
>>>>> org.eclipse.equinox.internal.ds.SCRManager.performWork(SCRManager.java:816)
>>>>>     at
>>>>> org.eclipse.equinox.internal.ds.SCRManager$QueuedJob.dispatch(SCRManager.java:783)
>>>>>     at
>>>>> org.eclipse.equinox.internal.ds.WorkThread.run(WorkThread.java:89)
>>>>>     at java.lang.Thread.run(Thread.java:662)
>>>>> Caused by: org.wso2.carbon.ndatasource.common.DataSourceException:
>>>>> Error in initializing system data sources at
>>>>> '/home/indika/dev-zone/wso2-dev/fork/product-mb/modules/distribution/target/wso2mb-3.0.0-SNAPSHOT/repository/conf/datasources/master-datasources.xml'
>>>>> - System datasource WSO2_CARBON_DBcan not be updated.
>>>>>     at
>>>>> org.wso2.carbon.ndatasource.core.DataSourceManager.initSystemDataSource(DataSourceManager.java:188)
>>>>>     at
>>>>> org.wso2.carbon.ndatasource.core.DataSourceManager.initSystemDataSources(DataSourceManager.java:157)
>>>>>     ... 18 more
>>>>> Caused by: org.wso2.carbon.ndatasource.common.DataSourceException:
>>>>> System datasource WSO2_CARBON_DBcan not be updated.
>>>>>     at
>>>>> org.wso2.carbon.ndatasource.core.DataSourceRepository.registerDataSource(DataSourceRepository.java:344)
>>>>>     at
>>>>> org.wso2.carbon.ndatasource.core.DataSourceRepository.addDataSource(DataSourceRepository.java:473)
>>>>>     at
>>>>> org.wso2.carbon.ndatasource.core.DataSourceManager.initSystemDataSource(DataSourceManager.java:185)
>>>>>     ... 19 more
>>>>> [2014-10-28 14:50:23,795] DEBUG
>>>>> {org.wso2.carbon.ndatasource.core.internal.DataSourceServiceComponent} -
>>>>> ServerConfigurationService acquired
>>>>> [2014-10-28 14:50:23,795] DEBUG
>>>>> {org.wso2.carbon.ndatasource.core.internal.DataSourceServiceComponent} -
>>>>> DataSourceServiceComponent activated
>>>>> [2014-10-28 14:50:26,250] DEBUG
>>>>> {org.wso2.carbon.ndatasource.core.internal.DataSourceServiceComponent} -
>>>>> RealmService acquired
>>>>> [2014-10-28 14:50:26,327]  INFO
>>>>> {org.wso2.carbon.registry.core.jdbc.EmbeddedRegistryService} -  Configured
>>>>> Registry in 33ms
>>>>> [2014-10-28 14:50:26,415]  INFO
>>>>> {org.wso2.carbon.registry.core.internal.RegistryCoreServiceComponent} -
>>>>> Registry Mode    : READ-WRITE
>>>>> [2014-10-28 14:50:26,419] DEBUG
>>>>> {org.wso2.carbon.ndatasource.core.internal.DataSourceServiceComponent} -
>>>>> RegistryService acquired
>>>>> [2014-10-28 14:50:26,419] DEBUG
>>>>> {org.wso2.carbon.ndatasource.core.internal.DataSourceServiceComponent} -
>>>>> Initializing super tenant user data sources...
>>>>> [2014-10-28 14:50:26,421] DEBUG
>>>>> {org.wso2.carbon.ndatasource.core.internal.DataSourceServiceComponent} -
>>>>> Super tenant user data sources successfully initialized
>>>>> [2014-10-28 14:50:26,559]  INFO
>>>>> {org.wso2.carbon.user.core.internal.UserStoreMgtDSComponent} -  Carbon
>>>>> UserStoreMgtDSComponent activated successfully.
>>>>>
>>>>> Cheers!
>>>>>
>>>>> --
>>>>> Indika Sampath
>>>>> Software Engineer
>>>>> WSO2 Inc.
>>>>> http://wso2.com
>>>>>
>>>>> Phone: +94 716 424 744
>>>>> Blog: http://indikasampath.blogspot.com/
>>>>>
>>>>>
>>>>
>>>>
>>>> --
>>>> Prabath Abeysekara
>>>> Associate Technical Lead, Data TG.
>>>> WSO2 Inc.
>>>> Email: [email protected]
>>>> Mobile: +94774171471
>>>>
>>>
>>>
>>>
>>> --
>>> Indika Sampath
>>> Software Engineer
>>> WSO2 Inc.
>>> http://wso2.com
>>>
>>> Phone: +94 716 424 744
>>> Blog: http://indikasampath.blogspot.com/
>>>
>>>
>>
>>
>> --
>> Indika Sampath
>> Software Engineer
>> WSO2 Inc.
>> http://wso2.com
>>
>> Phone: +94 716 424 744
>> Blog: http://indikasampath.blogspot.com/
>>
>>
>
>
> --
> Indika Sampath
> Software Engineer
> WSO2 Inc.
> http://wso2.com
>
> Phone: +94 716 424 744
> Blog: http://indikasampath.blogspot.com/
>
>


-- 
Prabath Abeysekara
Associate Technical Lead, Data TG.
WSO2 Inc.
Email: [email protected]
Mobile: +94774171471
_______________________________________________
Dev mailing list
[email protected]
http://wso2.org/cgi-bin/mailman/listinfo/dev

Reply via email to