Skip to content

Commit eff37f6

Browse files
committed
Modified Shutdown and Flush as per the review comments
1 parent 4d56672 commit eff37f6

File tree

1 file changed

+10
-18
lines changed

1 file changed

+10
-18
lines changed

google-cloud-spanner/src/main/java/com/google/cloud/spanner/SpannerCloudMonitoringExporter.java

Lines changed: 10 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,6 @@ class SpannerCloudMonitoringExporter implements MetricExporter {
7878
private CompletableResultCode lastExportCode;
7979
private final MetricServiceClient client;
8080
private final String spannerProjectId;
81-
private final AtomicBoolean isShutdown = new AtomicBoolean(false);
8281

8382
static SpannerCloudMonitoringExporter create(String projectId, @Nullable Credentials credentials)
8483
throws IOException {
@@ -109,7 +108,7 @@ static SpannerCloudMonitoringExporter create(String projectId, @Nullable Credent
109108

110109
@Override
111110
public CompletableResultCode export(Collection<MetricData> collection) {
112-
if (isShutdown.get()) {
111+
if (client.isShutdown()) {
113112
logger.log(Level.WARNING, "Exporter is shut down");
114113
return CompletableResultCode.ofFailure();
115114
}
@@ -207,31 +206,24 @@ private ApiFuture<List<Empty>> exportTimeSeriesInBatch(
207206

208207
@Override
209208
public CompletableResultCode flush() {
210-
if (lastExportCode != null) {
211-
return lastExportCode;
212-
}
213209
return CompletableResultCode.ofSuccess();
214210
}
215211

216212
@Override
217213
public CompletableResultCode shutdown() {
218-
if (!isShutdown.compareAndSet(false, true)) {
214+
if (client.isShutdown()) {
219215
logger.log(Level.WARNING, "shutdown is called multiple times");
220216
return CompletableResultCode.ofSuccess();
221217
}
222-
CompletableResultCode flushResult = flush();
223218
CompletableResultCode shutdownResult = new CompletableResultCode();
224-
flushResult.whenComplete(
225-
() -> {
226-
try {
227-
client.shutdown();
228-
shutdownResult.succeed();
229-
} catch (Throwable e) {
230-
logger.log(Level.WARNING, "failed to shutdown the monitoring client", e);
231-
shutdownResult.fail();
232-
}
233-
});
234-
return CompletableResultCode.ofAll(Arrays.asList(flushResult, shutdownResult));
219+
try {
220+
client.shutdown();
221+
shutdownResult.succeed();
222+
} catch (Throwable e) {
223+
logger.log(Level.WARNING, "failed to shutdown the monitoring client", e);
224+
shutdownResult.fail();
225+
}
226+
return shutdownResult;
235227
}
236228

237229
/**

0 commit comments

Comments
 (0)