Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

IGNITE-6499 : Compact NULL fields binary representation #7906

Open
wants to merge 17 commits into
base: master
Choose a base branch
from

Conversation

hostettler
Copy link

To compress binary objects, this patch does the following:
In the case of standard objects (Not implementing Binarylizable or Externalizble) (though the nested objects can):

  • It removes the 0x65 that encode null within the object
  • It removes the offset from the foot to null objects.
  • It adds a null mask at the end of the footer in which each bit is set for non null objects.

@alamar
Copy link
Contributor

alamar commented Jun 26, 2020

What happens when C++ thin client, C# thin client, Python thin client, etc, encounter such BinaryObject's? Do you have tests? What is your plan here? Will they be unaffected?

@hostettler
Copy link
Author

I must admit that I do not know. I would need the help of someone more knowledgeable about these clients

@alamar
Copy link
Contributor

alamar commented Jul 10, 2020

I think this means the behavior should be off by default, to be enabled explicitly.

@alamar
Copy link
Contributor

alamar commented Jul 10, 2020

Oh, I can see that you already have the configuration setting implemented. Sorry.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants