You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Evgeny Stanilovsky (Jira)" <ji...@apache.org> on 2024/04/02 04:56:00 UTC

[jira] [Created] (IGNITE-21900) meta --remove does not delete the .classname0 file from db/marshaller causing errors on subsequent type re-registration

Evgeny Stanilovsky created IGNITE-21900:
-------------------------------------------

             Summary: meta --remove does not delete the <typeId>.classname0 file from db/marshaller causing errors on subsequent type re-registration
                 Key: IGNITE-21900
                 URL: https://issues.apache.org/jira/browse/IGNITE-21900
             Project: Ignite
          Issue Type: Bug
          Components: general
    Affects Versions: 2.16
            Reporter: Evgeny Stanilovsky
            Assignee: Evgeny Stanilovsky


meta --remove command deletes the type from db/<binary-meta>/<node-id> but not from db/marshaller -
This causes errors if the server tries to re-create the type w/the same name but different case.

say the user created the type model.Account (upper case A)
CREATE TABLE my_table(..) WITH key_type=model.Accountkey,value_type=model.Account
then dropped the table, DROP TABLE my_table.
and ran a --meta remove --typeName mode.Account

If the users change the case of the type say from model.Account to model.account – one letter to lowercase
and then does a subsequent:
 CREATE TABLE my_table(..) WITH key_type=model.accountkey,value_type=model.account

 then does an INSERT, the server will come back with “Failed to register class”


{noformat}
Caused by: org.apache.ignite.internal.DuplicateTypeIdException: Duplicate ID [platformId=0, typeId=1853064544, oldCls=com.ual.cfa.fa.model.CFAFaPairNonFltDutyHistKey, newCls=com.ual.cfa.fa.model.CFAFaPairNonfltDutyHistKey]
	at org.apache.ignite.internal.MarshallerContextImpl.registerClassName(MarshallerContextImpl.java:223) ~[ignite-core.jar]
	at org.apache.ignite.internal.binary.BinaryContext.registerUserClassName(BinaryContext.java:1185) ~[ignite-core-.jar]
{noformat}




--
This message was sent by Atlassian Jira
(v8.20.10#820010)