[ https://issues.apache.org/jira/browse/CARBONDATA-2864?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16582607#comment-16582607 ] anand edited comment on CARBONDATA-2864 at 8/16/18 3:21 PM: ------------------------------------------------------------ Carbon Update not working with below command with Select: carbon.sql("UPDATE test_table t SET(t.name)=(SELECT s.NAME FROM test_table s WHERE s.id=101) WHERE t.id = 10"); Error org.apache.spark.sql.AnalysisException: Detected cartesian product for INNER join between logical plans Project [name#5] +- Filter (isnotnull(id#4) && (cast(id#4 as double) = 101.0)) +- Relation[id#4,name#5,city#6,age#7] CarbonDatasourceHadoopRelation [ Database name :default, Table name :test_table, Schema :Some(StructType(StructField(id,StringType,true), StructField(name,StringType,true), StructField(city,StringType,true), StructField(age,IntegerType,true))) ] and Project [id#305, name#306, city#307, age#308, UDF() AS tupleId#303] +- Filter (isnotnull(id#305) && (cast(id#305 as double) = 10.0)) +- Relation[id#305,name#306,city#307,age#308] CarbonDatasourceHadoopRelation [ Database name :default, Table name :test_table, Schema :Some(StructType(StructField(id,StringType,true), StructField(name,StringType,true), StructField(city,StringType,true), StructField(age,IntegerType,true))) ] Join condition is missing or trivial. Thanks, Anand C was (Author: achinn1): Spark Update working fine with below command with Select: carbon.sql("UPDATE test_table t SET(t.name)=(SELECT s.NAME FROM test_table s WHERE s.id=101) WHERE t.id = 10"); But the error while passing the value for update instead of SELECT Thanks, Anand C > Carbon Update not supported in Spark2.x > ---------------------------------------- > > Key: CARBONDATA-2864 > URL: https://issues.apache.org/jira/browse/CARBONDATA-2864 > Project: CarbonData > Issue Type: Bug > Reporter: anand > Priority: Major > > Carbon update statement was not working in Spark2.x. > > Error Log > carbon.sql("UPDATE test_table t SET(name)='T' where t.id = 10"); > org.apache.spark.sql.AnalysisException: == Parse1 == > > mismatched input 'UPDATE' expecting \{'(', 'SELECT', 'FROM', 'ADD', 'DESC', 'WITH', 'VALUES', 'CREATE', 'TABLE', 'INSERT', 'DELETE', 'DESCRIBE', 'EXPLAIN', 'SHOW', 'USE', 'DROP', 'ALTER', 'MAP', 'SET', 'RESET', 'START', 'COMMIT', 'ROLLBACK', 'REDUCE', 'REFRESH', 'CLEAR', 'CACHE', 'UNCACHE', 'DFS', 'TRUNCATE', 'ANALYZE', 'LIST', 'REVOKE', 'GRANT', 'LOCK', 'UNLOCK', 'MSCK', 'EXPORT', 'IMPORT', 'LOAD'}(line 1, pos 0) > > == SQL == > UPDATE test_table t SET(name)='T' where t.id = 10 > ^^^ > > == Parse2 == > Parsing error, missing bracket; > at org.apache.spark.sql.util.CarbonException$.analysisException(CarbonException.scala:23) > at org.apache.spark.sql.parser.CarbonSparkSqlParser.parsePlan(CarbonSparkSqlParser.scala:71) > at org.apache.spark.sql.CarbonSession.withProfiler(CarbonSession.scala:144) > at org.apache.spark.sql.CarbonSession.sql(CarbonSession.scala:95) > ... 50 elided -- This message was sent by Atlassian JIRA (v7.6.3#76005) |
Free forum by Nabble | Edit this page |