Ritesh Ghorse created BEAM-13418:
------------------------------------

             Summary: Xlang JDBC IO for Go SDK throws Unkown coder error in 
Write transform for Java Exapansion Service.
                 Key: BEAM-13418
                 URL: https://issues.apache.org/jira/browse/BEAM-13418
             Project: Beam
          Issue Type: Bug
          Components: sdk-go, sdk-java-core
            Reporter: Ritesh Ghorse


I'm trying to test the Write transform in XLang JDBC IO  for Go SDK. It throws 
an unknown coder exception.  Below is the small paste of the exact error:
{code:java}
panic: tried cross-language for 
beam:transform:org.apache.beam:schemaio_jdbc_write:v1 against localhost:9000 
and failed
 expanding external transform
 expanding transform with ExpansionRequest: components:{pcollections:{key:"n2"  
value:{unique_name:"n2"  coder_id:"c1@toeuCsZFXN"  is_bounded:BOUNDED  
windowing_strategy_id:"w0@toeuCsZFXN"}}  
windowing_strategies:{key:"w0@toeuCsZFXN"  
value:{window_fn:{urn:"beam:window_fn:global_windows:v1"}  
merge_status:NON_MERGING  window_coder_id:"c2@toeuCsZFXN"  trigger:{default:{}} 
 accumulation_mode:DISCARDING  output_time:END_OF_WINDOW  
closing_behavior:EMIT_IF_NONEMPTY  OnTimeBehavior:FIRE_IF_NONEMPTY  
environment_id:"go"}}  coders:{key:"c0@toeuCsZFXN"  
value:{spec:{urn:"beam:go:coder:custom:v1"  
payload:"CgRqc29uElkIFBJVCBpKUWdpdGh1Yi5jb20vYXBhY2hlL2JlYW0vc2Rrcy92Mi9nby90ZXN0L2ludGVncmF0aW9uL2lvL3hsYW5nL2pkYmMuSmRiY1dyaXRlVGVzdFJvdxpMCjJnaXRodWIuY29tL2FwYWNoZS9iZWFtL3Nka3MvdjIvZ28vcGtnL2JlYW0uanNvbkVuYxIWCBYiBAgZQA8qBggUEgIICCoECBlAASJSCjJnaXRodWIuY29tL2FwYWNoZS9iZWFtL3Nka3MvdjIvZ28vcGtnL2JlYW0uanNvbkRlYxIcCBYiBAgZQAMiBggUEgIICCoECBlADyoECBlAAQ=="}}}
  coders:{key:"c1@toeuCsZFXN"  value:{spec:{urn:"beam:coder:length_prefix:v1"}  
component_coder_ids:"c0@toeuCsZFXN"}}  coders:{key:"c2@toeuCsZFXN"  
value:{spec:{urn:"beam:coder:global_window:v1"}}}  environments:{key:"go"  
value:{}}}  transform:{unique_name:"External"  
spec:{urn:"beam:transform:org.apache.beam:schemaio_jdbc_write:v1"  
payload:"\nX\n\x0e\n\x08location\x1a\x02\x10\x07\n\x0c\n\x06config\x1a\x02\x10\t\n\x12\n\ndataSchema\x1a\x04\x08\x01\x10\t\x12$8947ecef-83d9-4583-9121-03ce158e375c\x12g\x03\x01\x04\x00b\x02\x00\tTestTableU\n\x00\x15org.postgresql.Driver)jdbc:postgresql://192.168.1.11:50387/test\x04test\x04test\x00\x00\x00\x00\x00\x00\x00\x00\x01"}
  inputs:{key:"i0"  value:"n2"}  environment_id:"go"}  namespace:"toeuCsZFXN"
expansion failed
 caused by:
org.apache.beam.vendor.guava.v26_0_jre.com.google.common.util.concurrent.UncheckedExecutionException:
 
org.apache.beam.vendor.guava.v26_0_jre.com.google.common.util.concurrent.UncheckedExecutionException:
 
