ID | IEP-6667 | ||||||||||
Author | |||||||||||
Sponsor | Pavel Tupitsyn | ||||||||||
Created |
| ||||||||||
Status |
|
Table of Contents |
---|
Thin clients currently require manual binary configuration for settings like compact footer and simple/full name mapper, which is complicated and error-prone.
Extend the protocol to retrieve those settings automatically on start.
BINARY_CONFIGURATION bitmask feature flag lets the client know that binary configuration can be requested.
Name | Code |
---|---|
OP_BINARY_CONFIGURATION_GET | 3004 |
...
Response | |
---|---|
bool | compactFooter |
byte | binaryNameMapperMode (0 = basic full name, 1 = basic simple name, 2 = custom) |
...
As of now, only .NET thin client can use the compactFooter value from the cluster, because the default value is true, and changing from true to false is safe: anyone can read full footers.
Thin client implementations must ensure that current name mapper behavior does not change. For example, if current implementation always uses full name mapper, a new version can't change this to simple name automatically using the cluster settings. This will break existing clusters.
Therefore, nameMapper value from the cluster should be only used to log a warning when a mismatch is detected.
Dev List: IEP-66: Thin Client Automatic Binary Configuration
PoC: https://github.com/apache/ignite/pull/8733
Jira | ||||||||
---|---|---|---|---|---|---|---|---|
|
Jira | ||||||
---|---|---|---|---|---|---|
|