Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

how to access managed table in hive 3.1.0 by using presto? #12484

Open
dawsongzhao opened this issue Mar 18, 2019 · 15 comments
Open

how to access managed table in hive 3.1.0 by using presto? #12484

dawsongzhao opened this issue Mar 18, 2019 · 15 comments
Assignees

Comments

@dawsongzhao
Copy link

Now we can use presto to access external table in hive 3.1.0 installed by hdp3.1.0; But I can't access managed table using presto; Is there any configuration we lost?

@nezihyigitbasi
Copy link
Contributor

Which Presto version are you using? Also, when you say "I can't access managed table", what exactly are you observing? Are you getting exceptions while accessing such tables?

@dawsongzhao
Copy link
Author

dawsongzhao commented Mar 31, 2019

Thanks for your reply @nezihyigitbasi

  • env:
    HDP-3.0.1.0-187 hive 3.0.0.3.0 presto 0.217
  • This is my steps:

1.hive:

CREATE TABLE acidtest_22 (a INTEGER)
STORED AS ORC
tblproperties("transactional"="true");
insert overwrite table acidtest_22 select 1;
select * from acidtest_22
+----+
| a  |
+----+
| 1  |
+----+

2.presto:

presto:default> select * from acidtest_22;
 a
---
 0
(1 row)

Query 20190331_103523_00017_mbyep, FINISHED, 1 node
Splits: 17 total, 17 done (100.00%)
0:01 [1 rows, 609B] [1 rows/s, 908B/s]

presto:default>

question:
this is no error in presto log.but the value presto shown is aways 0;

the web:
https://docs.hortonworks.com/HDPDocuments/HDP3/HDP-3.1.0/using-hiveql/content/hive_hive_3_tables.html
it said

In Hive 3, Hive has full control over managed tables. Only through Hive can you access and change the data in managed tables. Managed tables, except temporary tables, are transactional tables having ACID (atomicity, consistency, isolation, and durability) properties. Because Hive has full control of managed tables, Hive can optimize these tables extensively. If you need to bypass Hive to access data directly on the file system, you use external tables or a storage handler, such as Druid or HBase.

@flysea520
Copy link

flysea520 commented Apr 10, 2019

I had the same problem
1、env
HDP-3.0.0.0
HDFS 3.1.0
HIVE 3.0.0
Presto 0.218

2、Hive

create external table t1 ( id bigint, name string ) stored as textfile;
create table p1 ( id bigint, name string ) stored as orc;
create table p2 ( id bigint, name string ) stored as orc TBLPROPERTIES ('transactional'='true', 'transactional_properties'='insert_only');
    

3、Presto


presto:beyonds> select * from p1;
 id | name 
----+------
(0 rows)

Query 20190410_070522_00025_fftk3, FINISHED, 1 node
Splits: 17 total, 17 done (100.00%)
0:00 [0 rows, 0B] [0 rows/s, 0B/s]

presto:beyonds> select * from p2;
Query 20190410_070525_00026_fftk3 failed: Your client does not appear to support insert-only tables. To skip capability checks, please set metastore.client.capability.check to false. This setting can be set globally, or on the client for the current metastore session. Note that this may lead to incorrect results, data loss, undefined behavior, etc. if your client is actually incompatible. You can also specify custom client capabilities via get_table_req API.

presto:beyonds> 
presto:beyonds> select * from t1;
 id |  name   
----+---------
  1 | beyonds 
(1 row)

Query 20190410_070539_00027_fftk3, FINISHED, 2 nodes
Splits: 17 total, 17 done (100.00%)
0:00 [1 rows, 10B] [7 rows/s, 78B/s]

presto:beyonds> 
presto:beyonds> 

4、Presto UI
Error Type | EXTERNAL

