[jira] [Commented] (IGNITE-912) GridQueryProcessor adds type description by value name

2017-01-19 Thread Denis Magda (JIRA)

[ 
https://issues.apache.org/jira/browse/IGNITE-912?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15830246#comment-15830246
 ] 

Denis Magda commented on IGNITE-912:


[~skalashnikov], sure go ahead and close if the issue is no longer exists.

> GridQueryProcessor adds type description by value name
> --
>
> Key: IGNITE-912
> URL: https://issues.apache.org/jira/browse/IGNITE-912
> Project: Ignite
>  Issue Type: Bug
>  Components: SQL
>Affects Versions: sprint-4
>Reporter: Denis Magda
> Fix For: 1.9
>
>
> Caught this issue while was working on IGNITE-471.
> Affected tests (GridPortableCacheTestSuite):
> - CacheJdbcPojoStoreMultitreadedSelfTest.testMultithreadedExplicitTx
> - CacheJdbcPojoStoreMultitreadedSelfTest.testMultithreadedPut
> - CacheJdbcPojoStoreMultitreadedSelfTest.testMultithreadedPutAll  
> In those tests type cache type configurations are taken from a xml 
> configuration. In the xml there are two different cache type configuration 
> with the same value type Person. This is absolutely ok.
> When portables are used GridQueryProcessor stores cache type configurations 
> in its internal table. As a key the processor uses "value_type_name" + 
> "space_name". This is an issue cause there two cache type configurations with 
> value type Person.
> org.apache.ignite.IgniteCheckedException: Type with name 'Person' already 
> indexed in cache 'null'.
> at 
> org.apache.ignite.internal.processors.query.GridQueryProcessor.addTypeByName(GridQueryProcessor.java:186)
> at 
> org.apache.ignite.internal.processors.query.GridQueryProcessor.initializeCache(GridQueryProcessor.java:149)
> at 
> org.apache.ignite.internal.processors.query.GridQueryProcessor.onCacheStart(GridQueryProcessor.java:242)
> at 
> org.apache.ignite.internal.processors.cache.GridCacheProcessor.startCache(GridCacheProcessor.java:868)
> at 
> org.apache.ignite.internal.processors.cache.GridCacheProcessor.onKernalStart(GridCacheProcessor.java:727)
> at org.apache.ignite.internal.IgniteKernal.start(IgniteKernal.java:826)
> at 
> org.apache.ignite.internal.IgnitionEx$IgniteNamedInstance.start0(IgnitionEx.java:1599)
> at 
> org.apache.ignite.internal.IgnitionEx$IgniteNamedInstance.start(IgnitionEx.java:1467)
> at org.apache.ignite.internal.IgnitionEx.start0(IgnitionEx.java:993)
> at org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:481)
> at 
> org.apache.ignite.testframework.junits.GridAbstractTest.startGrid(GridAbstractTest.java:663)
> at 
> org.apache.ignite.testframework.junits.GridAbstractTest.startGrid(GridAbstractTest.java:648)
> at 
> org.apache.ignite.testframework.junits.GridAbstractTest.startGrid(GridAbstractTest.java:510)
> at 
> org.apache.ignite.cache.store.jdbc.CacheJdbcStoreAbstractMultithreadedSelfTest.beforeTest(CacheJdbcStoreAbstractMultithreadedSelfTest.java:98)
> at 
> org.apache.ignite.testframework.junits.GridAbstractTest.setUp(GridAbstractTest.java:489)
> at 
> org.apache.ignite.testframework.junits.common.GridCommonAbstractTest.setUp(GridCommonAbstractTest.java:321)
> at junit.framework.TestCase.runBare(TestCase.java:139)
> at junit.framework.TestResult$1.protect(TestResult.java:122)
> at junit.framework.TestResult.runProtected(TestResult.java:142)
> at junit.framework.TestResult.run(TestResult.java:125)
> at junit.framework.TestCase.run(TestCase.java:129)
> at junit.framework.TestSuite.runTest(TestSuite.java:255)
> at junit.framework.TestSuite.run(TestSuite.java:250)
> at junit.framework.TestSuite.runTest(TestSuite.java:255)
> at junit.framework.TestSuite.run(TestSuite.java:250)
> at junit.framework.TestSuite.runTest(TestSuite.java:255)
> at junit.framework.TestSuite.run(TestSuite.java:250)
> at 
> org.junit.internal.runners.JUnit38ClassRunner.run(JUnit38ClassRunner.java:84)
> at 
> org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:283)
> at 
> org.apache.maven.surefire.junit4.JUnit4Provider.executeWithRerun(JUnit4Provider.java:173)
> at 
> org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:153)
> at 
> org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:128)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
> at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:606)
> at 
> org.apache.maven.surefire.util.ReflectionUtils.invokeMethodWithArray2(ReflectionUtils.java:208)
> at 
> org.apache.maven.surefire.booter.ProviderFactory$ProviderProxy.invoke(ProviderFactory.java:155)
>  

