From a484fcd40d02aaca99274886089623d20ee0fb98 Mon Sep 17 00:00:00 2001 From: "Robert (Bobby) Evans" Date: Thu, 31 Jul 2014 12:59:57 -0500 Subject: [PATCH 1/3] Added an extra bit check and moved some computation to be static. --- .../GzipBridgeSerializationDelegate.java | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) diff --git a/storm-core/src/jvm/backtype/storm/serialization/GzipBridgeSerializationDelegate.java b/storm-core/src/jvm/backtype/storm/serialization/GzipBridgeSerializationDelegate.java index fac07a82702..06fd0bda205 100644 --- a/storm-core/src/jvm/backtype/storm/serialization/GzipBridgeSerializationDelegate.java +++ b/storm-core/src/jvm/backtype/storm/serialization/GzipBridgeSerializationDelegate.java @@ -17,10 +17,6 @@ */ package backtype.storm.serialization; -import java.io.ByteArrayInputStream; -import java.io.IOException; -import java.io.InputStream; -import java.io.PushbackInputStream; import java.util.Map; import java.util.zip.GZIPInputStream; @@ -55,14 +51,14 @@ public Object deserialize(byte[] bytes) { } } + // Split up GZIP_MAGIC into readable bytes + private static final byte magicFirst = (byte) GZIPInputStream.GZIP_MAGIC; + private static final byte magicSecond =(byte) (GZIPInputStream.GZIP_MAGIC >> 8); + /** * Looks ahead to see if the GZIP magic constant is heading {@code bytes} */ private boolean isGzipped(byte[] bytes) { - // Split up GZIP_MAGIC into readable bytes - byte magicFirst = (byte) GZIPInputStream.GZIP_MAGIC; - byte magicSecond =(byte) (GZIPInputStream.GZIP_MAGIC >> 8); - - return (bytes[0] == magicFirst) && (bytes[1] == magicSecond); + return (bytes.length > 1) && (bytes[0] == magicFirst) && (bytes[1] == magicSecond); } } From 0587bee8bab9fb6d789472217a083f8f5ea7c572 Mon Sep 17 00:00:00 2001 From: "Robert (Bobby) Evans" Date: Mon, 4 Aug 2014 11:20:16 -0500 Subject: [PATCH 2/3] Addressed review comments. --- .../serialization/GzipBridgeSerializationDelegate.java | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/storm-core/src/jvm/backtype/storm/serialization/GzipBridgeSerializationDelegate.java b/storm-core/src/jvm/backtype/storm/serialization/GzipBridgeSerializationDelegate.java index 06fd0bda205..305cff7ff93 100644 --- a/storm-core/src/jvm/backtype/storm/serialization/GzipBridgeSerializationDelegate.java +++ b/storm-core/src/jvm/backtype/storm/serialization/GzipBridgeSerializationDelegate.java @@ -52,13 +52,14 @@ public Object deserialize(byte[] bytes) { } // Split up GZIP_MAGIC into readable bytes - private static final byte magicFirst = (byte) GZIPInputStream.GZIP_MAGIC; - private static final byte magicSecond =(byte) (GZIPInputStream.GZIP_MAGIC >> 8); + private static final byte GZIP_MAGIC_FIRST_BYTE = (byte) GZIPInputStream.GZIP_MAGIC; + private static final byte GZIP_MAGIC_SECOND_BYTE = (byte) (GZIPInputStream.GZIP_MAGIC >> 8); /** * Looks ahead to see if the GZIP magic constant is heading {@code bytes} */ private boolean isGzipped(byte[] bytes) { - return (bytes.length > 1) && (bytes[0] == magicFirst) && (bytes[1] == magicSecond); + return (bytes.length > 1) && (bytes[0] == GZIP_MAGIC_FIRST_BYTE) + && (bytes[1] == GZIP_MAGIC_SECOND_BYTE); } } From a0ca23ca8862500a59b4f4029f05386e3be2ced8 Mon Sep 17 00:00:00 2001 From: "Robert (Bobby) Evans" Date: Mon, 18 Aug 2014 10:31:27 -0500 Subject: [PATCH 3/3] emoved Author tags --- .../storm/serialization/DefaultSerializationDelegate.java | 3 --- .../storm/serialization/GzipBridgeSerializationDelegate.java | 1 - .../storm/serialization/GzipSerializationDelegate.java | 1 - .../backtype/storm/serialization/SerializationDelegate.java | 1 - 4 files changed, 6 deletions(-) diff --git a/storm-core/src/jvm/backtype/storm/serialization/DefaultSerializationDelegate.java b/storm-core/src/jvm/backtype/storm/serialization/DefaultSerializationDelegate.java index 0ad36a10015..b09bbe82e90 100644 --- a/storm-core/src/jvm/backtype/storm/serialization/DefaultSerializationDelegate.java +++ b/storm-core/src/jvm/backtype/storm/serialization/DefaultSerializationDelegate.java @@ -24,9 +24,6 @@ import java.io.ObjectOutputStream; import java.util.Map; -/** - * @author danehammer - */ public class DefaultSerializationDelegate implements SerializationDelegate { @Override diff --git a/storm-core/src/jvm/backtype/storm/serialization/GzipBridgeSerializationDelegate.java b/storm-core/src/jvm/backtype/storm/serialization/GzipBridgeSerializationDelegate.java index 305cff7ff93..6a7552f1551 100644 --- a/storm-core/src/jvm/backtype/storm/serialization/GzipBridgeSerializationDelegate.java +++ b/storm-core/src/jvm/backtype/storm/serialization/GzipBridgeSerializationDelegate.java @@ -24,7 +24,6 @@ * Always writes gzip out, but tests incoming to see if it's gzipped. If it is, deserializes with gzip. If not, uses * {@link backtype.storm.serialization.DefaultSerializationDelegate} to deserialize. Any logic needing to be enabled * via {@link #prepare(java.util.Map)} is passed through to both delegates. - * @author danehammer */ public class GzipBridgeSerializationDelegate implements SerializationDelegate { diff --git a/storm-core/src/jvm/backtype/storm/serialization/GzipSerializationDelegate.java b/storm-core/src/jvm/backtype/storm/serialization/GzipSerializationDelegate.java index e7ddd0e0ec1..e5a230f9445 100644 --- a/storm-core/src/jvm/backtype/storm/serialization/GzipSerializationDelegate.java +++ b/storm-core/src/jvm/backtype/storm/serialization/GzipSerializationDelegate.java @@ -28,7 +28,6 @@ /** * Note, this assumes it's deserializing a gzip byte stream, and will err if it encounters any other serialization. - * @author danehammer */ public class GzipSerializationDelegate implements SerializationDelegate { diff --git a/storm-core/src/jvm/backtype/storm/serialization/SerializationDelegate.java b/storm-core/src/jvm/backtype/storm/serialization/SerializationDelegate.java index feb2c660a6b..b9059b89673 100644 --- a/storm-core/src/jvm/backtype/storm/serialization/SerializationDelegate.java +++ b/storm-core/src/jvm/backtype/storm/serialization/SerializationDelegate.java @@ -21,7 +21,6 @@ /** * Allow {@link backtype.storm.utils.Utils} to delegate meta serialization. - * @author danehammer */ public interface SerializationDelegate {