[
https://issues.apache.org/jira/browse/UIMA-4743?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Marshall Schor updated UIMA-4743:
---------------------------------
Description:
(Found by code reading, needs test case) The code for handling long/dbl value
modified cells while doing delta serialization appears to have a some
copy/paste kinds of errors. The first (line 583) gets the modified addrs, but
gets the "short" rather than "long" addrs. The second (line 587) writes the
address of the modified value using a writeShort, which silently fails if the
value is > 32767.
This same kind of error (writing the address as a short) also appears in the
handling of modifications of shorts (line 570).
Fixing this will result in writing more bytes to the serialization stream, so
the streams won't be "compatible". Therefore, do some kind of incrementing of
versions and serialVersionId values to signal to readers this format change.
Updating this for client/server pairs will require updates at both ends.
was:
(Found by code reading, needs test case) The code for handling long/dbl value
modified cells while doing delta serialization appears to have a some
copy/paste kinds of errors. The first (line 583) gets the modified addrs, but
gets the "short" rather than "long" addrs. The second (line 587) writes the
address of the modified value using a writeShort, which silently fails if the
value is > 32767.
This same kind of error (writing the address as a short) also appears in the
handling of modifications of shorts (line 570).
> errors in plain binary cas delta serialization of long values
> -------------------------------------------------------------
>
> Key: UIMA-4743
> URL: https://issues.apache.org/jira/browse/UIMA-4743
> Project: UIMA
> Issue Type: Bug
> Components: Core Java Framework
> Affects Versions: 2.8.1SDK
> Reporter: Marshall Schor
> Fix For: 2.8.2SDK
>
>
> (Found by code reading, needs test case) The code for handling long/dbl value
> modified cells while doing delta serialization appears to have a some
> copy/paste kinds of errors. The first (line 583) gets the modified addrs, but
> gets the "short" rather than "long" addrs. The second (line 587) writes the
> address of the modified value using a writeShort, which silently fails if the
> value is > 32767.
> This same kind of error (writing the address as a short) also appears in the
> handling of modifications of shorts (line 570).
> Fixing this will result in writing more bytes to the serialization stream, so
> the streams won't be "compatible". Therefore, do some kind of incrementing
> of versions and serialVersionId values to signal to readers this format
> change. Updating this for client/server pairs will require updates at both
> ends.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)