com.facebook.presto.spi.PrestoException: Your client does not appear to support insert-only tables. To skip capability checks, please set metastore.client.capability.check to false. This setting can be set globally, or on the client for the current metastore session. Note that this may lead to incorrect results, data loss, undefined behavior, etc. if your client is actually incompatible. You can also specify custom client capabilities via get_table_req API.
	at com.facebook.presto.hive.metastore.thrift.ThriftHiveMetastore.getTable(ThriftHiveMetastore.java:241)
	at com.facebook.presto.hive.metastore.thrift.BridgingHiveMetastore.getTable(BridgingHiveMetastore.java:81)
	at com.facebook.presto.hive.metastore.CachingHiveMetastore.loadTable(CachingHiveMetastore.java:275)
	at com.google.common.cache.CacheLoader$FunctionToCacheLoader.load(CacheLoader.java:165)
	at com.google.common.cache.CacheLoader$1.load(CacheLoader.java:188)
	at com.google.common.cache.LocalCache$LoadingValueReference.loadFuture(LocalCache.java:3524)
	at com.google.common.cache.LocalCache$Segment.loadSync(LocalCache.java:2273)
	at com.google.common.cache.LocalCache$Segment.lockedGetOrLoad(LocalCache.java:2156)
	at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2046)
	at com.google.common.cache.LocalCache.get(LocalCache.java:3943)
	at com.google.common.cache.LocalCache.getOrLoad(LocalCache.java:3967)
	at com.google.common.cache.LocalCache$LocalLoadingCache.get(LocalCache.java:4952)
	at com.google.common.cache.LocalCache$LocalLoadingCache.getUnchecked(LocalCache.java:4958)
	at com.facebook.presto.hive.metastore.CachingHiveMetastore.get(CachingHiveMetastore.java:219)
	at com.facebook.presto.hive.metastore.CachingHiveMetastore.getTable(CachingHiveMetastore.java:264)
	at com.facebook.presto.hive.metastore.CachingHiveMetastore.loadTable(CachingHiveMetastore.java:275)
	at com.google.common.cache.CacheLoader$FunctionToCacheLoader.load(CacheLoader.java:165)
	at com.google.common.cache.CacheLoader$1.load(CacheLoader.java:188)
	at com.google.common.cache.LocalCache$LoadingValueReference.loadFuture(LocalCache.java:3524)
	at com.google.common.cache.LocalCache$Segment.loadSync(LocalCache.java:2273)
	at com.google.common.cache.LocalCache$Segment.lockedGetOrLoad(LocalCache.java:2156)
	at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2046)
	at com.google.common.cache.LocalCache.get(LocalCache.java:3943)
	at com.google.common.cache.LocalCache.getOrLoad(LocalCache.java:3967)
	at com.google.common.cache.LocalCache$LocalLoadingCache.get(LocalCache.java:4952)
	at com.google.common.cache.LocalCache$LocalLoadingCache.getUnchecked(LocalCache.java:4958)
	at com.facebook.presto.hive.metastore.CachingHiveMetastore.get(CachingHiveMetastore.java:219)
	at com.facebook.presto.hive.metastore.CachingHiveMetastore.getTable(CachingHiveMetastore.java:264)
	at com.facebook.presto.hive.metastore.SemiTransactionalHiveMetastore.getTable(SemiTransactionalHiveMetastore.java:159)
	at com.facebook.presto.hive.HiveMetadata.getViews(HiveMetadata.java:1571)
	at com.facebook.presto.spi.connector.classloader.ClassLoaderSafeConnectorMetadata.getViews(ClassLoaderSafeConnectorMetadata.java:421)
	at com.facebook.presto.metadata.MetadataManager.getView(MetadataManager.java:903)
	at com.facebook.presto.sql.analyzer.StatementAnalyzer$Visitor.visitTable(StatementAnalyzer.java:872)
	at com.facebook.presto.sql.analyzer.StatementAnalyzer$Visitor.visitTable(StatementAnalyzer.java:259)
	at com.facebook.presto.sql.tree.Table.accept(Table.java:53)
	at com.facebook.presto.sql.tree.AstVisitor.process(AstVisitor.java:27)
	at com.facebook.presto.sql.analyzer.StatementAnalyzer$Visitor.process(StatementAnalyzer.java:273)
	at com.facebook.presto.sql.analyzer.StatementAnalyzer$Visitor.analyzeFrom(StatementAnalyzer.java:1851)
	at com.facebook.presto.sql.analyzer.StatementAnalyzer$Visitor.visitQuerySpecification(StatementAnalyzer.java:1033)
	at com.facebook.presto.sql.analyzer.StatementAnalyzer$Visitor.visitQuerySpecification(StatementAnalyzer.java:259)
	at com.facebook.presto.sql.tree.QuerySpecification.accept(QuerySpecification.java:127)
	at com.facebook.presto.sql.tree.AstVisitor.process(AstVisitor.java:27)
	at com.facebook.presto.sql.analyzer.StatementAnalyzer$Visitor.process(StatementAnalyzer.java:273)
	at com.facebook.presto.sql.analyzer.StatementAnalyzer$Visitor.process(StatementAnalyzer.java:283)
	at com.facebook.presto.sql.analyzer.StatementAnalyzer$Visitor.visitQuery(StatementAnalyzer.java:748)
	at com.facebook.presto.sql.analyzer.StatementAnalyzer$Visitor.visitQuery(StatementAnalyzer.java:259)
	at com.facebook.presto.sql.tree.Query.accept(Query.java:94)
	at com.facebook.presto.sql.tree.AstVisitor.process(AstVisitor.java:27)
	at com.facebook.presto.sql.analyzer.StatementAnalyzer$Visitor.process(StatementAnalyzer.java:273)
	at com.facebook.presto.sql.analyzer.StatementAnalyzer.analyze(StatementAnalyzer.java:251)
	at com.facebook.presto.sql.analyzer.Analyzer.analyze(Analyzer.java:76)
	at com.facebook.presto.sql.analyzer.Analyzer.analyze(Analyzer.java:68)
	at com.facebook.presto.execution.SqlQueryExecution.<init>(SqlQueryExecution.java:209)
	at com.facebook.presto.execution.SqlQueryExecution.<init>(SqlQueryExecution.java:97)
	at com.facebook.presto.execution.SqlQueryExecution$SqlQueryExecutionFactory.createQueryExecution(SqlQueryExecution.java:761)
	at com.facebook.presto.execution.SqlQueryManager.createQueryInternal(SqlQueryManager.java:361)
	at com.facebook.presto.execution.SqlQueryManager.lambda$createQuery$4(SqlQueryManager.java:303)
	at com.facebook.presto.$gen.Presto_0_218____20190409_142216_1.run(Unknown Source)
	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
	at java.lang.Thread.run(Thread.java:748)
