From 17946ded3dff6c99a6ac71368b59dc4b26166ac4 Mon Sep 17 00:00:00 2001 From: Solomon Duskis Date: Mon, 15 Apr 2019 10:32:24 -0400 Subject: [PATCH 1/2] More Pubsub cleanup - Removing PublisherStats, since it's package private and not used anywhere. - StatusUtil and SubscriberStats are package private. Remove the `public` modifier on methods in those classes --- .../cloud/pubsub/v1/MessageDispatcher.java | 3 +- .../cloud/pubsub/v1/PublisherStats.java | 55 ------------------- .../google/cloud/pubsub/v1/StatusUtil.java | 2 +- .../cloud/pubsub/v1/SubscriberStats.java | 36 ++++++------ 4 files changed, 20 insertions(+), 76 deletions(-) delete mode 100644 google-cloud-clients/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/PublisherStats.java diff --git a/google-cloud-clients/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/MessageDispatcher.java b/google-cloud-clients/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/MessageDispatcher.java index 3400c259e950..956e87db0eef 100644 --- a/google-cloud-clients/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/MessageDispatcher.java +++ b/google-cloud-clients/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/MessageDispatcher.java @@ -380,8 +380,7 @@ public void run() { /** Compute the ideal deadline, set subsequent modacks to this deadline, and return it. */ @InternalApi int computeDeadlineSeconds() { - long secLong = ackLatencyDistribution.getNthPercentile(PERCENTILE_FOR_ACK_DEADLINE_UPDATES); - int sec = Ints.saturatedCast(secLong); + int sec = ackLatencyDistribution.getPercentile(PERCENTILE_FOR_ACK_DEADLINE_UPDATES); // Use Ints.constrainToRange when we get guava 21. if (sec < Subscriber.MIN_ACK_DEADLINE_SECONDS) { diff --git a/google-cloud-clients/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/PublisherStats.java b/google-cloud-clients/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/PublisherStats.java deleted file mode 100644 index 197eb5d96453..000000000000 --- a/google-cloud-clients/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/PublisherStats.java +++ /dev/null @@ -1,55 +0,0 @@ -/* - * Copyright 2016 Google LLC - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package com.google.cloud.pubsub.v1; - -import com.google.auto.value.AutoValue; - -/** - * A snapshot of the publisher statistics at the time they were requested from the {@link - * Publisher}. - */ -@AutoValue -abstract class PublisherStats { - /** Number of successfully published messages. */ - public abstract long getAckedMessages(); - - /** Number of messages that failed to publish. */ - public abstract long getFailedMessages(); - - /** Number of messages pending to publish, includes message in-flight. */ - public abstract long getPendingMessages(); - - /** Total messages sent, equal to pending + acked + failed messages. */ - public abstract long getSentMessages(); - - public static Builder newBuilder() { - return new AutoValue_PublisherStats.Builder(); - } - - @AutoValue.Builder - public abstract static class Builder { - public abstract Builder setAckedMessages(long value); - - public abstract Builder setFailedMessages(long value); - - public abstract Builder setPendingMessages(long value); - - public abstract Builder setSentMessages(long value); - - public abstract PublisherStats build(); - } -} diff --git a/google-cloud-clients/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/StatusUtil.java b/google-cloud-clients/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/StatusUtil.java index 52a3a6e6372d..ab31f0320ab5 100644 --- a/google-cloud-clients/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/StatusUtil.java +++ b/google-cloud-clients/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/StatusUtil.java @@ -25,7 +25,7 @@ private StatusUtil() { // Static class, not instantiable. } - public static boolean isRetryable(Throwable error) { + static boolean isRetryable(Throwable error) { if (!(error instanceof ApiException)) { return true; } diff --git a/google-cloud-clients/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/SubscriberStats.java b/google-cloud-clients/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/SubscriberStats.java index 527d73076997..992c1d056dd4 100644 --- a/google-cloud-clients/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/SubscriberStats.java +++ b/google-cloud-clients/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/SubscriberStats.java @@ -27,52 +27,52 @@ abstract class SubscriberStats { @AutoValue // TODO: Finish implementation. - public abstract static class Stats {} + abstract static class Stats {} /** Number of successfully published messages. */ - public abstract long getReceivedMessages(); + abstract long getReceivedMessages(); /** Number of successfully published messages. */ - public abstract long getAckedMessages(); + abstract long getAckedMessages(); /** Number of received messages. */ - public abstract long getTotalReceivedMessages(); + abstract long getTotalReceivedMessages(); /** Number messages acked. */ - public abstract long getTotalAckedMessages(); + abstract long getTotalAckedMessages(); /** End to end latency. */ - public abstract Stats getEndToEndLatency(); + abstract Stats getEndToEndLatency(); /** * Acknowledgement latency; time in between the message has been received and then acknowledged or * rejected. */ - public abstract Stats getAckLatency(); + abstract Stats getAckLatency(); /** Number of messages for which we have auto extended its acknowledgement deadline. */ - public abstract long getNumberOfAutoExtendedAckDeadlines(); + abstract long getNumberOfAutoExtendedAckDeadlines(); - public static Builder newBuilder() { + static Builder newBuilder() { return new AutoValue_SubscriberStats.Builder(); } @AutoValue.Builder - public abstract static class Builder { - public abstract Builder setReceivedMessages(long value); + abstract static class Builder { + abstract Builder setReceivedMessages(long value); - public abstract Builder setAckedMessages(long value); + abstract Builder setAckedMessages(long value); - public abstract Builder setTotalReceivedMessages(long value); + abstract Builder setTotalReceivedMessages(long value); - public abstract Builder setTotalAckedMessages(long value); + abstract Builder setTotalAckedMessages(long value); - public abstract Builder setEndToEndLatency(Stats value); + abstract Builder setEndToEndLatency(Stats value); - public abstract Builder setAckLatency(Stats value); + abstract Builder setAckLatency(Stats value); - public abstract Builder setNumberOfAutoExtendedAckDeadlines(long value); + abstract Builder setNumberOfAutoExtendedAckDeadlines(long value); - public abstract SubscriberStats build(); + abstract SubscriberStats build(); } } From aa3f2a534ad6a719bb196e94935405b40b256ba4 Mon Sep 17 00:00:00 2001 From: Solomon Duskis Date: Mon, 15 Apr 2019 15:08:33 -0400 Subject: [PATCH 2/2] Reverting MessageDispatcher change. --- .../java/com/google/cloud/pubsub/v1/MessageDispatcher.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/google-cloud-clients/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/MessageDispatcher.java b/google-cloud-clients/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/MessageDispatcher.java index 0c56ed7dd165..ad622833c4b6 100644 --- a/google-cloud-clients/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/MessageDispatcher.java +++ b/google-cloud-clients/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/MessageDispatcher.java @@ -376,7 +376,8 @@ public void run() { /** Compute the ideal deadline, set subsequent modacks to this deadline, and return it. */ @InternalApi int computeDeadlineSeconds() { - int sec = ackLatencyDistribution.getPercentile(PERCENTILE_FOR_ACK_DEADLINE_UPDATES); + long secLong = ackLatencyDistribution.getNthPercentile(PERCENTILE_FOR_ACK_DEADLINE_UPDATES); + int sec = Ints.saturatedCast(secLong); // Use Ints.constrainToRange when we get guava 21. if (sec < Subscriber.MIN_ACK_DEADLINE_SECONDS) {