Figured out the issue was with my xml configuration, the authDescriptor
argument encapsulation was off.
<property name="configuration">
<bean class=
"com.google.code.ssm.providers.spymemcached.SpymemcachedConfiguration">
<property name="useBinaryProtocol" value="true" />
<property name="consistentHashing" value="true" />
<property name="failureMode" value="Redistribute"/>
<property name="hashAlg">
<value type="net.spy.memcached.DefaultHashAlgorithm">KETAMA_HASH</value>
</property>
<property name="authDescriptor">
<bean class="net.spy.memcached.auth.AuthDescriptor">
<constructor-arg index="0">
<value>PLAIN</value>
</constructor-arg>
<constructor-arg index="1">
<bean class="net.spy.memcached.auth.PlainCallbackHandler">
<constructor-arg index="0" value="blah"/>
<constructor-arg index="1" value="blah"/>
</bean>
</constructor-arg>
</bean>
</property>
On Tuesday, January 26, 2016 at 11:02:14 AM UTC-8, Calvin Chen wrote:
>
> Hi all,
>
> Have been stuck for the past day trying to figure out why the spymemcached
> client(2.11.7) packaged within simple-spring-memcached(3.6.0) is failing to
> authenticate with the following spymemcached configuration. Upon running
> the unit test yesterday, it did however spontaneously connect once
> yesterday but since then has been looping through the same auth failure.
> I'm positive that the Couchbase server is running and is reachable via the
> example below which uses class configuration. I'm thinking this has to do
> with something in my xml config that's flaking, any assistance is much
> appreciated.
>
> Sample class configuration used to validate connection.
>
> @Bean
> @DependsOn("cacheBase")
> public CacheFactory cacheFactory() {
> CacheFactory cacheFactory = new CacheFactory();
> cacheFactory.setCacheName("memcached_bucket_name");
> cacheFactory.setCacheClientFactory(new
> MemcacheClientFactoryImpl());
>
> String server = SERVER;
> if (StringUtils.isEmpty(server)) {
> server = environment.getProperty("cache.server");
> }
>
> SpymemcachedConfiguration cacheConfiguration =
> createCacheConfiguration(server);
> cacheFactory.setAddressProvider(new
> DefaultAddressProvider(server));
> cacheFactory.setConfiguration(cacheConfiguration);
>
> return cacheFactory;
> }
>
> private SpymemcachedConfiguration createCacheConfiguration(final
> String server) {
> SpymemcachedConfiguration cacheConfiguration = new
> SpymemcachedConfiguration();
> cacheConfiguration.setConsistentHashing(true);
> cacheConfiguration.setUseBinaryProtocol(true);
>
> AuthDescriptor authDescriptor = new AuthDescriptor(new
> String[]{"PLAIN"}, new PlainCallbackHandler("memcached_bucket_name",
> "password234243"));
> cacheConfiguration.setAuthDescriptor(authDescriptor);
>
> return cacheConfiguration;
> }
>
>
> This is the spring configuration which I'm using that's failing for me.
> <spring-config.xml>
>
>
> <bean name="defaultMemcachedClient" class="com.google.code.ssm.CacheFactory">
>
> <property name="cacheClientFactory">
>
>
> <bean name="cacheClientFactory"
> class="com.google.code.ssm.providers.spymemcached.MemcacheClientFactoryImpl"
> />
>
> </property>
>
> <property name="addressProvider">
>
> <bean class="com.google.code.ssm.config.DefaultAddressProvider">
>
>
> <property name="address"
> value="xxx.xx.x.xxx:11211,xxx.xx.x.xxx:11211,xxx.xx.x.xxx:11211"/>
>
> </bean>
>
> </property>
>
> <property name="configuration">
>
>
> <bean
> class="com.google.code.ssm.providers.spymemcached.SpymemcachedConfiguration">
>
> <property name="operationTimeout" value="10000" />
>
> <property name="useBinaryProtocol" value="true" />
>
> <property name="failureMode" value="Redistribute"/>
>
> <property name="hashAlg">
>
> <value type="net.spy.memcached.DefaultHashAlgorithm">KETAMA_HASH</value>
>
> </property>
>
> <property name="locatorType" value="CONSISTENT"/>
>
> <property name="authDescriptor">
>
> <bean class="net.spy.memcached.auth.AuthDescriptor">
>
> <constructor-arg index="0">
>
> <value>PLAIN</value>
>
> </constructor-arg>
>
> <constructor-arg index="1">
>
> <bean class="net.spy.memcached.auth.PlainCallbackHandler">
>
> <constructor-arg index="0">
>
> <value>"memcached_bucket_name"</value>
>
> </constructor-arg>
>
> <constructor-arg index="1">
>
> <value>"password123123"</value>
>
> </constructor-arg>
>
> </bean>
>
> </constructor-arg>
>
> </bean>
>
> </property>
>
> </bean>
>
> </property>
>
>
>
> 2016-01-26 09:31:00.788 ERROR
> net.spy.memcached.protocol.binary.SASLAuthOperationImpl: Error: Auth
> failure
> 2016-01-26 09:31:00.789 WARN
> net.spy.memcached.protocol.binary.BinaryMemcachedNodeImpl: Discarding
> partially completed op: SASL auth operation
> 2016-01-26 09:31:00.789 INFO net.spy.memcached.MemcachedConnection:
> Reconnection due to exception handling a memcached operation on {QA
> sa=/xxx.xx.x.xxx:11211, #Rops=0, #Wops=0, #iq=0, topRop=null, topWop=null,
> toWrite=0, interested=1}. This may be due to an authentication failure.
> OperationException: SERVER: Auth failure
> at
> net.spy.memcached.protocol.BaseOperationImpl.handleError(BaseOperationImpl.java:192)
> at
> net.spy.memcached.protocol.binary.OperationImpl.finishedPayload(OperationImpl.java:204)
> at
> net.spy.memcached.protocol.binary.SASLBaseOperationImpl.finishedPayload(SASLBaseOperationImpl.java:98)
> at
> net.spy.memcached.protocol.binary.OperationImpl.readPayloadFromBuffer(OperationImpl.java:196)
> at
> net.spy.memcached.protocol.binary.OperationImpl.readFromBuffer(OperationImpl.java:139)
> at
> net.spy.memcached.MemcachedConnection.readBufferAndLogMetrics(MemcachedConnection.java:861)
> at
> net.spy.memcached.MemcachedConnection.handleReads(MemcachedConnection.java:840)
> at
> net.spy.memcached.MemcachedConnection.handleReadsAndWrites(MemcachedConnection.java:720)
> at
> net.spy.memcached.MemcachedConnection.handleIO(MemcachedConnection.java:683)
> at
> net.spy.memcached.MemcachedConnection.handleIO(MemcachedConnection.java:436)
> at net.spy.memcached.MemcachedConnection.run(MemcachedConnection.java:1446)
> 2016-01-26 09:31:00.791 WARN net.spy.memcached.MemcachedConnection:
> Closing, and reopening {QA sa=/xxx.xx.x.xxx:11211, #Rops=0, #Wops=0,
> #iq=0, topRop=null, topWop=null, toWrite=0, interested=1}, attempt 0.
> 2016-01-26 09:31:00.794 ERROR
> net.spy.memcached.protocol.binary.SASLAuthOperationImpl: Error: Auth
> failure
> 2016-01-26 09:31:00.794 WARN
> net.spy.memcached.protocol.binary.BinaryMemcachedNodeImpl: Discarding
> partially completed op: SASL auth operation
> 2016-01-26 09:31:00.795 INFO net.spy.memcached.MemcachedConnection:
> Reconnection due to exception handling a memcached operation on {QA
> sa=/xxx.xx.x.xxx:11211, #Rops=0, #Wops=0, #iq=0, topRop=null, topWop=null,
> toWrite=0, interested=1}. This may be due to an authentication failure.
> OperationException: SERVER: Auth failure
> at
> net.spy.memcached.protocol.BaseOperationImpl.handleError(BaseOperationImpl.java:192)
> at
> net.spy.memcached.protocol.binary.OperationImpl.finishedPayload(OperationImpl.java:204)
> at
> net.spy.memcached.protocol.binary.SASLBaseOperationImpl.finishedPayload(SASLBaseOperationImpl.java:98)
> at
> net.spy.memcached.protocol.binary.OperationImpl.readPayloadFromBuffer(OperationImpl.java:196)
> at
> net.spy.memcached.protocol.binary.OperationImpl.readFromBuffer(OperationImpl.java:139)
> at
> net.spy.memcached.MemcachedConnection.readBufferAndLogMetrics(MemcachedConnection.java:861)
> at
> net.spy.memcached.MemcachedConnection.handleReads(MemcachedConnection.java:840)
> at
> net.spy.memcached.MemcachedConnection.handleReadsAndWrites(MemcachedConnection.java:720)
> at
> net.spy.memcached.MemcachedConnection.handleIO(MemcachedConnection.java:683)
> at
> net.spy.memcached.MemcachedConnection.handleIO(MemcachedConnection.java:436)
> at net.spy.memcached.MemcachedConnection.run(MemcachedConnection.java:1446)
> 2016-01-26 09:31:00.796 WARN net.spy.memcached.MemcachedConnection:
> Closing, and reopening {QA sa=/xxx.xx.x.xxx:11211, #Rops=0, #Wops=0,
> #iq=0, topRop=null, topWop=null, toWrite=0, interested=1}, attempt 0.
> 2016-01-26 09:31:00.891 WARN net.spy.memcached.auth.AuthThread:
> Authentication failed to /xxx.xx.x.xxx:11211, Status: {OperationStatus
> success=false: cancelled}
> 2016-01-26 09:31:00.899 WARN net.spy.memcached.auth.AuthThread:
> Authentication failed to /xxx.xx.x.xxx:11211, Status: {OperationStatus
> success=false: cancelled}
>
--
You received this message because you are subscribed to the Google Groups
"Couchbase" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.