Caused by: org.apache.hadoop.hive.metastore.api.MetaException: Your client does not appear to support insert-only tables. To skip capability checks, please set metastore.client.capability.check to false. This setting can be set globally, or on the client for the current metastore session. Note that this may lead to incorrect results, data loss, undefined behavior, etc. if your client is actually incompatible. You can also specify custom client capabilities via get_table_req API.
	at org.apache.hadoop.hive.metastore.api.ThriftHiveMetastore$get_table_result$get_table_resultStandardScheme.read(ThriftHiveMetastore.java:35057)
	at org.apache.hadoop.hive.metastore.api.ThriftHiveMetastore$get_table_result$get_table_resultStandardScheme.read(ThriftHiveMetastore.java:35034)
	at org.apache.hadoop.hive.metastore.api.ThriftHiveMetastore$get_table_result.read(ThriftHiveMetastore.java:34965)
	at org.apache.thrift.TServiceClient.receiveBase(TServiceClient.java:78)
	at org.apache.hadoop.hive.metastore.api.ThriftHiveMetastore$Client.recv_get_table(ThriftHiveMetastore.java:1218)
	at org.apache.hadoop.hive.metastore.api.ThriftHiveMetastore$Client.get_table(ThriftHiveMetastore.java:1204)
	at com.facebook.presto.hive.metastore.thrift.ThriftHiveMetastoreClient.getTable(ThriftHiveMetastoreClient.java:148)
	at com.facebook.presto.hive.metastore.thrift.ThriftHiveMetastore.lambda$getTable$5(ThriftHiveMetastore.java:229)
	at com.facebook.presto.hive.metastore.thrift.HiveMetastoreApiStats.lambda$wrap$0(HiveMetastoreApiStats.java:42)
	at com.facebook.presto.hive.RetryDriver.run(RetryDriver.java:139)
	at com.facebook.presto.hive.metastore.thrift.ThriftHiveMetastore.getTable(ThriftHiveMetastore.java:227)
	... 62 more
	Suppressed: org.apache.hadoop.hive.metastore.api.MetaException: Your client does not appear to support insert-only tables. To skip capability checks, please set metastore.client.capability.check to false. This setting can be set globally, or on the client for the current metastore session. Note that this may lead to incorrect results, data loss, undefined behavior, etc. if your client is actually incompatible. You can also specify custom client capabilities via get_table_req API.
		... 73 more
	Suppressed: org.apache.hadoop.hive.metastore.api.MetaException: Your client does not appear to support insert-only tables. To skip capability checks, please set metastore.client.capability.check to false. This setting can be set globally, or on the client for the current metastore session. Note that this may lead to incorrect results, data loss, undefined behavior, etc. if your client is actually incompatible. You can also specify custom client capabilities via get_table_req API.
		... 73 more
	Suppressed: org.apache.hadoop.hive.metastore.api.MetaException: Your client does not appear to support insert-only tables. To skip capability checks, please set metastore.client.capability.check to false. This setting can be set globally, or on the client for the current metastore session. Note that this may lead to incorrect results, data loss, undefined behavior, etc. if your client is actually incompatible. You can also specify custom client capabilities via get_table_req API.
		... 73 more
	Suppressed: org.apache.hadoop.hive.metastore.api.MetaException: Your client does not appear to support insert-only tables. To skip capability checks, please set metastore.client.capability.check to false. This setting can be set globally, or on the client for the current metastore session. Note that this may lead to incorrect results, data loss, undefined behavior, etc. if your client is actually incompatible. You can also specify custom client capabilities via get_table_req API.
		... 73 more
	Suppressed: org.apache.hadoop.hive.metastore.api.MetaException: Your client does not appear to support insert-only tables. To skip capability checks, please set metastore.client.capability.check to false. This setting can be set globally, or on the client for the current metastore session. Note that this may lead to incorrect results, data loss, undefined behavior, etc. if your client is actually incompatible. You can also specify custom client capabilities via get_table_req API.
		... 73 more
	Suppressed: org.apache.hadoop.hive.metastore.api.MetaException: Your client does not appear to support insert-only tables. To skip capability checks, please set metastore.client.capability.check to false. This setting can be set globally, or on the client for the current metastore session. Note that this may lead to incorrect results, data loss, undefined behavior, etc. if your client is actually incompatible. You can also specify custom client capabilities via get_table_req API.
		... 73 more
	Suppressed: org.apache.hadoop.hive.metastore.api.MetaException: Your client does not appear to support insert-only tables. To skip capability checks, please set metastore.client.capability.check to false. This setting can be set globally, or on the client for the current metastore session. Note that this may lead to incorrect results, data loss, undefined behavior, etc. if your client is actually incompatible. You can also specify custom client capabilities via get_table_req API.
		... 73 more
	Suppressed: org.apache.hadoop.hive.metastore.api.MetaException: Your client does not appear to support insert-only tables. To skip capability checks, please set metastore.client.capability.check to false. This setting can be set globally, or on the client for the current metastore session. Note that this may lead to incorrect results, data loss, undefined behavior, etc. if your client is actually incompatible. You can also specify custom client capabilities via get_table_req API.
		... 73 more
	Suppressed: org.apache.hadoop.hive.metastore.api.MetaException: Your client does not appear to support insert-only tables. To skip capability checks, please set metastore.client.capability.check to false. This setting can be set globally, or on the client for the current metastore session. Note that this may lead to incorrect results, data loss, undefined behavior, etc. if your client is actually incompatible. You can also specify custom client capabilities via get_table_req API.
		... 73 more

