You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@beam.apache.org by jk...@apache.org on 2017/08/02 19:27:48 UTC

[1/2] beam git commit: [BEAM-1542] Specifies a User Agent in Spanner Client

Repository: beam
Updated Branches:
  refs/heads/master 9582840bc -> 8ac796c5e


[BEAM-1542] Specifies a User Agent in Spanner Client


Project: http://git-wip-us.apache.org/repos/asf/beam/repo
Commit: http://git-wip-us.apache.org/repos/asf/beam/commit/fc0f9c7b
Tree: http://git-wip-us.apache.org/repos/asf/beam/tree/fc0f9c7b
Diff: http://git-wip-us.apache.org/repos/asf/beam/diff/fc0f9c7b

Branch: refs/heads/master
Commit: fc0f9c7b00d60213b893097571549c074fabd4b9
Parents: 9582840
Author: Mairbek Khadikov <ma...@google.com>
Authored: Mon Jul 17 12:37:47 2017 -0700
Committer: Eugene Kirpichov <ki...@google.com>
Committed: Wed Aug 2 12:22:25 2017 -0700

----------------------------------------------------------------------
 .../beam/sdk/io/gcp/spanner/AbstractSpannerFn.java   | 15 ++++++++++++++-
 .../beam/sdk/io/gcp/spanner/SpannerConfig.java       | 11 -----------
 2 files changed, 14 insertions(+), 12 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/beam/blob/fc0f9c7b/sdks/java/io/google-cloud-platform/src/main/java/org/apache/beam/sdk/io/gcp/spanner/AbstractSpannerFn.java
----------------------------------------------------------------------
diff --git a/sdks/java/io/google-cloud-platform/src/main/java/org/apache/beam/sdk/io/gcp/spanner/AbstractSpannerFn.java b/sdks/java/io/google-cloud-platform/src/main/java/org/apache/beam/sdk/io/gcp/spanner/AbstractSpannerFn.java
index 00008f1..50efdea 100644
--- a/sdks/java/io/google-cloud-platform/src/main/java/org/apache/beam/sdk/io/gcp/spanner/AbstractSpannerFn.java
+++ b/sdks/java/io/google-cloud-platform/src/main/java/org/apache/beam/sdk/io/gcp/spanner/AbstractSpannerFn.java
@@ -22,12 +22,16 @@ import com.google.cloud.spanner.DatabaseId;
 import com.google.cloud.spanner.Spanner;
 import com.google.cloud.spanner.SpannerOptions;
 import org.apache.beam.sdk.transforms.DoFn;
+import org.apache.beam.sdk.util.ReleaseInfo;
 
 /**
  * Abstract {@link DoFn} that manages {@link Spanner} lifecycle. Use {@link
  * AbstractSpannerFn#databaseClient} to access the Cloud Spanner database client.
  */
 abstract class AbstractSpannerFn<InputT, OutputT> extends DoFn<InputT, OutputT> {
+  // A common user agent token that indicates that this request was originated from Apache Beam.
+  private static final String USER_AGENT_PREFIX = "Apache_Beam_Java";
+
   private transient Spanner spanner;
   private transient DatabaseClient databaseClient;
 
@@ -36,7 +40,16 @@ abstract class AbstractSpannerFn<InputT, OutputT> extends DoFn<InputT, OutputT>
   @Setup
   public void setup() throws Exception {
     SpannerConfig spannerConfig = getSpannerConfig();
-    SpannerOptions options = spannerConfig.buildSpannerOptions();
+    SpannerOptions.Builder builder = SpannerOptions.newBuilder();
+    if (spannerConfig.getProjectId() != null) {
+      builder.setProjectId(spannerConfig.getProjectId().get());
+    }
+    if (spannerConfig.getServiceFactory() != null) {
+      builder.setServiceFactory(spannerConfig.getServiceFactory());
+    }
+    ReleaseInfo releaseInfo = ReleaseInfo.getReleaseInfo();
+    builder.setUserAgentPrefix(USER_AGENT_PREFIX + "/" + releaseInfo.getVersion());
+    SpannerOptions options = builder.build();
     spanner = options.getService();
     databaseClient = spanner.getDatabaseClient(DatabaseId
         .of(options.getProjectId(), spannerConfig.getInstanceId().get(),

http://git-wip-us.apache.org/repos/asf/beam/blob/fc0f9c7b/sdks/java/io/google-cloud-platform/src/main/java/org/apache/beam/sdk/io/gcp/spanner/SpannerConfig.java
----------------------------------------------------------------------
diff --git a/sdks/java/io/google-cloud-platform/src/main/java/org/apache/beam/sdk/io/gcp/spanner/SpannerConfig.java b/sdks/java/io/google-cloud-platform/src/main/java/org/apache/beam/sdk/io/gcp/spanner/SpannerConfig.java
index 02716fb..034c38a 100644
--- a/sdks/java/io/google-cloud-platform/src/main/java/org/apache/beam/sdk/io/gcp/spanner/SpannerConfig.java
+++ b/sdks/java/io/google-cloud-platform/src/main/java/org/apache/beam/sdk/io/gcp/spanner/SpannerConfig.java
@@ -49,17 +49,6 @@ public abstract class SpannerConfig implements Serializable {
 
   abstract Builder toBuilder();
 
-  SpannerOptions buildSpannerOptions() {
-    SpannerOptions.Builder builder = SpannerOptions.newBuilder();
-    if (getProjectId() != null) {
-      builder.setProjectId(getProjectId().get());
-    }
-    if (getServiceFactory() != null) {
-      builder.setServiceFactory(getServiceFactory());
-    }
-    return builder.build();
-  }
-
   public static SpannerConfig create() {
     return builder().build();
   }


[2/2] beam git commit: This closes #3574: [BEAM-1542] Specifies a User Agent in Spanner Client

Posted by jk...@apache.org.
This closes #3574: [BEAM-1542] Specifies a User Agent in Spanner Client


Project: http://git-wip-us.apache.org/repos/asf/beam/repo
Commit: http://git-wip-us.apache.org/repos/asf/beam/commit/8ac796c5
Tree: http://git-wip-us.apache.org/repos/asf/beam/tree/8ac796c5
Diff: http://git-wip-us.apache.org/repos/asf/beam/diff/8ac796c5

Branch: refs/heads/master
Commit: 8ac796c5e298c77cc4586503a003ac459fad3550
Parents: 9582840 fc0f9c7
Author: Eugene Kirpichov <ki...@google.com>
Authored: Wed Aug 2 12:22:41 2017 -0700
Committer: Eugene Kirpichov <ki...@google.com>
Committed: Wed Aug 2 12:22:41 2017 -0700

----------------------------------------------------------------------
 .../beam/sdk/io/gcp/spanner/AbstractSpannerFn.java   | 15 ++++++++++++++-
 .../beam/sdk/io/gcp/spanner/SpannerConfig.java       | 11 -----------
 2 files changed, 14 insertions(+), 12 deletions(-)
----------------------------------------------------------------------