[
https://issues.apache.org/jira/browse/CASSANDRA-15373?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16971375#comment-16971375
]
Alex Petrov edited comment on CASSANDRA-15373 at 11/11/19 8:15 AM:
-------------------------------------------------------------------
(Big thanks to [~marcuse] for noticing I initially commented on the wrong jira)
I've noticed that the patch uses {{validateIfFixedSize}}. Wanted to let you
know that {{validateIfFixedSize}} is not implemented for {{ByteType}} and
{{ShortType}} even though they're fixed size.
was (Author: ifesdjeen):
I've noticed that the patch uses {{validateIfFixedSize}}. Wanted to let you
know that {{validateIfFixedSize}} is not implemented for {{ByteType}} and
{{ShortType}} even though they're fixed size.
> validate value sizes in LegacyLayout
> ------------------------------------
>
> Key: CASSANDRA-15373
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15373
> Project: Cassandra
> Issue Type: Bug
> Components: Legacy/Local Write-Read Paths
> Reporter: Blake Eggleston
> Assignee: Blake Eggleston
> Priority: Normal
> Fix For: 3.0.20, 3.11.6, 4.0
>
>
> In 2.1, all values are serialized as variable length blobs, with a length
> prefix, followed by the actual value, even with fixed width types like int32.
> The 3.0 storage engine, on the other hand, omits the length prefix for fixed
> width types. Since the length of fixed width types are not validated on the
> 3.0 write path, writing data for a fixed width type from an incorrectly sized
> byte buffer will over or underflow the space allocated for it, corrupting the
> remainder of that partition or indexed region from being read. This is not
> discovered until we attempt to read the corrupted value. This patch updates
> LegacyLayout to throw a marshal exception if it encounters an unexpected
> value size for fixed size columns.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]