org.apache.beam.vendor.guava.v26_0_jre.com.google.common.util.concurrent.UncheckedExecutionException:
 java.lang.IllegalArgumentException: Unknown Coder URN beam:go:coder:custom:v1. 
Known URNs: [beam:coder:avro:generic:v1, beam:coder:bytes:v1, 
beam:coder:bool:v1, beam:coder:string_utf8:v1, beam:coder:kv:v1, 
beam:coder:varint:v1, beam:coder:interval_window:v1, beam:coder:iterable:v1, 
beam:coder:timer:v1, beam:coder:length_prefix:v1, beam:coder:global_window:v1, 
beam:coder:windowed_value:v1, beam:coder:param_windowed_value:v1, 
beam:coder:double:v1, beam:coder:row:v1, beam:coder:sharded_key:v1, 
beam:coder:custom_window:v1]
 at 
org.apache.beam.vendor.guava.v26_0_jre.com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2050)
 at 
org.apache.beam.vendor.guava.v26_0_jre.com.google.common.cache.LocalCache.get(LocalCache.java:3952)
 at 
org.apache.beam.vendor.guava.v26_0_jre.com.google.common.cache.LocalCache.getOrLoad(LocalCache.java:3974)
 at 
org.apache.beam.vendor.guava.v26_0_jre.com.google.common.cache.LocalCache$LocalLoadingCache.get(LocalCache.java:4958)
 at 
org.apache.beam.runners.core.construction.RehydratedComponents.getPCollection(RehydratedComponents.java:139)
 at 
org.apache.beam.sdk.expansion.service.ExpansionService.lambda$expand$0(ExpansionService.java:488)
 at 
java.base/java.util.stream.Collectors.lambda$uniqKeysMapAccumulator$1(Collectors.java:178)
 at 
java.base/java.util.stream.ReduceOps$3ReducingSink.accept(ReduceOps.java:169)
 at 
java.base/java.util.Collections$UnmodifiableMap$UnmodifiableEntrySet.lambda$entryConsumer$0(Collections.java:1576)
 at java.base/java.util.Iterator.forEachRemaining(Iterator.java:133)
 at 
java.base/java.util.Spliterators$IteratorSpliterator.forEachRemaining(Spliterators.java:1801)
 at 
java.base/java.util.Collections$UnmodifiableMap$UnmodifiableEntrySet$UnmodifiableEntrySetSpliterator.forEachRemaining(Collections.java:1601)
 at 
java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:484)
 at 
java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:474)
 at 
java.base/java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:913)
 at 
java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
 at 
java.base/java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:578)
 at 
org.apache.beam.sdk.expansion.service.ExpansionService.expand(ExpansionService.java:483)
 at 
org.apache.beam.sdk.expansion.service.ExpansionService.expand(ExpansionService.java:591)
 at 
org.apache.beam.model.expansion.v1.ExpansionServiceGrpc$MethodHandlers.invoke(ExpansionServiceGrpc.java:219)
 at 
org.apache.beam.vendor.grpc.v1p36p0.io.grpc.stub.ServerCalls$UnaryServerCallHandler$UnaryServerCallListener.onHalfClose(ServerCalls.java:182)
 at 
org.apache.beam.vendor.grpc.v1p36p0.io.grpc.internal.ServerCallImpl$ServerStreamListenerImpl.halfClosed(ServerCallImpl.java:331)
 at 
org.apache.beam.vendor.grpc.v1p36p0.io.grpc.internal.ServerImpl$JumpToApplicationThreadServerStreamListener$1HalfClosed.runInContext(ServerImpl.java:797)
 at 
org.apache.beam.vendor.grpc.v1p36p0.io.grpc.internal.ContextRunnable.run(ContextRunnable.java:37)
 at 
org.apache.beam.vendor.grpc.v1p36p0.io.grpc.internal.SerializingExecutor.run(SerializingExecutor.java:123)
 at 
java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
 at 
java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
 at java.base/java.lang.Thread.run(Thread.java:829) 

{code}
Prototype PR: 



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

Reply via email to