Skip to content

Commit c3d8010

Browse files
authored
Fix metadata events for case when tablet map is empty (#507)
Tablet map could be empty, we need to address these cases.
1 parent 4c9d702 commit c3d8010

File tree

2 files changed

+6
-2
lines changed

2 files changed

+6
-2
lines changed

core/src/main/java/com/datastax/oss/driver/internal/core/metadata/AddTabletRefresh.java

+3-1
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,9 @@ public AddTabletRefresh(CqlIdentifier keyspace, CqlIdentifier table, Tablet tabl
2020
@Override
2121
public Result compute(
2222
DefaultMetadata oldMetadata, boolean tokenMapEnabled, InternalDriverContext context) {
23-
oldMetadata.tabletMap.addTablet(keyspace, table, tablet);
23+
if (oldMetadata.tabletMap != null) {
24+
oldMetadata.tabletMap.addTablet(keyspace, table, tablet);
25+
}
2426
return new Result(oldMetadata);
2527
}
2628
}

core/src/main/java/com/datastax/oss/driver/internal/core/metadata/RemoveNodeRefresh.java

+3-1
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,9 @@ public Result compute(
6767
return new Result(oldMetadata);
6868
} else {
6969
LOG.debug("[{}] Removing node {}", logPrefix, removedNode);
70-
oldMetadata.tabletMap.removeByNode(removedNode);
70+
if (oldMetadata.tabletMap != null) {
71+
oldMetadata.tabletMap.removeByNode(removedNode);
72+
}
7173
return new Result(
7274
oldMetadata.withNodes(newNodesBuilder.build(), tokenMapEnabled, false, null, context),
7375
ImmutableList.of(NodeStateEvent.removed((DefaultNode) removedNode)));

0 commit comments

Comments
 (0)