You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@kudu.apache.org by "Will Berkeley (JIRA)" <ji...@apache.org> on 2016/12/08 21:01:02 UTC

[jira] [Commented] (KUDU-1757) Operation.toString() throws IllegalStateException if there are unset key columns

    [ https://issues.apache.org/jira/browse/KUDU-1757?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15733389#comment-15733389 ] 

Will Berkeley commented on KUDU-1757:
-------------------------------------

Also, I think that appendCellValueDebugString is fine. It shouldn't be called if the column isn't set. The problem is that Operation.toString shouldn't try to stringify the row key if not all key columns are set. Instead, it should just say row_key=<unset> or some such.

> Operation.toString() throws IllegalStateException if there are unset key columns
> --------------------------------------------------------------------------------
>
>                 Key: KUDU-1757
>                 URL: https://issues.apache.org/jira/browse/KUDU-1757
>             Project: Kudu
>          Issue Type: Bug
>          Components: api, client
>    Affects Versions: 1.0.1, 1.1.1
>         Environment: hardware: Azure cloud, 3 nodes
> OS: CentOS 6.6
> Kudu: 1.0.0-1.kudu1.0.0.p0.6
> Kudu client jar: kudu-client-1.0.1.jar
> spark: spark 1.6.0
>            Reporter: Yanlong_Zheng
>            Assignee: Yanlong_Zheng
>            Priority: Minor
>              Labels: easytest
>
> Hi,
> When trying java kudu api in spark-shell. I met error when tried to insert data into kudu.
> In spark-shell:
> scala> import org.apache.kudu.ColumnSchema;
> import org.apache.kudu.ColumnSchema
> scala> import org.apache.kudu.Schema;
> import org.apache.kudu.Schema
> scala> import org.apache.kudu.Type;
> import org.apache.kudu.Type
> scala> import org.apache.kudu.client._
> import org.apache.kudu.client._
> scala> import java.util.ArrayList;
> import java.util.ArrayList
> scala> import java.util.List;
> import java.util.List
> scala> val kc = new KuduClient.KuduClientBuilder("XXX.XXX.XXX.XXX:7051").build()
> kc: org.apache.kudu.client.KuduClient = org.apache.kudu.client.KuduClient@2b852e9
> scala> val ktbl = kc.openTable("kudu_scala_test")
> ktbl: org.apache.kudu.client.KuduTable = org.apache.kudu.client.KuduTable@7e26fb98
> scala> val ksession = kc.newSession()
> ksession: org.apache.kudu.client.KuduSession = org.apache.kudu.client.KuduSession@cc1f71e
> scala> val kins = ktbl.newInsert()
> java.lang.IllegalStateException: Column id is not set      <== id is the first column in the table.
>      at org.apache.kudu.client.shaded.com.google.common.base.Preconditions.checkState(Preconditions.java:197)
>      at org.apache.kudu.client.PartialRow.appendDebugString(PartialRow.java:559)
>      at org.apache.kudu.client.PartialRow.stringifyRowKey(PartialRow.java:532)
>      at org.apache.kudu.client.Operation.toString(Operation.java:202)
>      at scala.runtime.ScalaRunTime$.scala$runtime$ScalaRunTime$$inner$1(ScalaRunTime.scala:324)
>      at scala.runtime.ScalaRunTime$.stringOf(ScalaRunTime.scala:329)
>      at scala.runtime.ScalaRunTime$.replStringOf(ScalaRunTime.scala:337)
>      at .<init>(<console>:10)
>      at .<clinit>(<console>)
>      at $print(<console>)
>      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
>      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>      at java.lang.reflect.Method.invoke(Method.java:606)
>      at org.apache.spark.repl.SparkIMain$ReadEvalPrint.call(SparkIMain.scala:1045)
>      at org.apache.spark.repl.SparkIMain$Request.loadAndRun(SparkIMain.scala:1326)
>      at org.apache.spark.repl.SparkIMain.loadAndRunReq$1(SparkIMain.scala:821)
>      at org.apache.spark.repl.SparkIMain.interpret(SparkIMain.scala:852)
>      at org.apache.spark.repl.SparkIMain.interpret(SparkIMain.scala:800)
>      at org.apache.spark.repl.SparkILoop.reallyInterpret$1(SparkILoop.scala:857)
>      at org.apache.spark.repl.SparkILoop.interpretStartingWith(SparkILoop.scala:902)
>      at org.apache.spark.repl.SparkILoop.command(SparkILoop.scala:814)
>      at org.apache.spark.repl.SparkILoop.processLine$1(SparkILoop.scala:657)
>      at org.apache.spark.repl.SparkILoop.innerLoop$1(SparkILoop.scala:665)
>      at org.apache.spark.repl.SparkILoop.org$apache$spark$repl$SparkILoop$$loop(SparkILoop.scala:670)
>      at org.apache.spark.repl.SparkILoop$$anonfun$org$apache$spark$repl$SparkILoop$$process$1.apply$mcZ$sp(SparkILoop.scala:997)
>      at org.apache.spark.repl.SparkILoop$$anonfun$org$apache$spark$repl$SparkILoop$$process$1.apply(SparkILoop.scala:945)
>      at org.apache.spark.repl.SparkILoop$$anonfun$org$apache$spark$repl$SparkILoop$$process$1.apply(SparkILoop.scala:945)
>      at scala.tools.nsc.util.ScalaClassLoader$.savingContextLoader(ScalaClassLoader.scala:135)
>      at org.apache.spark.repl.SparkILoop.org$apache$spark$repl$SparkILoop$$process(SparkILoop.scala:945)
>      at org.apache.spark.repl.SparkILoop.process(SparkILoop.scala:1064)
>      at org.apache.spark.repl.Main$.main(Main.scala:31)
>      at org.apache.spark.repl.Main.main(Main.scala)
>      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
>      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>      at java.lang.reflect.Method.invoke(Method.java:606)
>      at org.apache.spark.deploy.SparkSubmit$.org$apache$spark$deploy$SparkSubmit$$runMain(SparkSubmit.scala:731)
>      at org.apache.spark.deploy.SparkSubmit$.doRunMain$1(SparkSubmit.scala:181)
>      at org.apache.spark.deploy.SparkSubmit$.submit(SparkSubmit.scala:206)
>      at org.apache.spark.deploy.SparkSubmit$.main(SparkSubmit.scala:121)
>      at org.apache.spark.deploy.SparkSubmit.main(SparkSubmit.scala)
> I have tried the kudu java sample, it worked well in java.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)