This is an automated email from the ASF dual-hosted git repository.
zhangliang pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/shardingsphere-elasticjob.git
The following commit(s) were added to refs/heads/master by this push:
new 2afa17e Shard is not working when instance node removes (#1085)
(#1087)
2afa17e is described below
commit 2afa17e65f7242fb6d588b9674f88195ac57298b
Author: Tboy <[email protected]>
AuthorDate: Thu Jul 16 18:33:15 2020 +0800
Shard is not working when instance node removes (#1085) (#1087)
---
.../elasticjob/lite/internal/listener/AbstractJobListener.java | 9 +++++----
1 file changed, 5 insertions(+), 4 deletions(-)
diff --git
a/elasticjob-lite/elasticjob-lite-core/src/main/java/org/apache/shardingsphere/elasticjob/lite/internal/listener/AbstractJobListener.java
b/elasticjob-lite/elasticjob-lite-core/src/main/java/org/apache/shardingsphere/elasticjob/lite/internal/listener/AbstractJobListener.java
index 1d0379d..2cab9b2 100644
---
a/elasticjob-lite/elasticjob-lite-core/src/main/java/org/apache/shardingsphere/elasticjob/lite/internal/listener/AbstractJobListener.java
+++
b/elasticjob-lite/elasticjob-lite-core/src/main/java/org/apache/shardingsphere/elasticjob/lite/internal/listener/AbstractJobListener.java
@@ -27,15 +27,16 @@ import
org.apache.curator.framework.recipes.cache.CuratorCacheListener;
public abstract class AbstractJobListener implements CuratorCacheListener {
@Override
- public final void event(final Type type, final ChildData oldData, final
ChildData data) {
- if (null == data) {
+ public final void event(final Type type, final ChildData oldData, final
ChildData newData) {
+ if (null == newData && null == oldData) {
return;
}
- String path = data.getPath();
+ String path = Type.NODE_DELETED == type ? oldData.getPath() :
newData.getPath();
+ byte[] data = Type.NODE_DELETED == type ? oldData.getData() :
newData.getData();
if (path.isEmpty()) {
return;
}
- dataChanged(path, type, null == data.getData() ? "" : new
String(data.getData(), Charsets.UTF_8));
+ dataChanged(path, type, null == data ? "" : new String(data,
Charsets.UTF_8));
}
protected abstract void dataChanged(String path, Type eventType, String
data);