Vertica: JDBC Driver does not support FETCH NEXT, only LIMIT
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 3/5
- Tempo stimato
- 1-2 giorni
- Idoneità per principianti
- 35/100
Direzione di ricerca
Inizia con il plugin di storage JDBC di Drill e il percorso di generazione SQL che produce FETCH NEXT per i risultati delle query. Riproduci il fallimento su una datasource basata su Vertica usando la query indicata, quindi verifica che la query generata utilizzi LIMIT e restituisca correttamente i risultati.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Describe the bug
When connecting a RDBMS datasource that is based on Vertica, Drill attempts to use the FETCH NEXT approach for query optimization, however vertica JDBC doesn't support FETCH NEXT but only supports limit.
https://docs.vertica.com/12.0.x/en/sql-reference/statements/select/limit-clause/
To Reproduce
Steps to reproduce the behavior:
- Connect a Vertica based RDBMS Datasource
- Once successful, validate with SHOW SCHEMAS;
- Attempt to run a query against one of the vertica tables
- Observe the error
Expected behavior
Results should appear properly and not use fetch next
Error detail, log output or screenshots
org.apache.drill.common.exceptions.UserRemoteException: DATA_READ ERROR: The JDBC storage plugin failed while trying setup the SQL query.
Sql: SELECT *
FROM "VerticaDB"."xxxxxxxxx"."yyyyyyyyy"
FETCH NEXT 1000 ROWS ONLY
Fragment: 0:0
[Error Id: d142a3d5-f5b3-4f9c-b850-a39e72604953 on a68ba75bf84a:31010]
SQL LOG:
Caused by: java.sql.SQLSyntaxErrorException: [Vertica]VJDBC ERROR: Syntax error at or near "NEXT" at character 59
at com.vertica.util.ServerErrorData.buildException()
at com.vertica.io.ProtocolStream.readExpectedMessage()
at com.vertica.dataengine.VDataEngine.prepareImpl()
at com.vertica.dataengine.VDataEngine.prepare()
Drill version
1.21.1
Additional context
- Lingua principale
- Java
- Stelle
- 2k
- Fork
- 989
- Merge medio
- 1g 8h
- PR unite (30g)
- 5
Preparare l'ambiente
Non abbiamo ancora controllato i file di configurazione di questo progetto. Parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di apache/drill
-
Difficoltà 5/5 Più di una settimana Idoneità per principianti 35/100
-
bug
Difficoltà 4/5 3-5 giorni Idoneità per principianti 35/100
-
bug
Difficoltà 4/5 3-5 giorni Idoneità per principianti 28/100
-
bug
Difficoltà 4/5 3-5 giorni Idoneità per principianti 35/100
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 35/100
Tutte le issue di apache/drill
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
OpenAPITools/openapi-generator#25014 ·
I maintainer di solito rispondono entro 1 giorno
-
bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
openhab/openhab-core#5847 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
-
bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 88/100
apache/parquet-java#3820 ·
I maintainer di solito rispondono entro 1 giorno