You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@curator.apache.org by "Stan Henderson (Jira)" <ji...@apache.org> on 2021/06/10 21:15:00 UTC

[jira] [Commented] (CURATOR-538) Background exception was not retry-able or retry gave up

    [ https://issues.apache.org/jira/browse/CURATOR-538?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17361231#comment-17361231 ] 

Stan Henderson commented on CURATOR-538:
----------------------------------------

I see a similar issue with curator-framework 5.1.0 where Zoo Servers are running in a docker container with CentOS Linux release 7.9.2009 (Core)
In the tests I'm running, it does not appear to occur all of the time and does not appear to cause anything to fail.

server.1=9.48.164.32:2888:3888:participant;0.0.0.0:2181
server.2=9.48.164.34:2888:3888:participant;0.0.0.0:2181
server.3=9.48.164.35:2888:3888:participant;0.0.0.0:2181
server.4=9.48.164.39:2888:3888:observer;0.0.0.0:2181
server.5=9.48.164.40:2888:3888:observer;0.0.0.0:2181
server.6=9.48.164.42:2888:3888:observer;0.0.0.0:218

Compatibility.java:116: return (address != null) ? address.getAddress().getHostAddress() : "unknown";

14:56:26.943 [main-EventThread] ERROR org.apache.curator.framework.imps.CuratorFrameworkImpl - Background exception was not retry-able or retry gave up
java.lang.NullPointerException: null
	at org.apache.curator.utils.Compatibility.getHostAddress(Compatibility.java:116) ~[curator-client-5.1.0.jar:?]
	at org.apache.curator.framework.imps.EnsembleTracker.configToConnectionString(EnsembleTracker.java:185) ~[curator-framework-5.1.0.jar:5.1.0]
	at org.apache.curator.framework.imps.EnsembleTracker.processConfigData(EnsembleTracker.java:206) ~[curator-framework-5.1.0.jar:5.1.0]
	at org.apache.curator.framework.imps.EnsembleTracker.access$300(EnsembleTracker.java:50) ~[curator-framework-5.1.0.jar:5.1.0]
	at org.apache.curator.framework.imps.EnsembleTracker$2.processResult(EnsembleTracker.java:150) ~[curator-framework-5.1.0.jar:5.1.0]
	at org.apache.curator.framework.imps.CuratorFrameworkImpl.sendToBackgroundCallback(CuratorFrameworkImpl.java:892) [curator-framework-5.1.0.jar:5.1.0]
	at org.apache.curator.framework.imps.CuratorFrameworkImpl.processBackgroundOperation(CuratorFrameworkImpl.java:649) [curator-framework-5.1.0.jar:5.1.0]
	at org.apache.curator.framework.imps.WatcherRemovalFacade.processBackgroundOperation(WatcherRemovalFacade.java:152) [curator-framework-5.1.0.jar:5.1.0]
	at org.apache.curator.framework.imps.GetConfigBuilderImpl$2.processResult(GetConfigBuilderImpl.java:222) [curator-framework-5.1.0.jar:5.1.0]
	at org.apache.zookeeper.ClientCnxn$EventThread.processEvent(ClientCnxn.java:644) [zookeeper-3.6.3.jar:3.6.3]
	at org.apache.zookeeper.ClientCnxn$EventThread.run(ClientCnxn.java:563) [zookeeper-3.6.3.jar:3.6.3]

I'm using ExponentialBackoffRetry(5000, 29, 60 * 1000 * 2) for the CuratorFrameworkFactory retry policy.

/**
 * @param baseSleepTimeMs initial amount of time to wait between retries
 * @param maxRetries max number of times to retry
 * @param maxSleepMs max time in ms to sleep on each retry
 */
public ExponentialBackoffRetry(int baseSleepTimeMs, int maxRetries, int maxSleepMs)

> Background exception was not retry-able or retry gave up
> --------------------------------------------------------
>
>                 Key: CURATOR-538
>                 URL: https://issues.apache.org/jira/browse/CURATOR-538
>             Project: Apache Curator
>          Issue Type: Bug
>          Components: Framework
>    Affects Versions: 4.0.1, 4.2.0
>            Reporter: imic
>            Priority: Critical
>         Attachments: 22.png
>
>
>  
> error log:
> {code:java}
> //err code is here
> 2019-08-21 14:24:30.654 0.0.0.0:30901  INFO 45964     --- [e-1-EventThread] org.apache.zookeeper.ClientCnxn          : EventThread shut down for session: 0x10072ab8a8001b12019-08-21 14:24:30.654 0.0.0.0:30901  INFO 45964     --- [e-1-EventThread] org.apache.zookeeper.ClientCnxn          : EventThread shut down for session: 0x10072ab8a8001b12019-08-21 14:24:30.655 0.0.0.0:30901 ERROR 45964     --- [e-1-EventThread] o.a.c.f.imps.CuratorFrameworkImpl        : Background exception was not retry-able or retry gave up
> java.lang.NullPointerException: null at org.apache.curator.framework.imps.EnsembleTracker.configToConnectionString(EnsembleTracker.java:179) at org.apache.curator.framework.imps.EnsembleTracker.processConfigData(EnsembleTracker.java:200) at org.apache.curator.framework.imps.EnsembleTracker.access$300(EnsembleTracker.java:50) at org.apache.curator.framework.imps.EnsembleTracker$2.processResult(EnsembleTracker.java:144) at org.apache.curator.framework.imps.CuratorFrameworkImpl.sendToBackgroundCallback(CuratorFrameworkImpl.java:865) at org.apache.curator.framework.imps.CuratorFrameworkImpl.processBackgroundOperation(CuratorFrameworkImpl.java:635) at org.apache.curator.framework.imps.WatcherRemovalFacade.processBackgroundOperation(WatcherRemovalFacade.java:152) at org.apache.curator.framework.imps.GetConfigBuilderImpl$2.processResult(GetConfigBuilderImpl.java:222) at org.apache.zookeeper.ClientCnxn$EventThread.processEvent(ClientCnxn.java:587) at org.apache.zookeeper.ClientCnxn$EventThread.run(ClientCnxn.java:499)
> 2019-08-21 14:24:30.655 0.0.0.0:30901  INFO 45964     --- [e-1-EventThread] o.a.c.framework.imps.EnsembleTracker     : New config event received: {server.1=zookeeper-0.zk-headless-service.default.svc.cluster.local:2888:3888:participant;0.0.0.0:2181, version=b00000000, server.3=zookeeper-2.zk-headless-service.default.svc.cluster.local:2888:3888:participant;0.0.0.0:2181, server.2=zookeeper-1.zk-headless-service.default.svc.cluster.local:2888:3888:participant;0.0.0.0:2181}2019-08-21 14:24:30.656 0.0.0.0:30901 ERROR 45964     --- [e-1-EventThread] o.a.c.f.imps.CuratorFrameworkImpl        : Background exception was not retry-able or retry gave up
> java.lang.NullPointerException: null at org.apache.curator.framework.imps.EnsembleTracker.configToConnectionString(EnsembleTracker.java:179) at org.apache.curator.framework.imps.EnsembleTracker.processConfigData(EnsembleTracker.java:200) at org.apache.curator.framework.imps.EnsembleTracker.access$300(EnsembleTracker.java:50) at org.apache.curator.framework.imps.EnsembleTracker$2.processResult(EnsembleTracker.java:144) at org.apache.curator.framework.imps.CuratorFrameworkImpl.sendToBackgroundCallback(CuratorFrameworkImpl.java:865) at org.apache.curator.framework.imps.CuratorFrameworkImpl.processBackgroundOperation(CuratorFrameworkImpl.java:635) at org.apache.curator.framework.imps.WatcherRemovalFacade.processBackgroundOperation(WatcherRemovalFacade.java:152) at org.apache.curator.framework.imps.GetConfigBuilderImpl$2.processResult(GetConfigBuilderImpl.java:222) at org.apache.zookeeper.ClientCnxn$EventThread.processEvent(ClientCnxn.java:587) at org.apache.zookeeper.ClientCnxn$EventThread.run(ClientCnxn.java:499)
> {code}
>  
>     I use kubernates as registor,  envirment is ubuntu18.04 + spring boot 2.x and curator is 4.0.1(spring-cloud-starter-zookeeper-config),  when i debug the project, curator framework throw NullPointerException.
>     I debuged it , found EnsembleTracker.java(line 179) server.addr.getAddress() is null! debug info can be found at attachment!
>  
> QuorumVerifier is 
> {code:java}
> server.1=zookeeper-0.zk-headless-service.default.svc.cluster.local:2888:3888:participant;0.0.0.0:2181
> server.2=zookeeper-1.zk-headless-service.default.svc.cluster.local:2888:3888:participant;0.0.0.0:2181
> server.3=zookeeper-2.zk-headless-service.default.svc.cluster.local:2888:3888:participant;0.0.0.0:2181
> version=b00000000{code}
>  
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)