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

Pavel Konstantinov updated IGNITE-1338:
---------------------------------------
    Description: 
Node can not be started if query fields name written in lower case and key 
fields with the same fields in upper case in cache type metadata.
Please use attached configuration file for reproducing.
{code}
[14:30:28,526][SEVERE][main][IgniteKernal] Got exception while starting (will 
rollback startup routine).
class org.apache.ignite.IgniteCheckedException: Failed to register query type: 
TypeDescriptor [name=org.apache.ignite.Comalgorithm, fields={APCSBJCODE=class 
java.math.BigDecimal, APCID=class java.math.BigDecimal, AGRSBJCODE=class 
java.math.BigDecimal, AGRID=class java.math.BigDecimal, DAOSBJCODE=class 
java.math.BigDecimal, DAOID=class java.math.BigDecimal, CTPSBJCODE=class 
java.math.BigDecimal, CTPID=class java.math.BigDecimal, apcsbjcode=class 
java.math.BigDecimal, apcid=class java.math.BigDecimal, algcode=class 
java.math.BigDecimal, algisversioned=class java.lang.Short, algtype=class 
java.lang.Integer, algcalcobjecttype=class java.lang.Integer, 
algclasspath=class java.lang.String, algcomment=class java.lang.String, 
algopendate=class java.sql.Date, algclosedate=class java.sql.Date, 
algentstatus=class java.lang.Integer, agrsbjcode=class java.math.BigDecimal, 
agrid=class java.math.BigDecimal, daosbjcode=class java.math.BigDecimal, 
daoid=class java.math.BigDecimal, ctpsbjcode=class java.math.BigDecimal, 
ctpid=class java.math.BigDecimal, algusefields=class java.lang.String}, 
indexes={FK1COMALGORITHM=IndexDescriptor [type=SORTED], 
FK3COMALGORITHM=IndexDescriptor [type=SORTED], FK4COMALGORITHM=IndexDescriptor 
[type=SORTED], SQL050208183448780=IndexDescriptor [type=SORTED]}, 
fullTextIdx=null, keyCls=class java.lang.Object, valCls=class java.lang.Object, 
valTextIdx=false, registered=false]
        at 
org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing.registerType(IgniteH2Indexing.java:1058)
        at 
org.apache.ignite.internal.processors.query.GridQueryProcessor.initializeCache(GridQueryProcessor.java:194)
        at 
org.apache.ignite.internal.processors.query.GridQueryProcessor.onCacheStart(GridQueryProcessor.java:292)
        at 
org.apache.ignite.internal.processors.cache.GridCacheProcessor.startCache(GridCacheProcessor.java:1048)
        at 
org.apache.ignite.internal.processors.cache.GridCacheProcessor.onKernalStart(GridCacheProcessor.java:820)
        at org.apache.ignite.internal.IgniteKernal.start(IgniteKernal.java:963)
        at 
org.apache.ignite.internal.IgnitionEx$IgniteNamedInstance.start0(IgnitionEx.java:1617)
        at 
org.apache.ignite.internal.IgnitionEx$IgniteNamedInstance.start(IgnitionEx.java:1484)
        at org.apache.ignite.internal.IgnitionEx.start0(IgnitionEx.java:965)
        at 
org.apache.ignite.internal.IgnitionEx.startConfigurations(IgnitionEx.java:892)
        at org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:784)
        at org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:705)
        at org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:576)
        at org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:546)
        at org.apache.ignite.Ignition.start(Ignition.java:346)
        at 
org.apache.ignite.startup.cmdline.CommandLineStartup.main(CommandLineStartup.java:302)
Caused by: org.h2.jdbc.JdbcSQLException: Повтор имени столбца "APCSBJCODE"
Duplicate column name "APCSBJCODE"; SQL statement:
CREATE TABLE "cache2".org_apache_ignite_Comalgorithm (_key OTHER NOT NULL,_val 
OTHER,APCSBJCODE DECIMAL,APCID DECIMAL,AGRSBJCODE DECIMAL,AGRID 
DECIMAL,DAOSBJCODE DECIMAL,DAOID DECIMAL,CTPSBJCODE DECIMAL,CTPID 
DECIMAL,apcsbjcode DECIMAL,apcid DECIMAL,algcode DECIMAL,algisversioned 
SMALLINT,algtype INT,algcalcobjecttype INT,algclasspath VARCHAR,algcomment 
VARCHAR,algopendate DATE,algclosedate DATE,algentstatus INT,agrsbjcode 
DECIMAL,agrid DECIMAL,daosbjcode DECIMAL,daoid DECIMAL,ctpsbjcode DECIMAL,ctpid 
DECIMAL,algusefields VARCHAR) engine 
"org.apache.ignite.internal.processors.query.h2.opt.GridH2Table$Engine" 
[42121-175]
        at org.h2.message.DbException.getJdbcSQLException(DbException.java:332)
        at org.h2.message.DbException.get(DbException.java:172)
        at org.h2.message.DbException.get(DbException.java:149)
        at org.h2.table.Table.setColumns(Table.java:394)
        at org.h2.table.TableBase.<init>(TableBase.java:44)
        at 