How to solve this problem

@gangly
Copy link

gangly commented Apr 11, 2019

I had the same problem too.
How to solve this problem?

@flysea520
Copy link

flysea520 commented Apr 11, 2019

I found another way to access hive managed table
But not in the way I expected
My solution is sqoop -> hive -> presto
So this doesn't really solve my problem

1、hive create external table


0: jdbc:hive2://bdip83.gisquest.com:10000> create external table external_table ( id bigint, name string ) stored as orc;
0: jdbc:hive2://bdip83.gisquest.com:10000> insert into external_table values ('1','beyonds');
0: jdbc:hive2://bdip83.gisquest.com:10000> select * from  external_table;
+--------------------+----------------------+
| external_table.id  | external_table.name  |
+--------------------+----------------------+
| 1                  | beyonds              |
+--------------------+----------------------+
1 row selected (0.469 seconds)

2、presto create managed table from external table

presto:beyonds> create table managed_table as select * from external_table;
CREATE TABLE: 1 row

Query 20190411_102353_00146_rpkts, FINISHED, 3 nodes
Splits: 69 total, 69 done (100.00%)
0:00 [1 rows, 312B] [2 rows/s, 691B/s]

presto:beyonds> 
presto:beyonds> select * from managed_table;
 id |  name   
----+---------
  1 | beyonds 
