我通过Apache Ignite通过缓存进行读/写操作,遇到了以下问题:
在最新版本的postgres中,有一些特殊的json类型的数据和jsonb附加组件可以与数据库中的json一起使用。
在Apache Ignite中,这个功能没有实现,我怎么知道。此外,在尝试执行此部分时,我发现可以从数据库中读取json作为PGobject,但是无法将jsonb处理添加到内置SQL查询解析器中。
例如,我尝试发送下一个查询:
SELECT jdata->>'tag1' FROM jsontest;
获得例外:
SQL语句中的语法错误"
SELECT JDATA-[*]>>'tag1' FROM JSONTEST;
&#34 ;; SQL语句:
SELECT jdata->>'tag1' FROM jsontest;
[42000-195]at org.h2.message.DbException.getJdbcSQLException(DbException.java:345)
在org.h2.message.DbException.get(DbException.java:179)
在org.h2.message.DbException.get(DbException.java:155)
at org.h2.message.DbException.getSyntaxError(DbException.java:191)
在org.h2.command.Parser.getSyntaxError(Parser.java:533)
在org.h2.command.Parser.getSpecialType(Parser.java:3842)
在org.h2.command.Parser.read(Parser.java:3352)
在org.h2.command.Parser.readIf(Parser.java:3259)
在org.h2.command.Parser.readSum(Parser.java:2375)
在org.h2.command.Parser.readConcat(Parser.java:2341)
在org.h2.command.Parser.readCondition(Parser.java:2172)
在org.h2.command.Parser.readAnd(Parser.java:2144)
在org.h2.command.Parser.readExpression(Parser.java:2136)
在org.h2.command.Parser.parseSelectSimpleSelectPart(Parser.java:2047)
在org.h2.command.Parser.parseSelectSimple(Parser.java:2079)
在org.h2.command.Parser.parseSelectSub(Parser.java:1934)
在org.h2.command.Parser.parseSelectUnion(Parser.java:1749)
在org.h2.command.Parser.parseSelect(Parser.java:1737)
在org.h2.command.Parser.parsePrepared(Parser.java:448)
在org.h2.command.Parser.parse(Parser.java:320)
在org.h2.command.Parser.parse(Parser.java:296)
在org.h2.command.Parser.prepareCommand(Parser.java:257)
在org.h2.engine.Session.prepareLocal(Session.java:573)
在org.h2.engine.Session.prepareCommand(Session.java:514)
在org.h2.jdbc.JdbcConnection.prepareCommand(JdbcConnection.java:1204)
在org.h2.jdbc.JdbcPreparedStatement。(JdbcPreparedStatement.java:73)
在org.h2.jdbc.JdbcConnection.prepareStatement(JdbcConnection.java:288)
在org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing.prepareStatement(IgniteH2Indexing.java:402)
在org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing.queryDistributedSqlFields(IgniteH2Indexing.java:1365)
... 9更多
当我尝试研究Ignite或H2数据库引擎的结构时,无法添加此类查询的处理。
那么,也许有人遇到过这个或类似的问题并且可以建议如何解决它?