http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/d838a9db/modules/core/src/main/java/org/apache/ignite/internal/processors/dataload/GridDataLoadResponse.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/dataload/GridDataLoadResponse.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/dataload/GridDataLoadResponse.java index 835e3bd..c926382 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/dataload/GridDataLoadResponse.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/dataload/GridDataLoadResponse.java @@ -33,7 +33,7 @@ public class GridDataLoadResponse implements Message { private long reqId; /** */ - private byte[] errBytes; + private ByteBuffer errBytes; /** */ private boolean forceLocDep; @@ -43,7 +43,7 @@ public class GridDataLoadResponse implements Message { * @param errBytes Error bytes. * @param forceLocDep Force local deployment. */ - public GridDataLoadResponse(long reqId, byte[] errBytes, boolean forceLocDep) { + public GridDataLoadResponse(long reqId, ByteBuffer errBytes, boolean forceLocDep) { this.reqId = reqId; this.errBytes = errBytes; this.forceLocDep = forceLocDep; @@ -66,7 +66,7 @@ public class GridDataLoadResponse implements Message { /** * @return Error bytes. */ - public byte[] errorBytes() { + public ByteBuffer errorBytes() { return errBytes; } @@ -95,8 +95,8 @@ public class GridDataLoadResponse implements Message { switch (writer.state()) { case 0: - if (!writer.writeByteArray("errBytes", errBytes)) - return false; +// if (!writer.writeByteArray("errBytes", errBytes)) +// return false; writer.incrementState(); @@ -126,7 +126,7 @@ public class GridDataLoadResponse implements Message { switch (reader.state()) { case 0: - errBytes = reader.readByteArray("errBytes"); +// errBytes = reader.readByteArray("errBytes"); if (!reader.isLastRead()) return false;
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/d838a9db/modules/core/src/main/java/org/apache/ignite/internal/processors/dataload/GridDataLoaderProcessor.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/dataload/GridDataLoaderProcessor.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/dataload/GridDataLoaderProcessor.java index 38d6765..642685d 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/dataload/GridDataLoaderProcessor.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/dataload/GridDataLoaderProcessor.java @@ -30,6 +30,7 @@ import org.apache.ignite.marshaller.*; import org.apache.ignite.thread.*; import org.jetbrains.annotations.*; +import java.nio.*; import java.util.*; import java.util.concurrent.*; @@ -274,7 +275,7 @@ public class GridDataLoaderProcessor<K, V> extends GridProcessorAdapter { */ private void sendResponse(UUID nodeId, Object resTopic, long reqId, @Nullable Throwable err, boolean forceLocDep) { - byte[] errBytes; + ByteBuffer errBytes; try { errBytes = err != null ? marsh.marshal(err) : null; http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/d838a9db/modules/core/src/main/java/org/apache/ignite/internal/processors/dataload/IgniteDataLoaderImpl.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/dataload/IgniteDataLoaderImpl.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/dataload/IgniteDataLoaderImpl.java index 12d3e35..c233f27 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/dataload/IgniteDataLoaderImpl.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/dataload/IgniteDataLoaderImpl.java @@ -41,6 +41,7 @@ import org.apache.ignite.lang.*; import org.jdk8.backport.*; import org.jetbrains.annotations.*; +import java.nio.*; import java.util.*; import java.util.Map.*; import java.util.concurrent.*; @@ -62,7 +63,7 @@ public class IgniteDataLoaderImpl<K, V> implements IgniteDataLoader<K, V>, Delay private Updater<K, V> updater = ISOLATED_UPDATER; /** */ - private byte[] updaterBytes; + private ByteBuffer updaterBytes; /** Max remap count before issuing an error. */ private static final int DFLT_MAX_REMAP_CNT = 32; @@ -107,7 +108,7 @@ public class IgniteDataLoaderImpl<K, V> implements IgniteDataLoader<K, V>, Delay private final Object topic; /** */ - private byte[] topicBytes; + private ByteBuffer topicBytes; /** {@code True} if data loader has been cancelled. */ private volatile boolean cancelled; @@ -1208,7 +1209,7 @@ public class IgniteDataLoaderImpl<K, V> implements IgniteDataLoader<K, V>, Delay Throwable err = null; - byte[] errBytes = res.errorBytes(); + ByteBuffer errBytes = res.errorBytes(); if (errBytes != null) { try { http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/d838a9db/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/IgfsAckMessage.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/IgfsAckMessage.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/IgfsAckMessage.java index f52c6de..ffe00e8 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/IgfsAckMessage.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/IgfsAckMessage.java @@ -45,7 +45,7 @@ public class IgfsAckMessage extends IgfsCommunicationMessage { private IgniteCheckedException err; /** */ - private byte[] errBytes; + private ByteBuffer errBytes; /** * Empty constructor required by {@link Externalizable}. @@ -118,8 +118,8 @@ public class IgfsAckMessage extends IgfsCommunicationMessage { switch (writer.state()) { case 0: - if (!writer.writeByteArray("errBytes", errBytes)) - return false; +// if (!writer.writeByteArray("errBytes", errBytes)) +// return false; writer.incrementState(); @@ -152,7 +152,7 @@ public class IgfsAckMessage extends IgfsCommunicationMessage { switch (reader.state()) { case 0: - errBytes = reader.readByteArray("errBytes"); +// errBytes = reader.readByteArray("errBytes"); if (!reader.isLastRead()) return false; http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/d838a9db/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/IgfsDeleteMessage.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/IgfsDeleteMessage.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/IgfsDeleteMessage.java index 2196525..a000509 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/IgfsDeleteMessage.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/IgfsDeleteMessage.java @@ -43,7 +43,7 @@ public class IgfsDeleteMessage extends IgfsCommunicationMessage { private IgniteCheckedException err; /** */ - private byte[] errBytes; + private ByteBuffer errBytes; /** * {@link Externalizable} support. @@ -122,8 +122,8 @@ public class IgfsDeleteMessage extends IgfsCommunicationMessage { switch (writer.state()) { case 0: - if (!writer.writeByteArray("errBytes", errBytes)) - return false; +// if (!writer.writeByteArray("errBytes", errBytes)) +// return false; writer.incrementState(); @@ -150,7 +150,7 @@ public class IgfsDeleteMessage extends IgfsCommunicationMessage { switch (reader.state()) { case 0: - errBytes = reader.readByteArray("errBytes"); +// errBytes = reader.readByteArray("errBytes"); if (!reader.isLastRead()) return false; http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/d838a9db/modules/core/src/main/java/org/apache/ignite/internal/processors/job/GridJobWorker.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/job/GridJobWorker.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/job/GridJobWorker.java index fdfc5c8..8cf96e8 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/job/GridJobWorker.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/job/GridJobWorker.java @@ -33,6 +33,7 @@ import org.apache.ignite.lang.*; import org.apache.ignite.marshaller.*; import org.jetbrains.annotations.*; +import java.nio.*; import java.util.*; import java.util.concurrent.*; import java.util.concurrent.atomic.*; @@ -74,7 +75,7 @@ public class GridJobWorker extends GridWorker implements GridTimeoutObject { private final Object taskTopic; /** */ - private byte[] jobBytes; + private ByteBuffer jobBytes; /** Task originating node. */ private final ClusterNode taskNode; @@ -146,7 +147,7 @@ public class GridJobWorker extends GridWorker implements GridTimeoutObject { long createTime, GridJobSessionImpl ses, GridJobContextImpl jobCtx, - byte[] jobBytes, + ByteBuffer jobBytes, ComputeJob job, ClusterNode taskNode, boolean internal, http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/d838a9db/modules/core/src/main/java/org/apache/ignite/internal/processors/offheap/GridOffHeapProcessor.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/offheap/GridOffHeapProcessor.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/offheap/GridOffHeapProcessor.java index 7118269..4d1d84d 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/offheap/GridOffHeapProcessor.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/offheap/GridOffHeapProcessor.java @@ -30,6 +30,7 @@ import org.apache.ignite.marshaller.*; import org.jdk8.backport.*; import org.jetbrains.annotations.*; +import java.nio.*; import java.util.*; /** @@ -104,7 +105,7 @@ public class GridOffHeapProcessor extends GridProcessorAdapter { private byte[] keyBytes(Object key, @Nullable byte[] keyBytes) throws IgniteCheckedException { assert key != null; - return keyBytes != null ? keyBytes : marsh.marshal(key); + return keyBytes != null ? keyBytes : U.toArray(marsh.marshal(key)); } /** @@ -208,7 +209,8 @@ public class GridOffHeapProcessor extends GridProcessorAdapter { if (valBytes == null) return null; - return marsh.unmarshal(valBytes, ldr == null ? U.gridClassLoader() : ldr); + // TODO: IGNITE-471 - Migrate to buffers. + return marsh.unmarshal(ByteBuffer.wrap(valBytes), ldr == null ? U.gridClassLoader() : ldr); } /** http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/d838a9db/modules/core/src/main/java/org/apache/ignite/internal/processors/query/GridQueryProcessor.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/query/GridQueryProcessor.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/query/GridQueryProcessor.java index 786cde7..e33e2a5 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/query/GridQueryProcessor.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/query/GridQueryProcessor.java @@ -255,16 +255,14 @@ public class GridQueryProcessor extends GridProcessorAdapter { * * @param space Space. * @param key Key. - * @param keyBytes Byte array with key data. * @param val Value. - * @param valBytes Byte array with value data. * @param ver Cache entry version. * @param expirationTime Expiration time or 0 if never expires. * @throws IgniteCheckedException In case of error. */ @SuppressWarnings("unchecked") - public <K, V> void store(final String space, final K key, @Nullable byte[] keyBytes, final V val, - @Nullable byte[] valBytes, byte[] ver, long expirationTime) throws IgniteCheckedException { + public <K, V> void store(final String space, final K key, final V val, byte[] ver, long expirationTime) + throws IgniteCheckedException { assert key != null; assert val != null; http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/d838a9db/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/task/GridTaskCommandHandler.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/task/GridTaskCommandHandler.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/task/GridTaskCommandHandler.java index e42ae58..e24c2be 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/task/GridTaskCommandHandler.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/task/GridTaskCommandHandler.java @@ -38,6 +38,7 @@ import org.apache.ignite.resources.*; import org.jetbrains.annotations.*; import java.io.*; +import java.nio.*; import java.util.*; import java.util.concurrent.*; import java.util.concurrent.atomic.*; @@ -460,7 +461,7 @@ public class GridTaskCommandHandler extends GridRestCommandHandlerAdapter { // 2. Send message. try { - byte[] topicBytes = ctx.config().getMarshaller().marshal(topic); + ByteBuffer topicBytes = ctx.config().getMarshaller().marshal(topic); ctx.io().send(taskNode, TOPIC_REST, new GridTaskResultRequest(taskId, topic, topicBytes), SYSTEM_POOL); } http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/d838a9db/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/task/GridTaskResultRequest.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/task/GridTaskResultRequest.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/task/GridTaskResultRequest.java index 3802222..1418b1a 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/task/GridTaskResultRequest.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/task/GridTaskResultRequest.java @@ -39,7 +39,7 @@ public class GridTaskResultRequest implements Message { private Object topic; /** Serialized topic. */ - private byte[] topicBytes; + private ByteBuffer topicBytes; /** * Public no-arg constructor for {@link Externalizable} support. @@ -53,7 +53,7 @@ public class GridTaskResultRequest implements Message { * @param topic Topic. * @param topicBytes Serialized topic. */ - GridTaskResultRequest(IgniteUuid taskId, Object topic, byte[] topicBytes) { + GridTaskResultRequest(IgniteUuid taskId, Object topic, ByteBuffer topicBytes) { this.taskId = taskId; this.topic = topic; this.topicBytes = topicBytes; @@ -85,7 +85,7 @@ public class GridTaskResultRequest implements Message { /** * @return Serialized topic. */ - public byte[] topicBytes() { + public ByteBuffer topicBytes() { return topicBytes; } @@ -117,8 +117,8 @@ public class GridTaskResultRequest implements Message { writer.incrementState(); case 1: - if (!writer.writeByteArray("topicBytes", topicBytes)) - return false; +// if (!writer.writeByteArray("topicBytes", topicBytes)) +// return false; writer.incrementState(); @@ -144,7 +144,7 @@ public class GridTaskResultRequest implements Message { reader.incrementState(); case 1: - topicBytes = reader.readByteArray("topicBytes"); +// topicBytes = reader.readByteArray("topicBytes"); if (!reader.isLastRead()) return false; http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/d838a9db/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/task/GridTaskResultResponse.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/task/GridTaskResultResponse.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/task/GridTaskResultResponse.java index 66421a1..7c8fdc0 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/task/GridTaskResultResponse.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/task/GridTaskResultResponse.java @@ -35,7 +35,7 @@ public class GridTaskResultResponse implements Message { private Object res; /** Serialized result. */ - private byte[] resBytes; + private ByteBuffer resBytes; /** Finished flag. */ private boolean finished; @@ -63,14 +63,14 @@ public class GridTaskResultResponse implements Message { /** * @param resBytes Serialized result. */ - public void resultBytes(byte[] resBytes) { + public void resultBytes(ByteBuffer resBytes) { this.resBytes = resBytes; } /** * @return Serialized result. */ - public byte[] resultBytes() { + public ByteBuffer resultBytes() { return resBytes; } @@ -147,8 +147,8 @@ public class GridTaskResultResponse implements Message { writer.incrementState(); case 3: - if (!writer.writeByteArray("resBytes", resBytes)) - return false; +// if (!writer.writeByteArray("resBytes", resBytes)) +// return false; writer.incrementState(); @@ -190,7 +190,7 @@ public class GridTaskResultResponse implements Message { reader.incrementState(); case 3: - resBytes = reader.readByteArray("resBytes"); +// resBytes = reader.readByteArray("resBytes"); if (!reader.isLastRead()) return false; http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/d838a9db/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/protocols/tcp/GridTcpRestParser.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/protocols/tcp/GridTcpRestParser.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/protocols/tcp/GridTcpRestParser.java index c7f8c70..73d5c9a 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/protocols/tcp/GridTcpRestParser.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/protocols/tcp/GridTcpRestParser.java @@ -692,7 +692,7 @@ public class GridTcpRestParser implements GridNioParser { assert bytes != null; if ((flags & SERIALIZED_FLAG) != 0) - return jdkMarshaller.unmarshal(bytes, null); + return jdkMarshaller.unmarshal(ByteBuffer.wrap(bytes), null); int masked = flags & 0xff00; http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/d838a9db/modules/core/src/main/java/org/apache/ignite/internal/processors/service/GridServiceProcessor.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/service/GridServiceProcessor.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/service/GridServiceProcessor.java index 54a2fd8..702b0d6 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/service/GridServiceProcessor.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/service/GridServiceProcessor.java @@ -41,6 +41,7 @@ import org.jetbrains.annotations.*; import javax.cache.*; import javax.cache.event.*; +import java.nio.*; import java.util.*; import java.util.concurrent.*; @@ -845,7 +846,7 @@ public class GridServiceProcessor extends GridProcessorAdapter { Marshaller m = ctx.config().getMarshaller(); try { - byte[] bytes = m.marshal(svc); + ByteBuffer bytes = m.marshal(svc); Service cp = m.unmarshal(bytes, svc.getClass().getClassLoader()); http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/d838a9db/modules/core/src/main/java/org/apache/ignite/internal/processors/streamer/GridStreamerExecutionRequest.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/streamer/GridStreamerExecutionRequest.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/streamer/GridStreamerExecutionRequest.java index fc86c3b..2e09ca8 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/streamer/GridStreamerExecutionRequest.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/streamer/GridStreamerExecutionRequest.java @@ -40,7 +40,7 @@ public class GridStreamerExecutionRequest implements Message { /** Serialized batch in case if P2P class loading is enabled. */ @GridToStringExclude - private byte[] batchBytes; + private ByteBuffer batchBytes; /** Deployment mode. */ private DeploymentMode depMode; @@ -77,7 +77,7 @@ public class GridStreamerExecutionRequest implements Message { */ public GridStreamerExecutionRequest( boolean forceLocDep, - byte[] batchBytes, + ByteBuffer batchBytes, @Nullable DeploymentMode depMode, @Nullable String sampleClsName, @Nullable String userVer, @@ -140,7 +140,7 @@ public class GridStreamerExecutionRequest implements Message { /** * @return Serialized batch in case if P2P class loading is enabled. */ - public byte[] batchBytes() { + public ByteBuffer batchBytes() { return batchBytes; } @@ -162,8 +162,8 @@ public class GridStreamerExecutionRequest implements Message { switch (writer.state()) { case 0: - if (!writer.writeByteArray("batchBytes", batchBytes)) - return false; +// if (!writer.writeByteArray("batchBytes", batchBytes)) +// return false; writer.incrementState(); @@ -217,7 +217,7 @@ public class GridStreamerExecutionRequest implements Message { switch (reader.state()) { case 0: - batchBytes = reader.readByteArray("batchBytes"); +// batchBytes = reader.readByteArray("batchBytes"); if (!reader.isLastRead()) return false; http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/d838a9db/modules/core/src/main/java/org/apache/ignite/internal/processors/streamer/GridStreamerResponse.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/streamer/GridStreamerResponse.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/streamer/GridStreamerResponse.java index 36f8822..fdaa002 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/streamer/GridStreamerResponse.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/streamer/GridStreamerResponse.java @@ -35,7 +35,7 @@ public class GridStreamerResponse implements Message { private IgniteUuid futId; /** */ - private byte[] errBytes; + private ByteBuffer errBytes; /** * @@ -48,7 +48,7 @@ public class GridStreamerResponse implements Message { * @param futId Future ID. * @param errBytes Serialized error, if any. */ - public GridStreamerResponse(IgniteUuid futId, @Nullable byte[] errBytes) { + public GridStreamerResponse(IgniteUuid futId, @Nullable ByteBuffer errBytes) { assert futId != null; this.futId = futId; @@ -65,7 +65,7 @@ public class GridStreamerResponse implements Message { /** * @return Serialized error. */ - public byte[] errorBytes() { + public ByteBuffer errorBytes() { return errBytes; } @@ -87,8 +87,8 @@ public class GridStreamerResponse implements Message { switch (writer.state()) { case 0: - if (!writer.writeByteArray("errBytes", errBytes)) - return false; +// if (!writer.writeByteArray("errBytes", errBytes)) +// return false; writer.incrementState(); @@ -112,7 +112,7 @@ public class GridStreamerResponse implements Message { switch (reader.state()) { case 0: - errBytes = reader.readByteArray("errBytes"); +// errBytes = reader.readByteArray("errBytes"); if (!reader.isLastRead()) return false; http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/d838a9db/modules/core/src/main/java/org/apache/ignite/internal/processors/streamer/IgniteStreamerImpl.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/streamer/IgniteStreamerImpl.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/streamer/IgniteStreamerImpl.java index 98c758b..af725f2 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/streamer/IgniteStreamerImpl.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/streamer/IgniteStreamerImpl.java @@ -40,6 +40,7 @@ import org.jdk8.backport.*; import org.jetbrains.annotations.*; import java.io.*; +import java.nio.*; import java.util.*; import java.util.concurrent.*; @@ -786,7 +787,7 @@ public class IgniteStreamerImpl implements IgniteStreamerEx, Externalizable { log.debug("Sending completion response to remote node [nodeId=" + dstNodeId + ", futId=" + futId + ", err=" + err + ']'); - byte[] errBytes = err != null ? ctx.config().getMarshaller().marshal(err) : null; + ByteBuffer errBytes = err != null ? ctx.config().getMarshaller().marshal(err) : null; sendWithRetries(dstNodeId, new GridStreamerResponse(futId, errBytes)); } @@ -1018,7 +1019,7 @@ public class IgniteStreamerImpl implements IgniteStreamerEx, Externalizable { throws IgniteCheckedException { boolean depEnabled = ctx.deploy().enabled(); - byte[] batchBytes = ctx.config().getMarshaller().marshal(batch); + ByteBuffer batchBytes = ctx.config().getMarshaller().marshal(batch); if (!depEnabled) return new GridStreamerExecutionRequest(true, batchBytes, null, null, null, null, null); http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/d838a9db/modules/core/src/main/java/org/apache/ignite/internal/util/GridByteArrayList.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/util/GridByteArrayList.java b/modules/core/src/main/java/org/apache/ignite/internal/util/GridByteArrayList.java index de5dd47..8b66770 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/util/GridByteArrayList.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/util/GridByteArrayList.java @@ -385,7 +385,7 @@ public class GridByteArrayList implements Message, Externalizable { public InputStream inputStream() { GridUnsafeDataInput in = new GridUnsafeDataInput(); - in.bytes(data, size); + in.bytes(data, 0, size); return in; } http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/d838a9db/modules/core/src/main/java/org/apache/ignite/internal/util/IgniteUtils.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/util/IgniteUtils.java b/modules/core/src/main/java/org/apache/ignite/internal/util/IgniteUtils.java index cf21d46..b074512 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/util/IgniteUtils.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/util/IgniteUtils.java @@ -1967,6 +1967,42 @@ public abstract class IgniteUtils { } /** + * @param out Output stream. + * @param buf Byte buffer. + * @throws IOException In case of error. + */ + public static void writeByteBuffer(DataOutput out, @Nullable ByteBuffer buf) throws IOException { + if (buf == null) + out.writeInt(-1); + else { + // TODO: IGNITE-471 - Support offheap? + assert buf.hasArray(); + + out.writeInt(buf.remaining()); + out.write(buf.array(), buf.position(), buf.remaining()); + } + } + + /** + * @param in Input stream. + * @return Byte buffer. + * @throws IOException In case of error. + */ + @Nullable public static ByteBuffer readByteBuffer(DataInput in) throws IOException { + int len = in.readInt(); + + if (len == -1) + return null; + else { + byte[] arr = new byte[len]; + + in.readFully(arr); + + return ByteBuffer.wrap(arr); + } + } + + /** * Writes byte array to output stream accounting for <tt>null</tt> values. * * @param out Output stream to write to. @@ -9027,6 +9063,24 @@ public abstract class IgniteUtils { } /** + * // TODO: IGNITE-471 - Remove method. + * + * @param buf Byte buffer. + * @return Byte array. + */ + public static byte[] toArray(ByteBuffer buf) { + if (buf.hasArray() && buf.position() == 0 && buf.remaining() == buf.capacity()) + return buf.array(); + else { + byte[] arr = new byte[buf.remaining()]; + + buf.get(arr); + + return arr; + } + } + + /** * Throws exception with uniform error message if given parameter's assertion condition * is {@code false}. * http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/d838a9db/modules/core/src/main/java/org/apache/ignite/internal/util/io/GridByteBufferInputStream.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/util/io/GridByteBufferInputStream.java b/modules/core/src/main/java/org/apache/ignite/internal/util/io/GridByteBufferInputStream.java new file mode 100644 index 0000000..cc8e067 --- /dev/null +++ b/modules/core/src/main/java/org/apache/ignite/internal/util/io/GridByteBufferInputStream.java @@ -0,0 +1,91 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.ignite.internal.util.io; + +import java.io.*; +import java.nio.*; + +/** + * Input stream that reads from provided {@link ByteBuffer}. + */ +public class GridByteBufferInputStream extends InputStream { + /** */ + private final ByteBuffer buf; + + /** + * @param buf Byte buffer. + */ + public GridByteBufferInputStream(ByteBuffer buf) { + this.buf = buf; + } + + /** {@inheritDoc} */ + @Override public int read() throws IOException { + return buf.get(); + } + + /** {@inheritDoc} */ + @Override public int read(byte[] arr) throws IOException { + int pos = buf.position(); + + buf.get(arr); + + return buf.position() - pos; + } + + /** {@inheritDoc} */ + @Override public int read(byte[] arr, int off, int len) throws IOException { + int pos = buf.position(); + + buf.get(arr, off, len); + + return buf.position() - pos; + } + + /** {@inheritDoc} */ + @Override public long skip(long n) throws IOException { + if (n <= 0) + return 0; + + long skipped = Math.min(buf.remaining(), n); + + buf.position(buf.position() + (int)skipped); + + return skipped; + } + + /** {@inheritDoc} */ + @Override public int available() throws IOException { + return buf.remaining(); + } + + /** {@inheritDoc} */ + @Override public boolean markSupported() { + return true; + } + + /** {@inheritDoc} */ + @Override public synchronized void mark(int readLimit) { + buf.mark(); + } + + /** {@inheritDoc} */ + @Override public synchronized void reset() throws IOException { + buf.reset(); + } +} http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/d838a9db/modules/core/src/main/java/org/apache/ignite/internal/util/io/GridDataInput.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/util/io/GridDataInput.java b/modules/core/src/main/java/org/apache/ignite/internal/util/io/GridDataInput.java index a0c556e..b6992d0 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/util/io/GridDataInput.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/util/io/GridDataInput.java @@ -25,9 +25,10 @@ import java.io.*; public interface GridDataInput extends DataInput { /** * @param bytes Bytes. + * @param off Offset. * @param len Length. */ - public void bytes(byte[] bytes, int len); + public void bytes(byte[] bytes, int off, int len); /** * @param in Underlying input stream. http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/d838a9db/modules/core/src/main/java/org/apache/ignite/internal/util/io/GridUnsafeDataInput.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/util/io/GridUnsafeDataInput.java b/modules/core/src/main/java/org/apache/ignite/internal/util/io/GridUnsafeDataInput.java index fb498d6..1c1c03e 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/util/io/GridUnsafeDataInput.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/util/io/GridUnsafeDataInput.java @@ -101,11 +101,6 @@ public class GridUnsafeDataInput extends InputStream implements GridDataInput { /** Last length check timestamp. */ private long lastCheck; - /** {@inheritDoc} */ - @Override public void bytes(byte[] bytes, int len) { - bytes(bytes, 0, len); - } - /** * @param bytes Bytes. * @param off Offset. http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/d838a9db/modules/core/src/main/java/org/apache/ignite/marshaller/AbstractMarshaller.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/marshaller/AbstractMarshaller.java b/modules/core/src/main/java/org/apache/ignite/marshaller/AbstractMarshaller.java index fd08a02..b703525 100644 --- a/modules/core/src/main/java/org/apache/ignite/marshaller/AbstractMarshaller.java +++ b/modules/core/src/main/java/org/apache/ignite/marshaller/AbstractMarshaller.java @@ -23,6 +23,9 @@ import org.apache.ignite.internal.util.io.*; import org.apache.ignite.internal.util.typedef.internal.*; import org.jetbrains.annotations.*; +import java.io.*; +import java.nio.*; + /** * Base class for marshallers. Provides default implementations of methods * that work with byte array or {@link GridByteArrayList}. These implementations @@ -42,7 +45,7 @@ public abstract class AbstractMarshaller implements Marshaller { } /** {@inheritDoc} */ - @Override public byte[] marshal(@Nullable Object obj) throws IgniteCheckedException { + @Override public ByteBuffer marshal(@Nullable Object obj) throws IgniteCheckedException { GridByteArrayOutputStream out = null; try { @@ -50,7 +53,7 @@ public abstract class AbstractMarshaller implements Marshaller { marshal(obj, out); - return out.toByteArray(); + return ByteBuffer.wrap(out.internalArray(), 0, out.size()); } finally { U.close(out, null); @@ -58,11 +61,11 @@ public abstract class AbstractMarshaller implements Marshaller { } /** {@inheritDoc} */ - @Override public <T> T unmarshal(byte[] arr, @Nullable ClassLoader clsLdr) throws IgniteCheckedException { - GridByteArrayInputStream in = null; + @Override public <T> T unmarshal(ByteBuffer buf, @Nullable ClassLoader clsLdr) throws IgniteCheckedException { + InputStream in = null; try { - in = new GridByteArrayInputStream(arr, 0, arr.length); + in = new GridByteBufferInputStream(buf); return unmarshal(in, clsLdr); } http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/d838a9db/modules/core/src/main/java/org/apache/ignite/marshaller/Marshaller.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/marshaller/Marshaller.java b/modules/core/src/main/java/org/apache/ignite/marshaller/Marshaller.java index 528fded..d984bf8 100644 --- a/modules/core/src/main/java/org/apache/ignite/marshaller/Marshaller.java +++ b/modules/core/src/main/java/org/apache/ignite/marshaller/Marshaller.java @@ -21,6 +21,7 @@ import org.apache.ignite.*; import org.jetbrains.annotations.*; import java.io.*; +import java.nio.*; /** * {@code GridMarshaller} allows to marshal or unmarshal objects in grid. It provides @@ -83,13 +84,13 @@ public interface Marshaller { public void marshal(@Nullable Object obj, OutputStream out) throws IgniteCheckedException; /** - * Marshals object to byte array. + * Marshals object to bytes. * * @param obj Object to marshal. - * @return Byte array. + * @return Byte buffer. * @throws IgniteCheckedException If marshalling failed. */ - public byte[] marshal(@Nullable Object obj) throws IgniteCheckedException; + public ByteBuffer marshal(@Nullable Object obj) throws IgniteCheckedException; /** * Unmarshals object from the output stream using given class loader. @@ -104,13 +105,12 @@ public interface Marshaller { public <T> T unmarshal(InputStream in, @Nullable ClassLoader clsLdr) throws IgniteCheckedException; /** - * Unmarshals object from byte array using given class loader. + * Unmarshals object from bytes using given class loader. * - * @param <T> Type of unmarshalled object. - * @param arr Byte array. + * @param buf Byte buffer. * @param clsLdr Class loader to use. * @return Unmarshalled object. * @throws IgniteCheckedException If unmarshalling failed. */ - public <T> T unmarshal(byte[] arr, @Nullable ClassLoader clsLdr) throws IgniteCheckedException; + public <T> T unmarshal(ByteBuffer buf, @Nullable ClassLoader clsLdr) throws IgniteCheckedException; } http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/d838a9db/modules/core/src/main/java/org/apache/ignite/marshaller/optimized/OptimizedMarshaller.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/marshaller/optimized/OptimizedMarshaller.java b/modules/core/src/main/java/org/apache/ignite/marshaller/optimized/OptimizedMarshaller.java index 8ceed43..bb63fdd 100644 --- a/modules/core/src/main/java/org/apache/ignite/marshaller/optimized/OptimizedMarshaller.java +++ b/modules/core/src/main/java/org/apache/ignite/marshaller/optimized/OptimizedMarshaller.java @@ -24,6 +24,7 @@ import org.jetbrains.annotations.*; import sun.misc.*; import java.io.*; +import java.nio.*; /** * Optimized implementation of {@link org.apache.ignite.marshaller.Marshaller}. Unlike {@link org.apache.ignite.marshaller.jdk.JdkMarshaller}, @@ -164,7 +165,7 @@ public class OptimizedMarshaller extends AbstractMarshaller { } /** {@inheritDoc} */ - @Override public byte[] marshal(@Nullable Object obj) throws IgniteCheckedException { + @Override public ByteBuffer marshal(@Nullable Object obj) throws IgniteCheckedException { OptimizedObjectOutputStream objOut = null; try { @@ -174,7 +175,7 @@ public class OptimizedMarshaller extends AbstractMarshaller { objOut.writeObject(obj); - return objOut.out().array(); + return ByteBuffer.wrap(objOut.out().internalArray(), 0, objOut.out().offset()); } catch (IOException e) { throw new IgniteCheckedException("Failed to serialize object: " + obj, e); @@ -215,8 +216,9 @@ public class OptimizedMarshaller extends AbstractMarshaller { /** {@inheritDoc} */ @SuppressWarnings("unchecked") - @Override public <T> T unmarshal(byte[] arr, @Nullable ClassLoader clsLdr) throws IgniteCheckedException { - assert arr != null; + @Override public <T> T unmarshal(ByteBuffer buf, @Nullable ClassLoader clsLdr) throws IgniteCheckedException { + assert buf != null; + assert buf.hasArray(); // TODO: IGNITE-471 - Support offheap? OptimizedObjectInputStream objIn = null; @@ -225,7 +227,7 @@ public class OptimizedMarshaller extends AbstractMarshaller { objIn.context(ctx, mapper, clsLdr != null ? clsLdr : dfltClsLdr); - objIn.in().bytes(arr, arr.length); + objIn.in().bytes(buf.array(), buf.position(), buf.remaining()); return (T)objIn.readObject(); } http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/d838a9db/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoverySpi.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoverySpi.java b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoverySpi.java index ca34f1f..1278556 100644 --- a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoverySpi.java +++ b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoverySpi.java @@ -42,6 +42,7 @@ import org.jetbrains.annotations.*; import java.io.*; import java.net.*; +import java.nio.*; import java.text.*; import java.util.*; import java.util.concurrent.*; @@ -1699,7 +1700,7 @@ public class TcpDiscoverySpi extends TcpDiscoverySpiAdapter implements TcpDiscov if (credBytes == null) return null; - return marsh.unmarshal(credBytes, null); + return marsh.unmarshal(ByteBuffer.wrap(credBytes), null); } catch (IgniteCheckedException e) { throw new IgniteSpiException("Failed to unmarshal node security credentials: " + node.id(), e); @@ -3589,7 +3590,7 @@ public class TcpDiscoverySpi extends TcpDiscoverySpiAdapter implements TcpDiscov SecurityContext subj = nodeAuth.authenticateNode(node, cred); SecurityContext coordSubj = ignite.configuration().getMarshaller().unmarshal( - node.<byte[]>attribute(IgniteNodeAttributes.ATTR_SECURITY_SUBJECT), + ByteBuffer.wrap(node.<byte[]>attribute(IgniteNodeAttributes.ATTR_SECURITY_SUBJECT)), U.gridClassLoader()); if (!permissionsEqual(coordSubj.subject().permissions(), subj.subject().permissions())) { http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/d838a9db/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ipfinder/multicast/TcpDiscoveryMulticastIpFinder.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ipfinder/multicast/TcpDiscoveryMulticastIpFinder.java b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ipfinder/multicast/TcpDiscoveryMulticastIpFinder.java index 3ff4157..bdbd282 100644 --- a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ipfinder/multicast/TcpDiscoveryMulticastIpFinder.java +++ b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ipfinder/multicast/TcpDiscoveryMulticastIpFinder.java @@ -31,6 +31,7 @@ import org.jetbrains.annotations.*; import java.io.*; import java.net.*; +import java.nio.*; import java.util.*; import static org.apache.ignite.IgniteSystemProperties.*; @@ -542,14 +543,22 @@ public class TcpDiscoveryMulticastIpFinder extends TcpDiscoveryVmIpFinder { private AddressResponse(Collection<InetSocketAddress> addrs) throws IgniteCheckedException { this.addrs = addrs; - byte[] addrsData = marsh.marshal(addrs); - data = new byte[U.IGNITE_HEADER.length + addrsData.length]; + ByteBuffer addrsData = marsh.marshal(addrs); - if (data.length > MAX_DATA_LENGTH) - throw new IgniteCheckedException("Too long data packet [size=" + data.length + ", max=" + MAX_DATA_LENGTH + "]"); + int len = U.IGNITE_HEADER.length + addrsData.remaining(); - System.arraycopy(U.IGNITE_HEADER, 0, data, 0, U.IGNITE_HEADER.length); - System.arraycopy(addrsData, 0, data, 4, addrsData.length); + if (len > MAX_DATA_LENGTH) + throw new IgniteCheckedException("Too long data packet [size=" + len + + ", max=" + MAX_DATA_LENGTH + "]"); + + ByteBuffer buf = ByteBuffer.allocate(len); + + buf.put(U.IGNITE_HEADER); + buf.put(addrsData); + + assert buf.array().length == len; + + data = buf.array(); } /** @@ -559,9 +568,9 @@ public class TcpDiscoveryMulticastIpFinder extends TcpDiscoveryVmIpFinder { private AddressResponse(byte[] data) throws IgniteCheckedException { assert U.bytesEqual(U.IGNITE_HEADER, 0, data, 0, U.IGNITE_HEADER.length); - this.data = data; + ByteBuffer buf = ByteBuffer.wrap(data, U.IGNITE_HEADER.length, data.length - U.IGNITE_HEADER.length); - addrs = marsh.unmarshal(Arrays.copyOfRange(data, U.IGNITE_HEADER.length, data.length), null); + addrs = marsh.unmarshal(buf, null); } /** http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/d838a9db/modules/core/src/main/java/org/apache/ignite/spi/swapspace/file/FileSwapSpaceSpi.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/spi/swapspace/file/FileSwapSpaceSpi.java b/modules/core/src/main/java/org/apache/ignite/spi/swapspace/file/FileSwapSpaceSpi.java index 5eec025..1d5a9b8 100644 --- a/modules/core/src/main/java/org/apache/ignite/spi/swapspace/file/FileSwapSpaceSpi.java +++ b/modules/core/src/main/java/org/apache/ignite/spi/swapspace/file/FileSwapSpaceSpi.java @@ -559,7 +559,7 @@ public class FileSwapSpaceSpi extends IgniteSpiAdapter implements SwapSpaceSpi, if (keyBytes == null) { try { - keyBytes = ignite.configuration().getMarshaller().marshal(key.key()); + keyBytes = U.toArray(ignite.configuration().getMarshaller().marshal(key.key())); } catch (IgniteCheckedException e) { throw new IgniteSpiException("Failed to marshal key: " + key.key(), e); http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/d838a9db/modules/core/src/test/java/org/apache/ignite/GridTestIoUtils.java ---------------------------------------------------------------------- diff --git a/modules/core/src/test/java/org/apache/ignite/GridTestIoUtils.java b/modules/core/src/test/java/org/apache/ignite/GridTestIoUtils.java index 2dc5faa..45dc6de 100644 --- a/modules/core/src/test/java/org/apache/ignite/GridTestIoUtils.java +++ b/modules/core/src/test/java/org/apache/ignite/GridTestIoUtils.java @@ -22,6 +22,7 @@ import org.apache.ignite.marshaller.*; import org.jetbrains.annotations.*; import java.io.*; +import java.nio.*; import java.util.*; import static junit.framework.Assert.*; @@ -126,7 +127,7 @@ public final class GridTestIoUtils { public static <T> T externalize(Externalizable obj, Marshaller marshaller) throws Exception { assert marshaller != null; - byte[] buf = marshaller.marshal(obj); + ByteBuffer buf = marshaller.marshal(obj); // Sleep to make sure that clock advances (necessary for some tests) Thread.sleep(10); http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/d838a9db/modules/core/src/test/java/org/apache/ignite/internal/ClusterNodeMetricsSelfTest.java ---------------------------------------------------------------------- diff --git a/modules/core/src/test/java/org/apache/ignite/internal/ClusterNodeMetricsSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/ClusterNodeMetricsSelfTest.java index 87bb788..55f45c8 100644 --- a/modules/core/src/test/java/org/apache/ignite/internal/ClusterNodeMetricsSelfTest.java +++ b/modules/core/src/test/java/org/apache/ignite/internal/ClusterNodeMetricsSelfTest.java @@ -22,6 +22,7 @@ import org.apache.ignite.cluster.*; import org.apache.ignite.configuration.*; import org.apache.ignite.events.*; import org.apache.ignite.internal.processors.task.*; +import org.apache.ignite.internal.util.typedef.internal.*; import org.apache.ignite.lang.*; import org.apache.ignite.messaging.*; import org.apache.ignite.testframework.junits.common.*; @@ -183,7 +184,7 @@ public class ClusterNodeMetricsSelfTest extends GridCommonAbstractTest { Object msg = new TestMessage(); - int size = ignite0.configuration().getMarshaller().marshal(msg).length; + int size = U.toArray(ignite0.configuration().getMarshaller().marshal(msg)).length; assert size > MSG_SIZE; http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/d838a9db/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheEntryMemorySizeSelfTest.java ---------------------------------------------------------------------- diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheEntryMemorySizeSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheEntryMemorySizeSelfTest.java index fe3b1d8..597046e 100644 --- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheEntryMemorySizeSelfTest.java +++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheEntryMemorySizeSelfTest.java @@ -94,9 +94,9 @@ public class GridCacheEntryMemorySizeSelfTest extends GridCommonAbstractTest { } }); - KEY_SIZE = marsh.marshal(1).length; - ONE_KB_VAL_SIZE = marsh.marshal(new Value(new byte[1024])).length; - TWO_KB_VAL_SIZE = marsh.marshal(new Value(new byte[2048])).length; + KEY_SIZE = U.toArray(marsh.marshal(1)).length; + ONE_KB_VAL_SIZE = U.toArray(marsh.marshal(new Value(new byte[1024]))).length; + TWO_KB_VAL_SIZE = U.toArray(marsh.marshal(new Value(new byte[2048]))).length; } catch (IgniteCheckedException e) { throw new IgniteException(e); http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/d838a9db/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheVersionSelfTest.java ---------------------------------------------------------------------- diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheVersionSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheVersionSelfTest.java index 5c975ff..8f227dc 100644 --- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheVersionSelfTest.java +++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheVersionSelfTest.java @@ -23,6 +23,7 @@ import org.apache.ignite.marshaller.optimized.*; import org.apache.ignite.testframework.*; import org.apache.ignite.testframework.junits.common.*; +import java.nio.*; import java.util.concurrent.*; /** @@ -85,8 +86,8 @@ public class GridCacheVersionSelfTest extends GridCommonAbstractTest { marsh.setContext(new MarshallerContextTestImpl()); - byte[] verBytes = marsh.marshal(ver); - byte[] verExBytes = marsh.marshal(verEx); + ByteBuffer verBytes = marsh.marshal(ver); + ByteBuffer verExBytes = marsh.marshal(verEx); GridCacheVersion verNew = marsh.unmarshal(verBytes, Thread.currentThread().getContextClassLoader()); GridCacheVersionEx verExNew = marsh.unmarshal(verExBytes, Thread.currentThread().getContextClassLoader()); http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/d838a9db/modules/core/src/test/java/org/apache/ignite/internal/util/nio/GridNioSelfTest.java ---------------------------------------------------------------------- diff --git a/modules/core/src/test/java/org/apache/ignite/internal/util/nio/GridNioSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/util/nio/GridNioSelfTest.java index e3baeb0..88a28f6 100644 --- a/modules/core/src/test/java/org/apache/ignite/internal/util/nio/GridNioSelfTest.java +++ b/modules/core/src/test/java/org/apache/ignite/internal/util/nio/GridNioSelfTest.java @@ -646,7 +646,7 @@ public class GridNioSelfTest extends GridCommonAbstractTest { MessageWithId msg = new MessageWithId(); - byte[] data = serializeMessage(msg); + byte[] data = U.toArray(serializeMessage(msg)); for (int j = 0; j < 10; j++) client.sendMessage(data, data.length); @@ -748,7 +748,7 @@ public class GridNioSelfTest extends GridCommonAbstractTest { while (cntr.getAndIncrement() < MSG_CNT * THREAD_CNT) { MessageWithId msg = new MessageWithId(); - byte[] data = serializeMessage(msg); + byte[] data = U.toArray(serializeMessage(msg)); long start = System.currentTimeMillis(); @@ -1120,7 +1120,7 @@ public class GridNioSelfTest extends GridCommonAbstractTest { * @return Serialized message. * @throws IgniteCheckedException If failed. */ - private <T extends Serializable> byte[] serializeMessage(T msg) throws IgniteCheckedException { + private <T extends Serializable> ByteBuffer serializeMessage(T msg) throws IgniteCheckedException { return marsh.marshal(msg); } @@ -1133,7 +1133,7 @@ public class GridNioSelfTest extends GridCommonAbstractTest { * @throws IgniteCheckedException If failed. */ @SuppressWarnings({"RedundantTypeArguments"}) - private <T> T deserializeMessage(byte[] data) throws IgniteCheckedException { + private <T> T deserializeMessage(ByteBuffer data) throws IgniteCheckedException { return marsh.<T>unmarshal(data, getClass().getClassLoader()); } @@ -1265,7 +1265,7 @@ public class GridNioSelfTest extends GridCommonAbstractTest { try { long deliveryTime = System.currentTimeMillis(); - MessageWithId msg = deserializeMessage(data); + MessageWithId msg = deserializeMessage(ByteBuffer.wrap(data)); Integer id = msg.getId(); http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/d838a9db/modules/core/src/test/java/org/apache/ignite/marshaller/GridMarshallerAbstractTest.java ---------------------------------------------------------------------- diff --git a/modules/core/src/test/java/org/apache/ignite/marshaller/GridMarshallerAbstractTest.java b/modules/core/src/test/java/org/apache/ignite/marshaller/GridMarshallerAbstractTest.java index 5e4cbd6..c29af0b 100644 --- a/modules/core/src/test/java/org/apache/ignite/marshaller/GridMarshallerAbstractTest.java +++ b/modules/core/src/test/java/org/apache/ignite/marshaller/GridMarshallerAbstractTest.java @@ -39,6 +39,7 @@ import org.apache.ignite.testframework.junits.common.*; import org.jetbrains.annotations.*; import java.io.*; +import java.nio.*; import java.util.*; import java.util.concurrent.*; @@ -155,7 +156,7 @@ public abstract class GridMarshallerAbstractTest extends GridCommonAbstractTest GridMarshallerTestBean inBean = newTestBean(cache); - byte[] buf = marshal(inBean); + ByteBuffer buf = marshal(inBean); GridMarshallerTestBean outBean = unmarshal(buf); @@ -185,7 +186,7 @@ public abstract class GridMarshallerAbstractTest extends GridCommonAbstractTest GridMarshallerTestBean inBean = newTestBean(cache); - byte[] buf = marshal(inBean); + ByteBuffer buf = marshal(inBean); GridMarshallerTestBean outBean = unmarshal(buf); @@ -213,7 +214,7 @@ public abstract class GridMarshallerAbstractTest extends GridCommonAbstractTest public void testMarshalling() throws Exception { GridMarshallerTestBean inBean = newTestBean(new Object()); - byte[] buf = marshal(inBean); + ByteBuffer buf = marshal(inBean); GridMarshallerTestBean outBean = unmarshal(buf); @@ -250,7 +251,7 @@ public abstract class GridMarshallerAbstractTest extends GridCommonAbstractTest } }); - byte[] buf = marshal(inBean); + ByteBuffer buf = marshal(inBean); GridMarshallerTestBean outBean = unmarshal(buf); @@ -287,7 +288,7 @@ public abstract class GridMarshallerAbstractTest extends GridCommonAbstractTest GridMarshallerTestBean inBean = newTestBean(new LocalRunnable()); - byte[] buf = marshal(inBean); + ByteBuffer buf = marshal(inBean); GridMarshallerTestBean outBean = unmarshal(buf); @@ -314,7 +315,7 @@ public abstract class GridMarshallerAbstractTest extends GridCommonAbstractTest public void testMarshallingNestedClassInstance() throws Exception { GridMarshallerTestBean inBean = newTestBean(new NestedClass()); - byte[] buf = marshal(inBean); + ByteBuffer buf = marshal(inBean); GridMarshallerTestBean outBean = unmarshal(buf); @@ -341,7 +342,7 @@ public abstract class GridMarshallerAbstractTest extends GridCommonAbstractTest public void testMarshallingStaticNestedClassInstance() throws Exception { GridMarshallerTestBean inBean = newTestBean(new StaticNestedClass()); - byte[] buf = marshal(inBean); + ByteBuffer buf = marshal(inBean); GridMarshallerTestBean outBean = unmarshal(buf); @@ -368,7 +369,7 @@ public abstract class GridMarshallerAbstractTest extends GridCommonAbstractTest public void testMarshallingNullObject() throws Exception { GridMarshallerTestBean inBean = newTestBean(null); - byte[] buf = marshal(inBean); + ByteBuffer buf = marshal(inBean); GridMarshallerTestBean outBean = unmarshal(buf); @@ -430,7 +431,7 @@ public abstract class GridMarshallerAbstractTest extends GridCommonAbstractTest ComputeTask<?, ?> inTask = (ComputeTask<?, ?>)tstClsLdr.loadClass(GridP2PTestTask.class.getName()). newInstance(); - byte[] buf = marsh.marshal(inTask); + ByteBuffer buf = marsh.marshal(inTask); ComputeTask<?, ?> outTask = marsh.unmarshal(buf, tstClsLdr); @@ -446,7 +447,7 @@ public abstract class GridMarshallerAbstractTest extends GridCommonAbstractTest public void testGridKernalMarshalling() throws Exception { GridMarshallerTestBean inBean = newTestBean(grid()); - byte[] buf = marshal(inBean); + ByteBuffer buf = marshal(inBean); GridMarshallerTestBean outBean = unmarshal(buf); @@ -478,7 +479,7 @@ public abstract class GridMarshallerAbstractTest extends GridCommonAbstractTest } })); - byte[] buf = marshal(inBean); + ByteBuffer buf = marshal(inBean); GridMarshallerTestBean outBean = unmarshal(buf); @@ -502,7 +503,7 @@ public abstract class GridMarshallerAbstractTest extends GridCommonAbstractTest public void testLoggerMarshalling() throws Exception { GridMarshallerTestBean inBean = newTestBean(grid().log()); - byte[] buf = marshal(inBean); + ByteBuffer buf = marshal(inBean); GridMarshallerTestBean outBean = unmarshal(buf); @@ -534,7 +535,7 @@ public abstract class GridMarshallerAbstractTest extends GridCommonAbstractTest GridMarshallerTestBean inBean = newTestBean(loc); - byte[] buf = marshal(inBean); + ByteBuffer buf = marshal(inBean); GridMarshallerTestBean outBean = unmarshal(buf); @@ -565,7 +566,7 @@ public abstract class GridMarshallerAbstractTest extends GridCommonAbstractTest GridMarshallerTestBean inBean = newTestBean(inSrvc); - byte[] buf = marshal(inBean); + ByteBuffer buf = marshal(inBean); GridMarshallerTestBean outBean = unmarshal(buf); @@ -594,7 +595,7 @@ public abstract class GridMarshallerAbstractTest extends GridCommonAbstractTest public void testKernalContext() throws Exception { GridMarshallerTestBean inBean = newTestBean(GridKernalTestUtils.context(grid())); - byte[] buf = marshal(inBean); + ByteBuffer buf = marshal(inBean); GridMarshallerTestBean outBean = unmarshal(buf); @@ -626,7 +627,7 @@ public abstract class GridMarshallerAbstractTest extends GridCommonAbstractTest GridMarshallerTestBean inBean = newTestBean(scheduler); - byte[] buf = marshal(inBean); + ByteBuffer buf = marshal(inBean); GridMarshallerTestBean outBean = unmarshal(buf); @@ -660,7 +661,7 @@ public abstract class GridMarshallerAbstractTest extends GridCommonAbstractTest GridMarshallerTestBean inBean = newTestBean(compute); - byte[] buf = marshal(inBean); + ByteBuffer buf = marshal(inBean); GridMarshallerTestBean outBean = unmarshal(buf); @@ -702,7 +703,7 @@ public abstract class GridMarshallerAbstractTest extends GridCommonAbstractTest GridMarshallerTestBean inBean = newTestBean(evts); - byte[] buf = marshal(inBean); + ByteBuffer buf = marshal(inBean); GridMarshallerTestBean outBean = unmarshal(buf); @@ -738,7 +739,7 @@ public abstract class GridMarshallerAbstractTest extends GridCommonAbstractTest GridMarshallerTestBean inBean = newTestBean(messaging); - byte[] buf = marshal(inBean); + ByteBuffer buf = marshal(inBean); GridMarshallerTestBean outBean = unmarshal(buf); @@ -774,7 +775,7 @@ public abstract class GridMarshallerAbstractTest extends GridCommonAbstractTest GridMarshallerTestBean inBean = newTestBean(services); - byte[] buf = marshal(inBean); + ByteBuffer buf = marshal(inBean); GridMarshallerTestBean outBean = unmarshal(buf); @@ -807,7 +808,7 @@ public abstract class GridMarshallerAbstractTest extends GridCommonAbstractTest GridMarshallerTestBean inBean = newTestBean(streamer); - byte[] buf = marshal(inBean); + ByteBuffer buf = marshal(inBean); GridMarshallerTestBean outBean = unmarshal(buf); @@ -846,7 +847,7 @@ public abstract class GridMarshallerAbstractTest extends GridCommonAbstractTest * @return Byte buffer. * @throws IgniteCheckedException Thrown if any exception occurs while marshalling. */ - protected static byte[] marshal(Object bean) throws IgniteCheckedException { + protected static ByteBuffer marshal(Object bean) throws IgniteCheckedException { return marsh.marshal(bean); } @@ -856,7 +857,7 @@ public abstract class GridMarshallerAbstractTest extends GridCommonAbstractTest * @throws IgniteCheckedException Thrown if any exception occurs while unmarshalling. */ @SuppressWarnings({"RedundantTypeArguments"}) - protected static <T> T unmarshal(byte[] buf) throws IgniteCheckedException { + protected static <T> T unmarshal(ByteBuffer buf) throws IgniteCheckedException { return marsh.<T>unmarshal(buf, Thread.currentThread().getContextClassLoader()); } http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/d838a9db/modules/core/src/test/java/org/apache/ignite/marshaller/GridMarshallerPerformanceTest.java ---------------------------------------------------------------------- diff --git a/modules/core/src/test/java/org/apache/ignite/marshaller/GridMarshallerPerformanceTest.java b/modules/core/src/test/java/org/apache/ignite/marshaller/GridMarshallerPerformanceTest.java index df00966..c414fee 100644 --- a/modules/core/src/test/java/org/apache/ignite/marshaller/GridMarshallerPerformanceTest.java +++ b/modules/core/src/test/java/org/apache/ignite/marshaller/GridMarshallerPerformanceTest.java @@ -98,7 +98,7 @@ public class GridMarshallerPerformanceTest extends GridCommonAbstractTest { * @throws Exception If failed. */ public void testGridMarshaller() throws Exception { - final GridTuple<byte[]> tuple = new GridTuple<>(); + final GridTuple<ByteBuffer> tuple = new GridTuple<>(); final OptimizedMarshaller marsh = new OptimizedMarshaller(); http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/d838a9db/modules/core/src/test/java/org/apache/ignite/marshaller/optimized/OptimizedMarshallerEnumSelfTest.java ---------------------------------------------------------------------- diff --git a/modules/core/src/test/java/org/apache/ignite/marshaller/optimized/OptimizedMarshallerEnumSelfTest.java b/modules/core/src/test/java/org/apache/ignite/marshaller/optimized/OptimizedMarshallerEnumSelfTest.java index 81865c3..323cca2 100644 --- a/modules/core/src/test/java/org/apache/ignite/marshaller/optimized/OptimizedMarshallerEnumSelfTest.java +++ b/modules/core/src/test/java/org/apache/ignite/marshaller/optimized/OptimizedMarshallerEnumSelfTest.java @@ -20,6 +20,8 @@ package org.apache.ignite.marshaller.optimized; import junit.framework.*; import org.apache.ignite.marshaller.*; +import java.nio.*; + /** * */ @@ -32,7 +34,7 @@ public class OptimizedMarshallerEnumSelfTest extends TestCase { marsh.setContext(new MarshallerContextTestImpl()); - byte[] bytes = marsh.marshal(TestEnum.Bond); + ByteBuffer bytes = marsh.marshal(TestEnum.Bond); TestEnum unmarshalled = marsh.unmarshal(bytes, Thread.currentThread().getContextClassLoader()); http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/d838a9db/modules/core/src/test/java/org/apache/ignite/marshaller/optimized/OptimizedMarshallerSelfTest.java ---------------------------------------------------------------------- diff --git a/modules/core/src/test/java/org/apache/ignite/marshaller/optimized/OptimizedMarshallerSelfTest.java b/modules/core/src/test/java/org/apache/ignite/marshaller/optimized/OptimizedMarshallerSelfTest.java index 7d09070..8db33f7 100644 --- a/modules/core/src/test/java/org/apache/ignite/marshaller/optimized/OptimizedMarshallerSelfTest.java +++ b/modules/core/src/test/java/org/apache/ignite/marshaller/optimized/OptimizedMarshallerSelfTest.java @@ -18,12 +18,14 @@ package org.apache.ignite.marshaller.optimized; import org.apache.ignite.*; +import org.apache.ignite.internal.util.typedef.internal.*; import org.apache.ignite.lang.*; import org.apache.ignite.marshaller.*; import org.apache.ignite.testframework.*; import org.apache.ignite.testframework.junits.common.*; import java.io.*; +import java.nio.*; import java.util.concurrent.*; /** @@ -42,7 +44,7 @@ public class OptimizedMarshallerSelfTest extends GridMarshallerAbstractTest { public void testTestMarshalling() throws Exception { final String msg = "PASSED"; - byte[] buf = marshal(new IgniteRunnable() { + ByteBuffer buf = marshal(new IgniteRunnable() { @Override public void run() { c1.apply(msg); c2.apply(msg); @@ -88,7 +90,7 @@ public class OptimizedMarshallerSelfTest extends GridMarshallerAbstractTest { arr[0] = (byte)200; - unmarshal(arr); + unmarshal(ByteBuffer.wrap(arr)); return null; } @@ -132,10 +134,9 @@ public class OptimizedMarshallerSelfTest extends GridMarshallerAbstractTest { /** {@inheritDoc} */ private void writeObject(ObjectOutputStream out) throws IOException { try { - byte[] arr = marshal(str); + ByteBuffer buf = marshal(str); - out.writeInt(arr.length); - out.write(arr); + U.writeByteBuffer(out, buf); out.writeInt(val); } @@ -148,11 +149,9 @@ public class OptimizedMarshallerSelfTest extends GridMarshallerAbstractTest { @SuppressWarnings("UnusedParameters") private void readObject(ObjectInputStream in) throws IOException { try { - byte[] arr = new byte[in.readInt()]; + ByteBuffer buf = U.readByteBuffer(in); - in.read(arr); - - str = unmarshal(arr); + str = unmarshal(buf); val = in.readInt(); } http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/d838a9db/modules/core/src/test/java/org/apache/ignite/marshaller/optimized/OptimizedMarshallerTest.java ---------------------------------------------------------------------- diff --git a/modules/core/src/test/java/org/apache/ignite/marshaller/optimized/OptimizedMarshallerTest.java b/modules/core/src/test/java/org/apache/ignite/marshaller/optimized/OptimizedMarshallerTest.java index 59d9a4d..934c24e 100644 --- a/modules/core/src/test/java/org/apache/ignite/marshaller/optimized/OptimizedMarshallerTest.java +++ b/modules/core/src/test/java/org/apache/ignite/marshaller/optimized/OptimizedMarshallerTest.java @@ -30,6 +30,7 @@ import java.io.*; import java.lang.reflect.*; import java.lang.reflect.Proxy; import java.net.*; +import java.nio.*; import java.util.*; import java.util.concurrent.*; @@ -75,7 +76,7 @@ public class OptimizedMarshallerTest extends GridCommonAbstractTest { marsh.setRequireSerializable(false); - byte[] bytes = marsh.marshal(new TcpDiscoveryVmIpFinder()); + ByteBuffer bytes = marsh.marshal(new TcpDiscoveryVmIpFinder()); TcpDiscoveryIpFinder ipFinder = marsh.unmarshal(bytes, null); @@ -112,7 +113,7 @@ public class OptimizedMarshallerTest extends GridCommonAbstractTest { ipFinder.setShared(false); - byte[] bytes = marsh.marshal(ipFinder); + ByteBuffer bytes = marsh.marshal(ipFinder); ipFinder = marsh.unmarshal(bytes, null); @@ -129,7 +130,7 @@ public class OptimizedMarshallerTest extends GridCommonAbstractTest { marsh.setRequireSerializable(false); - byte[] bytes = marsh.marshal(new TestTcpDiscoveryIpFinderAdapter()); + ByteBuffer bytes = marsh.marshal(new TestTcpDiscoveryIpFinderAdapter()); TcpDiscoveryIpFinder ipFinder = marsh.unmarshal(bytes, null); @@ -146,9 +147,7 @@ public class OptimizedMarshallerTest extends GridCommonAbstractTest { marsh.setRequireSerializable(false); - byte[] bytes = marsh.marshal(new GridMarshallerTestInheritedBean()); - - info(Arrays.toString(bytes)); + ByteBuffer bytes = marsh.marshal(new GridMarshallerTestInheritedBean()); GridMarshallerTestInheritedBean bean = marsh.unmarshal(bytes, null); @@ -163,7 +162,7 @@ public class OptimizedMarshallerTest extends GridCommonAbstractTest { public void testNonSerializable5() throws IgniteCheckedException { Marshaller marsh = marshaller(); - byte[] bytes = marsh.marshal(true); + ByteBuffer bytes = marsh.marshal(true); Boolean val = marsh.unmarshal(bytes, null); http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/d838a9db/modules/core/src/test/java/org/apache/ignite/marshaller/optimized/OptimizedObjectStreamSelfTest.java ---------------------------------------------------------------------- diff --git a/modules/core/src/test/java/org/apache/ignite/marshaller/optimized/OptimizedObjectStreamSelfTest.java b/modules/core/src/test/java/org/apache/ignite/marshaller/optimized/OptimizedObjectStreamSelfTest.java index 5f63730..09adbb6 100644 --- a/modules/core/src/test/java/org/apache/ignite/marshaller/optimized/OptimizedObjectStreamSelfTest.java +++ b/modules/core/src/test/java/org/apache/ignite/marshaller/optimized/OptimizedObjectStreamSelfTest.java @@ -717,7 +717,7 @@ public class OptimizedObjectStreamSelfTest extends GridCommonAbstractTest { byte[] bytes = "line1\nline2\r\nli\rne3\nline4".getBytes(); - in.in().bytes(bytes, bytes.length); + in.in().bytes(bytes, 0, bytes.length); assertEquals("line1", in.readLine()); assertEquals("line2", in.readLine()); @@ -891,7 +891,7 @@ public class OptimizedObjectStreamSelfTest extends GridCommonAbstractTest { for (int i = 0; i < arr.length; i++) arr[i] = (byte)i; - in.in().bytes(arr, arr.length); + in.in().bytes(arr, 0, arr.length); byte[] buf = new byte[10]; @@ -1032,7 +1032,7 @@ public class OptimizedObjectStreamSelfTest extends GridCommonAbstractTest { in.context(CTX, null, getClass().getClassLoader()); - in.in().bytes(arr, arr.length); + in.in().bytes(arr, 0, arr.length); Object obj0 = in.readObject(); http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/d838a9db/modules/core/src/test/java/org/apache/ignite/session/GridSessionCheckpointAbstractSelfTest.java ---------------------------------------------------------------------- diff --git a/modules/core/src/test/java/org/apache/ignite/session/GridSessionCheckpointAbstractSelfTest.java b/modules/core/src/test/java/org/apache/ignite/session/GridSessionCheckpointAbstractSelfTest.java index d6d34fa..8b26344 100644 --- a/modules/core/src/test/java/org/apache/ignite/session/GridSessionCheckpointAbstractSelfTest.java +++ b/modules/core/src/test/java/org/apache/ignite/session/GridSessionCheckpointAbstractSelfTest.java @@ -27,6 +27,7 @@ import org.apache.ignite.spi.checkpoint.*; import org.apache.ignite.testframework.junits.common.*; import java.io.*; +import java.nio.*; import java.util.*; /** @@ -62,7 +63,7 @@ public abstract class GridSessionCheckpointAbstractSelfTest extends GridCommonAb assert marshaller != null; - String state = marshaller.unmarshal(serState, getClass().getClassLoader()); + String state = marshaller.unmarshal(ByteBuffer.wrap(serState), getClass().getClassLoader()); assert state != null : "Global state is missing: " + globalKey; assert state.equals(globalState) : "Invalid state value: " + state; @@ -90,14 +91,14 @@ public abstract class GridSessionCheckpointAbstractSelfTest extends GridCommonAb byte[] serState = spi.loadCheckpoint(sesKey); - String state = marsh.unmarshal(serState, cl); + String state = marsh.unmarshal(ByteBuffer.wrap(serState), cl); assert state != null : "Session state is missing: " + sesKey; assert state.equals(sesState) : "Invalid state value: " + state; serState = spi.loadCheckpoint(globalKey); - state = marsh.unmarshal(serState, cl); + state = marsh.unmarshal(ByteBuffer.wrap(serState), cl); assert state != null : "Global state is missing: " + globalKey; assert state.equals(globalState) : "Invalid state value: " + state; http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/d838a9db/modules/core/src/test/java/org/apache/ignite/spi/swapspace/GridSwapSpaceSpiAbstractSelfTest.java ---------------------------------------------------------------------- diff --git a/modules/core/src/test/java/org/apache/ignite/spi/swapspace/GridSwapSpaceSpiAbstractSelfTest.java b/modules/core/src/test/java/org/apache/ignite/spi/swapspace/GridSwapSpaceSpiAbstractSelfTest.java index 038198a..e30d84a 100644 --- a/modules/core/src/test/java/org/apache/ignite/spi/swapspace/GridSwapSpaceSpiAbstractSelfTest.java +++ b/modules/core/src/test/java/org/apache/ignite/spi/swapspace/GridSwapSpaceSpiAbstractSelfTest.java @@ -25,6 +25,7 @@ import org.apache.ignite.testframework.junits.common.*; import org.jetbrains.annotations.*; import java.io.*; +import java.nio.*; import java.util.*; import java.util.concurrent.*; @@ -490,7 +491,7 @@ public abstract class GridSwapSpaceSpiAbstractSelfTest extends GridCommonAbstrac while (iter.hasNext()) { Map.Entry<byte[], byte[]> next = iter.next(); - String key = getTestResources().getMarshaller().unmarshal(next.getKey(), null); + String key = getTestResources().getMarshaller().unmarshal(ByteBuffer.wrap(next.getKey()), null); info("Got from iterator [key=" + key + ", val=" + new String(next.getValue())); @@ -530,7 +531,7 @@ public abstract class GridSwapSpaceSpiAbstractSelfTest extends GridCommonAbstrac while (iter.hasNext()) { Map.Entry<byte[], byte[]> next = iter.next(); - String key = getTestResources().getMarshaller().unmarshal(next.getKey(), null); + String key = getTestResources().getMarshaller().unmarshal(ByteBuffer.wrap(next.getKey()), null); info("Got from iterator [key=" + key + ", val=" + new String(next.getValue())); http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/d838a9db/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/taskexecutor/external/communication/HadoopMarshallerFilter.java ---------------------------------------------------------------------- diff --git a/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/taskexecutor/external/communication/HadoopMarshallerFilter.java b/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/taskexecutor/external/communication/HadoopMarshallerFilter.java index 4cba117..cb45820 100644 --- a/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/taskexecutor/external/communication/HadoopMarshallerFilter.java +++ b/modules/hadoop/src/main/java/org/apache/ignite/internal/processors/hadoop/taskexecutor/external/communication/HadoopMarshallerFilter.java @@ -22,6 +22,8 @@ import org.apache.ignite.internal.processors.hadoop.message.*; import org.apache.ignite.internal.util.nio.*; import org.apache.ignite.marshaller.*; +import java.nio.*; + /** * Serialization filter. */ @@ -64,7 +66,8 @@ public class HadoopMarshallerFilter extends GridNioFilterAdapter { assert msg instanceof byte[]; // Always unmarshal with system classloader. - proceedMessageReceived(ses, marshaller.unmarshal((byte[])msg, null)); + // TODO: IGNITE-471 - Is this correct? + proceedMessageReceived(ses, marshaller.unmarshal((ByteBuffer)msg, null)); } /** {@inheritDoc} */ http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/d838a9db/modules/hadoop/src/test/java/org/apache/ignite/internal/processors/hadoop/shuffle/collections/HadoopConcurrentHashMultimapSelftest.java ---------------------------------------------------------------------- diff --git a/modules/hadoop/src/test/java/org/apache/ignite/internal/processors/hadoop/shuffle/collections/HadoopConcurrentHashMultimapSelftest.java b/modules/hadoop/src/test/java/org/apache/ignite/internal/processors/hadoop/shuffle/collections/HadoopConcurrentHashMultimapSelftest.java index ae6bafa..b527a79 100644 --- a/modules/hadoop/src/test/java/org/apache/ignite/internal/processors/hadoop/shuffle/collections/HadoopConcurrentHashMultimapSelftest.java +++ b/modules/hadoop/src/test/java/org/apache/ignite/internal/processors/hadoop/shuffle/collections/HadoopConcurrentHashMultimapSelftest.java @@ -34,7 +34,7 @@ import static org.apache.ignite.internal.util.offheap.unsafe.GridUnsafeMemory.*; /** * */ -public class HadoopConcurrentHashMultimapSelftest extends HadoopAbstractMapTest { +public class HadoopConcurrentHashMultimapSelfTest extends HadoopAbstractMapTest { /** */ public void testMapSimple() throws Exception { GridUnsafeMemory mem = new GridUnsafeMemory(0); @@ -151,7 +151,7 @@ public class HadoopConcurrentHashMultimapSelftest extends HadoopAbstractMapTest UNSAFE.copyMemory(null, ptr, buf, BYTE_ARR_OFF, size); - dataInput.bytes(buf, size); + dataInput.bytes(buf, 0, size); try { w.readFields(dataInput); http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/d838a9db/modules/hadoop/src/test/java/org/apache/ignite/internal/processors/hadoop/shuffle/collections/HadoopSkipListSelfTest.java ---------------------------------------------------------------------- diff --git a/modules/hadoop/src/test/java/org/apache/ignite/internal/processors/hadoop/shuffle/collections/HadoopSkipListSelfTest.java b/modules/hadoop/src/test/java/org/apache/ignite/internal/processors/hadoop/shuffle/collections/HadoopSkipListSelfTest.java index 8a046e0..eeb5ec0 100644 --- a/modules/hadoop/src/test/java/org/apache/ignite/internal/processors/hadoop/shuffle/collections/HadoopSkipListSelfTest.java +++ b/modules/hadoop/src/test/java/org/apache/ignite/internal/processors/hadoop/shuffle/collections/HadoopSkipListSelfTest.java @@ -187,7 +187,7 @@ public class HadoopSkipListSelfTest extends HadoopAbstractMapTest { UNSAFE.copyMemory(null, ptr, buf, BYTE_ARR_OFF, size); - dataInput.bytes(buf, size); + dataInput.bytes(buf, 0, size); try { w.readFields(dataInput); http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/d838a9db/modules/hadoop/src/test/java/org/apache/ignite/testsuites/IgniteHadoopTestSuite.java ---------------------------------------------------------------------- diff --git a/modules/hadoop/src/test/java/org/apache/ignite/testsuites/IgniteHadoopTestSuite.java b/modules/hadoop/src/test/java/org/apache/ignite/testsuites/IgniteHadoopTestSuite.java index 4d2a4b6..9538d05 100644 --- a/modules/hadoop/src/test/java/org/apache/ignite/testsuites/IgniteHadoopTestSuite.java +++ b/modules/hadoop/src/test/java/org/apache/ignite/testsuites/IgniteHadoopTestSuite.java @@ -26,8 +26,6 @@ import org.apache.ignite.igfs.*; import org.apache.ignite.internal.processors.hadoop.*; import org.apache.ignite.internal.processors.hadoop.shuffle.collections.*; import org.apache.ignite.internal.processors.hadoop.shuffle.streams.*; -import org.apache.ignite.internal.processors.hadoop.taskexecutor.external.*; -import org.apache.ignite.internal.processors.hadoop.taskexecutor.external.communication.*; import org.apache.ignite.internal.util.typedef.*; import org.apache.ignite.internal.util.typedef.internal.*; @@ -88,7 +86,7 @@ public class IgniteHadoopTestSuite extends TestSuite { suite.addTest(new TestSuite(ldr.loadClass(HadoopHashMapSelfTest.class.getName()))); suite.addTest(new TestSuite(ldr.loadClass(HadoopDataStreamSelfTest.class.getName()))); - suite.addTest(new TestSuite(ldr.loadClass(HadoopConcurrentHashMultimapSelftest.class.getName()))); + suite.addTest(new TestSuite(ldr.loadClass(HadoopConcurrentHashMultimapSelfTest.class.getName()))); suite.addTest(new TestSuite(ldr.loadClass(HadoopSkipListSelfTest.class.getName()))); http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/d838a9db/modules/hibernate/src/main/java/org/apache/ignite/cache/store/hibernate/CacheHibernateBlobStore.java ---------------------------------------------------------------------- diff --git a/modules/hibernate/src/main/java/org/apache/ignite/cache/store/hibernate/CacheHibernateBlobStore.java b/modules/hibernate/src/main/java/org/apache/ignite/cache/store/hibernate/CacheHibernateBlobStore.java index 9b9f2aa..e2fe963 100644 --- a/modules/hibernate/src/main/java/org/apache/ignite/cache/store/hibernate/CacheHibernateBlobStore.java +++ b/modules/hibernate/src/main/java/org/apache/ignite/cache/store/hibernate/CacheHibernateBlobStore.java @@ -32,6 +32,7 @@ import org.jetbrains.annotations.*; import javax.cache.integration.*; import java.io.*; import java.net.*; +import java.nio.*; import java.util.*; import java.util.concurrent.*; import java.util.concurrent.atomic.*; @@ -569,7 +570,7 @@ public class CacheHibernateBlobStore<K, V> extends CacheStoreAdapter<K, V> { * @throws IgniteCheckedException If failed to convert. */ protected byte[] toBytes(Object obj) throws IgniteCheckedException { - return ignite.configuration().getMarshaller().marshal(obj); + return U.toArray(ignite.configuration().getMarshaller().marshal(obj)); } /** @@ -584,7 +585,7 @@ public class CacheHibernateBlobStore<K, V> extends CacheStoreAdapter<K, V> { if (bytes == null || bytes.length == 0) return null; - return ignite.configuration().getMarshaller().unmarshal(bytes, getClass().getClassLoader()); + return ignite.configuration().getMarshaller().unmarshal(ByteBuffer.wrap(bytes), getClass().getClassLoader()); } /**