[jira] [Commented] (IGNITE-912) GridQueryProcessor adds type description by value name

2017-01-19 Thread Sergey Kalashnikov (JIRA)

[ 
https://issues.apache.org/jira/browse/IGNITE-912?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15829573#comment-15829573
 ] 

Sergey Kalashnikov commented on IGNITE-912:
---

[~dmagda], I think this ticket can be closed now since tests are pass with 
current code. Do you agree?

> GridQueryProcessor adds type description by value name
> --
>
> Key: IGNITE-912
> URL: https://issues.apache.org/jira/browse/IGNITE-912
> Project: Ignite
>  Issue Type: Bug
>  Components: SQL
>Affects Versions: sprint-4
>Reporter: Denis Magda
> Fix For: 1.9
>
>
> Caught this issue while was working on IGNITE-471.
> Affected tests (GridPortableCacheTestSuite):
> - CacheJdbcPojoStoreMultitreadedSelfTest.testMultithreadedExplicitTx
> - CacheJdbcPojoStoreMultitreadedSelfTest.testMultithreadedPut
> - CacheJdbcPojoStoreMultitreadedSelfTest.testMultithreadedPutAll  
> In those tests type cache type configurations are taken from a xml 
> configuration. In the xml there are two different cache type configuration 
> with the same value type Person. This is absolutely ok.
> When portables are used GridQueryProcessor stores cache type configurations 
> in its internal table. As a key the processor uses "value_type_name" + 
> "space_name". This is an issue cause there two cache type configurations with 
> value type Person.
> org.apache.ignite.IgniteCheckedException: Type with name 'Person' already 
> indexed in cache 'null'.
> at 
> org.apache.ignite.internal.processors.query.GridQueryProcessor.addTypeByName(GridQueryProcessor.java:186)
> at 
> org.apache.ignite.internal.processors.query.GridQueryProcessor.initializeCache(GridQueryProcessor.java:149)
> at 
> org.apache.ignite.internal.processors.query.GridQueryProcessor.onCacheStart(GridQueryProcessor.java:242)
> at 
> org.apache.ignite.internal.processors.cache.GridCacheProcessor.startCache(GridCacheProcessor.java:868)
> at 
> org.apache.ignite.internal.processors.cache.GridCacheProcessor.onKernalStart(GridCacheProcessor.java:727)
> at org.apache.ignite.internal.IgniteKernal.start(IgniteKernal.java:826)
> at 
> org.apache.ignite.internal.IgnitionEx$IgniteNamedInstance.start0(IgnitionEx.java:1599)
> at 
> org.apache.ignite.internal.IgnitionEx$IgniteNamedInstance.start(IgnitionEx.java:1467)
> at org.apache.ignite.internal.IgnitionEx.start0(IgnitionEx.java:993)
> at org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:481)
> at 
> org.apache.ignite.testframework.junits.GridAbstractTest.startGrid(GridAbstractTest.java:663)
> at 
> org.apache.ignite.testframework.junits.GridAbstractTest.startGrid(GridAbstractTest.java:648)
> at 
> org.apache.ignite.testframework.junits.GridAbstractTest.startGrid(GridAbstractTest.java:510)
> at 
> org.apache.ignite.cache.store.jdbc.CacheJdbcStoreAbstractMultithreadedSelfTest.beforeTest(CacheJdbcStoreAbstractMultithreadedSelfTest.java:98)
> at 
> org.apache.ignite.testframework.junits.GridAbstractTest.setUp(GridAbstractTest.java:489)
> at 
> org.apache.ignite.testframework.junits.common.GridCommonAbstractTest.setUp(GridCommonAbstractTest.java:321)
> at junit.framework.TestCase.runBare(TestCase.java:139)
> at junit.framework.TestResult$1.protect(TestResult.java:122)
> at junit.framework.TestResult.runProtected(TestResult.java:142)
> at junit.framework.TestResult.run(TestResult.java:125)
> at junit.framework.TestCase.run(TestCase.java:129)
> at junit.framework.TestSuite.runTest(TestSuite.java:255)
> at junit.framework.TestSuite.run(TestSuite.java:250)
> at junit.framework.TestSuite.runTest(TestSuite.java:255)
> at junit.framework.TestSuite.run(TestSuite.java:250)
> at junit.framework.TestSuite.runTest(TestSuite.java:255)
> at junit.framework.TestSuite.run(TestSuite.java:250)
> at 
> org.junit.internal.runners.JUnit38ClassRunner.run(JUnit38ClassRunner.java:84)
> at 
> org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:283)
> at 
> org.apache.maven.surefire.junit4.JUnit4Provider.executeWithRerun(JUnit4Provider.java:173)
> at 
> org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:153)
> at 
> org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:128)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
> at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:606)
> at 
> org.apache.maven.surefire.util.ReflectionUtils.invokeMethodWithArray2(ReflectionUtils.java:208)
> at 
> org.apache.maven.surefire.booter.ProviderFactory$Provide