(1 row)

Query 20190411_102412_00147_rpkts, FINISHED, 2 nodes
Splits: 17 total, 17 done (100.00%)
0:00 [1 rows, 350B] [8 rows/s, 2.95KB/s]

presto:beyonds> 

3、I found the difference between hive create managed table and presto create managed table
TBLPROPERTIES

0: jdbc:hive2://bdip83.gisquest.com:10000> show create table p1;
+----------------------------------------------------+
|                   createtab_stmt                   |
+----------------------------------------------------+
| CREATE TABLE `p1`(                                 |
|   `id` bigint,                                     |
|   `name` string)                                   |
| ROW FORMAT SERDE                                   |
|   'org.apache.hadoop.hive.ql.io.orc.OrcSerde'      |
| STORED AS INPUTFORMAT                              |
|   'org.apache.hadoop.hive.ql.io.orc.OrcInputFormat'  |
| OUTPUTFORMAT                                       |
|   'org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat' |
| LOCATION                                           |
|   'hdfs://bdip82.gisquest.com:8020/warehouse/tablespace/managed/hive/beyonds.db/p1' |
| TBLPROPERTIES (                                    |
|   'bucketing_version'='2',                         |
|   'transactional'='true',                          |
|   'transactional_properties'='default',            |
|   'transient_lastDdlTime'='1554980077')            |
+----------------------------------------------------+

0: jdbc:hive2://bdip83.gisquest.com:10000> show create table managed_table;
+----------------------------------------------------+
|                   createtab_stmt                   |
+----------------------------------------------------+
| CREATE TABLE `managed_table`(                      |
|   `id` bigint,                                     |
|   `name` string)                                   |
| ROW FORMAT SERDE                                   |
|   'org.apache.hadoop.hive.ql.io.orc.OrcSerde'      |
| STORED AS INPUTFORMAT                              |
|   'org.apache.hadoop.hive.ql.io.orc.OrcInputFormat'  |
| OUTPUTFORMAT                                       |
|   'org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat' |
| LOCATION                                           |
|   'hdfs://bdip82.gisquest.com:8020/warehouse/tablespace/managed/hive/beyonds.db/managed_table' |
| TBLPROPERTIES (                                    |
|   'presto_query_id'='20190411_102353_00146_rpkts',  |
|   'presto_version'='0.218',                        |
|   'transactional'='true',                          |
|   'transient_lastDdlTime'='1554978233')            |
+----------------------------------------------------+

4、Modified hive managed table property

0: jdbc:hive2://bdip83.gisquest.com:10000> create  table hive_managed_table ( id bigint, name string ) stored as orc;
0: jdbc:hive2://bdip83.gisquest.com:10000> alter table hive_managed_table set TBLPROPERTIES ('presto_version'='0.218');
0: jdbc:hive2://bdip83.gisquest.com:10000> select * from hive_managed_table;
+------------------------+--------------------------+
| hive_managed_table.id  | hive_managed_table.name  |
+------------------------+--------------------------+
| 1                      | beyonds                  |
+------------------------+--------------------------+

5、presto select data

presto:beyonds> select * from hive_managed_table;
 id | name 
----+------
(0 rows)

Query 20190411_104914_00149_rpkts, FINISHED, 2 nodes
Splits: 17 total, 17 done (100.00%)
0:00 [0 rows, 0B] [0 rows/s, 0B/s]

presto:beyonds> 

so , how to solve this problem?

@dawsongzhao
Copy link
Author

@nezihyigitbasi Hi,does presto support hive 3.1.0?

@gangly
Copy link

gangly commented Apr 26, 2019

Which Presto version are you using? Also, when you say "I can't access managed table", what exactly are you observing? Are you getting exceptions while accessing such tables?

I had the same problem too.
How to solve this problem?

@krisvive
Copy link

Am using Hive 1.1.0 on CDH 5.14.2
No luck, same issue

Tried below things...
1: creating a managed table from an external table
2: also ran 'msck repair tablename'
3: added some new properties in hive.properties file, enabled Hive non managed tables write and creates

Anyone managed to fix this?
Please share

@heocaf
Copy link

