You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Ivan Bessonov (Jira)" <ji...@apache.org> on 2020/02/28 12:02:00 UTC

[jira] [Created] (IGNITE-12726) Cache names can't be used as part of DistributedMetaStorage keys

Ivan Bessonov created IGNITE-12726:
--------------------------------------

             Summary: Cache names can't be used as part of DistributedMetaStorage keys
                 Key: IGNITE-12726
                 URL: https://issues.apache.org/jira/browse/IGNITE-12726
             Project: Ignite
          Issue Type: Bug
            Reporter: Ivan Bessonov
            Assignee: Ivan Bessonov


Issue was discovered during the implementation of IGNITE-12721. Here's a shot version of the description:
 * local MetaStorage can't handle keys that have more than 64 bytes in their "byte[]" representation. Since DistributedMetaStorage uses it and adds some specific prefixes on top, we have a strict limit on the key length.

Just to be clear - it just won't work, IGNITE-12721 only adds a valid exception and meaningful error message to the API.

 

Recently IGNITE-11987 from [IEP-35] has been merged to master and 2.8 release branch, and it does exactly whats written in the title - adds cache name as a part of the key. So, if you use long cache name in, for example, test called "org.apache.ignite.internal.metric.MetricsConfigurationTest#testConfigRemovedOnCacheRemove", you'll get AssertionErrors in log. By "long" I mean about 50 symbols. This should not happen.

 

I see two options here:
 * leave everything as it is and change keys format;
 * modify MetaStorage so that it can handle longer keys. I prefer this one.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)