You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Alexey Kuznetsov (JIRA)" <ji...@apache.org> on 2017/06/27 07:18:00 UTC

[jira] [Closed] (IGNITE-5530) H2 can NOT create primary index imported by Web Console from RDBMS

     [ https://issues.apache.org/jira/browse/IGNITE-5530?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Alexey Kuznetsov closed IGNITE-5530.
------------------------------------

> H2 can NOT create primary index imported by Web Console from RDBMS
> ------------------------------------------------------------------
>
>                 Key: IGNITE-5530
>                 URL: https://issues.apache.org/jira/browse/IGNITE-5530
>             Project: Ignite
>          Issue Type: Bug
>    Affects Versions: 2.0, 2.1
>            Reporter: Denis Magda
>            Assignee: Alexey Kuznetsov
>            Priority: Blocker
>             Fix For: 2.1
>
>         Attachments: Ignite-MySQL-Cluster-project.zip
>
>
> Used the latest version of Web Console and its configuration wizard for version 2.0. A server node started from the generated project immediately fails with the exception below:
> {code}
> com.intellij.rt.execution.application.AppMain startup.ServerNodeCodeStartup
> Jun 17, 2017 11:23:30 AM java.util.logging.LogManager$RootLogger log
> SEVERE: Failed to resolve default logging config file: config/java.util.logging.properties
> [11:23:31]    __________  ________________ 
> [11:23:31]   /  _/ ___/ |/ /  _/_  __/ __/ 
> [11:23:31]  _/ // (7 7    // /  / / / _/   
> [11:23:31] /___/\___/_/|_/___/ /_/ /___/  
> [11:23:31] 
> [11:23:31] ver. 2.0.0#20170430-sha1:d4eef3c6
> [11:23:31] 2017 Copyright(C) Apache Software Foundation
> [11:23:31] 
> [11:23:31] Ignite documentation: http://ignite.apache.org
> [11:23:31] 
> [11:23:31] Quiet mode.
> [11:23:31]   ^-- To see **FULL** console log here add -DIGNITE_QUIET=false or "-v" to ignite.{sh|bat}
> [11:23:31] 
> [11:23:31] OS: Mac OS X 10.12.5 x86_64
> [11:23:31] VM information: Java(TM) SE Runtime Environment 1.8.0_77-b03 Oracle Corporation Java HotSpot(TM) 64-Bit Server VM 25.77-b03
> [11:23:31] Initial heap size is 128MB (should be no less than 512MB, use -Xms512m -Xmx512m).
> [11:23:31] Configured plugins:
> [11:23:31]   ^-- None
> [11:23:31] 
> [11:23:31] Message queue limit is set to 0 which may lead to potential OOMEs when running cache operations in FULL_ASYNC or PRIMARY_SYNC modes due to message queues growth on sender and receiver sides.
> [11:23:31] Security status [authentication=off, tls/ssl=off]
> Jun 17, 2017 11:23:33 AM org.apache.ignite.logger.java.JavaLogger error
> SEVERE: Got exception while starting (will rollback startup routine).
> class org.apache.ignite.IgniteCheckedException: Failed to execute SQL statement on internal H2 database: CREATE INDEX PRIMARY ON "CountrylanguageCache".Countrylanguage ("COUNTRYCODE" DESC, "LANGUAGE" DESC, "_KEY" ASC)
> 	at org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing.executeSql(IgniteH2Indexing.java:875)
> 	at org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing.addInitialUserIndex(IgniteH2Indexing.java:780)
> 	at org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing.createTable(IgniteH2Indexing.java:2009)
> 	at org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing.registerType(IgniteH2Indexing.java:1859)
> 	at org.apache.ignite.internal.processors.query.GridQueryProcessor.registerCache0(GridQueryProcessor.java:1306)
> 	at org.apache.ignite.internal.processors.query.GridQueryProcessor.onCacheStart0(GridQueryProcessor.java:756)
> 	at org.apache.ignite.internal.processors.query.GridQueryProcessor.onCacheStart(GridQueryProcessor.java:817)
> 	at org.apache.ignite.internal.processors.cache.GridCacheProcessor.startCache(GridCacheProcessor.java:1265)
> 	at org.apache.ignite.internal.processors.cache.GridCacheProcessor.onKernalStart(GridCacheProcessor.java:898)
> 	at org.apache.ignite.internal.IgniteKernal.start(IgniteKernal.java:1013)
> 	at org.apache.ignite.internal.IgnitionEx$IgniteNamedInstance.start0(IgnitionEx.java:1895)
> 	at org.apache.ignite.internal.IgnitionEx$IgniteNamedInstance.start(IgnitionEx.java:1647)
> 	at org.apache.ignite.internal.IgnitionEx.start0(IgnitionEx.java:1075)
> 	at org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:595)
> 	at org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:519)
> 	at org.apache.ignite.Ignition.start(Ignition.java:322)
> 	at startup.ServerNodeCodeStartup.main(ServerNodeCodeStartup.java:16)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> 	at java.lang.reflect.Method.invoke(Method.java:498)
> 	at com.intellij.rt.execution.application.AppMain.main(AppMain.java:144)
> Caused by: org.h2.jdbc.JdbcSQLException: Syntax error in SQL statement "CREATE INDEX PRIMARY[*] ON ""CountrylanguageCache"".COUNTRYLANGUAGE (""COUNTRYCODE"" DESC, ""LANGUAGE"" DESC, ""_KEY"" ASC) "; expected "identifier"; SQL statement:
> CREATE INDEX PRIMARY ON "CountrylanguageCache".Countrylanguage ("COUNTRYCODE" DESC, "LANGUAGE" DESC, "_KEY" ASC) [42001-195]
> 	at org.h2.message.DbException.getJdbcSQLException(DbException.java:345)
> 	at org.h2.message.DbException.getSyntaxError(DbException.java:205)
> 	at org.h2.command.Parser.readIdentifierWithSchema(Parser.java:3197)
> 	at org.h2.command.Parser.parseCreate(Parser.java:4374)
> 	at org.h2.command.Parser.parsePrepared(Parser.java:365)
> 	at org.h2.command.Parser.parse(Parser.java:320)
> 	at org.h2.command.Parser.parse(Parser.java:292)
> 	at org.h2.command.Parser.prepareCommand(Parser.java:257)
> 	at org.h2.engine.Session.prepareLocal(Session.java:573)
> 	at org.h2.engine.Session.prepareCommand(Session.java:514)
> 	at org.h2.jdbc.JdbcConnection.prepareCommand(JdbcConnection.java:1204)
> 	at org.h2.jdbc.JdbcPreparedStatement.<init>(JdbcPreparedStatement.java:73)
> 	at org.h2.jdbc.JdbcConnection.prepareStatement(JdbcConnection.java:288)
> 	at org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing.prepareStatement(IgniteH2Indexing.java:482)
> 	at org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing.executeSql(IgniteH2Indexing.java:870)
> 	... 21 more
> [11:23:33] Cancelled rebalancing from all nodes [topology=null]
> [11:23:33] Cancelled rebalancing from all nodes [topology=null]
> [11:23:33] Cancelled rebalancing from all nodes [topology=null]
> [11:23:33] Ignite node stopped OK [name=Ignite-MySQL-Cluster, uptime=00:00:02:775]
> Exception in thread "main" class org.apache.ignite.IgniteException: Failed to execute SQL statement on internal H2 database: CREATE INDEX PRIMARY ON "CountrylanguageCache".Countrylanguage ("COUNTRYCODE" DESC, "LANGUAGE" DESC, "_KEY" ASC)
> 	at org.apache.ignite.internal.util.IgniteUtils.convertException(IgniteUtils.java:949)
> 	at org.apache.ignite.Ignition.start(Ignition.java:325)
> 	at startup.ServerNodeCodeStartup.main(ServerNodeCodeStartup.java:16)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> 	at java.lang.reflect.Method.invoke(Method.java:498)
> 	at com.intellij.rt.execution.application.AppMain.main(AppMain.java:144)
> Caused by: class org.apache.ignite.IgniteCheckedException: Failed to execute SQL statement on internal H2 database: CREATE INDEX PRIMARY ON "CountrylanguageCache".Countrylanguage ("COUNTRYCODE" DESC, "LANGUAGE" DESC, "_KEY" ASC)
> 	at org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing.executeSql(IgniteH2Indexing.java:875)
> 	at org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing.addInitialUserIndex(IgniteH2Indexing.java:780)
> 	at org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing.createTable(IgniteH2Indexing.java:2009)
> 	at org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing.registerType(IgniteH2Indexing.java:1859)
> 	at org.apache.ignite.internal.processors.query.GridQueryProcessor.registerCache0(GridQueryProcessor.java:1306)
> 	at org.apache.ignite.internal.processors.query.GridQueryProcessor.onCacheStart0(GridQueryProcessor.java:756)
> 	at org.apache.ignite.internal.processors.query.GridQueryProcessor.onCacheStart(GridQueryProcessor.java:817)
> 	at org.apache.ignite.internal.processors.cache.GridCacheProcessor.startCache(GridCacheProcessor.java:1265)
> 	at org.apache.ignite.internal.processors.cache.GridCacheProcessor.onKernalStart(GridCacheProcessor.java:898)
> 	at org.apache.ignite.internal.IgniteKernal.start(IgniteKernal.java:1013)
> 	at org.apache.ignite.internal.IgnitionEx$IgniteNamedInstance.start0(IgnitionEx.java:1895)
> 	at org.apache.ignite.internal.IgnitionEx$IgniteNamedInstance.start(IgnitionEx.java:1647)
> 	at org.apache.ignite.internal.IgnitionEx.start0(IgnitionEx.java:1075)
> 	at org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:595)
> 	at org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:519)
> 	at org.apache.ignite.Ignition.start(Ignition.java:322)
> 	... 6 more
> Caused by: org.h2.jdbc.JdbcSQLException: Syntax error in SQL statement "CREATE INDEX PRIMARY[*] ON ""CountrylanguageCache"".COUNTRYLANGUAGE (""COUNTRYCODE"" DESC, ""LANGUAGE"" DESC, ""_KEY"" ASC) "; expected "identifier"; SQL statement:
> CREATE INDEX PRIMARY ON "CountrylanguageCache".Countrylanguage ("COUNTRYCODE" DESC, "LANGUAGE" DESC, "_KEY" ASC) [42001-195]
> 	at org.h2.message.DbException.getJdbcSQLException(DbException.java:345)
> 	at org.h2.message.DbException.getSyntaxError(DbException.java:205)
> 	at org.h2.command.Parser.readIdentifierWithSchema(Parser.java:3197)
> 	at org.h2.command.Parser.parseCreate(Parser.java:4374)
> 	at org.h2.command.Parser.parsePrepared(Parser.java:365)
> 	at org.h2.command.Parser.parse(Parser.java:320)
> 	at org.h2.command.Parser.parse(Parser.java:292)
> 	at org.h2.command.Parser.prepareCommand(Parser.java:257)
> 	at org.h2.engine.Session.prepareLocal(Session.java:573)
> 	at org.h2.engine.Session.prepareCommand(Session.java:514)
> 	at org.h2.jdbc.JdbcConnection.prepareCommand(JdbcConnection.java:1204)
> 	at org.h2.jdbc.JdbcPreparedStatement.<init>(JdbcPreparedStatement.java:73)
> 	at org.h2.jdbc.JdbcConnection.prepareStatement(JdbcConnection.java:288)
> 	at org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing.prepareStatement(IgniteH2Indexing.java:482)
> 	at org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing.executeSql(IgniteH2Indexing.java:870)
> 	... 21 more
> Process finished with exit code 1
> {code}
> Use the project attached to reproduce the issue.
> As a workaround I used the configuration wizard for AI 1.x version and the bug disappeared.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)