Note:
This topic has been translated from a Chinese forum by GPT and might contain errors.
Original topic: Presto读Tidb异常
Does Presto support reading TiDB (v5.1.3)?
When using Presto to simply select a single table from TiDB, the following error occurs:
function READ ONLY has only noop implementation in tidb now, use tidb_enable_noop_functions to enable these functions.
Try enabling the tidb_enable_noop_functions parameter.
tidb_enable_noop_functions Introduced from version v4.0
- Scope: SESSION | GLOBAL
- Default value:
OFF
- By default, TiDB will report an error when users attempt to use certain syntax for unimplemented features. If this variable is set to
ON, TiDB will automatically ignore such unavailable features without reporting an error. If users cannot change the SQL code, they may consider setting this variable to ON.
- Enabling
noop functions can control the following behaviors:
get_lock and release_lock functions
LOCK IN SHARE MODE syntax
SQL_CALC_FOUND_ROWS syntax
CREATE TEMPORARY TABLE syntax
DROP TEMPORARY TABLE syntax
START TRANSACTION READ ONLY and SET TRANSACTION READ ONLY syntax
tx_read_only, transaction_read_only, offline_mode, super_read_only, and read_only system variables
Warning
This variable is only considered safe when the default value is OFF. Because setting tidb_enable_noop_functions=1 will cause TiDB to automatically ignore certain syntax without reporting an error, this may lead to abnormal behavior in applications. For example, when allowing the syntax START TRANSACTION READ ONLY, the transaction will still be in read-write mode.
Support the original poster’s approach.
This topic was automatically closed 60 days after the last reply. New replies are no longer allowed.