heocaf commented Sep 1, 2019

I had the same problem too, some update ?

@RameshByndoor
Copy link
Contributor

setting this property hive.metastore.client.capability.check=false at hivemetastore-site.xml and restarting hive-metastore service solved this problem, This can be due to version mismatch in HiveThriftMetastoreClient used in presto and metastore api in 3.1.0.

@souparvo
Copy link

souparvo commented May 19, 2020

The only way I got the ability to read Hive 3.X tables using presto (v0.231) is to set the property TBLPROPERTIES('transactional' = 'false') on each table that is required to be accessed by Presto.

Adding to @dawsongzhao example test:

Hive:

-- create table as @dawsongzhao 
CREATE TABLE acidtest_22 (a INTEGER)
STORED AS ORC
tblproperties("transactional"="true");
insert overwrite table acidtest_22 select 1;
select * from acidtest_22;
+----------------+
| acidtest_22.a  |
+----------------+
| 1              |
+----------------+


-- create table with trasactional = false
CREATE TABLE acidtest_tf (a INTEGER)
STORED AS ORC
tblproperties("transactional"="false");
insert overwrite table acidtest_tf select 1;
select * from acidtest_tf;
+----------------+
| acidtest_tf.a  |
+----------------+
| 1              |
+----------------+

Presto:

presto:default> select * from acidtest_22;
 a 
---
(0 rows)

Query 20200519_095802_00055_6rwmn, FINISHED, 2 nodes
Splits: 17 total, 17 done (100.00%)
0:00 [0 rows, 0B] [0 rows/s, 0B/s]

presto:default> 
presto:default> select * from acidtest_tf;
 a 
---
 1 
(1 row)

Query 20200519_095918_00056_6rwmn, FINISHED, 1 node
Splits: 17 total, 17 done (100.00%)
0:00 [1 rows, 187B] [3 rows/s, 643B/s]

presto:default> 

Is there any development or on the roadmap to extend compatibility with Hive 3.X by default in presto?

@luzhengyu1990
Copy link

The only way I got the ability to read Hive 3.X tables using presto (v0.231) is to set the property TBLPROPERTIES('transactional' = 'false') on each table that is required to be accessed by Presto.

Adding to @dawsongzhao example test:

Hive:

-- create table as @dawsongzhao 
CREATE TABLE acidtest_22 (a INTEGER)
STORED AS ORC
tblproperties("transactional"="true");
insert overwrite table acidtest_22 select 1;
select * from acidtest_22;
+----------------+
| acidtest_22.a  |
+----------------+
| 1              |
+----------------+


-- create table with trasactional = false
CREATE TABLE acidtest_tf (a INTEGER)
STORED AS ORC
tblproperties("transactional"="false");
insert overwrite table acidtest_tf select 1;
select * from acidtest_tf;
+----------------+
| acidtest_tf.a  |
+----------------+
| 1              |
+----------------+

Presto:

presto:default> select * from acidtest_22;
 a 
---
(0 rows)

Query 20200519_095802_00055_6rwmn, FINISHED, 2 nodes
Splits: 17 total, 17 done (100.00%)
0:00 [0 rows, 0B] [0 rows/s, 0B/s]

presto:default> 
presto:default> select * from acidtest_tf;
 a 
---
 1 
(1 row)

Query 20200519_095918_00056_6rwmn, FINISHED, 1 node
Splits: 17 total, 17 done (100.00%)
0:00 [1 rows, 187B] [3 rows/s, 643B/s]

presto:default> 

Is there any development or on the roadmap to extend compatibility with Hive 3.X by default in presto?

why the presto can not support hive 3.X transcational table?

@shubhamtagra
Copy link
Contributor

Using Hive transactional tables needs changes in Presto. This support in prestosql was blogged recently: https://prestosql.io/blog/2020/06/01/hive-acid.html. Similar changes will have to be done in prestodb.

@Xuxiaotuan
Copy link

Using Hive transactional tables needs changes in Presto. This support in prestosql was blogged recently: https://prestosql.io/blog/2020/06/01/hive-acid.html. Similar changes will have to be done in prestodb.

Hello, your link can not be accessed, can you describe it again? Wanted to see how you handled it. Thanks

@bitsondatadev
Copy link
Contributor

The link is now here: https://trino.io/blog/2020/06/01/hive-acid.html

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests