Hi all,
We are using the new Cassandra data source feature for WSO2 MB 3.0.0 to
connect to external Cassandra data source. At server start-up we are
getting a *No Host Available Exception *[1]*. *
By increasing the *readTimeoutMillis *parameter in Cassandra data source
entry (master-datasources.xml) we could get rid of this issue. Defaults
value is set to 200.
In an* 8 core 16GB SSD local setup* this value should be set to around *500*
or above to get rid of this error. In a *4 core 8GB HDD local setup* this
value should be set to around *10,000* to get around this issue.
Seems like something is not right here? Any idea on this?
[1]
[2014-10-01 22:12:05,665] INFO
{org.wso2.andes.wso2.internal.QpidBundleActivator}
- Setting BundleContext in PluginManager
[2014-10-01 22:12:06,257] INFO
{org.wso2.carbon.core.internal.CarbonCoreActivator}
- Starting WSO2 Carbon...
[2014-10-01 22:12:06,258] INFO
{org.wso2.carbon.core.internal.CarbonCoreActivator}
- Operating System : Linux 3.5.0-46-generic, amd64
[2014-10-01 22:12:06,258] INFO
{org.wso2.carbon.core.internal.CarbonCoreActivator}
- Java Home : /home/hasitha/bin/JAVA/java7_64/jdk1.7.0_67/jre
[2014-10-01 22:12:06,258] INFO
{org.wso2.carbon.core.internal.CarbonCoreActivator}
- Java Version : 1.7.0_67
[2014-10-01 22:12:06,258] INFO
{org.wso2.carbon.core.internal.CarbonCoreActivator}
- Java VM : Java HotSpot(TM) 64-Bit Server VM 24.65-b04,Oracle
Corporation
[2014-10-01 22:12:06,258] INFO
{org.wso2.carbon.core.internal.CarbonCoreActivator}
- Carbon Home : /home/hasitha/Desktop/pack_from_Sajini/mb1
[2014-10-01 22:12:06,258] INFO
{org.wso2.carbon.core.internal.CarbonCoreActivator}
- Java Temp Dir : /home/hasitha/Desktop/pack_from_Sajini/mb1/tmp
[2014-10-01 22:12:06,258] INFO
{org.wso2.carbon.core.internal.CarbonCoreActivator}
- User : hasitha, en-US, Asia/Colombo
[2014-10-01 22:12:06,379] WARN
{org.wso2.carbon.core.bootup.validator.util.ValidationResultPrinter}
- Carbon is configured to use the default keystore (wso2carbon.jks). To
maximize security when deploying to a production environment, configure a
new keystore with a unique password in the production server profile.
[2014-10-01 22:12:06,393] INFO
{org.wso2.carbon.databridge.agent.thrift.AgentHolder}
- Agent created !
[2014-10-01 22:12:06,412] INFO
{org.wso2.carbon.databridge.agent.thrift.internal.AgentDS}
- Successfully deployed Agent Client
[2014-10-01 22:12:07,191] ERROR
{org.wso2.carbon.ndatasource.core.DataSourceRepository}
- org.wso2.carbon.ndatasource.common.DataSourceException: No Host
available to access
org.wso2.carbon.ndatasource.common.DataSourceException:
org.wso2.carbon.ndatasource.common.DataSourceException: No Host available
to access
at org.wso2.carbon.cassandra.datareader.datasource.
CassandraDataSourceReader.createDataSource(CassandraDataSourceReader.
java:76)
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: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:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(
DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
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.SecretManagerInitializerCompon
ent.activate(SecretManagerInitializerComponent.java:48)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(
NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(
DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
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:745)
Caused by: org.wso2.carbon.ndatasource.common.DataSourceException: No Host
available to access
at org.wso2.carbon.cassandra.datareader.datasource.
CassandraDataSourceReader.createCluster(CassandraDataSourceReader.java:179)
at org.wso2.carbon.cassandra.datareader.datasource.
CassandraDataSourceReader.createDataSource(CassandraDataSourceReader.
java:70)
... 45 more
Caused by: com.datastax.driver.core.exceptions.NoHostAvailableException:
All host(s) tried for query failed (tried: /10.100.1.146 ([/10.100.1.146]
Cannot connect))
at com.datastax.driver.core.ControlConnection.reconnectInternal(
ControlConnection.java:186)
at com.datastax.driver.core.ControlConnection.connect(
ControlConnection.java:81)
at com.datastax.driver.core.Cluster$Manager.init(Cluster.java:794)
at com.datastax.driver.core.Cluster$Manager.access$100(Cluster.java:721)
at com.datastax.driver.core.Cluster.<init>(Cluster.java:82)
at com.datastax.driver.core.Cluster.<init>(Cluster.java:67)
at com.datastax.driver.core.Cluster$Builder.build(Cluster.java:690)
at org.wso2.carbon.cassandra.datareader.datasource.
CassandraDataSourceReader.createCluster(CassandraDataSourceReader.java:158)
... 46 more
[2014-10-01 22:12:08,190] INFO {org.wso2.carbon.identity.
user.store.remote.internal.CarbonRemoteUserStoreDSComponent} - Carbon
Remote User Store activated successfully.
[2014-10-01 22:12:08,333] INFO
{org.wso2.carbon.registry.core.jdbc.EmbeddedRegistryService}
- Configured Registry in 67ms
[2014-10-01 22:12:08,428] INFO
{org.wso2.carbon.registry.core.internal.RegistryCoreServiceComponent}
- Registry Mode : READ-WRITE
[2014-10-01 22:12:08,733] INFO
{org.wso2.carbon.user.core.internal.UserStoreMgtDSComponent}
- Carbon UserStoreMgtDSComponent activated successfully.
[2014-10-01 22:12:16,933] INFO {org.apache.axis2.deployment.ClusterBuilder}
- Clustering has been disabled
[2014-10-01 22:12:17,080] INFO {org.wso2.carbon.identity.
user.store.configuration.deployer.UserStoreConfigurationDeployer} - User
Store Configuration Deployer initiated.
[2014-10-01 22:12:17,085] INFO
{org.apache.axis2.transport.tcp.TCPTransportSender}
- TCP Sender started
[2014-10-01 22:12:17,164] INFO {org.apache.axis2.deployment.ModuleDeployer}
- Deploying module: addressing-1.6.1-wso2v11-20140929.221157-642 -
file:/home/hasitha/Desktop/pack_from_Sajini/mb1/
repository/deployment/client/modules/addressing-1.6.1-
wso2v11-20140929.221157-642.mar
[2014-10-01 22:12:17,168] INFO {org.apache.axis2.deployment.ModuleDeployer}
- Deploying module: rampart-1.6.1-wso2v10 - file:/home/hasitha/Desktop/
pack_from_Sajini/mb1/repository/deploym
--
*Asitha Nanayakkara*
Software Engineer
WSO2, Inc. http://wso2.com/
Mob: + 94 77 85 30 682
_______________________________________________
Dev mailing list
[email protected]
http://wso2.org/cgi-bin/mailman/listinfo/dev