You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@beam.apache.org by ke...@apache.org on 2017/10/17 21:08:20 UTC

[12/14] beam git commit: Better error message for RehydratedComponents.getCoder

Better error message for RehydratedComponents.getCoder


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

Branch: refs/heads/master
Commit: 3d99d07a2b580fca99545c622f53b7378d1bb61a
Parents: 187beae
Author: Kenneth Knowles <kl...@google.com>
Authored: Tue Oct 3 15:51:03 2017 -0700
Committer: Kenneth Knowles <ke...@apache.org>
Committed: Tue Oct 17 12:45:11 2017 -0700

----------------------------------------------------------------------
 .../runners/core/construction/RehydratedComponents.java   | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/beam/blob/3d99d07a/runners/core-construction-java/src/main/java/org/apache/beam/runners/core/construction/RehydratedComponents.java
----------------------------------------------------------------------
diff --git a/runners/core-construction-java/src/main/java/org/apache/beam/runners/core/construction/RehydratedComponents.java b/runners/core-construction-java/src/main/java/org/apache/beam/runners/core/construction/RehydratedComponents.java
index 2e12603..fdb6cea 100644
--- a/runners/core-construction-java/src/main/java/org/apache/beam/runners/core/construction/RehydratedComponents.java
+++ b/runners/core-construction-java/src/main/java/org/apache/beam/runners/core/construction/RehydratedComponents.java
@@ -71,8 +71,14 @@ public class RehydratedComponents {
               new CacheLoader<String, Coder<?>>() {
                 @Override
                 public Coder<?> load(String id) throws Exception {
-                  return CoderTranslation.fromProto(
-                      components.getCodersOrThrow(id), RehydratedComponents.this);
+                  RunnerApi.Coder coder;
+                  try {
+                    coder = components.getCodersOrThrow(id);
+                  } catch (IllegalArgumentException exc) {
+                    throw new IllegalStateException(
+                        String.format("No coder with id '%s' in serialized components", id), exc);
+                  }
+                  return CoderTranslation.fromProto(coder, RehydratedComponents.this);
                 }
               });