org.apache.ignite.internal.processors.query.h2.opt.GridH2Table.<init>(GridH2Table.java:90)
        at 
org.apache.ignite.internal.processors.query.h2.opt.GridH2Table$Engine.createTable(GridH2Table.java:618)
        at 
org.apache.ignite.internal.processors.query.h2.opt.GridH2Table$Engine.createTable(GridH2Table.java:602)
        at org.h2.schema.Schema.createTable(Schema.java:584)
        at org.h2.command.ddl.CreateTable.update(CreateTable.java:135)
        at org.h2.command.CommandContainer.update(CommandContainer.java:79)
        at org.h2.command.Command.executeUpdate(Command.java:253)
        at org.h2.jdbc.JdbcStatement.executeInternal(JdbcStatement.java:181)
        at org.h2.jdbc.JdbcStatement.execute(JdbcStatement.java:156)
        at 
org.apache.ignite.internal.processors.query.h2.opt.GridH2Table$Engine.createTable(GridH2Table.java:643)
        at 
org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing.createTable(IgniteH2Indexing.java:1166)
        at 
org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing.registerType(IgniteH2Indexing.java:1051)
        ... 15 more
[14:30:28,542][INFO][main][GridTcpRestProtocol] Command protocol successfully 
stopped: TCP binary
[14:30:28,546][SEVERE][main][IgniteKernal] Failed to pre-stop processor: 
GridProcessorAdapter []
java.lang.NullPointerException
        at 
org.apache.ignite.internal.processors.cache.GridCacheEventManager.isRecordable(GridCacheEventManager.java:348)
        at 
org.apache.ignite.internal.processors.cache.GridCacheProcessor.onKernalStop(GridCacheProcessor.java:1221)
        at 
org.apache.ignite.internal.processors.cache.GridCacheProcessor.onKernalStop(GridCacheProcessor.java:938)
        at org.apache.ignite.internal.IgniteKernal.stop0(IgniteKernal.java:1851)
        at org.apache.ignite.internal.IgniteKernal.stop(IgniteKernal.java:1795)
        at org.apache.ignite.internal.IgniteKernal.start(IgniteKernal.java:986)
        at 
org.apache.ignite.internal.IgnitionEx$IgniteNamedInstance.start0(IgnitionEx.java:1617)
        at 
org.apache.ignite.internal.IgnitionEx$IgniteNamedInstance.start(IgnitionEx.java:1484)
        at org.apache.ignite.internal.IgnitionEx.start0(IgnitionEx.java:965)
        at 
org.apache.ignite.internal.IgnitionEx.startConfigurations(IgnitionEx.java:892)
        at org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:784)
        at org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:705)
        at org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:576)
        at org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:546)
        at org.apache.ignite.Ignition.start(Ignition.java:346)
        at 
org.apache.ignite.startup.cmdline.CommandLineStartup.main(CommandLineStartup.java:302)
[14:30:28,556][INFO][main][GridCacheProcessor] Stopped cache: cache2
[14:30:28,557][INFO][main][GridCacheProcessor] Stopped cache: ignite-sys-cache
[14:30:28,558][INFO][main][GridCacheProcessor] Stopped cache: 
ignite-atomics-sys-cache
[14:30:28,570][INFO][main][IgniteKernal] 
{code}

  was:
I'm played with Ignite control center and found this bug.
I'm attached example xml-file.


