Skip to content

Conversation

@dongjoon-hyun
Copy link
Member

@dongjoon-hyun dongjoon-hyun commented Nov 21, 2019

What changes were proposed in this pull request?

This PR aims the followings.

  • Add two profiles, hive-1.2 and hive-2.3 (default)
  • Validate if we keep the existing combination at least. (Hadoop-2.7 + Hive 1.2 / Hadoop-3.2 + Hive 2.3).

For now, we assumes that hive-1.2 is explicitly used with hadoop-2.7 and hive-2.3 with hadoop-3.2. The followings are beyond the scope of this PR.

  • SPARK-29988 Adjust Jenkins jobs for hive-1.2/2.3 combination
  • SPARK-29989 Update release-script for hive-1.2/2.3 combination
  • SPARK-29991 Support hive-1.2/2.3 in PR Builder

Why are the changes needed?

This will help to switch our dependencies to update the exposed dependencies.

Does this PR introduce any user-facing change?

This is a dev-only change that the build profile combinations are changed.

  • -Phadoop-2.7 => -Phadoop-2.7 -Phive-1.2
  • -Phadoop-3.2 => -Phadoop-3.2 -Phive-2.3

How was this patch tested?

Pass the Jenkins with the dependency check and tests to make it sure we don't change anything for now.

Also, from now, GitHub Action validates the following combinations.
gha

@dongjoon-hyun
Copy link
Member Author

Hi, @srowen , @liancheng , @wangyum .
Could you review this approach? This PR switched the default and adds hive-1.2 and hive-2.3 profiles

Copy link
Member

@srowen srowen left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That looks correct so far. Does the release script need to accommodate the new build combinations we've been talking about? We need at least the Hadoop 2 / Hive 1, and Hadoop 3 / Hive 2 flavors. I think I lost track of whether there was an argument for Hadoop 3 / Hive 1 ? if that even works.

@dongjoon-hyun dongjoon-hyun changed the title [WIP][SPARK-29981][BUILD] Add hive-1.2/2.3 profiles [WIP][SPARK-29981][BUILD][test-hadoop3.2] Add hive-1.2/2.3 profiles Nov 21, 2019
@dongjoon-hyun
Copy link
Member Author

Retest this please.

@dongjoon-hyun
Copy link
Member Author

dongjoon-hyun commented Nov 21, 2019

Thank you for review.

