You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Alexander Paschenko (JIRA)" <ji...@apache.org> on 2017/09/13 16:50:00 UTC

[jira] [Comment Edited] (IGNITE-6314) Fix ALTER TABLE tests failures

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

Alexander Paschenko edited comment on IGNITE-6314 at 9/13/17 4:49 PM:
----------------------------------------------------------------------

[~vozerov]
Mapper affects {{IgniteCache.get}} behavior by design: when we change mapper, we change class name in {{BinaryClassDescriptor}} (it ends up lacking package part) and thus {{IgniteCache.get}} without {{withKeepBinary}} justly fails (Ignite tries to deserialize object with non-existent class {{City}}).

What can be done: I suggest that upon starting a cache we proactively register real value type with {{BinaryContext#registerUserClassName}} - if we do so, then by the time first user operation occurs, cluster will already have class descriptor with correct (non-trimmed) type name, and id of that descriptor will match that of descriptor for trimmed type.

However, I believe this should be done in scope of a separate ticket, and for the current state of things the proposed fix looks like just lesser of evils.


was (Author: al.psc):
[~vozerov]
Mapper affects {{IgniteCache.get}} behavior by design: when we change mapper, we change class name in {{BinaryClassDescriptor}} (it ends up lacking package part) and thus {{IgniteCache.get}} without {{withKeepBinary}} justly fails (Ignite tries to deserialize object with non-existent class {{City}}).

What can be done: I suggest that upon starting a cache we proactively register real value type with {{BinaryContext#registerUserClassName}} - if we do so, then by the time first user operation occurs, cluster will already have class descriptor with correct (non-trimmed) type name, and id of that descriptor will match that of descriptor for trimmed type. 

> Fix ALTER TABLE tests failures
> ------------------------------
>
>                 Key: IGNITE-6314
>                 URL: https://issues.apache.org/jira/browse/IGNITE-6314
>             Project: Ignite
>          Issue Type: Bug
>          Components: sql
>            Reporter: Sergey Kalashnikov
>            Assignee: Alexander Paschenko
>              Labels: MakeTeamcityGreenAgain, sql
>             Fix For: 2.3
>
>
> The following tests need to be fixed as they are failed when run on TeamCity.
> The tests pass when run locally.
> H2DynamicColumnsClientBasicSelfTest.testAddColumnToNonDynamicCacheWithRealValueType 	
> H2DynamicColumnsClientBasicSelfTest.testComplexOperations 	
> H2DynamicColumnsServerBasicSelfTest.testAddColumnToNonDynamicCacheWithRealValueType 	
> H2DynamicColumnsServerBasicSelfTest.testComplexOperations 	
> H2DynamicColumnsServerCoordinatorBasicSelfTest.testAddColumnToNonDynamicCacheWithRealValueType 	
> H2DynamicColumnsServerCoordinatorBasicSelfTest.testComplexOperations 	
> DynamicColumnsConcurrentAtomicReplicatedSelfTest.testConcurrentRebalance 	
> DynamicColumnsConcurrentTransactionalReplicatedSelfTest.testConcurrentOperationsAndNodeStartStopMultithreaded 	
> DynamicColumnsConcurrentTransactionalReplicatedSelfTest.testCoordinatorChange 



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