You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@geode.apache.org by "Barrett Oglesby (Jira)" <ji...@apache.org> on 2019/09/26 19:29:00 UTC

[jira] [Commented] (GEODE-7246) Export data shouldn't fail if an exception is encountered while exporting a single entry

    [ https://issues.apache.org/jira/browse/GEODE-7246?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16938908#comment-16938908 ] 

Barrett Oglesby commented on GEODE-7246:
----------------------------------------

GEODE-7246 and GEODE-7247 were added to address export issues. They are mutually exclusive. If the entry value is no longer deserialized, then export won't throw the SerializationException, and no entries will be skipped.


> Export data shouldn't fail if an exception is encountered while exporting a single entry
> ----------------------------------------------------------------------------------------
>
>                 Key: GEODE-7246
>                 URL: https://issues.apache.org/jira/browse/GEODE-7246
>             Project: Geode
>          Issue Type: Bug
>          Components: serialization, snapshot
>            Reporter: Barrett Oglesby
>            Priority: Major
>
> Export data shouldn't fail if an exception is encountered while exporting a single entry
> Currently RegionSnapshotService save fails while deserializing the value before writing it to the snapshot file.
> {noformat}
> org.apache.geode.SerializationException: An IOException was thrown while deserializing
> 	at org.apache.geode.internal.cache.EntryEventImpl.deserialize(EntryEventImpl.java:1915)
> 	at org.apache.geode.internal.cache.EntryEventImpl.deserialize(EntryEventImpl.java:1904)
> 	at org.apache.geode.internal.cache.VMCachedDeserializable.getDeserializedValue(VMCachedDeserializable.java:134)
> 	at org.apache.geode.internal.cache.EntrySnapshot.getRawValue(EntrySnapshot.java:113)
> 	at org.apache.geode.internal.cache.EntrySnapshot.getRawValue(EntrySnapshot.java:101)
> 	at org.apache.geode.internal.cache.EntrySnapshot.getValue(EntrySnapshot.java:130)
> 	at org.apache.geode.internal.cache.snapshot.SnapshotPacket$SnapshotRecord.<init>(SnapshotPacket.java:79)
> 	at org.apache.geode.internal.cache.snapshot.LocalExporter.export(LocalExporter.java:46)
> 	at org.apache.geode.internal.cache.snapshot.RegionSnapshotServiceImpl.exportOnMember(RegionSnapshotServiceImpl.java:322)
> 	at org.apache.geode.internal.cache.snapshot.RegionSnapshotServiceImpl.save(RegionSnapshotServiceImpl.java:150)
> 	at org.apache.geode.internal.cache.snapshot.RegionSnapshotServiceImpl.save(RegionSnapshotServiceImpl.java:133)
> Caused by: java.io.IOException: Unknown header byte: -3
> 	at org.apache.geode.internal.InternalDataSerializer.basicReadObject(InternalDataSerializer.java:2876)
> 	at org.apache.geode.DataSerializer.readObject(DataSerializer.java:2961)
> 	at org.apache.geode.internal.util.BlobHelper.deserializeBlob(BlobHelper.java:99)
> 	at org.apache.geode.internal.cache.EntryEventImpl.deserialize(EntryEventImpl.java:1911)
> {noformat}
> This causes the export to abort.
> Instead, it should log a warning in this case and skip the entry.



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