> SQL engine doesn't convert query fields name in upper case before using
> -----------------------------------------------------------------------
>
>                 Key: IGNITE-1338
>                 URL: https://issues.apache.org/jira/browse/IGNITE-1338
>             Project: Ignite
>          Issue Type: Bug
>          Components: SQL
>    Affects Versions: ignite-1.4
>            Reporter: Pavel Konstantinov
>            Assignee: Sergi Vladykin
>            Priority: Trivial
>             Fix For: ignite-1.4
>
>         Attachments: test-cluster-2.xml
>
>
> Node can not be started if query fields name written in lower case and key 
> fields with the same fields in upper case in cache type metadata.
> Please use attached configuration file for reproducing.
> {code}
> [14:30:28,526][SEVERE][main][IgniteKernal] Got exception while starting (will 
> rollback startup routine).
> class org.apache.ignite.IgniteCheckedException: Failed to register query 
> type: TypeDescriptor [name=org.apache.ignite.Comalgorithm, 
> fields={APCSBJCODE=class java.math.BigDecimal, APCID=class 
> java.math.BigDecimal, AGRSBJCODE=class java.math.BigDecimal, AGRID=class 
> java.math.BigDecimal, DAOSBJCODE=class java.math.BigDecimal, DAOID=class 
> java.math.BigDecimal, CTPSBJCODE=class java.math.BigDecimal, CTPID=class 
> java.math.BigDecimal, apcsbjcode=class java.math.BigDecimal, apcid=class 
> java.math.BigDecimal, algcode=class java.math.BigDecimal, 
> algisversioned=class java.lang.Short, algtype=class java.lang.Integer, 
> algcalcobjecttype=class java.lang.Integer, algclasspath=class 
> java.lang.String, algcomment=class java.lang.String, algopendate=class 
> java.sql.Date, algclosedate=class java.sql.Date, algentstatus=class 
> java.lang.Integer, agrsbjcode=class java.math.BigDecimal, agrid=class 
> java.math.BigDecimal, daosbjcode=class java.math.BigDecimal, daoid=class 
> java.math.BigDecimal, ctpsbjcode=class java.math.BigDecimal, ctpid=class 
> java.math.BigDecimal, algusefields=class java.lang.String}, 
> indexes={FK1COMALGORITHM=IndexDescriptor [type=SORTED], 
> FK3COMALGORITHM=IndexDescriptor [type=SORTED], 
> FK4COMALGORITHM=IndexDescriptor [type=SORTED], 
> SQL050208183448780=IndexDescriptor [type=SORTED]}, fullTextIdx=null, 
> keyCls=class java.lang.Object, valCls=class java.lang.Object, 
> valTextIdx=false, registered=false]
>       at 
> org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing.registerType(IgniteH2Indexing.java:1058)
>       at 
> org.apache.ignite.internal.processors.query.GridQueryProcessor.initializeCache(GridQueryProcessor.java:194)
>       at 
> org.apache.ignite.internal.processors.query.GridQueryProcessor.onCacheStart(GridQueryProcessor.java:292)
>       at 
> org.apache.ignite.internal.processors.cache.GridCacheProcessor.startCache(GridCacheProcessor.java:1048)
>       at 
> org.apache.ignite.internal.processors.cache.GridCacheProcessor.onKernalStart(GridCacheProcessor.java:820)
>       at org.apache.ignite.internal.IgniteKernal.start(IgniteKernal.java:963)
>       at 
> org.apache.ignite.internal.IgnitionEx$IgniteNamedInstance.start0(IgnitionEx.java:1617)
>       at 
> org.apache.ignite.internal.IgnitionEx$IgniteNamedInstance.start(IgnitionEx.java:1484)
>       at org.apache.ignite.internal.IgnitionEx.start0(IgnitionEx.java:965)
>       at 
> org.apache.ignite.internal.IgnitionEx.startConfigurations(IgnitionEx.java:892)
>       at org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:784)
>       at org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:705)
>       at org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:576)
>       at org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:546)
>       at org.apache.ignite.Ignition.start(Ignition.java:346)
>       at 
> org.apache.ignite.startup.cmdline.CommandLineStartup.main(CommandLineStartup.java:302)
> Caused by: org.h2.jdbc.JdbcSQLException: Повтор имени столбца "APCSBJCODE"
> Duplicate column name "APCSBJCODE"; SQL statement:
> CREATE TABLE "cache2".org_apache_ignite_Comalgorithm (_key OTHER NOT 
> NULL,_val OTHER,APCSBJCODE DECIMAL,APCID DECIMAL,AGRSBJCODE DECIMAL,AGRID 
> DECIMAL,DAOSBJCODE DECIMAL,DAOID DECIMAL,CTPSBJCODE DECIMAL,CTPID 
> DECIMAL,apcsbjcode DECIMAL,apcid DECIMAL,algcode DECIMAL,algisversioned 
> SMALLINT,algtype INT,algcalcobjecttype INT,algclasspath VARCHAR,algcomment 
> VARCHAR,algopendate DATE,algclosedate DATE,algentstatus INT,agrsbjcode 
> DECIMAL,agrid DECIMAL,daosbjcode DECIMAL,daoid DECIMAL,ctpsbjcode 
> DECIMAL,ctpid DECIMAL,algusefields VARCHAR) engine 
> "org.apache.ignite.internal.processors.query.h2.opt.GridH2Table$Engine" 
> [42121-175]
>       at org.h2.message.DbException.getJdbcSQLException(DbException.java:332)
>       at org.h2.message.DbException.get(DbException.java:172)
>       at org.h2.message.DbException.get(DbException.java:149)
>       at org.h2.table.Table.setColumns(Table.java:394)
>       at org.h2.table.TableBase.<init>(TableBase.java:44)
>       at 
> org.apache.ignite.internal.processors.query.h2.opt.GridH2Table.<init>(GridH2Table.java:90)
>       at 
> org.apache.ignite.internal.processors.query.h2.opt.GridH2Table$Engine.createTable(GridH2Table.java:618)
>       at 
> org.apache.ignite.internal.processors.query.h2.opt.GridH2Table$Engine.createTable(GridH2Table.java:602)
>       at org.h2.schema.Schema.createTable(Schema.java:584)
>       at org.h2.command.ddl.CreateTable.update(CreateTable.java:135)
>       at org.h2.command.CommandContainer.update(CommandContainer.java:79)
>       at org.h2.command.Command.executeUpdate(Command.java:253)
>       at org.h2.jdbc.JdbcStatement.executeInternal(JdbcStatement.java:181)
>       at org.h2.jdbc.JdbcStatement.execute(JdbcStatement.java:156)
>       at 
> org.apache.ignite.internal.processors.query.h2.opt.GridH2Table$Engine.createTable(GridH2Table.java:643)
>       at 
> org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing.createTable(IgniteH2Indexing.java:1166)
>       at 
> org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing.registerType(IgniteH2Indexing.java:1051)
>       ... 15 more
> [14:30:28,542][INFO][main][GridTcpRestProtocol] Command protocol successfully 
> stopped: TCP binary
> [14:30:28,546][SEVERE][main][IgniteKernal] Failed to pre-stop processor: 
> GridProcessorAdapter []
> java.lang.NullPointerException
>       at 
> org.apache.ignite.internal.processors.cache.GridCacheEventManager.isRecordable(GridCacheEventManager.java:348)
>       at 
> org.apache.ignite.internal.processors.cache.GridCacheProcessor.onKernalStop(GridCacheProcessor.java:1221)
>       at 
> org.apache.ignite.internal.processors.cache.GridCacheProcessor.onKernalStop(GridCacheProcessor.java:938)
>       at org.apache.ignite.internal.IgniteKernal.stop0(IgniteKernal.java:1851)
>       at org.apache.ignite.internal.IgniteKernal.stop(IgniteKernal.java:1795)
>       at org.apache.ignite.internal.IgniteKernal.start(IgniteKernal.java:986)
>       at 
> org.apache.ignite.internal.IgnitionEx$IgniteNamedInstance.start0(IgnitionEx.java:1617)
>       at 
> org.apache.ignite.internal.IgnitionEx$IgniteNamedInstance.start(IgnitionEx.java:1484)
>       at org.apache.ignite.internal.IgnitionEx.start0(IgnitionEx.java:965)
>       at 
> org.apache.ignite.internal.IgnitionEx.startConfigurations(IgnitionEx.java:892)
>       at org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:784)
>       at org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:705)
>       at org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:576)
>       at org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:546)
>       at org.apache.ignite.Ignition.start(Ignition.java:346)
>       at 
> org.apache.ignite.startup.cmdline.CommandLineStartup.main(CommandLineStartup.java:302)
> [14:30:28,556][INFO][main][GridCacheProcessor] Stopped cache: cache2
> [14:30:28,557][INFO][main][GridCacheProcessor] Stopped cache: ignite-sys-cache
> [14:30:28,558][INFO][main][GridCacheProcessor] Stopped cache: 
> ignite-atomics-sys-cache
> [14:30:28,570][INFO][main][IgniteKernal] 
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to