prestodb / presto

The official home of the Presto distributed SQL query engine for big data
http://prestodb.io
Apache License 2.0
16.06k stars 5.38k forks source link

SQL transactions in get metadata operations via JDBC driver #19300

Open piotr-rachwalik opened 1 year ago

piotr-rachwalik commented 1 year ago

Description

I've noticed, Presto uses SQL transactions in metadata operations like getTables. Is it expected behavior? My configuration:

In my Cassandra catalog, I have two keyspaces that have the same name but different case like:

When I run getTables(cassandra, quoted), I'm getting below error: More than one keyspace has been found for the case insensitive schema name: quoted -> (QuoteD, quoted)

That's ok, but when I try to do the same operation I'm getting:

SQL error: Query failed (#20230331_083711_00014_ja35w): Unknown transaction ID: 4ad79c3d-0203-420b-9bfe-de19f66c07c6. Possibly expired? Commands ignored until end of transaction block

Why is Presto opening transactions for get metadata operations?

prestored commented 1 year ago

@piotr-rachwalik Have you tried autoCommit = true and see if that helped?

piotr-rachwalik commented 1 year ago

@prestored yes, and it helps, but I wonder why does the Presto open transactions for get metadata operations.