CrateDB is a distributed and scalable SQL database for storing and analyzing massive amounts of data in near real-time, even with complex queries. It is PostgreSQL-compatible, and based on Lucene.
In addition, you have to connect using the https://github.com/crate/crate-jdbc driver instead of the built-in PostgreSQL driver. Maybe you tell jetbrains that there is a Crate Open Source Driver and they should add it to the driver list.
In the PostgreSQL driver, the selection of the schema does not work and acknowledges the service with the error:
It is important to know that if it does not work in Datagrid, it will not work in any of jetbrains' other IDEs: IntelliJ IDEA, AppCode, Aqua, CLion, DataGrip, DataSpell, Fleet, GoLand, PhpStorm, PyCharm, Rider, RubyMine, RustRover, WebStorm. That's a lot of IDEs.
I tested CrateDB today because you have finally implemented the "Drop Columns Support" (there is still room for improvement). The DB itself works very well. The Webgui could use a little more love, but it works fine.
However, since we developers usually work with IDEs and not just with Webgui or CLIs like "crash", we need the full support of the respective IDE, especially for fields, types and names.
java.sql.SQLException: ERROR: ESCAPE is not supported. Wobei: io.crate.exceptions.SQLExceptions.esToCrateException(SQLExceptions.java:154) io.crate.exceptions.SQLExceptions.prepareForClientTransmission(SQLExceptions.java:141) io.crate.protocols.postgres.Messages.sendErrorResponse(Messages.java:190)
or
java.sql.SQLException: ERROR: Column reference "t.quote" has too many parts. A column must not have a schema or a table here. Wobei: io.crate.exceptions.SQLExceptions.esToCrateException(SQLExceptions.java:152) io.crate.exceptions.SQLExceptions.prepareForClientTransmission(SQLExceptions.java:141)
Expected Result
no errors, so that you can edit and delete content, that you can see all fields, types and schemas in the IDEs.
CrateDB version
5.5.0
CrateDB setup information
Single Node Developer Setup
Problem description
Currently, three things prevent the professional use of the DataGrip IDE from jetbrains with crateDB (and all other IDEs form jetbrains):
"Escape support" https://github.com/crate/crate/issues/14790 and the "AS alias SET" error: https://github.com/crate/crate/issues/15061
In addition, you have to connect using the https://github.com/crate/crate-jdbc driver instead of the built-in PostgreSQL driver. Maybe you tell jetbrains that there is a Crate Open Source Driver and they should add it to the driver list.
In the PostgreSQL driver, the selection of the schema does not work and acknowledges the service with the error:
ERROR: Unknown function: pg_catalog.txid_current() Wobei: io.crate.metadata.Functions.raiseUnknownFunction(Functions.java:357) io.crate.metadata.Functions.get(Functions.java:157) io.crate.metadata.Functions.get(Functions.java:126) io.crate.analyze.expressions.ExpressionAnalyzer.allocateBuiltinOrUdfFunction(ExpressionAnalyzer.java:1195)
It is important to know that if it does not work in Datagrid, it will not work in any of jetbrains' other IDEs: IntelliJ IDEA, AppCode, Aqua, CLion, DataGrip, DataSpell, Fleet, GoLand, PhpStorm, PyCharm, Rider, RubyMine, RustRover, WebStorm. That's a lot of IDEs.
I tested CrateDB today because you have finally implemented the "Drop Columns Support" (there is still room for improvement). The DB itself works very well. The Webgui could use a little more love, but it works fine.
However, since we developers usually work with IDEs and not just with Webgui or CLIs like "crash", we need the full support of the respective IDE, especially for fields, types and names.
Steps to Reproduce
Escape support https://github.com/crate/crate/issues/14790 AS alias SET error: https://github.com/crate/crate/issues/15061
Actual Result
ERROR: Unknown function: pg_catalog.txid_current() Wobei: io.crate.metadata.Functions.raiseUnknownFunction(Functions.java:357) io.crate.metadata.Functions.get(Functions.java:157) io.crate.metadata.Functions.get(Functions.java:126) io.crate.analyze.expressions.ExpressionAnalyzer.allocateBuiltinOrUdfFunction(ExpressionAnalyzer.java:1195)
or
java.sql.SQLException: ERROR: ESCAPE is not supported. Wobei: io.crate.exceptions.SQLExceptions.esToCrateException(SQLExceptions.java:154) io.crate.exceptions.SQLExceptions.prepareForClientTransmission(SQLExceptions.java:141) io.crate.protocols.postgres.Messages.sendErrorResponse(Messages.java:190)
or
java.sql.SQLException: ERROR: Column reference "t.quote" has too many parts. A column must not have a schema or a table here. Wobei: io.crate.exceptions.SQLExceptions.esToCrateException(SQLExceptions.java:152) io.crate.exceptions.SQLExceptions.prepareForClientTransmission(SQLExceptions.java:141)
Expected Result
no errors, so that you can edit and delete content, that you can see all fields, types and schemas in the IDEs.