Up to now, there was no request on Hadoop 3 / Hive 1 combination~ And, it will not work. So, the following four?

  • -Phadoop-2.7 -Phive-1.2
  • -Phadoop-2.7 -Phive-2.3 (This is a new one and we don't have this combination in Jenkins yet)
  • -Phadoop-3.2 -Phive-2.3
  • -Phadoop-provided

@dongjoon-hyun
Copy link
Member Author

dongjoon-hyun commented Nov 21, 2019

@srowen , @liancheng , @wangyum , @gatorsmile .
One thing might look weird for now. We have v2.3.5 directory in sql/core. It means we need hive-2.3 for sql/core compilation in order to bring the extra dependency. If we make this as a top dependency, we need to change dev/deps. So, I didn't change it.

$ find . -name v2.3.5
./sql/core/v2.3.5
./sql/hive-thriftserver/v2.3.5

Previously, it's -Phadoop-3.2. So, it doesn't look weird much, but now it's -Phive-2.3 without -Phive.

    <profile>
       <id>hive-2.3</id>
       <!-- Default hive profile. Uses global properties. -->
       <dependencies>
         <!-- Both Hive and ORC need hive-storage-api, but it is excluded by orc-mapreduce -->
         <dependency>
          <groupId>org.apache.hive</groupId>
          <artifactId>hive-storage-api</artifactId>
          <version>2.6.0</version>
        </dependency>
      </dependencies>
    </profile>

"hadoop2.7": ["-Phadoop-2.7"],
"hadoop3.2": ["-Phadoop-3.2"],
"hadoop2.7": ["-Phadoop-2.7", "-Phive-1.2"],
"hadoop3.2": ["-Phadoop-3.2", "-Phive-2.3"],
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hm, @dongjoon-hyun, can you create JIRAs to follow up? Seems we will change -Phive-2.3 as a default profile as discussed in the mailing list.

  1. Verify *Hadoop 2.7 and Hive 2.3 combination in both JDK 8 and JDK 11 (WIP) as it will be the default
  2. Setting a Jenkins job for -Phadoop-2.7 -Phive-2.3.
  3. We will need to be able to configure Hive version and also Hadoop version in the PR builder.
  4. Change the default profile to Hive 2.3.
  5. [SPARK-29981][BUILD] Add hive-1.2/2.3 profiles #26619 (comment)
  6. Release script updates.
  7. ... (other more .. ?)

*Hadoop 2 will be default at this moment. it's being discussed in the mailing list

Many things are going on so it looks very easy to lose the track.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sure!

Copy link
Member Author

@dongjoon-hyun dongjoon-hyun Nov 21, 2019

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

BTW, the thread is independent from JDK11 or Hadoop 3. For the following, only JDK8 is the target of the follow-up of this PR. And, for JDK11, I believe @wangyum will handle it at his on-going work.

Verify *Hadoop 2.7 and Hive 2.3 combination in both JDK 8 and JDK 11 (WIP) as it will be the default

For (4), Hive 2.3 is already default for Hadoop-3. And, this PR makes Hive 2.3 as a default in the pom files. So, I guess the remains of (4) is equal to (2) and (3).

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The follow-up issues are created and mentioned in the PR description, @HyukjinKwon .

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ah, sure, thanks for clarification. @wangyum, can you verify the new JDK 11 combination and take a following action?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@HyukjinKwon I will do it later.

@SparkQA
Copy link

SparkQA commented Nov 21, 2019

Test build #114192 has finished for PR 26619 at commit 1e0f23d.

  • This patch passes all tests.
  • This patch merges cleanly.
  • This patch adds no public classes.

@SparkQA
Copy link

SparkQA commented Nov 21, 2019

Test build #114196 has finished for PR 26619 at commit 1e0f23d.

  • This patch passes all tests.
  • This patch merges cleanly.
  • This patch adds no public classes.

@SparkQA

This comment has been minimized.

@SparkQA
Copy link

SparkQA commented Nov 21, 2019

Test build #114204 has finished for PR 26619 at commit f93742a.

  • This patch fails due to an unknown error code, -9.
  • This patch merges cleanly.
  • This patch adds no public classes.

@dongjoon-hyun dongjoon-hyun changed the title [WIP][SPARK-29981][BUILD][test-hadoop3.2] Add hive-1.2/2.3 profiles [SPARK-29981][BUILD][test-hadoop3.2] Add hive-1.2/2.3 profiles Nov 21, 2019
@dongjoon-hyun dongjoon-hyun changed the title [SPARK-29981][BUILD][test-hadoop3.2] Add hive-1.2/2.3 profiles [SPARK-29981][BUILD] Add hive-1.2/2.3 profiles Nov 21, 2019
@dongjoon-hyun
Copy link
Member Author

dongjoon-hyun commented Nov 21, 2019

Hi, All.

I updated the PR description. This PR successfully verified the existing profiles and this PR also updates PR builder and dependency check script in the same way like before.

To update Jenkins jobs with new way, we need to merge this PR first because we need to use these profile. Also, I noticed that there is some redundancy in GitHub Action Cache. I'll handle them in another PR to avoid conflicts. The master branch already updated GitHub Action Cache yesterday.

@dongjoon-hyun
Copy link
Member Author

dongjoon-hyun commented Nov 21, 2019

Hi, @shaneknapp .
We are changing the build combination which will affects the Jenkins jobs in master branch. Basically, this PR makes the same situation in the existing jobs.

We need to rename first. (SBT/Maven)

  • spark-master-test-sbt-hadoop-2.7 -> spark-master-test-sbt-hadoop-2.7-hive-1.2
  • spark-master-test-sbt-hadoop-3.2 -> spark-master-test-sbt-hadoop-3.2-hive-2.3

After that, we need to add new combination. (SBT/Maven)

  • spark-master-test-sbt-hadoop-2.7-hive-2.3

I'll file a JIRA for this after when this PR is merged.

<hive23.version>2.3.6</hive23.version>
<!-- Version used for internal directory structure -->
<hive.version.short>1.2.1</hive.version.short>
<hive.version.short>2.3.5</hive.version.short>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

BTW, any reason why we needed the patch version in the directory names initially? I don't think we need different shims for Hive patch versions. If that's true, I'd suggest renaming the sql/hive-thriftserver/{v1.2.1,v2.3.5} folders to just v1.2 and v2.3. Of course, this can be done in a follow-up PR.

Copy link
Member Author

@dongjoon-hyun dongjoon-hyun Nov 21, 2019

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sure. We can use the short versions (v1.2 and v2.3). I'll do in the next follow-up PR. It will include renaming files mostly.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Since we are already in Apache Hive 2.3.6, I don't expect many changes at 2.3.7+.

Copy link
Member

@HyukjinKwon HyukjinKwon left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks fine so far to me but let me defer to other people here.

@dongjoon-hyun
Copy link
Member Author

Thank you, @HyukjinKwon !

@dongjoon-hyun
Copy link
Member Author

Thank you all. I'll merge this to the master and continue to work. This keeps every existing features. I'm sure it's safe until now.

@dongjoon-hyun dongjoon-hyun deleted the SPARK-29981 branch November 23, 2019 18:03
dongjoon-hyun added a commit that referenced this pull request Nov 23, 2019
### What changes were proposed in this pull request?

This is a follow-up according to liancheng 's advice.
- #26619 (comment)

### Why are the changes needed?

Previously, we chose the full version to be carefully. As of today, it seems that `Apache Hive 2.3` branch seems to become stable.

### Does this PR introduce any user-facing change?

No.

### How was this patch tested?

Pass the compile combination on GitHub Action.
1. hadoop-2.7/hive-1.2/JDK8
2. hadoop-2.7/hive-2.3/JDK8
3. hadoop-3.2/hive-2.3/JDK8
4. hadoop-3.2/hive-2.3/JDK11

Also, pass the Jenkins with `hadoop-2.7` and `hadoop-3.2` for (1) and (4).
(2) and (3) is not ready in Jenkins.

Closes #26645 from dongjoon-hyun/SPARK-RENAME-HIVE-DIRECTORY.

Authored-by: Dongjoon Hyun <[email protected]>
Signed-off-by: Dongjoon Hyun <[email protected]>
dongjoon-hyun added a commit that referenced this pull request Nov 25, 2019
… to `sql/core`

# What changes were proposed in this pull request?

This PR aims to relocate the following internal dependencies to compile `sql/core` without `-Phive-2.3` profile.

1. Move the `hive-storage-api` to `sql/core` which is using `hive-storage-api` really.

**BEFORE (sql/core compilation)**
```
$ ./build/mvn -DskipTests --pl sql/core --am compile
...
[ERROR] [Error] /Users/dongjoon/APACHE/spark/sql/core/v2.3/src/main/scala/org/apache/spark/sql/execution/datasources/orc/OrcFilters.scala:21: object hive is not a member of package org.apache.hadoop
...
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
```
**AFTER (sql/core compilation)**
```
$ ./build/mvn -DskipTests --pl sql/core --am compile
...
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  02:04 min
[INFO] Finished at: 2019-11-25T00:20:11-08:00
[INFO] ------------------------------------------------------------------------
```

2. For (1), add `commons-lang:commons-lang` test dependency to `spark-core` module to manage the dependency explicitly. Without this, `core` module fails to build the test classes.

```
$ ./build/mvn -DskipTests --pl core --am package -Phadoop-3.2
...
[INFO] --- scala-maven-plugin:4.3.0:testCompile (scala-test-compile-first)  spark-core_2.12 ---
[INFO] Using incremental compilation using Mixed compile order
[INFO] Compiler bridge file: /Users/dongjoon/.sbt/1.0/zinc/org.scala-sbt/org.scala-sbt-compiler-bridge_2.12-1.3.1-bin_2.12.10__52.0-1.3.1_20191012T045515.jar
[INFO] Compiling 271 Scala sources and 26 Java sources to /spark/core/target/scala-2.12/test-classes ...
[ERROR] [Error] /spark/core/src/test/scala/org/apache/spark/util/PropertiesCloneBenchmark.scala:23: object lang is not a member of package org.apache.commons
[ERROR] [Error] /spark/core/src/test/scala/org/apache/spark/util/PropertiesCloneBenchmark.scala:49: not found: value SerializationUtils
[ERROR] two errors found
```

**BEFORE (commons-lang:commons-lang)**
The following is the previous `core` module's `commons-lang:commons-lang` dependency.

1. **branch-2.4**
```
$ mvn dependency:tree -Dincludes=commons-lang:commons-lang
[INFO] --- maven-dependency-plugin:3.0.2:tree (default-cli)  spark-core_2.11 ---
[INFO] org.apache.spark:spark-core_2.11:jar:2.4.5-SNAPSHOT
[INFO] \- org.spark-project.hive:hive-exec:jar:1.2.1.spark2:provided
[INFO]    \- commons-lang:commons-lang:jar:2.6:compile
```

2. **v3.0.0-preview (-Phadoop-3.2)**
```
$ mvn dependency:tree -Dincludes=commons-lang:commons-lang -Phadoop-3.2
[INFO] --- maven-dependency-plugin:3.1.1:tree (default-cli)  spark-core_2.12 ---
[INFO] org.apache.spark:spark-core_2.12:jar:3.0.0-preview
[INFO] \- org.apache.hive:hive-storage-api:jar:2.6.0:compile
[INFO]    \- commons-lang:commons-lang:jar:2.6:compile
```

3. **v3.0.0-preview(default)**
```
$ mvn dependency:tree -Dincludes=commons-lang:commons-lang
[INFO] --- maven-dependency-plugin:3.1.1:tree (default-cli)  spark-core_2.12 ---
[INFO] org.apache.spark:spark-core_2.12:jar:3.0.0-preview
[INFO] \- org.apache.hadoop:hadoop-client:jar:2.7.4:compile
[INFO]    \- org.apache.hadoop:hadoop-common:jar:2.7.4:compile
[INFO]       \- commons-lang:commons-lang:jar:2.6:compile
```

**AFTER (commons-lang:commons-lang)**
```
$ mvn dependency:tree -Dincludes=commons-lang:commons-lang
[INFO] --- maven-dependency-plugin:3.1.1:tree (default-cli)  spark-core_2.12 ---
[INFO] org.apache.spark:spark-core_2.12:jar:3.0.0-SNAPSHOT
[INFO] \- commons-lang:commons-lang:jar:2.6:test
```

Since we wanted to verify that this PR doesn't change `hive-1.2` profile, we merged
[SPARK-30005 Update `test-dependencies.sh` to check `hive-1.2/2.3` profile](a1706e2) before this PR.

### Why are the changes needed?

- Apache Spark 2.4's `sql/core` is using `Apache ORC (nohive)` jars including shaded `hive-storage-api` to access ORC data sources.

- Apache Spark 3.0's `sql/core` is using `Apache Hive` jars directly. Previously, `-Phadoop-3.2` hid this `hive-storage-api` dependency. Now, we are using `-Phive-2.3` instead. As I mentioned [previously](#26619 (comment)), this PR is required to compile `sql/core` module without `-Phive-2.3`.

- For `sql/hive` and `sql/hive-thriftserver`, it's natural that we need `-Phive-1.2` or `-Phive-2.3`.

### Does this PR introduce any user-facing change?

No.

### How was this patch tested?

This will pass the Jenkins (with the dependency check and unit tests).

We need to check manually with `./build/mvn -DskipTests --pl sql/core --am compile`.

This closes #26657 .

Closes #26658 from dongjoon-hyun/SPARK-30015.

Authored-by: Dongjoon Hyun <[email protected]>
Signed-off-by: Dongjoon Hyun <[email protected]>
@gatorsmile
Copy link
Member

-Phive-2.3 -Phive What is the result if we specify both at the same time?

@dongjoon-hyun
Copy link
Member Author

dongjoon-hyun commented Nov 27, 2019

-Phive enables modules like hive and hive-thriftserver.
-Phive-1.2 and -Phive-2.3 chooses the Hive version (and it's classes).
In principal, we should use both of them(-Phive -Phive-1.2 or -Phive -Phive-2.3). However, one of -Phive-2.3 and -Phive-2.3 is the default and we can ignore that.

The default of AS-IS master branch is -Phive-2.3.

@dongjoon-hyun
Copy link
Member Author

One additional stuff is sql/core module.
Previously, hadoop-3.2 replaces the previous ORC code with Hive code.
When -Phadoop-3.2 is given, Apache Hive storage classes are used.
Now, it depends on -Phive-1.2 or -Phive-2.3. In other words, -Phive-1.2 and -Phive-2.3 is used in sql/core module without -Phive.

@liancheng
Copy link
Contributor

Hey @dongjoon-hyun, was investigating some dependency related issues, and found that we are using the nohive classifier for orc-core under profile hive-1.2 but not hive-2.3.

I'm not quite familiar with the orc-core part. Seems that the nohive classifier is mostly for shading hive-storage-api and protobuf. Why we want different artifacts for hive-1.2 and hive-2.3 profiles?

@dongjoon-hyun
Copy link
Member Author

dongjoon-hyun commented Jan 17, 2020

Yes. It's correct.

The removal of nohive classifier in Hive 2.3 code path is @wangyum 's change.
While updating for Hadoop 3.2 and Hive 2.3, @wangyum 's updated Hive-related Spark code and switched them to use the vanilla jars for Hive 2.3 code path.

For hive-1.2, we still need a shaded nohive classifier jars to avoid the conflicts.

@dongjoon-hyun
Copy link
Member Author

Historically I was against the change because sql/core is designed to use ORC without -Phive. And, Apache ORC nohive classifier jar is designed to support that in Apache Spark. Anyway, the current status of Apache Spark is supporting both.

@liancheng
Copy link
Contributor

Thank you very much for the context, @dongjoon-hyun!

@yhuai
Copy link
Contributor

yhuai commented Feb 9, 2020

@dongjoon-hyun i found hive storage api and hive common have the following common class files

org/apache/hadoop/hive/common/ValidReadTxnList.class
org/apache/hadoop/hive/common/ValidTxnList.class
org/apache/hadoop/hive/common/ValidTxnList$RangeResponse.class

For example, https://github.com/apache/hive/blob/rel/storage-release-2.6.0/storage-api/src/java/org/apache/hadoop/hive/common/ValidReadTxnList.java (pulled in by orc 1.5.8) and https://github.com/apache/hive/blob/rel/release-2.3.6/common/src/java/org/apache/hadoop/hive/common/ValidReadTxnList.java (from hive-common 2.3.6) both are in the classpath and they are different. I am worried that users may hit issues due to classloading order. I think it will be safe to still use nohive classifier for orc, which shades storage api.

I think there is no downside of using orc nohive, right? Why not just keep using that. So, we will not need to worry about having class conflicts.

@yhuai
Copy link
Contributor

yhuai commented Feb 10, 2020

i created https://issues.apache.org/jira/browse/SPARK-30784 for switching back to orc-nohive.

@dongjoon-hyun
Copy link
Member Author

Thank you, @yhuai . During weekend, I missed your comment here.

@dongjoon-hyun
Copy link
Member Author

BTW, @yhuai . As I mentioned before to @liancheng , the transition from orc-nohive to hive-storage-api is not made by me. That is irrelevant to this PR. Technically, I also was against it initially like you.

I think there is no downside of using orc nohive, right?

Let me you ping on the right PR.

@suryanshagnihotri
Copy link

@dongjoon-hyun have we tried to change hive version to 3.x in spark in order to make it work with hive metastore 3.x.

@dongjoon-hyun
Copy link
Member Author

dongjoon-hyun commented Jun 10, 2021

Did you try spark.sql.hive.metastore.version, @suryanshagnihotri ?

For some known issues, we are upgrading the built-in hive module to 2.3.9 here.

@suryanshagnihotri
Copy link

suryanshagnihotri commented Jun 11, 2021

@dongjoon-hyun yes have tried it but it fails with class not found exceptions like

java.lang.ClassNotFoundException: org.apache.hadoop.hive.ql.plan.LoadTableDesc$LoadFileType
	at java.net.URLClassLoader.findClass(URLClassLoader.java:382)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:418)
	at org.apache.spark.sql.hive.client.IsolatedClientLoader$$anon$1.doLoadClass(IsolatedClientLoader.scala:255)
	at org.apache.spark.sql.hive.client.IsolatedClientLoader$$anon$1.loadClass(IsolatedClientLoader.scala:244)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:351)
	at org.apache.spark.sql.hive.client.Shim_v3_0.clazzLoadFileType$lzycompute(HiveShim.scala:1272)
	at org.apache.spark.sql.hive.client.Shim_v3_0.clazzLoadFileType(HiveShim.scala:1271)
	at org.apache.spark.sql.hive.client.Shim_v3_0.loadTable(HiveShim.scala:1352)
	at org.apache.spark.sql.hive.client.HiveClientImpl.$anonfun$loadTable$1(HiveClientImpl.scala:894)
	at scala.runtime.java8.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.java:23)
	at org.apache.spark.sql.hive.client.HiveClientImpl.$anonfun$withHiveState$1(HiveClientImpl.scala:295)
	at org.apache.spark.sql.hive.client.HiveClientImpl.liftedTree1$1(HiveClientImpl.scala:228)
	at org.apache.spark.sql.hive.client.HiveClientImpl.retryLocked(HiveClientImpl.scala:227)
	at org.apache.spark.sql.hive.client.HiveClientImpl.withHiveState(HiveClientImpl.scala:277)
	at org.apache.spark.sql.hive.client.HiveClientImpl.loadTable(HiveClientImpl.scala:889)
	at org.apache.spark.sql.hive.HiveExternalCatalog.$anonfun$loadTable$1(HiveExternalCatalog.scala:884)
	at scala.runtime.java8.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.java:23)
	at org.apache.spark.sql.hive.HiveExternalCatalog.withClient(HiveExternalCatalog.scala:103)
	at org.apache.spark.sql.hive.HiveExternalCatalog.loadTable(HiveExternalCatalog.scala:878)
	at org.apache.spark.sql.catalyst.catalog.ExternalCatalogWithListener.loadTable(ExternalCatalogWithListener.scala:167)
	at org.apache.spark.sql.hive.execution.InsertIntoHiveTable.processInsert(InsertIntoHiveTable.scala:327)
	at org.apache.spark.sql.hive.execution.InsertIntoHiveTable.run(InsertIntoHiveTable.scala:102)
	at org.apache.spark.sql.execution.command.DataWritingCommandExec.sideEffectResult$lzycompute(commands.scala:108)
	at org.apache.spark.sql.execution.command.DataWritingCommandExec.sideEffectResult(commands.scala:106)
	at org.apache.spark.sql.execution.command.DataWritingCommandExec.executeCollect(commands.scala:120)
	at org.apache.spark.sql.Dataset.$anonfun$logicalPlan$1(Dataset.scala:229)

and I checked this LoadTableDesc$LoadFileType (enum) is added in hive 3.x

@suryanshagnihotri
Copy link

@dongjoon-hyun I get this exception when i try to insert data into table. I checked that spark_home/jars contain only hive 2.3.7 jars hence we are getting this exception.

query which does not work

CREATE TABLE students (id int, name string, marks int);
INSERT INTO students VALUES
(1, 'Jerry', 50);

I also noticed that when i make table as acid then it works.

CREATE TABLE students (id int, name string, marks int)
    STORED AS ORC TBLPROPERTIES ('transactional' = 'true');
INSERT INTO students VALUES
(1, 'Jerry', 50);

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

9 participants