[ https://issues.apache.org/jira/browse/IGNITE-2703?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15391414#comment-15391414 ]
Vladimir Ozerov commented on IGNITE-2703: ----------------------------------------- Several more points: 3) {{PlatformProcessor.java}} - we should use word "type" instead of "class", because target platform might have no "class" notion at all. 4) {{PlatformAbstractBootstrap.start}} - call to {{U.nullifyWorkDirectory()}} looks like a hack to me. Moreover, comments to this method clearly states that it is only for testing purposes. We should understand why we have to do that and fix the root cause (i.e. get rid of some static stuff), instead of make code even worse with static variable reset hacks. > .NET: Dynamically registered classes must use binary serialization if > possible. > ------------------------------------------------------------------------------- > > Key: IGNITE-2703 > URL: https://issues.apache.org/jira/browse/IGNITE-2703 > Project: Ignite > Issue Type: Task > Components: platforms > Affects Versions: 1.5.0.final > Reporter: Vladimir Ozerov > Assignee: Pavel Tupitsyn > Priority: Critical > Fix For: 1.7 > > > At present we support dynamic class registration in .NET, but they are > written using deafult .NET mechanism. This is counterintuitive for users and > not consistent with Java, where such classes are written in binary form. > Proposed implementation plan: > 1) For each dynamically registered class we must understand whether it could > be serialized through binary or not. If not - print a warning and fallback to > .NET. > 2) Before writing a class we must ensure that it's [typeId -> name] pair is > known to the cluster. If not - write full class name instead of type ID. Java > already do that. > 3) Last, to support backward compatibility we must be able to fallback to > current mode with help of some boolean flag. -- This message was sent by Atlassian JIRA (v6.3.4#6332)