[ignite] Git Push Summary
Repository: ignite Updated Branches: refs/heads/ignite-6012 [deleted] 3ae7bff97
ignite git commit: IGNITE-6013 Optimized processing response from cluster.
Repository: ignite Updated Branches: refs/heads/master 3a390c8af -> b02c4812d IGNITE-6013 Optimized processing response from cluster. Project: http://git-wip-us.apache.org/repos/asf/ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/b02c4812 Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/b02c4812 Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/b02c4812 Branch: refs/heads/master Commit: b02c4812d9c145cf127eeaf54ab64709d230a3c7 Parents: 3a390c8 Author: Alexey KuznetsovAuthored: Fri Aug 11 11:18:42 2017 +0700 Committer: Alexey Kuznetsov Committed: Fri Aug 11 11:18:42 2017 +0700 -- .../console/agent/handlers/ClusterListener.java | 13 +- .../ignite/console/agent/rest/RestExecutor.java | 201 +-- 2 files changed, 194 insertions(+), 20 deletions(-) -- http://git-wip-us.apache.org/repos/asf/ignite/blob/b02c4812/modules/web-console/web-agent/src/main/java/org/apache/ignite/console/agent/handlers/ClusterListener.java -- diff --git a/modules/web-console/web-agent/src/main/java/org/apache/ignite/console/agent/handlers/ClusterListener.java b/modules/web-console/web-agent/src/main/java/org/apache/ignite/console/agent/handlers/ClusterListener.java index b811a2d..435ce74 100644 --- a/modules/web-console/web-agent/src/main/java/org/apache/ignite/console/agent/handlers/ClusterListener.java +++ b/modules/web-console/web-agent/src/main/java/org/apache/ignite/console/agent/handlers/ClusterListener.java @@ -46,7 +46,7 @@ import static org.apache.ignite.internal.IgniteNodeAttributes.ATTR_BUILD_VER; import static org.apache.ignite.internal.processors.rest.GridRestResponse.STATUS_SUCCESS; /** - * API to retranslate topology from Ignite cluster available by node-uri. + * API to transfer topology from Ignite cluster available by node-uri. */ public class ClusterListener { /** */ @@ -65,7 +65,7 @@ public class ClusterListener { private static final long DFLT_TIMEOUT = 3000L; /** JSON object mapper. */ -private static final ObjectMapper mapper = new GridJettyObjectMapper(); +private static final ObjectMapper MAPPER = new GridJettyObjectMapper(); /** Latest topology snapshot. */ private TopologySnapshot top; @@ -234,10 +234,7 @@ public class ClusterListener { /** */ boolean differentCluster(TopologySnapshot old) { -if (old == null || F.isEmpty(old.nids)) -return true; - -return Collections.disjoint(nids, old.nids); +return old == null || F.isEmpty(old.nids) || Collections.disjoint(nids, old.nids); } } @@ -250,7 +247,7 @@ public class ClusterListener { switch (res.getStatus()) { case STATUS_SUCCESS: -List nodes = mapper.readValue(res.getData(), +List nodes = MAPPER.readValue(res.getData(), new TypeReference () {}); TopologySnapshot newTop = new TopologySnapshot(nodes); @@ -290,7 +287,7 @@ public class ClusterListener { switch (res.getStatus()) { case STATUS_SUCCESS: -List nodes = mapper.readValue(res.getData(), +List nodes = MAPPER.readValue(res.getData(), new TypeReference
() {}); TopologySnapshot newTop = new TopologySnapshot(nodes); http://git-wip-us.apache.org/repos/asf/ignite/blob/b02c4812/modules/web-console/web-agent/src/main/java/org/apache/ignite/console/agent/rest/RestExecutor.java -- diff --git a/modules/web-console/web-agent/src/main/java/org/apache/ignite/console/agent/rest/RestExecutor.java b/modules/web-console/web-agent/src/main/java/org/apache/ignite/console/agent/rest/RestExecutor.java index 03eca4e..13989b4 100644 --- a/modules/web-console/web-agent/src/main/java/org/apache/ignite/console/agent/rest/RestExecutor.java +++ b/modules/web-console/web-agent/src/main/java/org/apache/ignite/console/agent/rest/RestExecutor.java @@ -17,9 +17,16 @@ package org.apache.ignite.console.agent.rest; -import com.fasterxml.jackson.databind.JsonNode; +import com.fasterxml.jackson.core.JsonFactory; +import com.fasterxml.jackson.core.JsonGenerator; +import com.fasterxml.jackson.core.JsonParser; +import com.fasterxml.jackson.core.JsonToken; +import com.fasterxml.jackson.databind.DeserializationContext; +import com.fasterxml.jackson.databind.JsonDeserializer; import com.fasterxml.jackson.databind.ObjectMapper; +import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import java.io.IOException;
ignite git commit: IGNITE-5902 Implemented stop caches at once.
Repository: ignite Updated Branches: refs/heads/master 1c62fdad5 -> ebb8765ab IGNITE-5902 Implemented stop caches at once. Project: http://git-wip-us.apache.org/repos/asf/ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/ebb8765a Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/ebb8765a Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/ebb8765a Branch: refs/heads/master Commit: ebb8765ab6735289cc2ceb4ccba2f6fd1e9816a8 Parents: 1c62fda Author: Alexey KuznetsovAuthored: Fri Aug 11 10:25:36 2017 +0700 Committer: Alexey Kuznetsov Committed: Fri Aug 11 10:25:36 2017 +0700 -- .../visor/cache/VisorCacheStopTask.java | 22 .../visor/cache/VisorCacheStopTaskArg.java | 27 2 files changed, 39 insertions(+), 10 deletions(-) -- http://git-wip-us.apache.org/repos/asf/ignite/blob/ebb8765a/modules/core/src/main/java/org/apache/ignite/internal/visor/cache/VisorCacheStopTask.java -- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/visor/cache/VisorCacheStopTask.java b/modules/core/src/main/java/org/apache/ignite/internal/visor/cache/VisorCacheStopTask.java index 9f7c018..df95c5e 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/visor/cache/VisorCacheStopTask.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/visor/cache/VisorCacheStopTask.java @@ -17,8 +17,10 @@ package org.apache.ignite.internal.visor.cache; -import org.apache.ignite.IgniteCache; +import java.util.Collection; +import java.util.HashSet; import org.apache.ignite.internal.processors.task.GridInternal; +import org.apache.ignite.internal.util.typedef.F; import org.apache.ignite.internal.util.typedef.internal.S; import org.apache.ignite.internal.visor.VisorJob; import org.apache.ignite.internal.visor.VisorOneNodeTask; @@ -46,23 +48,23 @@ public class VisorCacheStopTask extends VisorOneNodeTask (arg.getCacheNames()); -IgniteCache cache = ignite.cache(cacheName); +if (F.isEmpty(cacheNames)) +throw new IllegalStateException("Cache names was not specified."); -if (cache == null) -throw new IllegalStateException("Failed to find cache for name: " + cacheName); - -cache.destroy(); +ignite.destroyCaches(cacheNames); return null; } http://git-wip-us.apache.org/repos/asf/ignite/blob/ebb8765a/modules/core/src/main/java/org/apache/ignite/internal/visor/cache/VisorCacheStopTaskArg.java -- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/visor/cache/VisorCacheStopTaskArg.java b/modules/core/src/main/java/org/apache/ignite/internal/visor/cache/VisorCacheStopTaskArg.java index 4976036..77156ab 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/visor/cache/VisorCacheStopTaskArg.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/visor/cache/VisorCacheStopTaskArg.java @@ -20,6 +20,7 @@ package org.apache.ignite.internal.visor.cache; import java.io.IOException; import java.io.ObjectInput; import java.io.ObjectOutput; +import java.util.List; import org.apache.ignite.internal.util.typedef.internal.S; import org.apache.ignite.internal.util.typedef.internal.U; import org.apache.ignite.internal.visor.VisorDataTransferObject; @@ -34,6 +35,9 @@ public class VisorCacheStopTaskArg extends VisorDataTransferObject { /** Cache name. */ private String cacheName; +/** Cache names. */ +private List cacheNames; + /** * Default constructor. */ @@ -49,20 +53,43 @@ public class VisorCacheStopTaskArg extends VisorDataTransferObject { } /** + * @param cacheNames Cache names. + */ +public VisorCacheStopTaskArg(List cacheNames) { +this.cacheNames = cacheNames; +} + +/** * @return Cache name. */ public String
ignite git commit: IGNITE-6027: Added last page marker to GridQueryNexPageResponse, so that responses with unknown row count could be processed correctly. This closes #2426.
Repository: ignite Updated Branches: refs/heads/master 7199037d2 -> 1c62fdad5 IGNITE-6027: Added last page marker to GridQueryNexPageResponse, so that responses with unknown row count could be processed correctly. This closes #2426. Project: http://git-wip-us.apache.org/repos/asf/ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/1c62fdad Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/1c62fdad Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/1c62fdad Branch: refs/heads/master Commit: 1c62fdad521675d6965441b966726d1292cb70e1 Parents: 7199037 Author: devozerovAuthored: Thu Aug 10 23:13:37 2017 +0300 Committer: devozerov Committed: Thu Aug 10 23:13:37 2017 +0300 -- .../messages/GridQueryNextPageResponse.java | 36 ++-- .../query/h2/twostep/GridMapQueryExecutor.java | 6 ++-- .../query/h2/twostep/GridMergeIndex.java| 7 ++-- 3 files changed, 41 insertions(+), 8 deletions(-) -- http://git-wip-us.apache.org/repos/asf/ignite/blob/1c62fdad/modules/core/src/main/java/org/apache/ignite/internal/processors/query/h2/twostep/messages/GridQueryNextPageResponse.java -- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/query/h2/twostep/messages/GridQueryNextPageResponse.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/query/h2/twostep/messages/GridQueryNextPageResponse.java index fe8b34a..4d918a0 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/query/h2/twostep/messages/GridQueryNextPageResponse.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/query/h2/twostep/messages/GridQueryNextPageResponse.java @@ -67,6 +67,9 @@ public class GridQueryNextPageResponse implements Message { /** */ private AffinityTopologyVersion retry; +/** Last page flag. */ +private boolean last; + /** * For {@link Externalizable}. */ @@ -83,9 +86,10 @@ public class GridQueryNextPageResponse implements Message { * @param cols Number of columns in row. * @param vals Values for rows in this page added sequentially. * @param plainRows Not marshalled rows for local node. + * @param last Last page flag. */ public GridQueryNextPageResponse(long qryReqId, int segmentId, int qry, int page, int allRows, int cols, -Collection vals, Collection plainRows) { +Collection vals, Collection plainRows, boolean last) { assert vals != null ^ plainRows != null; assert cols > 0 : cols; @@ -97,6 +101,7 @@ public class GridQueryNextPageResponse implements Message { this.cols = cols; this.vals = vals; this.plainRows = plainRows; +this.last = last; } /** @@ -220,6 +225,11 @@ public class GridQueryNextPageResponse implements Message { writer.incrementState(); +case 8: +if (!writer.writeBoolean("last", last)) +return false; + +writer.incrementState(); } return true; @@ -296,6 +306,14 @@ public class GridQueryNextPageResponse implements Message { return false; reader.incrementState(); + +case 8: +last = reader.readBoolean("last"); + +if (!reader.isLastRead()) +return false; + +reader.incrementState(); } return reader.afterMessageRead(GridQueryNextPageResponse.class); @@ -308,7 +326,7 @@ public class GridQueryNextPageResponse implements Message { /** {@inheritDoc} */ @Override public byte fieldsCount() { -return 8; +return 9; } /** @@ -325,6 +343,20 @@ public class GridQueryNextPageResponse implements Message { this.retry = retry; } +/** + * @return Last page flag. + */ +public boolean last() { +return last; +} + +/** + * @param last Last page flag. + */ +public void last(boolean last) { +this.last = last; +} + /** {@inheritDoc} */ @Override public String toString() { return S.toString(GridQueryNextPageResponse.class, this, http://git-wip-us.apache.org/repos/asf/ignite/blob/1c62fdad/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/twostep/GridMapQueryExecutor.java -- diff --git a/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/twostep/GridMapQueryExecutor.java b/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/twostep/GridMapQueryExecutor.java index e717367..ca978e2
ignite git commit: IGNITE-5901 - Debug
Repository: ignite Updated Branches: refs/heads/ignite-5901 fa2b743b2 -> a117e0893 IGNITE-5901 - Debug Project: http://git-wip-us.apache.org/repos/asf/ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/a117e089 Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/a117e089 Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/a117e089 Branch: refs/heads/ignite-5901 Commit: a117e089372323266d8b0599b36267c5a7199f79 Parents: fa2b743 Author: Alexey GoncharukAuthored: Thu Aug 10 20:30:37 2017 +0300 Committer: Alexey Goncharuk Committed: Thu Aug 10 20:30:37 2017 +0300 -- .../wal/FileWriteAheadLogManager.java | 72 +++- 1 file changed, 41 insertions(+), 31 deletions(-) -- http://git-wip-us.apache.org/repos/asf/ignite/blob/a117e089/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/wal/FileWriteAheadLogManager.java -- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/wal/FileWriteAheadLogManager.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/wal/FileWriteAheadLogManager.java index da295aa..ebc05a4 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/wal/FileWriteAheadLogManager.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/wal/FileWriteAheadLogManager.java @@ -2028,6 +2028,9 @@ public class FileWriteAheadLogManager extends GridCacheSharedManagerAdapter impl flushOrWait(ptr, stop); +if (stopped()) +return; + if (lastFsyncPos != written) { assert lastFsyncPos < written; // Fsync position must be behind. @@ -2069,55 +2072,62 @@ public class FileWriteAheadLogManager extends GridCacheSharedManagerAdapter impl */ private boolean close(boolean rollOver) throws IgniteCheckedException, StorageException { if (stop.compareAndSet(false, true)) { -flushOrWait(null, true); +lock.lock(); + +try { +flushOrWait(null, true); -WALRecord hd = head.get(); +WALRecord hd = head.get(); -assert stopped() : "Segment is not closed after close flush: " + hd; +assert stopped() : "Segment is not closed after close flush: " + hd; -try { -int switchSegmentRecSize = RecordV1Serializer.REC_TYPE_SIZE + RecordV1Serializer.FILE_WAL_POINTER_SIZE; +try { +int switchSegmentRecSize = RecordV1Serializer.REC_TYPE_SIZE + RecordV1Serializer.FILE_WAL_POINTER_SIZE; -if (rollOver && written < (maxSegmentSize - switchSegmentRecSize)) { -//it is expected there is sufficient space for this record because rollover should run early -final ByteBuffer buf = ByteBuffer.allocate(switchSegmentRecSize); - buf.put((byte)(WALRecord.RecordType.SWITCH_SEGMENT_RECORD.ordinal() + 1)); +if (rollOver && written < (maxSegmentSize - switchSegmentRecSize)) { +//it is expected there is sufficient space for this record because rollover should run early +final ByteBuffer buf = ByteBuffer.allocate(switchSegmentRecSize); + buf.put((byte)(WALRecord.RecordType.SWITCH_SEGMENT_RECORD.ordinal() + 1)); -final FileWALPointer pointer = new FileWALPointer(idx, (int)fileIO.position(), -1); -RecordV1Serializer.putPosition(buf, pointer); +final FileWALPointer pointer = new FileWALPointer(idx, (int)fileIO.position(), -1); +RecordV1Serializer.putPosition(buf, pointer); -buf.rewind(); +buf.rewind(); -int rem = buf.remaining(); +int rem = buf.remaining(); -while (rem > 0) { -int written0 = fileIO.write(buf, written); +while (rem > 0) { +int written0 = fileIO.write(buf, written); -written += written0; +written += written0; -rem -= written0; +rem -= written0; +} } -} -//
ignite git commit: IGNITE-5901 - Debug
Repository: ignite Updated Branches: refs/heads/ignite-5901 96ec4cacf -> fa2b743b2 IGNITE-5901 - Debug Project: http://git-wip-us.apache.org/repos/asf/ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/fa2b743b Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/fa2b743b Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/fa2b743b Branch: refs/heads/ignite-5901 Commit: fa2b743b209396fa9c39d3624304eb21612e321b Parents: 96ec4ca Author: Alexey GoncharukAuthored: Thu Aug 10 19:05:02 2017 +0300 Committer: Alexey Goncharuk Committed: Thu Aug 10 19:05:02 2017 +0300 -- .../wal/FileWriteAheadLogManager.java| 19 ++- 1 file changed, 18 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/ignite/blob/fa2b743b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/wal/FileWriteAheadLogManager.java -- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/wal/FileWriteAheadLogManager.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/wal/FileWriteAheadLogManager.java index 17db8f8..da295aa 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/wal/FileWriteAheadLogManager.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/wal/FileWriteAheadLogManager.java @@ -24,6 +24,7 @@ import java.io.FileNotFoundException; import java.io.IOException; import java.nio.ByteBuffer; import java.nio.ByteOrder; +import java.nio.channels.AsynchronousCloseException; import java.nio.file.Files; import java.sql.Time; import java.util.Arrays; @@ -69,6 +70,7 @@ import org.apache.ignite.internal.processors.timeout.GridTimeoutProcessor; import org.apache.ignite.internal.util.GridUnsafe; import org.apache.ignite.internal.util.typedef.F; import org.apache.ignite.internal.util.typedef.G; +import org.apache.ignite.internal.util.typedef.X; import org.apache.ignite.internal.util.typedef.internal.A; import org.apache.ignite.internal.util.typedef.internal.SB; import org.apache.ignite.internal.util.typedef.internal.U; @@ -1675,6 +1677,9 @@ public class FileWriteAheadLogManager extends GridCacheSharedManagerAdapter impl */ private final Condition nextSegment = lock.newCondition(); +/** */ +private volatile Exception closeStack; + /** * @param fileIO I/O file interface to use * @param idx Absolute WAL segment file index for easy access. @@ -2034,6 +2039,10 @@ public class FileWriteAheadLogManager extends GridCacheSharedManagerAdapter impl fileIO.force(); } catch (IOException e) { +if (X.hasCause(e, AsynchronousCloseException.class)) { +log.error("Was concurrently closed: ", closeStack); +} + throw new StorageException(e); } @@ -2062,7 +2071,9 @@ public class FileWriteAheadLogManager extends GridCacheSharedManagerAdapter impl if (stop.compareAndSet(false, true)) { flushOrWait(null, true); -assert stopped() : "Segment is not closed after close flush: " + head.get(); +WALRecord hd = head.get(); + +assert stopped() : "Segment is not closed after close flush: " + hd; try { int switchSegmentRecSize = RecordV1Serializer.REC_TYPE_SIZE + RecordV1Serializer.FILE_WAL_POINTER_SIZE; @@ -2095,6 +2106,8 @@ public class FileWriteAheadLogManager extends GridCacheSharedManagerAdapter impl lastFsyncPos = written; } +closeStack = new Exception("written=" + written + ", head=" + hd); + fileIO.close(); } catch (IOException e) { @@ -,6 +2235,10 @@ public class FileWriteAheadLogManager extends GridCacheSharedManagerAdapter impl assert written == fileIO.position(); } catch (IOException e) { +if (X.hasCause(e, AsynchronousCloseException.class)) { +log.error("Was concurrently closed: ", closeStack); +} + invalidateEnvironmentLocked(e); throw new StorageException(e);
ignite git commit: IGNITE-5961 - Fixed pages() method for FilePageStore
Repository: ignite Updated Branches: refs/heads/master a7ac59f7b -> 7199037d2 IGNITE-5961 - Fixed pages() method for FilePageStore Project: http://git-wip-us.apache.org/repos/asf/ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/7199037d Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/7199037d Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/7199037d Branch: refs/heads/master Commit: 7199037d23e6a9115c6b085fb03a3633c73f863d Parents: a7ac59f Author: Alexey GoncharukAuthored: Thu Aug 10 18:13:17 2017 +0300 Committer: Alexey Goncharuk Committed: Thu Aug 10 18:13:17 2017 +0300 -- .../internal/processors/cache/persistence/file/FilePageStore.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/ignite/blob/7199037d/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/file/FilePageStore.java -- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/file/FilePageStore.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/file/FilePageStore.java index 7fe1ffe..e6c5379 100755 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/file/FilePageStore.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/file/FilePageStore.java @@ -535,6 +535,6 @@ public class FilePageStore implements PageStore { if (!inited) return 0; -return (int)(allocated.get() / pageSize); +return (int)(allocated.get() - headerSize()) / pageSize; } }
ignite git commit: Merge remote-tracking branch 'apache/ignite-5578' into ignite-5872-5578
Repository: ignite Updated Branches: refs/heads/ignite-5872-5578 30339d35c -> 64de3ff31 Merge remote-tracking branch 'apache/ignite-5578' into ignite-5872-5578 Project: http://git-wip-us.apache.org/repos/asf/ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/64de3ff3 Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/64de3ff3 Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/64de3ff3 Branch: refs/heads/ignite-5872-5578 Commit: 64de3ff31f22adfb16a678766db9b88a4d903816 Parents: 30339d3 Author: Alexey GoncharukAuthored: Thu Aug 10 17:11:01 2017 +0300 Committer: Alexey Goncharuk Committed: Thu Aug 10 17:11:01 2017 +0300 -- .../dht/preloader/GridDhtPartitionsExchangeFuture.java| 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/ignite/blob/64de3ff3/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionsExchangeFuture.java -- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionsExchangeFuture.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionsExchangeFuture.java index 861ab38..2c9a4bd 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionsExchangeFuture.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionsExchangeFuture.java @@ -2571,7 +2571,8 @@ public class GridDhtPartitionsExchangeFuture extends GridDhtTopologyFutureAdapte GridDhtPartitionsSingleMessage res = cctx.exchange().createPartitionsSingleMessage( msg.restoreExchangeId(), cctx.kernalContext().clientNode(), -true); +true, +exchActions); if (localJoinExchange() && finishState0 == null) res.cacheGroupsAffinityRequest(exchCtx.groupsAffinityRequestOnJoin());
ignite git commit: Merge remote-tracking branch 'apache/ignite-5578' into ignite-5872-5578
Repository: ignite Updated Branches: refs/heads/ignite-5872-5578 [created] 30339d35c Merge remote-tracking branch 'apache/ignite-5578' into ignite-5872-5578 Project: http://git-wip-us.apache.org/repos/asf/ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/30339d35 Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/30339d35 Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/30339d35 Branch: refs/heads/ignite-5872-5578 Commit: 30339d35c9bba365db0369ca8d892efb3a2b3a96 Parents: 855ece3 bc9a416 Author: Alexey GoncharukAuthored: Thu Aug 10 17:09:53 2017 +0300 Committer: Alexey Goncharuk Committed: Thu Aug 10 17:09:53 2017 +0300 -- .../apache/ignite/IgniteSystemProperties.java |3 + .../java/org/apache/ignite/TestDebugLog.java| 219 ++ .../internal/IgniteDiagnosticMessage.java |2 +- .../communication/GridIoMessageFactory.java |9 +- .../internal/managers/discovery/DiscoCache.java | 79 +- .../discovery/GridDiscoveryManager.java | 28 +- .../affinity/AffinityTopologyVersion.java |7 + .../affinity/GridAffinityAssignmentCache.java | 42 + .../affinity/GridAffinityProcessor.java |8 +- .../cache/CacheAffinitySharedManager.java | 688 -- .../processors/cache/CacheGroupContext.java | 18 +- .../cache/CachePartitionExchangeWorkerTask.java |5 +- .../ClientCacheChangeDummyDiscoveryMessage.java |5 + .../cache/ClientCacheUpdateTimeout.java |5 + .../processors/cache/ClusterCachesInfo.java | 22 +- .../processors/cache/ExchangeContext.java | 131 ++ .../cache/ExchangeDiscoveryEvents.java | 262 +++ .../processors/cache/GridCacheAdapter.java |8 +- .../processors/cache/GridCacheContext.java |2 +- .../processors/cache/GridCacheIoManager.java| 57 +- .../processors/cache/GridCacheMapEntry.java |6 +- .../GridCachePartitionExchangeManager.java | 413 +++- .../processors/cache/GridCacheProcessor.java| 14 +- .../dht/ClientCacheDhtTopologyFuture.java | 12 +- .../dht/GridClientPartitionTopology.java| 132 +- .../distributed/dht/GridDhtCacheAdapter.java| 18 +- .../distributed/dht/GridDhtLocalPartition.java |4 +- .../dht/GridDhtPartitionTopology.java | 37 +- .../dht/GridDhtPartitionTopologyImpl.java | 492 +++-- .../dht/GridDhtPartitionsReservation.java |2 +- .../distributed/dht/GridDhtTopologyFuture.java | 36 +- .../dht/GridDhtTransactionalCacheAdapter.java | 95 +- .../dht/GridPartitionedGetFuture.java |4 +- .../dht/GridPartitionedSingleGetFuture.java |4 +- .../GridDhtAtomicAbstractUpdateFuture.java |2 +- .../dht/atomic/GridDhtAtomicCache.java | 31 +- .../GridNearAtomicSingleUpdateFuture.java |1 - .../colocated/GridDhtColocatedLockFuture.java |2 +- .../preloader/CacheGroupAffinityMessage.java| 274 +++ .../preloader/ForceRebalanceExchangeTask.java |5 + .../preloader/GridDhtPartitionExchangeId.java | 11 + .../dht/preloader/GridDhtPartitionMap.java |2 +- .../dht/preloader/GridDhtPartitionSupplier.java |2 +- .../GridDhtPartitionsAbstractMessage.java | 37 +- .../GridDhtPartitionsExchangeFuture.java| 1974 +- .../preloader/GridDhtPartitionsFullMessage.java | 161 +- .../GridDhtPartitionsSingleMessage.java | 78 +- .../GridDhtPartitionsSingleRequest.java | 47 +- .../dht/preloader/GridDhtPreloader.java | 34 +- .../IgniteDhtPartitionCountersMap.java |7 + .../dht/preloader/InitNewCoordinatorFuture.java | 307 +++ .../RebalanceReassignExchangeTask.java |5 + .../distributed/near/GridNearCacheAdapter.java |2 +- .../distributed/near/GridNearGetFuture.java |4 +- .../distributed/near/GridNearLockFuture.java|2 +- ...arOptimisticSerializableTxPrepareFuture.java |1 + .../near/GridNearOptimisticTxPrepareFuture.java |1 + .../GridNearPessimisticTxPrepareFuture.java |1 + .../near/GridNearTxPrepareRequest.java | 14 + .../GridCacheDatabaseSharedManager.java |7 +- .../cache/query/GridCacheQueryAdapter.java |4 +- .../cache/transactions/IgniteTxAdapter.java |2 +- .../cache/transactions/IgniteTxHandler.java | 184 +- .../closure/GridClosureProcessor.java | 36 +- .../cluster/GridClusterStateProcessor.java |2 +- .../datastreamer/DataStreamProcessor.java | 57 +- .../datastreamer/DataStreamerImpl.java | 65 +- .../datastreamer/PlatformDataStreamer.java |3 +- .../query/schema/SchemaExchangeWorkerTask.java |5 + .../SchemaNodeLeaveExchangeWorkerTask.java |5 + .../processors/task/GridTaskWorker.java |
[08/30] ignite git commit: IGNITE-5923: ODBC: SQLGetTypeInfo now works with SQL_ALL_TYPES
IGNITE-5923: ODBC: SQLGetTypeInfo now works with SQL_ALL_TYPES Project: http://git-wip-us.apache.org/repos/asf/ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/48c914dc Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/48c914dc Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/48c914dc Branch: refs/heads/ignite-5872 Commit: 48c914dcc3a092655636b0df5634c6336dd58a9d Parents: ec115dc Author: Igor SapegoAuthored: Fri Aug 4 13:18:00 2017 +0300 Committer: Igor Sapego Committed: Fri Aug 4 13:18:00 2017 +0300 -- modules/platforms/cpp/odbc-test/Makefile.am | 1 + .../cpp/odbc-test/include/complex_type.h| 53 +++--- .../cpp/odbc-test/project/vs/odbc-test.vcxproj | 1 + .../project/vs/odbc-test.vcxproj.filters| 3 + .../cpp/odbc-test/src/meta_queries_test.cpp | 189 +++ modules/platforms/cpp/odbc/src/odbc.cpp | 2 +- .../cpp/odbc/src/query/type_info_query.cpp | 2 +- modules/platforms/cpp/odbc/src/statement.cpp| 2 +- 8 files changed, 223 insertions(+), 30 deletions(-) -- http://git-wip-us.apache.org/repos/asf/ignite/blob/48c914dc/modules/platforms/cpp/odbc-test/Makefile.am -- diff --git a/modules/platforms/cpp/odbc-test/Makefile.am b/modules/platforms/cpp/odbc-test/Makefile.am index 56ae56a..1d65468 100644 --- a/modules/platforms/cpp/odbc-test/Makefile.am +++ b/modules/platforms/cpp/odbc-test/Makefile.am @@ -61,6 +61,7 @@ ignite_odbc_tests_SOURCES = \ src/column_test.cpp \ src/configuration_test.cpp \ src/row_test.cpp \ +src/meta_queries_test.cpp \ src/utility_test.cpp \ src/queries_test.cpp \ src/test_utils.cpp \ http://git-wip-us.apache.org/repos/asf/ignite/blob/48c914dc/modules/platforms/cpp/odbc-test/include/complex_type.h -- diff --git a/modules/platforms/cpp/odbc-test/include/complex_type.h b/modules/platforms/cpp/odbc-test/include/complex_type.h index 8a1bd59..b4004ea 100644 --- a/modules/platforms/cpp/odbc-test/include/complex_type.h +++ b/modules/platforms/cpp/odbc-test/include/complex_type.h @@ -1,4 +1,4 @@ -/* +/* * 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. @@ -21,7 +21,6 @@ #include #include "ignite/ignite.h" -#include "ignite/ignition.h" namespace ignite { @@ -34,6 +33,18 @@ namespace ignite // No-op. } +friend bool operator==(TestObject const& lhs, TestObject const& rhs) +{ +return lhs.f1 == rhs.f1 && lhs.f2 == rhs.f2; +} + +friend std::ostream& operator<<(std::ostream& str, TestObject const& obj) +{ +str << "TestObject::f1: " << obj.f1 +<< "TestObject::f2: " << obj.f2; +return str; +} + int32_t f1; std::string f2; }; @@ -46,35 +57,23 @@ namespace ignite // No-op. } +friend bool operator==(ComplexType const& lhs, ComplexType const& rhs) +{ +return lhs.i32Field == rhs.i32Field && lhs.objField == rhs.objField && lhs.strField == rhs.strField; +} + +friend std::ostream& operator<<(std::ostream& str, ComplexType const& obj) +{ +str << "ComplexType::i32Field: " << obj.i32Field +<< "ComplexType::objField: " << obj.objField +<< "ComplexType::strField: " << obj.strField; +return str; +} + int32_t i32Field; TestObject objField; std::string strField; }; - -bool operator==(TestObject const& lhs, TestObject const& rhs) -{ -return lhs.f1 == rhs.f1 && lhs.f2 == rhs.f2; -} - -bool operator==(ComplexType const& lhs, ComplexType const& rhs) -{ -return lhs.i32Field == rhs.i32Field && lhs.objField == rhs.objField && lhs.strField == rhs.strField; -} - -std::ostream& operator<<(std::ostream& str, TestObject const& obj) -{ -str << "TestObject::f1: " << obj.f1 -<< "TestObject::f2: " << obj.f2; -return str; -} - -std::ostream& operator<<(std::ostream& str, ComplexType const& obj) -{ -str << "ComplexType::i32Field: " << obj.i32Field -<< "ComplexType::objField: " << obj.objField -<< "ComplexType::strField: " << obj.strField; -return str; -} } namespace ignite http://git-wip-us.apache.org/repos/asf/ignite/blob/48c914dc/modules/platforms/cpp/odbc-test/project/vs/odbc-test.vcxproj
[06/30] ignite git commit: IGNITE-5126: Batch support for this JDBC driver. This closes #2162.
IGNITE-5126: Batch support for this JDBC driver. This closes #2162. Project: http://git-wip-us.apache.org/repos/asf/ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/1a7354fa Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/1a7354fa Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/1a7354fa Branch: refs/heads/ignite-5872 Commit: 1a7354fa6b45c3c33d3cf3f8a9f4b56bfbf5f507 Parents: e8b355f Author: tledkov-gridgainAuthored: Fri Aug 4 11:46:14 2017 +0300 Committer: devozerov Committed: Fri Aug 4 11:46:14 2017 +0300 -- .../jdbc/suite/IgniteJdbcDriverTestSuite.java | 2 + .../ignite/jdbc/thin/JdbcThinBatchSelfTest.java | 333 +++ .../jdbc/thin/JdbcThinPreparedStatement.java| 16 +- .../internal/jdbc/thin/JdbcThinStatement.java | 46 ++- .../internal/jdbc/thin/JdbcThinTcpIo.java | 20 ++ .../odbc/jdbc/JdbcBatchExecuteRequest.java | 109 ++ .../odbc/jdbc/JdbcBatchExecuteResult.java | 96 ++ .../processors/odbc/jdbc/JdbcQuery.java | 95 ++ .../processors/odbc/jdbc/JdbcRequest.java | 8 + .../odbc/jdbc/JdbcRequestHandler.java | 66 +++- .../processors/odbc/jdbc/JdbcResult.java| 11 + 11 files changed, 794 insertions(+), 8 deletions(-) -- http://git-wip-us.apache.org/repos/asf/ignite/blob/1a7354fa/modules/clients/src/test/java/org/apache/ignite/jdbc/suite/IgniteJdbcDriverTestSuite.java -- diff --git a/modules/clients/src/test/java/org/apache/ignite/jdbc/suite/IgniteJdbcDriverTestSuite.java b/modules/clients/src/test/java/org/apache/ignite/jdbc/suite/IgniteJdbcDriverTestSuite.java index 8ca3d45..cf7ee8f 100644 --- a/modules/clients/src/test/java/org/apache/ignite/jdbc/suite/IgniteJdbcDriverTestSuite.java +++ b/modules/clients/src/test/java/org/apache/ignite/jdbc/suite/IgniteJdbcDriverTestSuite.java @@ -33,6 +33,7 @@ import org.apache.ignite.jdbc.JdbcPreparedStatementSelfTest; import org.apache.ignite.jdbc.JdbcResultSetSelfTest; import org.apache.ignite.jdbc.JdbcStatementSelfTest; import org.apache.ignite.jdbc.thin.JdbcThinAutoCloseServerCursorTest; +import org.apache.ignite.jdbc.thin.JdbcThinBatchSelfTest; import org.apache.ignite.jdbc.thin.JdbcThinComplexQuerySelfTest; import org.apache.ignite.jdbc.thin.JdbcThinConnectionSelfTest; import org.apache.ignite.jdbc.thin.JdbcThinDeleteStatementSelfTest; @@ -121,6 +122,7 @@ public class IgniteJdbcDriverTestSuite extends TestSuite { suite.addTest(new TestSuite(JdbcThinMergeStatementSelfTest.class)); suite.addTest(new TestSuite(JdbcThinDeleteStatementSelfTest.class)); suite.addTest(new TestSuite(JdbcThinAutoCloseServerCursorTest.class)); +suite.addTest(new TestSuite(JdbcThinBatchSelfTest.class)); // New thin JDBC driver, DDL tests suite.addTest(new TestSuite(JdbcThinDynamicIndexAtomicPartitionedNearSelfTest.class)); http://git-wip-us.apache.org/repos/asf/ignite/blob/1a7354fa/modules/clients/src/test/java/org/apache/ignite/jdbc/thin/JdbcThinBatchSelfTest.java -- diff --git a/modules/clients/src/test/java/org/apache/ignite/jdbc/thin/JdbcThinBatchSelfTest.java b/modules/clients/src/test/java/org/apache/ignite/jdbc/thin/JdbcThinBatchSelfTest.java new file mode 100644 index 000..5781e00 --- /dev/null +++ b/modules/clients/src/test/java/org/apache/ignite/jdbc/thin/JdbcThinBatchSelfTest.java @@ -0,0 +1,333 @@ +/* + * 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.jdbc.thin; + +import java.sql.BatchUpdateException; +import java.sql.PreparedStatement; +import java.sql.SQLException; +import java.sql.Statement; +import java.util.concurrent.Callable; +import org.apache.ignite.testframework.GridTestUtils; + +/** + * Statement test. + */ +public class JdbcThinBatchSelfTest extends JdbcThinAbstractDmlStatementSelfTest { +/** SQL query. */ +private static final String SQL_PREPARED
[24/30] ignite git commit: IGNITE-5658 Optimizations for data streamer
IGNITE-5658 Optimizations for data streamer Project: http://git-wip-us.apache.org/repos/asf/ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/aa81dd14 Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/aa81dd14 Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/aa81dd14 Branch: refs/heads/ignite-5872 Commit: aa81dd14a7d0e21d448acf23a8a3d4eca0f8 Parents: 0e0c2c7 Author: Igor SeliverstovAuthored: Wed Aug 9 19:29:39 2017 +0300 Committer: Yakov Zhdanov Committed: Wed Aug 9 19:29:39 2017 +0300 -- .../org/apache/ignite/IgniteDataStreamer.java | 26 +- .../apache/ignite/IgniteSystemProperties.java | 8 + .../ignite/internal/GridKernalContext.java | 2 +- .../ignite/internal/GridKernalContextImpl.java | 6 +- .../apache/ignite/internal/IgniteKernal.java| 5 +- .../ignite/internal/IgniteNodeAttributes.java | 3 + .../org/apache/ignite/internal/IgnitionEx.java | 23 +- .../ignite/internal/jdbc2/JdbcConnection.java | 5 +- .../managers/communication/GridIoManager.java | 6 + .../managers/communication/GridIoMessage.java | 3 + .../cache/persistence/freelist/PagesList.java | 67 +++-- .../wal/reader/StandaloneGridKernalContext.java | 2 +- .../datastreamer/DataStreamerImpl.java | 281 --- .../datastreamer/DataStreamerRequest.java | 59 +++- .../ignite/internal/util/StripedExecutor.java | 89 +- .../org/apache/ignite/thread/IgniteThread.java | 10 + .../DataStreamProcessorSelfTest.java| 14 +- .../datastreamer/DataStreamerImplSelfTest.java | 3 +- 18 files changed, 427 insertions(+), 185 deletions(-) -- http://git-wip-us.apache.org/repos/asf/ignite/blob/aa81dd14/modules/core/src/main/java/org/apache/ignite/IgniteDataStreamer.java -- diff --git a/modules/core/src/main/java/org/apache/ignite/IgniteDataStreamer.java b/modules/core/src/main/java/org/apache/ignite/IgniteDataStreamer.java index e2473dc..b1f5851 100644 --- a/modules/core/src/main/java/org/apache/ignite/IgniteDataStreamer.java +++ b/modules/core/src/main/java/org/apache/ignite/IgniteDataStreamer.java @@ -20,6 +20,7 @@ package org.apache.ignite; import java.util.Collection; import java.util.Map; import javax.cache.CacheException; +import org.apache.ignite.configuration.IgniteConfiguration; import org.apache.ignite.lang.IgniteBiPredicate; import org.apache.ignite.lang.IgniteFuture; import org.apache.ignite.stream.StreamReceiver; @@ -72,7 +73,7 @@ import org.jetbrains.annotations.Nullable; * this setting limits maximum allowed number of parallel buffered stream messages that * are being processed on remote nodes. If this number is exceeded, then * {@link #addData(Object, Object)} method will block to control memory utilization. - * Default is defined by {@link #DFLT_MAX_PARALLEL_OPS} value. + * Default is equal to CPU count on remote node multiply by {@link #DFLT_PARALLEL_OPS_MULTIPLIER}. * * * {@link #autoFlushFrequency(long)} - automatic flush frequency in milliseconds. Essentially, @@ -100,11 +101,23 @@ import org.jetbrains.annotations.Nullable; * */ public interface IgniteDataStreamer extends AutoCloseable { -/** Default max concurrent put operations count. */ +/** + * Default max concurrent put operations count. + * @deprecated Is not used anymore. + */ +@Deprecated public static final int DFLT_MAX_PARALLEL_OPS = 16; -/** Default per node buffer size. */ -public static final int DFLT_PER_NODE_BUFFER_SIZE = 1024; +/** + * Default multiplier for data streamer pool size to get concurrent batches count for each remote node. + * + * @see IgniteConfiguration#getDataStreamerThreadPoolSize() + * @see #perNodeParallelOperations() + */ +public static final int DFLT_PARALLEL_OPS_MULTIPLIER = 8; + +/** Default operations batch size to sent to remote node for loading. */ +public static final int DFLT_PER_NODE_BUFFER_SIZE = 512; /** Default timeout for streamer's operations. */ public static final long DFLT_UNLIMIT_TIMEOUT = -1; @@ -203,9 +216,11 @@ public interface IgniteDataStreamer extends AutoCloseable { * * This method should be called prior to {@link #addData(Object, Object)} call. * - * If not provided, default value is {@link #DFLT_MAX_PARALLEL_OPS}. + * If not provided, default value is calculated as follows + * {@link #DFLT_PARALLEL_OPS_MULTIPLIER} * {@code DATA_STREAMER_POOL_SIZE_ON_REMOTE_NODE}. * * @param parallelOps Maximum number of parallel stream operations for a single node. + * @see IgniteConfiguration#getDataStreamerThreadPoolSize() */
[20/30] ignite git commit: IGNITE-5734 Web Console: Fixed npm dependencies.
IGNITE-5734 Web Console: Fixed npm dependencies. Project: http://git-wip-us.apache.org/repos/asf/ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/aeafbf10 Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/aeafbf10 Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/aeafbf10 Branch: refs/heads/ignite-5872 Commit: aeafbf10c13af75556a019749e54c9e4251d91b7 Parents: ebed404 Author: Alexey KuznetsovAuthored: Wed Aug 9 17:22:54 2017 +0700 Committer: Alexey Kuznetsov Committed: Wed Aug 9 17:22:54 2017 +0700 -- modules/web-console/frontend/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/ignite/blob/aeafbf10/modules/web-console/frontend/package.json -- diff --git a/modules/web-console/frontend/package.json b/modules/web-console/frontend/package.json index 6b049ff..f96c322 100644 --- a/modules/web-console/frontend/package.json +++ b/modules/web-console/frontend/package.json @@ -57,7 +57,7 @@ "babel-polyfill": "6.23.0", "babel-preset-es2015": "6.24.1", "babel-preset-stage-1": "6.24.1", -"babel-runtime": "6.23.0", +"babel-runtime": "6.25.0", "bootstrap-sass": "3.3.7", "brace": "0.10.0", "copy-webpack-plugin": "4.0.1",
[21/30] ignite git commit: IGNITE-5897 Fix session init/end logic. This fixes tests.
IGNITE-5897 Fix session init/end logic. This fixes tests. Signed-off-by: nikolay_tikhonovProject: http://git-wip-us.apache.org/repos/asf/ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/5a559dfa Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/5a559dfa Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/5a559dfa Branch: refs/heads/ignite-5872 Commit: 5a559dfa167db3ff90f35ac06624afc2688dacb9 Parents: aeafbf1 Author: Nikolay Izhikov Authored: Wed Aug 9 13:37:11 2017 +0300 Committer: nikolay_tikhonov Committed: Wed Aug 9 13:37:11 2017 +0300 -- .../cache/store/CacheStoreManager.java | 4 +++- .../store/GridCacheStoreManagerAdapter.java | 20 +--- .../cache/transactions/IgniteTxAdapter.java | 9 +++-- 3 files changed, 19 insertions(+), 14 deletions(-) -- http://git-wip-us.apache.org/repos/asf/ignite/blob/5a559dfa/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/store/CacheStoreManager.java -- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/store/CacheStoreManager.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/store/CacheStoreManager.java index c56a25c..83428b3 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/store/CacheStoreManager.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/store/CacheStoreManager.java @@ -168,9 +168,11 @@ public interface CacheStoreManager extends GridCacheManager { /** * @param tx Transaction. * @param commit Commit. + * @param last {@code True} if this is last store in transaction. + * @param storeSessionEnded {@code True} if session for underlying store already ended. * @throws IgniteCheckedException If failed. */ -public void sessionEnd(IgniteInternalTx tx, boolean commit, boolean last) throws IgniteCheckedException; +public void sessionEnd(IgniteInternalTx tx, boolean commit, boolean last, boolean storeSessionEnded) throws IgniteCheckedException; /** * End session initiated by write-behind store. http://git-wip-us.apache.org/repos/asf/ignite/blob/5a559dfa/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/store/GridCacheStoreManagerAdapter.java -- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/store/GridCacheStoreManagerAdapter.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/store/GridCacheStoreManagerAdapter.java index 83f07fb..9fe1f0c 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/store/GridCacheStoreManagerAdapter.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/store/GridCacheStoreManagerAdapter.java @@ -774,7 +774,8 @@ public abstract class GridCacheStoreManagerAdapter extends GridCacheManagerAdapt } /** {@inheritDoc} */ -@Override public final void sessionEnd(IgniteInternalTx tx, boolean commit, boolean last) throws IgniteCheckedException { +@Override public final void sessionEnd(IgniteInternalTx tx, boolean commit, boolean last, +boolean storeSessionEnded) throws IgniteCheckedException { assert store != null; sessionInit0(tx); @@ -785,7 +786,7 @@ public abstract class GridCacheStoreManagerAdapter extends GridCacheManagerAdapt lsnr.onSessionEnd(locSes, commit); } -if (!sesHolder.get().ended(store)) +if (!sesHolder.get().ended(store) && !storeSessionEnded) store.sessionEnd(commit); } catch (Throwable e) { @@ -854,7 +855,7 @@ public abstract class GridCacheStoreManagerAdapter extends GridCacheManagerAdapt sesHolder.set(ses); try { -if (sesLsnrs != null && !ses.started(this)) { +if (!ses.started(store) && sesLsnrs != null) { for (CacheStoreSessionListener lsnr : sesLsnrs) lsnr.onSessionStart(locSes); } @@ -918,11 +919,8 @@ public abstract class GridCacheStoreManagerAdapter extends GridCacheManagerAdapt private Object attach; /** */ -private final Set started = -new GridSetWrapper<>(new IdentityHashMap ()); - -/** */ -private final Set ended = new GridSetWrapper<>(new IdentityHashMap ()); +private final Set started = +new GridSetWrapper<>(new IdentityHashMap ()); /** * @param
[19/30] ignite git commit: IGNITE-5993: Removed unused SQL-related classes and methods (old tree index, snapshots, etc). This closes #2414.
IGNITE-5993: Removed unused SQL-related classes and methods (old tree index, snapshots, etc). This closes #2414. Project: http://git-wip-us.apache.org/repos/asf/ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/ebed404b Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/ebed404b Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/ebed404b Branch: refs/heads/ignite-5872 Commit: ebed404bd1932fc8a937ce34140e5a2fd69f5f59 Parents: 870ecf8 Author: devozerovAuthored: Wed Aug 9 11:47:58 2017 +0300 Committer: devozerov Committed: Wed Aug 9 11:47:58 2017 +0300 -- .../query/h2/opt/GridH2SpatialIndex.java| 7 - .../processors/query/h2/H2RowDescriptor.java| 11 - .../processors/query/h2/H2TableEngine.java | 4 +- .../query/h2/database/H2PkHashIndex.java| 7 - .../query/h2/database/H2TreeIndex.java | 26 - .../query/h2/opt/GridH2IndexBase.java | 93 +-- .../query/h2/opt/GridH2QueryContext.java| 59 -- .../query/h2/opt/GridH2RowDescriptor.java | 5 - .../processors/query/h2/opt/GridH2Table.java| 186 +- .../query/h2/opt/GridH2TreeIndex.java | 602 --- .../query/h2/twostep/GridMapQueryExecutor.java | 25 - .../query/h2/opt/GridH2TableSelfTest.java | 172 -- 12 files changed, 7 insertions(+), 1190 deletions(-) -- http://git-wip-us.apache.org/repos/asf/ignite/blob/ebed404b/modules/geospatial/src/main/java/org/apache/ignite/internal/processors/query/h2/opt/GridH2SpatialIndex.java -- diff --git a/modules/geospatial/src/main/java/org/apache/ignite/internal/processors/query/h2/opt/GridH2SpatialIndex.java b/modules/geospatial/src/main/java/org/apache/ignite/internal/processors/query/h2/opt/GridH2SpatialIndex.java index 9389290..d83e860 100644 --- a/modules/geospatial/src/main/java/org/apache/ignite/internal/processors/query/h2/opt/GridH2SpatialIndex.java +++ b/modules/geospatial/src/main/java/org/apache/ignite/internal/processors/query/h2/opt/GridH2SpatialIndex.java @@ -31,7 +31,6 @@ import java.util.concurrent.locks.ReentrantReadWriteLock; import org.apache.ignite.IgniteCheckedException; import org.apache.ignite.internal.processors.query.h2.H2Cursor; import org.apache.ignite.internal.util.GridCursorIteratorWrapper; -import org.apache.ignite.internal.util.IgniteTree; import org.apache.ignite.internal.util.lang.GridCursor; import org.h2.engine.Session; import org.h2.index.Cursor; @@ -51,7 +50,6 @@ import org.h2.table.IndexColumn; import org.h2.table.TableFilter; import org.h2.value.Value; import org.h2.value.ValueGeometry; -import org.jetbrains.annotations.Nullable; import static org.apache.ignite.internal.processors.query.h2.opt.GridH2AbstractKeyValueRow.KEY_COL; @@ -158,11 +156,6 @@ public class GridH2SpatialIndex extends GridH2IndexBase implements SpatialIndex } /** {@inheritDoc} */ -@Nullable @Override protected IgniteTree doTakeSnapshot() { -return null; // TODO We do not support snapshots, but probably this is possible. -} - -/** {@inheritDoc} */ @Override public GridH2Row put(GridH2Row row) { assert row instanceof GridH2AbstractKeyValueRow : "requires key to be at 0"; http://git-wip-us.apache.org/repos/asf/ignite/blob/ebed404b/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/H2RowDescriptor.java -- diff --git a/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/H2RowDescriptor.java b/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/H2RowDescriptor.java index dab83d1..31f0e69 100644 --- a/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/H2RowDescriptor.java +++ b/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/H2RowDescriptor.java @@ -107,9 +107,6 @@ public class H2RowDescriptor implements GridH2RowDescriptor { private final GridUnsafeGuard guard; /** */ -private final boolean snapshotableIdx; - -/** */ private final GridQueryProperty[] props; /** Id of user-defined key column */ @@ -170,9 +167,6 @@ public class H2RowDescriptor implements GridH2RowDescriptor { valueAliasColumnId = (type.valueFieldName() != null) ? DEFAULT_COLUMNS_COUNT + fieldsList.indexOf(type.valueFieldAlias()) : -1; - -// Index is not snapshotable in db-x. -snapshotableIdx = false; } /** {@inheritDoc} */ @@ -382,11 +376,6 @@ public class H2RowDescriptor implements GridH2RowDescriptor { } /** {@inheritDoc} */ -@Override public boolean snapshotableIndex() { -
[18/30] ignite git commit: Merge remote-tracking branch 'origin/master'
Merge remote-tracking branch 'origin/master' Project: http://git-wip-us.apache.org/repos/asf/ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/870ecf89 Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/870ecf89 Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/870ecf89 Branch: refs/heads/ignite-5872 Commit: 870ecf89d94c108c62442263e0ac298697d341d1 Parents: e28d0d6 c141ded Author: devozerovAuthored: Tue Aug 8 15:17:18 2017 +0300 Committer: devozerov Committed: Tue Aug 8 15:17:18 2017 +0300 -- .../processors/cache/GridCacheAbstractLocalStoreSelfTest.java | 7 +++ 1 file changed, 7 insertions(+) --
[04/30] ignite git commit: IGNITE-5920: Fixed CacheClientBinaryQueryExample": set CacheKeyConfiguration explicitly to enable affinity co-location. This closes #2389.
IGNITE-5920: Fixed CacheClientBinaryQueryExample": set CacheKeyConfiguration explicitly to enable affinity co-location. This closes #2389. Project: http://git-wip-us.apache.org/repos/asf/ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/e8b355f9 Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/e8b355f9 Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/e8b355f9 Branch: refs/heads/ignite-5872 Commit: e8b355f9d375e6d53a5fc55008a9c38864fba0a8 Parents: 80cc292 Author: tledkov-gridgainAuthored: Fri Aug 4 11:16:52 2017 +0300 Committer: devozerov Committed: Fri Aug 4 11:16:52 2017 +0300 -- .../examples/binary/datagrid/CacheClientBinaryQueryExample.java | 3 +++ 1 file changed, 3 insertions(+) -- http://git-wip-us.apache.org/repos/asf/ignite/blob/e8b355f9/examples/src/main/java/org/apache/ignite/examples/binary/datagrid/CacheClientBinaryQueryExample.java -- diff --git a/examples/src/main/java/org/apache/ignite/examples/binary/datagrid/CacheClientBinaryQueryExample.java b/examples/src/main/java/org/apache/ignite/examples/binary/datagrid/CacheClientBinaryQueryExample.java index c2d4964..a3c9996 100644 --- a/examples/src/main/java/org/apache/ignite/examples/binary/datagrid/CacheClientBinaryQueryExample.java +++ b/examples/src/main/java/org/apache/ignite/examples/binary/datagrid/CacheClientBinaryQueryExample.java @@ -25,6 +25,7 @@ import javax.cache.Cache; import org.apache.ignite.Ignite; import org.apache.ignite.IgniteCache; import org.apache.ignite.Ignition; +import org.apache.ignite.cache.CacheKeyConfiguration; import org.apache.ignite.cache.CacheMode; import org.apache.ignite.cache.QueryEntity; import org.apache.ignite.cache.QueryIndex; @@ -84,6 +85,8 @@ public class CacheClientBinaryQueryExample { employeeCacheCfg.setQueryEntities(Arrays.asList(createEmployeeQueryEntity())); +employeeCacheCfg.setKeyConfiguration(new CacheKeyConfiguration(EmployeeKey.class)); + try (IgniteCache orgCache = ignite.getOrCreateCache(orgCacheCfg); IgniteCache employeeCache = ignite.getOrCreateCache(employeeCacheCfg) ) {
[22/30] ignite git commit: IGNITE-5987 Added -nq (visor will not quit in batch mode) option for Visor Cmd.
IGNITE-5987 Added -nq (visor will not quit in batch mode) option for Visor Cmd. Project: http://git-wip-us.apache.org/repos/asf/ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/8d6e8420 Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/8d6e8420 Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/8d6e8420 Branch: refs/heads/ignite-5872 Commit: 8d6e8420fdf1fcd853277704fd68c2d48ac1012d Parents: 5a559df Author: Alexey KuznetsovAuthored: Wed Aug 9 18:55:04 2017 +0700 Committer: Alexey Kuznetsov Committed: Wed Aug 9 18:55:04 2017 +0700 -- .../org/apache/ignite/visor/commands/VisorConsole.scala | 12 ++-- 1 file changed, 10 insertions(+), 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/ignite/blob/8d6e8420/modules/visor-console/src/main/scala/org/apache/ignite/visor/commands/VisorConsole.scala -- diff --git a/modules/visor-console/src/main/scala/org/apache/ignite/visor/commands/VisorConsole.scala b/modules/visor-console/src/main/scala/org/apache/ignite/visor/commands/VisorConsole.scala index 19d130e..d53a0d5 100644 --- a/modules/visor-console/src/main/scala/org/apache/ignite/visor/commands/VisorConsole.scala +++ b/modules/visor-console/src/main/scala/org/apache/ignite/visor/commands/VisorConsole.scala @@ -92,6 +92,7 @@ class VisorConsole { println("-cfg= - connect with specified configuration.") println("-b=- batch mode with file.") println("-e=cmd1;cmd2;... - batch mode with commands.") +println("-nq - batch mode will not quit after execution (useful for alerts monitoring).") visor.quit() } @@ -103,6 +104,10 @@ class VisorConsole { val cfgFile = argValue("cfg", argLst) val batchFile = argValue("b", argLst) val batchCommand = argValue("e", argLst) +val noBatchQuit = hasArgName("nq", argLst) + +if (noBatchQuit && batchFile.isEmpty && batchCommand.isEmpty) +visor.warn("Option \"-nq\" will be ignored because batch mode options \"-b\" or \"-e\" were not specified.") cfgFile.foreach(cfg => { if (cfg.trim.isEmpty) { @@ -149,7 +154,10 @@ class VisorConsole { case Some(cmd) => visor.batchMode = true -new ByteArrayInputStream((cmd + "\nquit\n").getBytes("UTF-8")) +val script = if (noBatchQuit) cmd else cmd + "\nquit\n" + +new ByteArrayInputStream(script.getBytes("UTF-8")) + case None => new FileInputStream(FileDescriptor.in) } @@ -159,7 +167,7 @@ class VisorConsole { new TerminalSupport(false) {} } catch { -case ignored: ClassNotFoundException => null +case _: ClassNotFoundException => null } val reader = new ConsoleReader(inputStream, System.out, term)
[16/30] ignite git commit: IGNITE-5984 - Test fix: scan for a test key only after late affinity assignment changes
IGNITE-5984 - Test fix: scan for a test key only after late affinity assignment changes Project: http://git-wip-us.apache.org/repos/asf/ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/c141ded2 Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/c141ded2 Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/c141ded2 Branch: refs/heads/ignite-5872 Commit: c141ded2565b0b277add5007f73a6fa7e97b3372 Parents: 9da6938 Author: Alexey GoncharukAuthored: Tue Aug 8 14:53:34 2017 +0300 Committer: Alexey Goncharuk Committed: Tue Aug 8 14:53:34 2017 +0300 -- .../processors/cache/GridCacheAbstractLocalStoreSelfTest.java | 7 +++ 1 file changed, 7 insertions(+) -- http://git-wip-us.apache.org/repos/asf/ignite/blob/c141ded2/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAbstractLocalStoreSelfTest.java -- diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAbstractLocalStoreSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAbstractLocalStoreSelfTest.java index ae9986d..328cde8 100644 --- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAbstractLocalStoreSelfTest.java +++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAbstractLocalStoreSelfTest.java @@ -47,6 +47,7 @@ import org.apache.ignite.configuration.IgniteConfiguration; import org.apache.ignite.configuration.NearCacheConfiguration; import org.apache.ignite.events.Event; import org.apache.ignite.events.EventType; +import org.apache.ignite.internal.processors.affinity.AffinityTopologyVersion; import org.apache.ignite.internal.processors.cache.store.CacheLocalStore; import org.apache.ignite.internal.util.lang.GridAbsPredicate; import org.apache.ignite.internal.util.typedef.G; @@ -294,6 +295,12 @@ public abstract class GridCacheAbstractLocalStoreSelfTest extends GridCommonAbst awaitPartitionMapExchange(); +// We need a backup key on grid 1, so we must wait for late affinity assignment to change. +AffinityTopologyVersion waitTopVer = new AffinityTopologyVersion(2, 1); + + grid(1).context().cache().context().exchange().affinityReadyFuture(waitTopVer).get(); + grid(2).context().cache().context().exchange().affinityReadyFuture(waitTopVer).get(); + final String name = BACKUP_CACHE_2; int key1 = -1;
[26/30] ignite git commit: Merge remote-tracking branch 'community/ignite-2.1.3'
Merge remote-tracking branch 'community/ignite-2.1.3' Project: http://git-wip-us.apache.org/repos/asf/ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/b5ad7296 Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/b5ad7296 Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/b5ad7296 Branch: refs/heads/ignite-5872 Commit: b5ad7296997185ed2d078614b3ed6e9a6f405670 Parents: 988ffe3 2e5c343 Author: Alexey GoncharukAuthored: Thu Aug 10 12:08:41 2017 +0300 Committer: Alexey Goncharuk Committed: Thu Aug 10 12:08:41 2017 +0300 -- .../cache/persistence/tree/io/PagePartitionCountersIO.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) --
[10/30] ignite git commit: IGNITE-4800: Lucene query may fails with NPE. This closes #2315.
IGNITE-4800: Lucene query may fails with NPE. This closes #2315. Project: http://git-wip-us.apache.org/repos/asf/ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/359777f2 Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/359777f2 Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/359777f2 Branch: refs/heads/ignite-5872 Commit: 359777f2355483b3d206b874117d680076a03853 Parents: 48c914d Author: Andrey V. MashenkovAuthored: Mon Jul 31 17:32:12 2017 +0300 Committer: Andrey V. Mashenkov Committed: Fri Aug 4 18:06:18 2017 +0300 -- .../query/h2/opt/GridLuceneDirectory.java | 64 +++--- .../processors/query/h2/opt/GridLuceneFile.java | 91 +++- .../query/h2/opt/GridLuceneIndex.java | 3 +- .../query/h2/opt/GridLuceneInputStream.java | 42 ++--- .../query/h2/opt/GridLuceneOutputStream.java| 18 +++- ...teCacheFullTextQueryNodeJoiningSelfTest.java | 3 +- .../IgniteCacheQuerySelfTestSuite.java | 2 + 7 files changed, 176 insertions(+), 47 deletions(-) -- http://git-wip-us.apache.org/repos/asf/ignite/blob/359777f2/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/opt/GridLuceneDirectory.java -- diff --git a/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/opt/GridLuceneDirectory.java b/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/opt/GridLuceneDirectory.java index ff20987..3ac9641 100644 --- a/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/opt/GridLuceneDirectory.java +++ b/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/opt/GridLuceneDirectory.java @@ -21,22 +21,27 @@ import java.io.FileNotFoundException; import java.io.IOException; import java.util.ArrayList; import java.util.Collection; +import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.Set; import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.atomic.AtomicLong; +import org.apache.ignite.IgniteException; import org.apache.ignite.internal.util.offheap.unsafe.GridUnsafeMemory; +import org.apache.ignite.internal.util.typedef.F; import org.apache.lucene.store.BaseDirectory; import org.apache.lucene.store.Directory; import org.apache.lucene.store.IOContext; import org.apache.lucene.store.IndexInput; import org.apache.lucene.store.IndexOutput; +import org.apache.lucene.util.Accountable; +import org.apache.lucene.util.Accountables; /** * A memory-resident {@link Directory} implementation. */ -public class GridLuceneDirectory extends BaseDirectory { +public class GridLuceneDirectory extends BaseDirectory implements Accountable { /** */ protected final Map fileMap = new ConcurrentHashMap<>(); @@ -51,7 +56,7 @@ public class GridLuceneDirectory extends BaseDirectory { * * @param mem Memory. */ -public GridLuceneDirectory(GridUnsafeMemory mem) { +GridLuceneDirectory(GridUnsafeMemory mem) { super(new GridLuceneLockFactory()); this.mem = mem; @@ -64,10 +69,7 @@ public class GridLuceneDirectory extends BaseDirectory { // and the code below is resilient to map changes during the array population. Set fileNames = fileMap.keySet(); -List names = new ArrayList<>(fileNames.size()); - -for (String name : fileNames) -names.add(name); +List names = new ArrayList<>(fileNames); return names.toArray(new String[names.size()]); } @@ -82,6 +84,7 @@ public class GridLuceneDirectory extends BaseDirectory { throw new FileNotFoundException(source); fileMap.put(dest, file); + fileMap.remove(source); } @@ -101,21 +104,25 @@ public class GridLuceneDirectory extends BaseDirectory { @Override public void deleteFile(String name) throws IOException { ensureOpen(); -doDeleteFile(name); +doDeleteFile(name, false); } /** * Deletes file. * * @param name File name. + * @param onClose If on close directory; * @throws IOException If failed. */ -private void doDeleteFile(String name) throws IOException { +private void doDeleteFile(String name, boolean onClose) throws IOException { GridLuceneFile file = fileMap.remove(name); if (file != null) { file.delete(); +// All files should be closed when Directory is closing. +assert !onClose || !file.hasRefs() : "Possible memory leak, resource is not closed: " + file.toString(); +
[14/30] ignite git commit: IGNITE-5880: BLAS integration phase 2
IGNITE-5880: BLAS integration phase 2 Project: http://git-wip-us.apache.org/repos/asf/ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/488a6d27 Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/488a6d27 Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/488a6d27 Branch: refs/heads/ignite-5872 Commit: 488a6d271bbeb60d424745fb20ef856c624e2fcb Parents: 9b730e7 Author: Yury BabakAuthored: Mon Aug 7 17:24:21 2017 +0300 Committer: Igor Sapego Committed: Mon Aug 7 17:24:21 2017 +0300 -- .../java/org/apache/ignite/ml/math/Blas.java| 157 --- .../ml/math/impls/matrix/AbstractMatrix.java| 3 +- .../storage/vector/MatrixVectorStorage.java | 11 ++ .../vector/SparseLocalOnHeapVectorStorage.java | 9 ++ .../impls/matrix/MatrixImplementationsTest.java | 5 +- .../RandomAccessSparseVectorStorageTest.java| 4 +- 6 files changed, 56 insertions(+), 133 deletions(-) -- http://git-wip-us.apache.org/repos/asf/ignite/blob/488a6d27/modules/ml/src/main/java/org/apache/ignite/ml/math/Blas.java -- diff --git a/modules/ml/src/main/java/org/apache/ignite/ml/math/Blas.java b/modules/ml/src/main/java/org/apache/ignite/ml/math/Blas.java index 29312e5..a61d796 100644 --- a/modules/ml/src/main/java/org/apache/ignite/ml/math/Blas.java +++ b/modules/ml/src/main/java/org/apache/ignite/ml/math/Blas.java @@ -19,8 +19,6 @@ package org.apache.ignite.ml.math; import com.github.fommil.netlib.BLAS; import com.github.fommil.netlib.F2jBLAS; -import it.unimi.dsi.fastutil.ints.IntIterator; -import it.unimi.dsi.fastutil.ints.IntSet; import java.util.Set; import org.apache.ignite.ml.math.exceptions.CardinalityException; import org.apache.ignite.ml.math.exceptions.MathIllegalArgumentException; @@ -30,7 +28,10 @@ import org.apache.ignite.ml.math.impls.matrix.DenseLocalOnHeapMatrix; import org.apache.ignite.ml.math.impls.matrix.SparseBlockDistributedMatrix; import org.apache.ignite.ml.math.impls.matrix.SparseDistributedMatrix; import org.apache.ignite.ml.math.impls.matrix.SparseLocalOnHeapMatrix; +import org.apache.ignite.ml.math.impls.vector.CacheVector; +import org.apache.ignite.ml.math.impls.vector.DenseLocalOffHeapVector; import org.apache.ignite.ml.math.impls.vector.DenseLocalOnHeapVector; +import org.apache.ignite.ml.math.impls.vector.SparseLocalOffHeapVector; import org.apache.ignite.ml.math.impls.vector.SparseLocalVector; import org.apache.ignite.ml.math.util.MatrixUtil; @@ -244,9 +245,9 @@ public class Blas { else if (alpha == 0.0) scal(c, beta); else { -checkTypes(a, "gemm"); -checkTypes(b, "gemm"); -checkTypes(c, "gemm"); +checkMatrixType(a, "gemm"); +checkMatrixType(b, "gemm"); +checkMatrixType(c, "gemm"); double[] fA = a.getStorage().data(); double[] fB = b.getStorage().data(); @@ -265,7 +266,7 @@ public class Blas { /** * Currently we support only local onheap matrices for BLAS. */ -private static void checkTypes(Matrix a, String op){ +private static void checkMatrixType(Matrix a, String op){ if (a instanceof DenseLocalOffHeapMatrix || a instanceof SparseDistributedMatrix || a instanceof SparseBlockDistributedMatrix) throw new IllegalArgumentException("Operation doesn't support for matrix [class=" @@ -273,37 +274,12 @@ public class Blas { } /** - * y := alpha * A * x + beta * y. - * - * @param alpha Alpha. - * @param a Matrix a. - * @param x Vector x. - * @param beta Beta. - * @param y Vector y. + * Currently we support only local onheap vectors for BLAS. */ -public static void gemv(double alpha, Matrix a, Vector x, double beta, DenseLocalOnHeapVector y) { -checkCardinality(a, x); -checkCardinality(a, y); - -if (alpha == 0.0 && beta == 1.0) -return; - -if (alpha == 0.0) { -scal(y, beta); -return; -} - -if (a instanceof SparseLocalOnHeapMatrix && x instanceof DenseLocalOnHeapVector) -gemv(alpha, (SparseLocalOnHeapMatrix)a, (DenseLocalOnHeapVector)x, beta, y); -else if (a instanceof SparseLocalOnHeapMatrix && x instanceof SparseLocalVector) -gemv(alpha, (SparseLocalOnHeapMatrix)a, (SparseLocalVector)x, beta, y); -else if (a instanceof DenseLocalOnHeapMatrix && x instanceof DenseLocalOnHeapVector) -gemv(alpha, (DenseLocalOnHeapMatrix)a, (DenseLocalOnHeapVector)x, beta, y); -else if (a instanceof DenseLocalOnHeapMatrix && x instanceof SparseLocalVector) -gemv(alpha, (DenseLocalOnHeapMatrix)a,
[05/30] ignite git commit: IGNITE-5920: Fixed CacheClientBinaryQueryExample": set CacheKeyConfiguration explicitly to enable affinity co-location. This closes #2389.
IGNITE-5920: Fixed CacheClientBinaryQueryExample": set CacheKeyConfiguration explicitly to enable affinity co-location. This closes #2389. Project: http://git-wip-us.apache.org/repos/asf/ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/eb336074 Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/eb336074 Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/eb336074 Branch: refs/heads/ignite-5872 Commit: eb336074c91da2e35aab4ca9f69a5d7191b3701b Parents: 6bdad4d Author: tledkov-gridgainAuthored: Fri Aug 4 11:16:52 2017 +0300 Committer: devozerov Committed: Fri Aug 4 11:18:09 2017 +0300 -- .../examples/binary/datagrid/CacheClientBinaryQueryExample.java | 3 +++ 1 file changed, 3 insertions(+) -- http://git-wip-us.apache.org/repos/asf/ignite/blob/eb336074/examples/src/main/java/org/apache/ignite/examples/binary/datagrid/CacheClientBinaryQueryExample.java -- diff --git a/examples/src/main/java/org/apache/ignite/examples/binary/datagrid/CacheClientBinaryQueryExample.java b/examples/src/main/java/org/apache/ignite/examples/binary/datagrid/CacheClientBinaryQueryExample.java index c2d4964..a3c9996 100644 --- a/examples/src/main/java/org/apache/ignite/examples/binary/datagrid/CacheClientBinaryQueryExample.java +++ b/examples/src/main/java/org/apache/ignite/examples/binary/datagrid/CacheClientBinaryQueryExample.java @@ -25,6 +25,7 @@ import javax.cache.Cache; import org.apache.ignite.Ignite; import org.apache.ignite.IgniteCache; import org.apache.ignite.Ignition; +import org.apache.ignite.cache.CacheKeyConfiguration; import org.apache.ignite.cache.CacheMode; import org.apache.ignite.cache.QueryEntity; import org.apache.ignite.cache.QueryIndex; @@ -84,6 +85,8 @@ public class CacheClientBinaryQueryExample { employeeCacheCfg.setQueryEntities(Arrays.asList(createEmployeeQueryEntity())); +employeeCacheCfg.setKeyConfiguration(new CacheKeyConfiguration(EmployeeKey.class)); + try (IgniteCache orgCache = ignite.getOrCreateCache(orgCacheCfg); IgniteCache employeeCache = ignite.getOrCreateCache(employeeCacheCfg) ) {
[03/30] ignite git commit: Merge branches 'ignite-2.1.3' and 'master'.
Merge branches 'ignite-2.1.3' and 'master'. Project: http://git-wip-us.apache.org/repos/asf/ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/80cc292c Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/80cc292c Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/80cc292c Branch: refs/heads/ignite-5872 Commit: 80cc292c0d09acdb327047090c1d1448ef6b Parents: d2cb2f7 6bdad4d Author: Alexey KuznetsovAuthored: Thu Aug 3 11:52:06 2017 +0700 Committer: Alexey Kuznetsov Committed: Thu Aug 3 11:52:06 2017 +0700 -- modules/web-console/backend/app/mongo.js | 2 +- modules/web-console/backend/middlewares/api.js | 9 - modules/web-console/backend/services/activities.js | 12 ++-- .../modules/configuration/generator/Maven.service.js | 13 ++--- 4 files changed, 17 insertions(+), 19 deletions(-) --
[25/30] ignite git commit: IGNITE-5912: Redis EXPIRE/PEXPIRE commands. - Fixes #2383.
IGNITE-5912: Redis EXPIRE/PEXPIRE commands. - Fixes #2383. Signed-off-by: shromanProject: http://git-wip-us.apache.org/repos/asf/ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/988ffe3e Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/988ffe3e Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/988ffe3e Branch: refs/heads/ignite-5872 Commit: 988ffe3e131792072e743e103f524ec20394f8e0 Parents: aa81dd1 Author: shroman Authored: Thu Aug 10 09:51:05 2017 +0900 Committer: shroman Committed: Thu Aug 10 09:51:05 2017 +0900 -- .../tcp/redis/RedisProtocolStringSelfTest.java | 44 .../processors/rest/GridRestCommand.java| 3 + .../handlers/cache/GridCacheCommandHandler.java | 75 +- .../key/GridRedisExpireCommandHandler.java | 101 +++ .../protocols/tcp/redis/GridRedisCommand.java | 4 + .../tcp/redis/GridRedisNioListener.java | 2 + 6 files changed, 228 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/ignite/blob/988ffe3e/modules/clients/src/test/java/org/apache/ignite/internal/processors/rest/protocols/tcp/redis/RedisProtocolStringSelfTest.java -- diff --git a/modules/clients/src/test/java/org/apache/ignite/internal/processors/rest/protocols/tcp/redis/RedisProtocolStringSelfTest.java b/modules/clients/src/test/java/org/apache/ignite/internal/processors/rest/protocols/tcp/redis/RedisProtocolStringSelfTest.java index 68b42c4..21a9882 100644 --- a/modules/clients/src/test/java/org/apache/ignite/internal/processors/rest/protocols/tcp/redis/RedisProtocolStringSelfTest.java +++ b/modules/clients/src/test/java/org/apache/ignite/internal/processors/rest/protocols/tcp/redis/RedisProtocolStringSelfTest.java @@ -423,4 +423,48 @@ public class RedisProtocolStringSelfTest extends RedisCommonAbstractTest { Assert.assertEquals(2, (long)jedis.exists("existsKey1", "existsKey2")); } } + +/** + * @throws Exception If failed. + */ +public void testExpire() throws Exception { +testExpire(new Expiration() { +@Override public long expire(Jedis jedis, String key) { +return jedis.expire("k1", 2); +} +}); +} + +/** + * @throws Exception If failed. + */ +public void testExpireMs() throws Exception { +testExpire(new Expiration() { +@Override public long expire(Jedis jedis, String key) { +return jedis.pexpire("k1", 2000); +} +}); +} + +private void testExpire(Expiration exp) throws Exception { +try (Jedis jedis = pool.getResource()) { +jedis.set("k1", "v1"); + +Assert.assertTrue(jedis.exists("k1")); + +Assert.assertEquals(1L, exp.expire(jedis, "k1")); + +Assert.assertEquals("v1", jedis.get("k1")); + +Thread.sleep(2100); + +Assert.assertFalse(jedis.exists("k1")); + +Assert.assertEquals(0L, (long)jedis.expire("k1", 2)); +} +} + +private interface Expiration { +long expire(Jedis jedis, String key); +} } http://git-wip-us.apache.org/repos/asf/ignite/blob/988ffe3e/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/GridRestCommand.java -- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/GridRestCommand.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/GridRestCommand.java index 2ed370d..24b4bda 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/GridRestCommand.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/GridRestCommand.java @@ -99,6 +99,9 @@ public enum GridRestCommand { /** Cache size. */ CACHE_SIZE("size"), +/** Set TTL for the key. */ +CACHE_UPDATE_TLL("updatettl"), + /** Cache metadata. */ CACHE_METADATA("metadata"), http://git-wip-us.apache.org/repos/asf/ignite/blob/988ffe3e/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/cache/GridCacheCommandHandler.java -- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/cache/GridCacheCommandHandler.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/cache/GridCacheCommandHandler.java index f2ca071..53342c9 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/cache/GridCacheCommandHandler.java +++
[30/30] ignite git commit: Merge branch 'master' of https://git-wip-us.apache.org/repos/asf/ignite into ignite-5872
Merge branch 'master' of https://git-wip-us.apache.org/repos/asf/ignite into ignite-5872 Project: http://git-wip-us.apache.org/repos/asf/ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/855ece3b Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/855ece3b Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/855ece3b Branch: refs/heads/ignite-5872 Commit: 855ece3b13aec4b63633ecaecc2ea7fbaa3c1de8 Parents: cfbd327 a7ac59f Author: Alexey GoncharukAuthored: Thu Aug 10 16:52:30 2017 +0300 Committer: Alexey Goncharuk Committed: Thu Aug 10 16:52:30 2017 +0300 -- .../datagrid/CacheClientBinaryQueryExample.java | 3 + .../tcp/redis/RedisProtocolStringSelfTest.java | 44 ++ .../jdbc/suite/IgniteJdbcDriverTestSuite.java | 2 + .../ignite/jdbc/thin/JdbcThinBatchSelfTest.java | 333 ++ .../java/org/apache/ignite/IgniteCache.java | 1 - .../org/apache/ignite/IgniteDataStreamer.java | 26 +- .../apache/ignite/IgniteSystemProperties.java | 8 + .../org/apache/ignite/cache/QueryEntity.java| 229 +++ .../configuration/CacheConfiguration.java | 615 +-- .../ignite/internal/GridKernalContext.java | 2 +- .../ignite/internal/GridKernalContextImpl.java | 6 +- .../apache/ignite/internal/IgniteKernal.java| 5 +- .../ignite/internal/IgniteNodeAttributes.java | 3 + .../org/apache/ignite/internal/IgnitionEx.java | 23 +- .../jdbc/thin/JdbcThinPreparedStatement.java| 16 +- .../internal/jdbc/thin/JdbcThinStatement.java | 46 +- .../internal/jdbc/thin/JdbcThinTcpIo.java | 20 + .../ignite/internal/jdbc2/JdbcConnection.java | 5 +- .../managers/communication/GridIoManager.java | 6 + .../managers/communication/GridIoMessage.java | 3 + .../internal/pagemem/store/PageStore.java | 5 + .../cache/persistence/file/FilePageStore.java | 54 +- .../persistence/file/FilePageStoreFactory.java | 35 ++ .../persistence/file/FilePageStoreManager.java | 17 +- .../cache/persistence/file/FilePageStoreV2.java | 53 ++ .../file/FileVersionCheckingFactory.java| 116 .../cache/persistence/freelist/PagesList.java | 67 +- .../tree/io/PagePartitionCountersIO.java| 2 +- .../wal/reader/StandaloneGridKernalContext.java | 2 +- .../cache/query/QueryEntityClassProperty.java | 116 .../cache/query/QueryEntityIndexDescriptor.java | 121 .../cache/query/QueryEntityTypeDescriptor.java | 219 +++ .../cache/store/CacheStoreManager.java | 4 +- .../store/GridCacheStoreManagerAdapter.java | 20 +- .../cache/transactions/IgniteTxAdapter.java | 9 +- .../datastreamer/DataStreamerImpl.java | 281 ++--- .../datastreamer/DataStreamerRequest.java | 59 +- .../odbc/jdbc/JdbcBatchExecuteRequest.java | 109 .../odbc/jdbc/JdbcBatchExecuteResult.java | 96 +++ .../processors/odbc/jdbc/JdbcQuery.java | 95 +++ .../processors/odbc/jdbc/JdbcRequest.java | 8 + .../odbc/jdbc/JdbcRequestHandler.java | 66 +- .../processors/odbc/jdbc/JdbcResult.java| 11 + .../processors/rest/GridRestCommand.java| 3 + .../handlers/cache/GridCacheCommandHandler.java | 75 ++- .../key/GridRedisExpireCommandHandler.java | 101 +++ .../protocols/tcp/redis/GridRedisCommand.java | 4 + .../tcp/redis/GridRedisNioListener.java | 2 + .../ignite/internal/util/StripedExecutor.java | 89 ++- .../org/apache/ignite/thread/IgniteThread.java | 10 + .../GridCacheAbstractLocalStoreSelfTest.java| 7 + .../IgniteOptimisticTxSuspendResumeTest.java| 11 +- ...gnitePdsRecoveryAfterFileCorruptionTest.java | 2 +- .../DataStreamProcessorSelfTest.java| 14 +- .../datastreamer/DataStreamerImplSelfTest.java | 3 +- .../query/h2/opt/GridH2SpatialIndex.java| 7 - .../processors/query/h2/H2RowDescriptor.java| 11 - .../processors/query/h2/H2TableEngine.java | 4 +- .../query/h2/database/H2PkHashIndex.java| 7 - .../query/h2/database/H2TreeIndex.java | 32 +- .../query/h2/database/InlineIndexHelper.java| 414 - .../query/h2/opt/GridH2IndexBase.java | 93 +-- .../query/h2/opt/GridH2QueryContext.java| 59 -- .../query/h2/opt/GridH2RowDescriptor.java | 5 - .../processors/query/h2/opt/GridH2Table.java| 186 +- .../query/h2/opt/GridH2TreeIndex.java | 602 -- .../query/h2/opt/GridLuceneDirectory.java | 64 +- .../processors/query/h2/opt/GridLuceneFile.java | 91 ++- .../query/h2/opt/GridLuceneIndex.java | 3 +- .../query/h2/opt/GridLuceneInputStream.java | 42 +- .../query/h2/opt/GridLuceneOutputStream.java| 18 +- .../query/h2/twostep/GridMapQueryExecutor.java | 526 +---
[29/30] ignite git commit: IGNITE-5963: Add additional check to Thread.sleep to make test correct in all cases. - Fixes #2422.
IGNITE-5963: Add additional check to Thread.sleep to make test correct in all cases. - Fixes #2422. Signed-off-by: Alexey GoncharukProject: http://git-wip-us.apache.org/repos/asf/ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/a7ac59f7 Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/a7ac59f7 Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/a7ac59f7 Branch: refs/heads/ignite-5872 Commit: a7ac59f7bb214fc9eb4fd4520aad7c40c4dd9ee9 Parents: 0d8d166 Author: Nikolay Izhikov Authored: Thu Aug 10 15:48:26 2017 +0300 Committer: Alexey Goncharuk Committed: Thu Aug 10 15:48:26 2017 +0300 -- .../distributed/IgniteOptimisticTxSuspendResumeTest.java | 11 +-- 1 file changed, 9 insertions(+), 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/ignite/blob/a7ac59f7/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/IgniteOptimisticTxSuspendResumeTest.java -- diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/IgniteOptimisticTxSuspendResumeTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/IgniteOptimisticTxSuspendResumeTest.java index d16aebd..37003a7 100644 --- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/IgniteOptimisticTxSuspendResumeTest.java +++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/IgniteOptimisticTxSuspendResumeTest.java @@ -32,6 +32,7 @@ import org.apache.ignite.configuration.NearCacheConfiguration; import org.apache.ignite.internal.IgniteEx; import org.apache.ignite.internal.util.typedef.CI1; import org.apache.ignite.internal.util.typedef.CI2; +import org.apache.ignite.internal.util.typedef.internal.U; import org.apache.ignite.testframework.GridTestUtils; import org.apache.ignite.testframework.junits.common.GridCommonAbstractTest; import org.apache.ignite.transactions.Transaction; @@ -428,7 +429,10 @@ public class IgniteOptimisticTxSuspendResumeTest extends GridCommonAbstractTest tx.suspend(); -Thread.sleep(TX_TIMEOUT * 2); +long start = U.currentTimeMillis(); + +while(TX_TIMEOUT >= U.currentTimeMillis() - start) +Thread.sleep(TX_TIMEOUT * 2); GridTestUtils.assertThrowsWithCause(new Callable() { @Override public Object call() throws Exception { @@ -459,7 +463,10 @@ public class IgniteOptimisticTxSuspendResumeTest extends GridCommonAbstractTest cache.put(1, 1); -Thread.sleep(TX_TIMEOUT * 2); +long start = U.currentTimeMillis(); + +while(TX_TIMEOUT >= U.currentTimeMillis() - start) +Thread.sleep(TX_TIMEOUT * 2); GridTestUtils.assertThrowsWithCause(new Callable() { @Override public Object call() throws Exception {
[11/30] ignite git commit: IGNITE-5939: ODBC: SQLColAttributes now works with legacy attribute codes.
IGNITE-5939: ODBC: SQLColAttributes now works with legacy attribute codes. Project: http://git-wip-us.apache.org/repos/asf/ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/70ffa2cd Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/70ffa2cd Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/70ffa2cd Branch: refs/heads/ignite-5872 Commit: 70ffa2cdf2a8210d42d32c2a35c9a21ee87aaa1f Parents: 359777f Author: Igor SapegoAuthored: Fri Aug 4 18:34:27 2017 +0300 Committer: Igor Sapego Committed: Fri Aug 4 18:35:26 2017 +0300 -- .../cpp/odbc-test/src/meta_queries_test.cpp | 51 .../platforms/cpp/odbc/src/meta/column_meta.cpp | 3 ++ 2 files changed, 54 insertions(+) -- http://git-wip-us.apache.org/repos/asf/ignite/blob/70ffa2cd/modules/platforms/cpp/odbc-test/src/meta_queries_test.cpp -- diff --git a/modules/platforms/cpp/odbc-test/src/meta_queries_test.cpp b/modules/platforms/cpp/odbc-test/src/meta_queries_test.cpp index 5b7ae59..454a989 100644 --- a/modules/platforms/cpp/odbc-test/src/meta_queries_test.cpp +++ b/modules/platforms/cpp/odbc-test/src/meta_queries_test.cpp @@ -186,4 +186,55 @@ BOOST_AUTO_TEST_CASE(TestGetTypeInfoAllTypes) BOOST_FAIL(GetOdbcErrorMessage(SQL_HANDLE_STMT, stmt)); } +BOOST_AUTO_TEST_CASE(TestColAttributesColumnLength) +{ +Connect("DRIVER={Apache Ignite};ADDRESS=127.0.0.1:0;SCHEMA=cache"); + +SQLCHAR req[] = "select strField from TestType"; +SQLExecDirect(stmt, req, SQL_NTS); + +SQLLEN intVal; +SQLCHAR strBuf[1024]; +SQLSMALLINT strLen; + +SQLRETURN ret = SQLColAttribute(stmt, 1, SQL_COLUMN_LENGTH, strBuf, sizeof(strBuf), , ); + +if (!SQL_SUCCEEDED(ret)) +BOOST_FAIL(GetOdbcErrorMessage(SQL_HANDLE_STMT, stmt)); +} + +BOOST_AUTO_TEST_CASE(TestColAttributesColumnPresicion) +{ +Connect("DRIVER={Apache Ignite};ADDRESS=127.0.0.1:0;SCHEMA=cache"); + +SQLCHAR req[] = "select strField from TestType"; +SQLExecDirect(stmt, req, SQL_NTS); + +SQLLEN intVal; +SQLCHAR strBuf[1024]; +SQLSMALLINT strLen; + +SQLRETURN ret = SQLColAttribute(stmt, 1, SQL_COLUMN_PRECISION, strBuf, sizeof(strBuf), , ); + +if (!SQL_SUCCEEDED(ret)) +BOOST_FAIL(GetOdbcErrorMessage(SQL_HANDLE_STMT, stmt)); +} + +BOOST_AUTO_TEST_CASE(TestColAttributesColumnScale) +{ +Connect("DRIVER={Apache Ignite};ADDRESS=127.0.0.1:0;SCHEMA=cache"); + +SQLCHAR req[] = "select strField from TestType"; +SQLExecDirect(stmt, req, SQL_NTS); + +SQLLEN intVal; +SQLCHAR strBuf[1024]; +SQLSMALLINT strLen; + +SQLRETURN ret = SQLColAttribute(stmt, 1, SQL_COLUMN_SCALE, strBuf, sizeof(strBuf), , ); + +if (!SQL_SUCCEEDED(ret)) +BOOST_FAIL(GetOdbcErrorMessage(SQL_HANDLE_STMT, stmt)); +} + BOOST_AUTO_TEST_SUITE_END() http://git-wip-us.apache.org/repos/asf/ignite/blob/70ffa2cd/modules/platforms/cpp/odbc/src/meta/column_meta.cpp -- diff --git a/modules/platforms/cpp/odbc/src/meta/column_meta.cpp b/modules/platforms/cpp/odbc/src/meta/column_meta.cpp index 12dbfc1..97fdf80 100644 --- a/modules/platforms/cpp/odbc/src/meta/column_meta.cpp +++ b/modules/platforms/cpp/odbc/src/meta/column_meta.cpp @@ -179,6 +179,7 @@ namespace ignite case SQL_DESC_LENGTH: case SQL_DESC_OCTET_LENGTH: +case SQL_COLUMN_LENGTH: { value = type_traits::BinaryTypeTransferLength(dataType); @@ -200,6 +201,7 @@ namespace ignite } case SQL_DESC_PRECISION: +case SQL_COLUMN_PRECISION: { value = type_traits::BinaryTypeColumnSize(dataType); @@ -207,6 +209,7 @@ namespace ignite } case SQL_DESC_SCALE: +case SQL_COLUMN_SCALE: { value = type_traits::BinaryTypeDecimalDigits(dataType);
[01/30] ignite git commit: IGNITE-5888 Web Console: Fixed maven project generation.
Repository: ignite Updated Branches: refs/heads/ignite-5872 cfbd3275d -> 855ece3b1 IGNITE-5888 Web Console: Fixed maven project generation. Project: http://git-wip-us.apache.org/repos/asf/ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/20969c07 Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/20969c07 Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/20969c07 Branch: refs/heads/ignite-5872 Commit: 20969c0755595ba686d00220287d986327ff2b9d Parents: 4d323f3 Author: Andrey NovikovAuthored: Thu Aug 3 10:42:08 2017 +0700 Committer: Alexey Kuznetsov Committed: Thu Aug 3 10:42:08 2017 +0700 -- .../modules/configuration/generator/Maven.service.js | 13 ++--- 1 file changed, 10 insertions(+), 3 deletions(-) -- http://git-wip-us.apache.org/repos/asf/ignite/blob/20969c07/modules/web-console/frontend/app/modules/configuration/generator/Maven.service.js -- diff --git a/modules/web-console/frontend/app/modules/configuration/generator/Maven.service.js b/modules/web-console/frontend/app/modules/configuration/generator/Maven.service.js index abbada9..9bf0a34 100644 --- a/modules/web-console/frontend/app/modules/configuration/generator/Maven.service.js +++ b/modules/web-console/frontend/app/modules/configuration/generator/Maven.service.js @@ -42,13 +42,18 @@ export default class IgniteMavenGenerator { deps.push({groupId, artifactId, version, jar}); } -pickDependency(deps, key, dfltVer, igniteVer) { +pickDependency(acc, key, dfltVer, igniteVer) { +const deps = POM_DEPENDENCIES[key]; + +if (_.isNil(deps)) +return; + const extractVersion = (version) => { return _.isArray(version) ? _.find(version, (v) => versionService.since(igniteVer, v.range)).version : version; }; -_.forEach(POM_DEPENDENCIES[key], ({groupId, artifactId, version, jar}) => { -this.addDependency(deps, groupId || 'org.apache.ignite', artifactId, extractVersion(version) || dfltVer, jar); +_.forEach(_.castArray(deps), ({groupId, artifactId, version, jar}) => { +this.addDependency(acc, groupId || 'org.apache.ignite', artifactId, extractVersion(version) || dfltVer, jar); }); } @@ -140,8 +145,10 @@ export default class IgniteMavenGenerator { /** * Add dependency for specified store factory if not exist. + * * @param deps Already added dependencies. * @param storeFactory Store factory to add dependency. + * @param igniteVer Ignite version. */ storeFactoryDependency(deps, storeFactory, igniteVer) { if (storeFactory.dialect && (!storeFactory.connectVia || storeFactory.connectVia === 'DataSource'))
[28/30] ignite git commit: IGNITE-5995: ODBC fix for SQLGetData.
IGNITE-5995: ODBC fix for SQLGetData. Project: http://git-wip-us.apache.org/repos/asf/ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/0d8d166b Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/0d8d166b Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/0d8d166b Branch: refs/heads/ignite-5872 Commit: 0d8d166b77d37f8740f3e9dd0637c336b77b0c8f Parents: 3919d80 Author: Igor SapegoAuthored: Thu Aug 10 15:31:44 2017 +0300 Committer: Igor Sapego Committed: Thu Aug 10 15:31:44 2017 +0300 -- .../impl/cache/query/query_fields_row_impl.h| 2 +- .../cpp/odbc-test/include/test_utils.h | 9 ++ .../cpp/odbc-test/src/meta_queries_test.cpp | 100 +++ .../platforms/cpp/odbc-test/src/test_utils.cpp | 13 +++ .../ignite/odbc/query/column_metadata_query.h | 3 + .../ignite/odbc/query/table_metadata_query.h| 3 + .../include/ignite/odbc/query/type_info_query.h | 3 + .../cpp/odbc/src/query/batch_query.cpp | 7 +- .../odbc/src/query/column_metadata_query.cpp| 16 ++- .../platforms/cpp/odbc/src/query/data_query.cpp | 7 +- .../cpp/odbc/src/query/table_metadata_query.cpp | 16 ++- .../cpp/odbc/src/query/type_info_query.cpp | 16 ++- 12 files changed, 183 insertions(+), 12 deletions(-) -- http://git-wip-us.apache.org/repos/asf/ignite/blob/0d8d166b/modules/platforms/cpp/core/include/ignite/impl/cache/query/query_fields_row_impl.h -- diff --git a/modules/platforms/cpp/core/include/ignite/impl/cache/query/query_fields_row_impl.h b/modules/platforms/cpp/core/include/ignite/impl/cache/query/query_fields_row_impl.h index 63e0523..2943625 100644 --- a/modules/platforms/cpp/core/include/ignite/impl/cache/query/query_fields_row_impl.h +++ b/modules/platforms/cpp/core/include/ignite/impl/cache/query/query_fields_row_impl.h @@ -143,7 +143,7 @@ namespace ignite int32_t actualLen = reader.ReadInt8Array(dst, len); -if (actualLen == 0 || dst && len >= actualLen) +if (actualLen == 0 || (dst && len >= actualLen)) ++processed; return actualLen; http://git-wip-us.apache.org/repos/asf/ignite/blob/0d8d166b/modules/platforms/cpp/odbc-test/include/test_utils.h -- diff --git a/modules/platforms/cpp/odbc-test/include/test_utils.h b/modules/platforms/cpp/odbc-test/include/test_utils.h index 6a58e54..5dc6d6e 100644 --- a/modules/platforms/cpp/odbc-test/include/test_utils.h +++ b/modules/platforms/cpp/odbc-test/include/test_utils.h @@ -43,6 +43,15 @@ namespace ignite_test enum { ODBC_BUFFER_SIZE = 1024 }; /** + * Extract error state. + * + * @param handleType Type of the handle. + * @param handle Handle. + * @return Error state. + */ +std::string GetOdbcErrorState(SQLSMALLINT handleType, SQLHANDLE handle); + +/** * Extract error message. * * @param handleType Type of the handle. http://git-wip-us.apache.org/repos/asf/ignite/blob/0d8d166b/modules/platforms/cpp/odbc-test/src/meta_queries_test.cpp -- diff --git a/modules/platforms/cpp/odbc-test/src/meta_queries_test.cpp b/modules/platforms/cpp/odbc-test/src/meta_queries_test.cpp index 454a989..ff3695d 100644 --- a/modules/platforms/cpp/odbc-test/src/meta_queries_test.cpp +++ b/modules/platforms/cpp/odbc-test/src/meta_queries_test.cpp @@ -103,6 +103,9 @@ struct MetaQueriesTestSuiteFixture BOOST_REQUIRE(stmt != NULL); } +/** + * Disconnect. + */ void Disconnect() { // Releasing statement handle. @@ -116,6 +119,11 @@ struct MetaQueriesTestSuiteFixture SQLFreeHandle(SQL_HANDLE_ENV, env); } +/** + * Start additional node with the specified name. + * + * @param name Node name. + */ static Ignite StartAdditionalNode(const char* name) { #ifdef IGNITE_TESTS_32 @@ -126,6 +134,36 @@ struct MetaQueriesTestSuiteFixture } /** + * Checks single row result set for correct work with SQLGetData. + * + * @param stmt Statement. + */ +void CheckSingleRowResultSetWithGetData(SQLHSTMT stmt) +{ +SQLRETURN ret = SQLFetch(stmt); + +if (!SQL_SUCCEEDED(ret)) +BOOST_FAIL(GetOdbcErrorMessage(SQL_HANDLE_STMT, stmt)); + +char buf[1024]; +SQLLEN bufLen = sizeof(buf); + +ret = SQLGetData(stmt, 1, SQL_C_CHAR, buf, sizeof(buf), ); + +if (!SQL_SUCCEEDED(ret)) +BOOST_FAIL(GetOdbcErrorMessage(SQL_HANDLE_STMT, stmt)); + +ret =
[13/30] ignite git commit: IGNITE-5950 incorrect assertion fixed
IGNITE-5950 incorrect assertion fixed Project: http://git-wip-us.apache.org/repos/asf/ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/2e5c343d Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/2e5c343d Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/2e5c343d Branch: refs/heads/ignite-5872 Commit: 2e5c343d911e353c6d82630d09562664cc5e89e2 Parents: 0eedf46 Author: Sergey ChugunovAuthored: Mon Aug 7 11:34:01 2017 +0300 Committer: Sergey Chugunov Committed: Mon Aug 7 11:34:01 2017 +0300 -- .../cache/persistence/tree/io/PagePartitionCountersIO.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/ignite/blob/2e5c343d/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/tree/io/PagePartitionCountersIO.java -- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/tree/io/PagePartitionCountersIO.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/tree/io/PagePartitionCountersIO.java index 9bd806f..d5b81c1 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/tree/io/PagePartitionCountersIO.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/tree/io/PagePartitionCountersIO.java @@ -129,7 +129,7 @@ public class PagePartitionCountersIO extends PageIO { long cacheSize = PageUtils.getLong(pageAddr, off); off += 8; -assert cacheSize > 0 : cacheSize; +assert cacheSize >= 0 : cacheSize; Long old = res.put(cacheId, cacheSize);
[07/30] ignite git commit: IGNITE-5927 .NET: Fix DataTable serialization
IGNITE-5927 .NET: Fix DataTable serialization This closes #2395 Project: http://git-wip-us.apache.org/repos/asf/ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/ec115dcf Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/ec115dcf Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/ec115dcf Branch: refs/heads/ignite-5872 Commit: ec115dcfa702aa7cc7db5b87c330755b7f37ea0b Parents: 1a7354f Author: Pavel TupitsynAuthored: Fri Aug 4 12:34:05 2017 +0300 Committer: Pavel Tupitsyn Committed: Fri Aug 4 12:34:05 2017 +0300 -- .../Apache.Ignite.Core.Tests.csproj | 1 + .../Serializable/AdvancedSerializationTest.cs | 31 .../BasicSerializableObjectsTest.cs | 7 +++-- .../Impl/Binary/SerializableSerializer.cs | 18 4 files changed, 42 insertions(+), 15 deletions(-) -- http://git-wip-us.apache.org/repos/asf/ignite/blob/ec115dcf/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Apache.Ignite.Core.Tests.csproj -- diff --git a/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Apache.Ignite.Core.Tests.csproj b/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Apache.Ignite.Core.Tests.csproj index e4f65bc..3f5f9b3 100644 --- a/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Apache.Ignite.Core.Tests.csproj +++ b/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Apache.Ignite.Core.Tests.csproj @@ -61,6 +61,7 @@ + http://git-wip-us.apache.org/repos/asf/ignite/blob/ec115dcf/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Binary/Serializable/AdvancedSerializationTest.cs -- diff --git a/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Binary/Serializable/AdvancedSerializationTest.cs b/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Binary/Serializable/AdvancedSerializationTest.cs index c96d111..dc208d0 100644 --- a/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Binary/Serializable/AdvancedSerializationTest.cs +++ b/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Binary/Serializable/AdvancedSerializationTest.cs @@ -19,6 +19,7 @@ namespace Apache.Ignite.Core.Tests.Binary.Serializable { using System; using System.Collections.Generic; +using System.Data; using System.Linq; using System.Reflection; using System.Reflection.Emit; @@ -146,6 +147,36 @@ namespace Apache.Ignite.Core.Tests.Binary.Serializable return typeBuilder.CreateType(); } + +/// +/// Tests the DataTable serialization. +/// +[Test] +public void TestDataTable() +{ +var dt = new DataTable("foo"); + +dt.Columns.Add("intCol", typeof(int)); +dt.Columns.Add("stringCol", typeof(string)); + +dt.Rows.Add(1, "1"); +dt.Rows.Add(2, "2"); + +var cache = Ignition.GetIgnite().GetOrCreateCache ("dataTables"); +cache.Put(1, dt); + +var res = cache.Get(1); + +Assert.AreEqual("foo", res.TableName); + +Assert.AreEqual(2, res.Columns.Count); +Assert.AreEqual("intCol", res.Columns[0].ColumnName); +Assert.AreEqual("stringCol", res.Columns[1].ColumnName); + +Assert.AreEqual(2, res.Rows.Count); +Assert.AreEqual(new object[] {1, "1"}, res.Rows[0].ItemArray); +Assert.AreEqual(new object[] {2, "2"}, res.Rows[1].ItemArray); +} } [Serializable] http://git-wip-us.apache.org/repos/asf/ignite/blob/ec115dcf/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Binary/Serializable/BasicSerializableObjectsTest.cs -- diff --git a/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Binary/Serializable/BasicSerializableObjectsTest.cs b/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Binary/Serializable/BasicSerializableObjectsTest.cs index 82deb3c..e9b5576 100644 --- a/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Binary/Serializable/BasicSerializableObjectsTest.cs +++ b/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Binary/Serializable/BasicSerializableObjectsTest.cs @@ -19,7 +19,6 @@ namespace Apache.Ignite.Core.Tests.Binary.Serializable { using System; using System.Runtime.Serialization; -using Apache.Ignite.Core.Binary; using NUnit.Framework; /// @@ -111,13 +110,15 @@ namespace Apache.Ignite.Core.Tests.Binary.Serializable /// private EmptyObject(SerializationInfo info, StreamingContext context) { -Assert.IsInstanceOf(context.Context); +
[12/30] ignite git commit: Merge branches 'ignite-2.1.3' and 'master'.
Merge branches 'ignite-2.1.3' and 'master'. Project: http://git-wip-us.apache.org/repos/asf/ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/9b730e73 Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/9b730e73 Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/9b730e73 Branch: refs/heads/ignite-5872 Commit: 9b730e732dcc7d307390f9a40cce8469e738e540 Parents: 70ffa2c 0eedf46 Author: Alexey KuznetsovAuthored: Mon Aug 7 10:00:01 2017 +0700 Committer: Alexey Kuznetsov Committed: Mon Aug 7 10:00:01 2017 +0700 -- .../hide-on-state-change/hide-on-state-change.directive.js | 8 ++-- modules/web-console/frontend/views/index.pug | 8 2 files changed, 10 insertions(+), 6 deletions(-) --
[02/30] ignite git commit: IGNITE-5906 Fixed race on activities merge.
IGNITE-5906 Fixed race on activities merge. Project: http://git-wip-us.apache.org/repos/asf/ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/6bdad4dd Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/6bdad4dd Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/6bdad4dd Branch: refs/heads/ignite-5872 Commit: 6bdad4dd6a5d6f3210051f47af5a51f0bd52f73c Parents: 20969c0 Author: Andrey NovikovAuthored: Thu Aug 3 10:45:59 2017 +0700 Committer: Alexey Kuznetsov Committed: Thu Aug 3 10:45:59 2017 +0700 -- modules/web-console/backend/app/mongo.js | 2 +- modules/web-console/backend/middlewares/api.js | 9 - modules/web-console/backend/services/activities.js | 12 ++-- 3 files changed, 7 insertions(+), 16 deletions(-) -- http://git-wip-us.apache.org/repos/asf/ignite/blob/6bdad4dd/modules/web-console/backend/app/mongo.js -- diff --git a/modules/web-console/backend/app/mongo.js b/modules/web-console/backend/app/mongo.js index 57af928..0bc0e5c 100644 --- a/modules/web-console/backend/app/mongo.js +++ b/modules/web-console/backend/app/mongo.js @@ -1055,7 +1055,7 @@ module.exports.factory = function(passportMongo, settings, pluginMongo, mongoose date: Date, group: String, action: String, -amount: { type: Number, default: 1 } +amount: { type: Number, default: 0 } }); ActivitiesSchema.index({ owner: 1, group: 1, action: 1, date: 1}, { unique: true }); http://git-wip-us.apache.org/repos/asf/ignite/blob/6bdad4dd/modules/web-console/backend/middlewares/api.js -- diff --git a/modules/web-console/backend/middlewares/api.js b/modules/web-console/backend/middlewares/api.js index 2c4c1bd..aa599ae 100644 --- a/modules/web-console/backend/middlewares/api.js +++ b/modules/web-console/backend/middlewares/api.js @@ -20,16 +20,15 @@ // Fire me up! module.exports = { -implements: 'middlewares:api', -inject: ['require("mongodb-core")'] +implements: 'middlewares:api' }; -module.exports.factory = (mongodb) => { +module.exports.factory = () => { return (req, res, next) => { res.api = { error(err) { -if (err instanceof mongodb.MongoError) -res.status(500).send(err.message); +if (err.name === 'MongoError') +return res.status(500).send(err.message); res.status(err.httpCode || err.code || 500).send(err.message); }, http://git-wip-us.apache.org/repos/asf/ignite/blob/6bdad4dd/modules/web-console/backend/services/activities.js -- diff --git a/modules/web-console/backend/services/activities.js b/modules/web-console/backend/services/activities.js index afde8e7..a049f65 100644 --- a/modules/web-console/backend/services/activities.js +++ b/modules/web-console/backend/services/activities.js @@ -50,16 +50,8 @@ module.exports.factory = (_, mongo) => { const date = Date.UTC(now.getFullYear(), now.getMonth(), 1); -return mongo.Activities.findOne({owner, action, date}).exec() -.then((activity) => { -if (activity) { -activity.amount++; - -return activity.save(); -} - -return mongo.Activities.create({owner, action, group, date}); -}); +return mongo.Activities.findOneAndUpdate({owner, action, date}, +{$set: {owner, group, action, date}, $inc: {amount: 1}}, {new: true, upsert: true}).exec(); } static total({startDate, endDate}) {
[15/30] ignite git commit: IGNITE-5211: Added new constructor: QueryEntity(Class keyCls, Class valCls). This closes #2371. This closes #2388. This closes #2407.
IGNITE-5211: Added new constructor: QueryEntity(Class keyCls, Class valCls). This closes #2371. This closes #2388. This closes #2407. Project: http://git-wip-us.apache.org/repos/asf/ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/9da69389 Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/9da69389 Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/9da69389 Branch: refs/heads/ignite-5872 Commit: 9da69389ed307357391e4eb87ae077751f30a58e Parents: 488a6d2 Author: tledkov-gridgainAuthored: Tue Aug 8 12:05:36 2017 +0300 Committer: devozerov Committed: Tue Aug 8 12:05:36 2017 +0300 -- .../org/apache/ignite/cache/QueryEntity.java| 229 +++ .../configuration/CacheConfiguration.java | 615 +-- .../cache/query/QueryEntityClassProperty.java | 116 .../cache/query/QueryEntityIndexDescriptor.java | 121 .../cache/query/QueryEntityTypeDescriptor.java | 219 +++ .../h2/sql/AbstractH2CompareQueryTest.java | 4 +- 6 files changed, 693 insertions(+), 611 deletions(-) -- http://git-wip-us.apache.org/repos/asf/ignite/blob/9da69389/modules/core/src/main/java/org/apache/ignite/cache/QueryEntity.java -- diff --git a/modules/core/src/main/java/org/apache/ignite/cache/QueryEntity.java b/modules/core/src/main/java/org/apache/ignite/cache/QueryEntity.java index 955e7d2..5180100 100644 --- a/modules/core/src/main/java/org/apache/ignite/cache/QueryEntity.java +++ b/modules/core/src/main/java/org/apache/ignite/cache/QueryEntity.java @@ -18,7 +18,9 @@ package org.apache.ignite.cache; import java.io.Serializable; +import java.lang.reflect.Field; import java.util.ArrayList; +import java.util.Arrays; import java.util.Collection; import java.util.Collections; import java.util.HashMap; @@ -27,10 +29,20 @@ import java.util.LinkedHashMap; import java.util.Map; import java.util.Objects; import java.util.Set; +import javax.cache.CacheException; +import org.apache.ignite.cache.query.annotations.QueryGroupIndex; +import org.apache.ignite.cache.query.annotations.QuerySqlField; +import org.apache.ignite.cache.query.annotations.QueryTextField; +import org.apache.ignite.internal.processors.cache.query.QueryEntityClassProperty; +import org.apache.ignite.internal.processors.cache.query.QueryEntityTypeDescriptor; +import org.apache.ignite.internal.processors.query.GridQueryIndexDescriptor; +import org.apache.ignite.internal.processors.query.QueryUtils; import org.apache.ignite.internal.util.tostring.GridToStringInclude; import org.apache.ignite.internal.util.typedef.F; import org.apache.ignite.internal.util.typedef.internal.A; import org.apache.ignite.internal.util.typedef.internal.S; +import org.apache.ignite.internal.util.typedef.internal.U; +import org.jetbrains.annotations.Nullable; /** * Query entity is a description of {@link org.apache.ignite.IgniteCache cache} entry (composed of key and value) @@ -111,6 +123,16 @@ public class QueryEntity implements Serializable { } /** + * Creates a query entity with the given key and value types. + * + * @param keyCls Key type. + * @param valCls Value type. + */ +public QueryEntity(Class keyCls, Class valCls) { +this(convert(processKeyAndValueClasses(keyCls,valCls))); +} + +/** * Gets key type for this query pair. * * @return Key type. @@ -351,6 +373,213 @@ public class QueryEntity implements Serializable { return this; } +/** + * @param desc Type descriptor. + * @return Type metadata. + */ +private static QueryEntity convert(QueryEntityTypeDescriptor desc) { +QueryEntity entity = new QueryEntity(); + +// Key and val types. +entity.setKeyType(desc.keyClass().getName()); +entity.setValueType(desc.valueClass().getName()); + +for (QueryEntityClassProperty prop : desc.properties().values()) +entity.addQueryField(prop.fullName(), U.box(prop.type()).getName(), prop.alias()); + +entity.setKeyFields(desc.keyProperties()); + +QueryIndex txtIdx = null; + +Collection idxs = new ArrayList<>(); + +for (Map.Entry idxEntry : desc.indexes().entrySet()) { +GridQueryIndexDescriptor idx = idxEntry.getValue(); + +if (idx.type() == QueryIndexType.FULLTEXT) { +assert txtIdx == null; + +txtIdx = new QueryIndex(); + +txtIdx.setIndexType(QueryIndexType.FULLTEXT); + +txtIdx.setFieldNames(idx.fields(), true); +txtIdx.setName(idxEntry.getKey()); +} +else { +QueryIndex sortedIdx = new QueryIndex(); + +
[23/30] ignite git commit: ignite-5918 Adding and searching objects in index tree produces a lot of garbage
ignite-5918 Adding and searching objects in index tree produces a lot of garbage Project: http://git-wip-us.apache.org/repos/asf/ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/0e0c2c7d Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/0e0c2c7d Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/0e0c2c7d Branch: refs/heads/ignite-5872 Commit: 0e0c2c7dc6cece3cc92a13c5430af605606bbcfe Parents: 8d6e842 Author: Igor SeliverstovAuthored: Wed Aug 9 18:46:53 2017 +0300 Committer: Yakov Zhdanov Committed: Wed Aug 9 18:46:53 2017 +0300 -- .../java/org/apache/ignite/IgniteCache.java | 1 - .../query/h2/database/H2TreeIndex.java | 6 +- .../query/h2/database/InlineIndexHelper.java| 414 ++- .../h2/database/InlineIndexHelperTest.java | 248 +-- .../IgniteCacheWithIndexingTestSuite.java | 3 + 5 files changed, 642 insertions(+), 30 deletions(-) -- http://git-wip-us.apache.org/repos/asf/ignite/blob/0e0c2c7d/modules/core/src/main/java/org/apache/ignite/IgniteCache.java -- diff --git a/modules/core/src/main/java/org/apache/ignite/IgniteCache.java b/modules/core/src/main/java/org/apache/ignite/IgniteCache.java index 0cf2a82..973eeab 100644 --- a/modules/core/src/main/java/org/apache/ignite/IgniteCache.java +++ b/modules/core/src/main/java/org/apache/ignite/IgniteCache.java @@ -1261,7 +1261,6 @@ public interface IgniteCache extends javax.cache.Cache , IgniteAsyncS public IgniteFuture
[09/30] ignite git commit: IGNITE-5908 Restore splash.
IGNITE-5908 Restore splash. Project: http://git-wip-us.apache.org/repos/asf/ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/0eedf46b Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/0eedf46b Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/0eedf46b Branch: refs/heads/ignite-5872 Commit: 0eedf46bddb9647cc02efd982b212c8c0df19308 Parents: eb33607 Author: anovikovAuthored: Fri Aug 4 18:10:36 2017 +0700 Committer: Alexey Kuznetsov Committed: Fri Aug 4 18:10:36 2017 +0700 -- .../hide-on-state-change/hide-on-state-change.directive.js | 8 ++-- modules/web-console/frontend/views/index.pug | 8 2 files changed, 10 insertions(+), 6 deletions(-) -- http://git-wip-us.apache.org/repos/asf/ignite/blob/0eedf46b/modules/web-console/frontend/app/directives/hide-on-state-change/hide-on-state-change.directive.js -- diff --git a/modules/web-console/frontend/app/directives/hide-on-state-change/hide-on-state-change.directive.js b/modules/web-console/frontend/app/directives/hide-on-state-change/hide-on-state-change.directive.js index 98f1c57..152e942 100644 --- a/modules/web-console/frontend/app/directives/hide-on-state-change/hide-on-state-change.directive.js +++ b/modules/web-console/frontend/app/directives/hide-on-state-change/hide-on-state-change.directive.js @@ -15,13 +15,9 @@ * limitations under the License. */ -export default ['hideOnStateChange', ['$timeout', ($timeout) => { +export default ['hideOnStateChange', ['$transitions', ($transitions) => { const link = (scope, element) => { -scope.$on('$stateChangeSuccess', () => { -$timeout(() => { -element.fadeOut('slow'); -}); -}); +$transitions.onSuccess({}, () => element.fadeOut('slow')); }; return { http://git-wip-us.apache.org/repos/asf/ignite/blob/0eedf46b/modules/web-console/frontend/views/index.pug -- diff --git a/modules/web-console/frontend/views/index.pug b/modules/web-console/frontend/views/index.pug index 1881b38..2e47e87 100644 --- a/modules/web-console/frontend/views/index.pug +++ b/modules/web-console/frontend/views/index.pug @@ -30,6 +30,14 @@ html(ng-app='ignite-console' id='app' ng-strict-di) body.theme-line.body-overlap +.splash.splash-max-foreground(hide-on-state-change) +.splash-wrapper +.spinner +.bounce1 +.bounce2 +.bounce3 + +.splash-wellcome Loading... .ribbon-wrapper.right(ng-cloak) .ribbon(ng-style='IgniteDemoMode && {"background": "#1b6d88"}')
[27/30] ignite git commit: IGNITE-5961 - Align pages in LFS partition files to pageSize
IGNITE-5961 - Align pages in LFS partition files to pageSize Project: http://git-wip-us.apache.org/repos/asf/ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/3919d803 Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/3919d803 Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/3919d803 Branch: refs/heads/ignite-5872 Commit: 3919d8035fb172e1546f7a3ecea0f29f8e1e2214 Parents: b5ad729 Author: Ivan RakovAuthored: Thu Aug 10 13:31:23 2017 +0300 Committer: Alexey Goncharuk Committed: Thu Aug 10 13:31:23 2017 +0300 -- .../internal/pagemem/store/PageStore.java | 5 + .../cache/persistence/file/FilePageStore.java | 54 ++--- .../persistence/file/FilePageStoreFactory.java | 35 ++ .../persistence/file/FilePageStoreManager.java | 17 +-- .../cache/persistence/file/FilePageStoreV2.java | 53 + .../file/FileVersionCheckingFactory.java| 116 +++ ...gnitePdsRecoveryAfterFileCorruptionTest.java | 2 +- 7 files changed, 251 insertions(+), 31 deletions(-) -- http://git-wip-us.apache.org/repos/asf/ignite/blob/3919d803/modules/core/src/main/java/org/apache/ignite/internal/pagemem/store/PageStore.java -- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/pagemem/store/PageStore.java b/modules/core/src/main/java/org/apache/ignite/internal/pagemem/store/PageStore.java index 4698a6b..f6e577c 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/pagemem/store/PageStore.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/pagemem/store/PageStore.java @@ -95,4 +95,9 @@ public interface PageStore { * @throws IgniteCheckedException If sync failed (IO error occurred). */ public void ensure() throws IgniteCheckedException; + +/** + * @return Page store version. + */ +public int version(); } http://git-wip-us.apache.org/repos/asf/ignite/blob/3919d803/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/file/FilePageStore.java -- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/file/FilePageStore.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/file/FilePageStore.java index a7ca13c..7fe1ffe 100755 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/file/FilePageStore.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/file/FilePageStore.java @@ -45,10 +45,10 @@ public class FilePageStore implements PageStore { private static final long SIGNATURE = 0xF19AC4FE60C530B8L; /** File version. */ -private static final int VERSION = 1; +public static final int VERSION = 1; /** Allocated field offset. */ -public static final int HEADER_SIZE = 8/*SIGNATURE*/ + 4/*VERSION*/ + 1/*type*/ + 4/*page size*/; +static final int HEADER_SIZE = 8/*SIGNATURE*/ + 4/*VERSION*/ + 1/*type*/ + 4/*page size*/; /** */ private final File cfgFile; @@ -57,7 +57,7 @@ public class FilePageStore implements PageStore { private final byte type; /** Database configuration. */ -private final MemoryConfiguration dbCfg; +protected final MemoryConfiguration dbCfg; /** Factory to provide I/O interfaces for read/write operations with files */ private final FileIOFactory ioFactory; @@ -103,20 +103,36 @@ public class FilePageStore implements PageStore { /** {@inheritDoc} */ @Override public boolean exists() { -return cfgFile.exists() && cfgFile.length() > HEADER_SIZE; +return cfgFile.exists() && cfgFile.length() > headerSize(); } /** + * Size of page store header. + */ +public int headerSize() { +return HEADER_SIZE; +} + +/** + * Page store version. + */ +public int version() { +return VERSION; +} + +/** + * Creates header for current version file store. Doesn't init the store. + * * @param type Type. * @param pageSize Page size. * @return Byte buffer instance. */ -public static ByteBuffer header(byte type, int pageSize) { -ByteBuffer hdr = ByteBuffer.allocate(HEADER_SIZE).order(ByteOrder.LITTLE_ENDIAN); +public ByteBuffer header(byte type, int pageSize) { +ByteBuffer hdr = ByteBuffer.allocate(headerSize()).order(ByteOrder.LITTLE_ENDIAN); hdr.putLong(SIGNATURE); -hdr.putInt(VERSION); +hdr.putInt(version()); hdr.put(type); @@ -142,7 +158,7 @@ public class FilePageStore implements PageStore { }
[17/30] ignite git commit: IGNITE-5982: GridMapQueryExecutor was split into several pieces.
IGNITE-5982: GridMapQueryExecutor was split into several pieces. Project: http://git-wip-us.apache.org/repos/asf/ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/e28d0d6c Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/e28d0d6c Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/e28d0d6c Branch: refs/heads/ignite-5872 Commit: e28d0d6cc617a4b0c7b0e4c4a5197b69f0c3e4bc Parents: 9da6938 Author: devozerovAuthored: Tue Aug 8 15:16:58 2017 +0300 Committer: devozerov Committed: Tue Aug 8 15:16:58 2017 +0300 -- .../query/h2/twostep/GridMapQueryExecutor.java | 501 ++- .../query/h2/twostep/MapNodeResults.java| 108 .../query/h2/twostep/MapQueryResult.java| 258 ++ .../query/h2/twostep/MapQueryResults.java | 155 ++ .../h2/twostep/MapReplicatedReservation.java| 38 ++ .../query/h2/twostep/MapRequestKey.java | 65 +++ .../query/h2/twostep/MapReservationKey.java | 73 +++ 7 files changed, 730 insertions(+), 468 deletions(-) -- http://git-wip-us.apache.org/repos/asf/ignite/blob/e28d0d6c/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/twostep/GridMapQueryExecutor.java -- diff --git a/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/twostep/GridMapQueryExecutor.java b/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/twostep/GridMapQueryExecutor.java index fcf5f10..19b628b 100644 --- a/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/twostep/GridMapQueryExecutor.java +++ b/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/twostep/GridMapQueryExecutor.java @@ -17,7 +17,6 @@ package org.apache.ignite.internal.processors.query.h2.twostep; -import java.lang.reflect.Field; import java.sql.Connection; import java.sql.ResultSet; import java.util.AbstractCollection; @@ -31,7 +30,6 @@ import java.util.Objects; import java.util.UUID; import java.util.concurrent.Callable; import java.util.concurrent.ConcurrentMap; -import java.util.concurrent.atomic.AtomicReferenceArray; import javax.cache.CacheException; import org.apache.ignite.IgniteCheckedException; import org.apache.ignite.IgniteException; @@ -39,7 +37,6 @@ import org.apache.ignite.IgniteLogger; import org.apache.ignite.cache.query.QueryCancelledException; import org.apache.ignite.cluster.ClusterNode; import org.apache.ignite.events.CacheQueryExecutedEvent; -import org.apache.ignite.events.CacheQueryReadEvent; import org.apache.ignite.events.DiscoveryEvent; import org.apache.ignite.events.Event; import org.apache.ignite.events.EventType; @@ -57,35 +54,29 @@ import org.apache.ignite.internal.processors.cache.query.CacheQueryType; import org.apache.ignite.internal.processors.cache.query.GridCacheQueryMarshallable; import org.apache.ignite.internal.processors.cache.query.GridCacheSqlQuery; import org.apache.ignite.internal.processors.cache.query.QueryTable; -import org.apache.ignite.internal.processors.query.GridQueryCancel; import org.apache.ignite.internal.processors.query.h2.H2Utils; import org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing; import org.apache.ignite.internal.processors.query.h2.opt.DistributedJoinMode; import org.apache.ignite.internal.processors.query.h2.opt.GridH2QueryContext; import org.apache.ignite.internal.processors.query.h2.opt.GridH2RetryException; import org.apache.ignite.internal.processors.query.h2.opt.GridH2Table; -import org.apache.ignite.internal.processors.query.h2.opt.GridH2ValueCacheObject; import org.apache.ignite.internal.processors.query.h2.twostep.messages.GridQueryCancelRequest; import org.apache.ignite.internal.processors.query.h2.twostep.messages.GridQueryFailResponse; import org.apache.ignite.internal.processors.query.h2.twostep.messages.GridQueryNextPageRequest; import org.apache.ignite.internal.processors.query.h2.twostep.messages.GridQueryNextPageResponse; import org.apache.ignite.internal.processors.query.h2.twostep.msg.GridH2QueryRequest; -import org.apache.ignite.internal.util.GridBoundedConcurrentLinkedHashMap; import org.apache.ignite.internal.util.GridSpinBusyLock; import org.apache.ignite.internal.util.typedef.CI1; import org.apache.ignite.internal.util.typedef.F; -import org.apache.ignite.internal.util.typedef.T2; import org.apache.ignite.internal.util.typedef.X; import org.apache.ignite.internal.util.typedef.internal.U; import org.apache.ignite.plugin.extensions.communication.Message; import org.h2.jdbc.JdbcResultSet; -import org.h2.result.ResultInterface; import org.h2.value.Value; import org.jetbrains.annotations.Nullable; import
ignite git commit: IGNITE-5963: Add additional check to Thread.sleep to make test correct in all cases. - Fixes #2422.
Repository: ignite Updated Branches: refs/heads/master 0d8d166b7 -> a7ac59f7b IGNITE-5963: Add additional check to Thread.sleep to make test correct in all cases. - Fixes #2422. Signed-off-by: Alexey GoncharukProject: http://git-wip-us.apache.org/repos/asf/ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/a7ac59f7 Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/a7ac59f7 Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/a7ac59f7 Branch: refs/heads/master Commit: a7ac59f7bb214fc9eb4fd4520aad7c40c4dd9ee9 Parents: 0d8d166 Author: Nikolay Izhikov Authored: Thu Aug 10 15:48:26 2017 +0300 Committer: Alexey Goncharuk Committed: Thu Aug 10 15:48:26 2017 +0300 -- .../distributed/IgniteOptimisticTxSuspendResumeTest.java | 11 +-- 1 file changed, 9 insertions(+), 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/ignite/blob/a7ac59f7/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/IgniteOptimisticTxSuspendResumeTest.java -- diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/IgniteOptimisticTxSuspendResumeTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/IgniteOptimisticTxSuspendResumeTest.java index d16aebd..37003a7 100644 --- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/IgniteOptimisticTxSuspendResumeTest.java +++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/IgniteOptimisticTxSuspendResumeTest.java @@ -32,6 +32,7 @@ import org.apache.ignite.configuration.NearCacheConfiguration; import org.apache.ignite.internal.IgniteEx; import org.apache.ignite.internal.util.typedef.CI1; import org.apache.ignite.internal.util.typedef.CI2; +import org.apache.ignite.internal.util.typedef.internal.U; import org.apache.ignite.testframework.GridTestUtils; import org.apache.ignite.testframework.junits.common.GridCommonAbstractTest; import org.apache.ignite.transactions.Transaction; @@ -428,7 +429,10 @@ public class IgniteOptimisticTxSuspendResumeTest extends GridCommonAbstractTest tx.suspend(); -Thread.sleep(TX_TIMEOUT * 2); +long start = U.currentTimeMillis(); + +while(TX_TIMEOUT >= U.currentTimeMillis() - start) +Thread.sleep(TX_TIMEOUT * 2); GridTestUtils.assertThrowsWithCause(new Callable() { @Override public Object call() throws Exception { @@ -459,7 +463,10 @@ public class IgniteOptimisticTxSuspendResumeTest extends GridCommonAbstractTest cache.put(1, 1); -Thread.sleep(TX_TIMEOUT * 2); +long start = U.currentTimeMillis(); + +while(TX_TIMEOUT >= U.currentTimeMillis() - start) +Thread.sleep(TX_TIMEOUT * 2); GridTestUtils.assertThrowsWithCause(new Callable() { @Override public Object call() throws Exception {
ignite git commit: IGNITE-5995: ODBC fix for SQLGetData.
Repository: ignite Updated Branches: refs/heads/master 3919d8035 -> 0d8d166b7 IGNITE-5995: ODBC fix for SQLGetData. Project: http://git-wip-us.apache.org/repos/asf/ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/0d8d166b Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/0d8d166b Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/0d8d166b Branch: refs/heads/master Commit: 0d8d166b77d37f8740f3e9dd0637c336b77b0c8f Parents: 3919d80 Author: Igor SapegoAuthored: Thu Aug 10 15:31:44 2017 +0300 Committer: Igor Sapego Committed: Thu Aug 10 15:31:44 2017 +0300 -- .../impl/cache/query/query_fields_row_impl.h| 2 +- .../cpp/odbc-test/include/test_utils.h | 9 ++ .../cpp/odbc-test/src/meta_queries_test.cpp | 100 +++ .../platforms/cpp/odbc-test/src/test_utils.cpp | 13 +++ .../ignite/odbc/query/column_metadata_query.h | 3 + .../ignite/odbc/query/table_metadata_query.h| 3 + .../include/ignite/odbc/query/type_info_query.h | 3 + .../cpp/odbc/src/query/batch_query.cpp | 7 +- .../odbc/src/query/column_metadata_query.cpp| 16 ++- .../platforms/cpp/odbc/src/query/data_query.cpp | 7 +- .../cpp/odbc/src/query/table_metadata_query.cpp | 16 ++- .../cpp/odbc/src/query/type_info_query.cpp | 16 ++- 12 files changed, 183 insertions(+), 12 deletions(-) -- http://git-wip-us.apache.org/repos/asf/ignite/blob/0d8d166b/modules/platforms/cpp/core/include/ignite/impl/cache/query/query_fields_row_impl.h -- diff --git a/modules/platforms/cpp/core/include/ignite/impl/cache/query/query_fields_row_impl.h b/modules/platforms/cpp/core/include/ignite/impl/cache/query/query_fields_row_impl.h index 63e0523..2943625 100644 --- a/modules/platforms/cpp/core/include/ignite/impl/cache/query/query_fields_row_impl.h +++ b/modules/platforms/cpp/core/include/ignite/impl/cache/query/query_fields_row_impl.h @@ -143,7 +143,7 @@ namespace ignite int32_t actualLen = reader.ReadInt8Array(dst, len); -if (actualLen == 0 || dst && len >= actualLen) +if (actualLen == 0 || (dst && len >= actualLen)) ++processed; return actualLen; http://git-wip-us.apache.org/repos/asf/ignite/blob/0d8d166b/modules/platforms/cpp/odbc-test/include/test_utils.h -- diff --git a/modules/platforms/cpp/odbc-test/include/test_utils.h b/modules/platforms/cpp/odbc-test/include/test_utils.h index 6a58e54..5dc6d6e 100644 --- a/modules/platforms/cpp/odbc-test/include/test_utils.h +++ b/modules/platforms/cpp/odbc-test/include/test_utils.h @@ -43,6 +43,15 @@ namespace ignite_test enum { ODBC_BUFFER_SIZE = 1024 }; /** + * Extract error state. + * + * @param handleType Type of the handle. + * @param handle Handle. + * @return Error state. + */ +std::string GetOdbcErrorState(SQLSMALLINT handleType, SQLHANDLE handle); + +/** * Extract error message. * * @param handleType Type of the handle. http://git-wip-us.apache.org/repos/asf/ignite/blob/0d8d166b/modules/platforms/cpp/odbc-test/src/meta_queries_test.cpp -- diff --git a/modules/platforms/cpp/odbc-test/src/meta_queries_test.cpp b/modules/platforms/cpp/odbc-test/src/meta_queries_test.cpp index 454a989..ff3695d 100644 --- a/modules/platforms/cpp/odbc-test/src/meta_queries_test.cpp +++ b/modules/platforms/cpp/odbc-test/src/meta_queries_test.cpp @@ -103,6 +103,9 @@ struct MetaQueriesTestSuiteFixture BOOST_REQUIRE(stmt != NULL); } +/** + * Disconnect. + */ void Disconnect() { // Releasing statement handle. @@ -116,6 +119,11 @@ struct MetaQueriesTestSuiteFixture SQLFreeHandle(SQL_HANDLE_ENV, env); } +/** + * Start additional node with the specified name. + * + * @param name Node name. + */ static Ignite StartAdditionalNode(const char* name) { #ifdef IGNITE_TESTS_32 @@ -126,6 +134,36 @@ struct MetaQueriesTestSuiteFixture } /** + * Checks single row result set for correct work with SQLGetData. + * + * @param stmt Statement. + */ +void CheckSingleRowResultSetWithGetData(SQLHSTMT stmt) +{ +SQLRETURN ret = SQLFetch(stmt); + +if (!SQL_SUCCEEDED(ret)) +BOOST_FAIL(GetOdbcErrorMessage(SQL_HANDLE_STMT, stmt)); + +char buf[1024]; +SQLLEN bufLen = sizeof(buf); + +ret = SQLGetData(stmt, 1, SQL_C_CHAR, buf, sizeof(buf), ); + +if (!SQL_SUCCEEDED(ret)) +
ignite git commit: IGNITE-5901 - Debug
Repository: ignite Updated Branches: refs/heads/ignite-5901 de49c95f4 -> 96ec4cacf IGNITE-5901 - Debug Project: http://git-wip-us.apache.org/repos/asf/ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/96ec4cac Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/96ec4cac Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/96ec4cac Branch: refs/heads/ignite-5901 Commit: 96ec4cacfe76898c48371f2c8b45bb21997a2c3a Parents: de49c95 Author: Alexey GoncharukAuthored: Thu Aug 10 15:04:55 2017 +0300 Committer: Alexey Goncharuk Committed: Thu Aug 10 15:04:55 2017 +0300 -- .../cache/persistence/db/wal/IgniteWalRecoveryTest.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/ignite/blob/96ec4cac/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/wal/IgniteWalRecoveryTest.java -- diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/wal/IgniteWalRecoveryTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/wal/IgniteWalRecoveryTest.java index e603910..3d4f59f 100644 --- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/wal/IgniteWalRecoveryTest.java +++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/wal/IgniteWalRecoveryTest.java @@ -138,6 +138,8 @@ public class IgniteWalRecoveryTest extends GridCommonAbstractTest { pCfg.setWalRecordIteratorBufferSize(1024 * 1024); +pCfg.setWalHistorySize(2); + if (logOnly) pCfg.setWalMode(WALMode.LOG_ONLY); @@ -519,7 +521,7 @@ public class IgniteWalRecoveryTest extends GridCommonAbstractTest { private void checkWalRolloverMultithreaded() throws Exception { walSegmentSize = 2 * 1024 * 1024; -final long endTime = System.currentTimeMillis() + 20 * 60 * 1000; +final long endTime = System.currentTimeMillis() + 3 * 60 * 1000; try { IgniteEx ignite = startGrid(1);
ignite git commit: IGNITE-5901 - Debugging
Repository: ignite Updated Branches: refs/heads/ignite-5901 [created] de49c95f4 IGNITE-5901 - Debugging Project: http://git-wip-us.apache.org/repos/asf/ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/de49c95f Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/de49c95f Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/de49c95f Branch: refs/heads/ignite-5901 Commit: de49c95f4ed3c21c8981c081b7b41c8299ee9876 Parents: 3919d80 Author: Alexey GoncharukAuthored: Thu Aug 10 13:58:32 2017 +0300 Committer: Alexey Goncharuk Committed: Thu Aug 10 13:58:32 2017 +0300 -- .../db/wal/IgniteWalRecoveryTest.java | 32 ++-- .../db/wal/IgniteWalRecoveryTest2.java | 24 +++ .../db/wal/IgniteWalRecoveryTest3.java | 24 +++ .../db/wal/IgniteWalRecoveryTest4.java | 24 +++ .../db/wal/IgniteWalRecoveryTest5.java | 24 +++ .../IgnitePdsWithIndexingCoreTestSuite.java | 28 +++-- 6 files changed, 130 insertions(+), 26 deletions(-) -- http://git-wip-us.apache.org/repos/asf/ignite/blob/de49c95f/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/wal/IgniteWalRecoveryTest.java -- diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/wal/IgniteWalRecoveryTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/wal/IgniteWalRecoveryTest.java index c5d6a8b..e603910 100644 --- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/wal/IgniteWalRecoveryTest.java +++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/wal/IgniteWalRecoveryTest.java @@ -181,7 +181,7 @@ public class IgniteWalRecoveryTest extends GridCommonAbstractTest { /** * @throws Exception if failed. */ -public void testWalBig() throws Exception { +public void _testWalBig() throws Exception { IgniteEx ignite = startGrid(1); ignite.active(true); @@ -223,7 +223,7 @@ public class IgniteWalRecoveryTest extends GridCommonAbstractTest { /** * @throws Exception if failed. */ -public void testWalBigObjectNodeCancel() throws Exception { +public void _testWalBigObjectNodeCancel() throws Exception { final int MAX_SIZE_POWER = 21; IgniteEx ignite = startGrid(1); @@ -261,7 +261,7 @@ public class IgniteWalRecoveryTest extends GridCommonAbstractTest { /** * @throws Exception If fail. */ -public void testSwitchClassLoader() throws Exception { +public void _testSwitchClassLoader() throws Exception { try { final IgniteEx igniteEx = startGrid(1); @@ -305,7 +305,7 @@ public class IgniteWalRecoveryTest extends GridCommonAbstractTest { /** * @throws Exception if failed. */ -public void testWalSimple() throws Exception { +public void _testWalSimple() throws Exception { try { IgniteEx ignite = startGrid(1); @@ -385,7 +385,7 @@ public class IgniteWalRecoveryTest extends GridCommonAbstractTest { /** * @throws Exception If fail. */ -public void testWalLargeValue() throws Exception { +public void _testWalLargeValue() throws Exception { try { IgniteEx ignite = startGrid(1); @@ -467,7 +467,7 @@ public class IgniteWalRecoveryTest extends GridCommonAbstractTest { /** * @throws Exception if failed. */ -public void testHugeCheckpointRecord() throws Exception { +public void _testHugeCheckpointRecord() throws Exception { try { final IgniteEx ignite = startGrid(1); @@ -519,7 +519,7 @@ public class IgniteWalRecoveryTest extends GridCommonAbstractTest { private void checkWalRolloverMultithreaded() throws Exception { walSegmentSize = 2 * 1024 * 1024; -final long endTime = System.currentTimeMillis() + 2 * 60 * 1000; +final long endTime = System.currentTimeMillis() + 20 * 60 * 1000; try { IgniteEx ignite = startGrid(1); @@ -547,7 +547,7 @@ public class IgniteWalRecoveryTest extends GridCommonAbstractTest { /** * @throws Exception If fail. */ -public void testWalRenameDirSimple() throws Exception { +public void _testWalRenameDirSimple() throws Exception { try { IgniteEx ignite = startGrid(1); @@ -609,7 +609,7 @@ public class IgniteWalRecoveryTest extends GridCommonAbstractTest { /** * @throws Exception if failed. */ -public void testRecoveryNoCheckpoint() throws Exception { +
ignite git commit: IGNITE-5961 - Align pages in LFS partition files to pageSize
Repository: ignite Updated Branches: refs/heads/master b5ad72969 -> 3919d8035 IGNITE-5961 - Align pages in LFS partition files to pageSize Project: http://git-wip-us.apache.org/repos/asf/ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/3919d803 Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/3919d803 Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/3919d803 Branch: refs/heads/master Commit: 3919d8035fb172e1546f7a3ecea0f29f8e1e2214 Parents: b5ad729 Author: Ivan RakovAuthored: Thu Aug 10 13:31:23 2017 +0300 Committer: Alexey Goncharuk Committed: Thu Aug 10 13:31:23 2017 +0300 -- .../internal/pagemem/store/PageStore.java | 5 + .../cache/persistence/file/FilePageStore.java | 54 ++--- .../persistence/file/FilePageStoreFactory.java | 35 ++ .../persistence/file/FilePageStoreManager.java | 17 +-- .../cache/persistence/file/FilePageStoreV2.java | 53 + .../file/FileVersionCheckingFactory.java| 116 +++ ...gnitePdsRecoveryAfterFileCorruptionTest.java | 2 +- 7 files changed, 251 insertions(+), 31 deletions(-) -- http://git-wip-us.apache.org/repos/asf/ignite/blob/3919d803/modules/core/src/main/java/org/apache/ignite/internal/pagemem/store/PageStore.java -- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/pagemem/store/PageStore.java b/modules/core/src/main/java/org/apache/ignite/internal/pagemem/store/PageStore.java index 4698a6b..f6e577c 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/pagemem/store/PageStore.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/pagemem/store/PageStore.java @@ -95,4 +95,9 @@ public interface PageStore { * @throws IgniteCheckedException If sync failed (IO error occurred). */ public void ensure() throws IgniteCheckedException; + +/** + * @return Page store version. + */ +public int version(); } http://git-wip-us.apache.org/repos/asf/ignite/blob/3919d803/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/file/FilePageStore.java -- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/file/FilePageStore.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/file/FilePageStore.java index a7ca13c..7fe1ffe 100755 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/file/FilePageStore.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/file/FilePageStore.java @@ -45,10 +45,10 @@ public class FilePageStore implements PageStore { private static final long SIGNATURE = 0xF19AC4FE60C530B8L; /** File version. */ -private static final int VERSION = 1; +public static final int VERSION = 1; /** Allocated field offset. */ -public static final int HEADER_SIZE = 8/*SIGNATURE*/ + 4/*VERSION*/ + 1/*type*/ + 4/*page size*/; +static final int HEADER_SIZE = 8/*SIGNATURE*/ + 4/*VERSION*/ + 1/*type*/ + 4/*page size*/; /** */ private final File cfgFile; @@ -57,7 +57,7 @@ public class FilePageStore implements PageStore { private final byte type; /** Database configuration. */ -private final MemoryConfiguration dbCfg; +protected final MemoryConfiguration dbCfg; /** Factory to provide I/O interfaces for read/write operations with files */ private final FileIOFactory ioFactory; @@ -103,20 +103,36 @@ public class FilePageStore implements PageStore { /** {@inheritDoc} */ @Override public boolean exists() { -return cfgFile.exists() && cfgFile.length() > HEADER_SIZE; +return cfgFile.exists() && cfgFile.length() > headerSize(); } /** + * Size of page store header. + */ +public int headerSize() { +return HEADER_SIZE; +} + +/** + * Page store version. + */ +public int version() { +return VERSION; +} + +/** + * Creates header for current version file store. Doesn't init the store. + * * @param type Type. * @param pageSize Page size. * @return Byte buffer instance. */ -public static ByteBuffer header(byte type, int pageSize) { -ByteBuffer hdr = ByteBuffer.allocate(HEADER_SIZE).order(ByteOrder.LITTLE_ENDIAN); +public ByteBuffer header(byte type, int pageSize) { +ByteBuffer hdr = ByteBuffer.allocate(headerSize()).order(ByteOrder.LITTLE_ENDIAN); hdr.putLong(SIGNATURE); -hdr.putInt(VERSION); +hdr.putInt(version()); hdr.put(type); @@ -142,7 +158,7
ignite git commit: IGNITE-6012 Review.
Repository: ignite Updated Branches: refs/heads/ignite-6012 a0fe6ea46 -> 3ae7bff97 IGNITE-6012 Review. Project: http://git-wip-us.apache.org/repos/asf/ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/3ae7bff9 Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/3ae7bff9 Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/3ae7bff9 Branch: refs/heads/ignite-6012 Commit: 3ae7bff97db9d47d712444888cab3a83353ddd3b Parents: a0fe6ea Author: Andrey NovikovAuthored: Thu Aug 10 16:57:03 2017 +0700 Committer: Andrey Novikov Committed: Thu Aug 10 16:57:20 2017 +0700 -- .../http/jetty/GridJettyRestHandler.java| 20 ++-- 1 file changed, 6 insertions(+), 14 deletions(-) -- http://git-wip-us.apache.org/repos/asf/ignite/blob/3ae7bff9/modules/rest-http/src/main/java/org/apache/ignite/internal/processors/rest/protocols/http/jetty/GridJettyRestHandler.java -- diff --git a/modules/rest-http/src/main/java/org/apache/ignite/internal/processors/rest/protocols/http/jetty/GridJettyRestHandler.java b/modules/rest-http/src/main/java/org/apache/ignite/internal/processors/rest/protocols/http/jetty/GridJettyRestHandler.java index b1c5577..327c13a 100644 --- a/modules/rest-http/src/main/java/org/apache/ignite/internal/processors/rest/protocols/http/jetty/GridJettyRestHandler.java +++ b/modules/rest-http/src/main/java/org/apache/ignite/internal/processors/rest/protocols/http/jetty/GridJettyRestHandler.java @@ -17,8 +17,7 @@ package org.apache.ignite.internal.processors.rest.protocols.http.jetty; -import com.fasterxml.jackson.core.JsonGenerationException; -import com.fasterxml.jackson.databind.JsonMappingException; +import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.ObjectMapper; import java.io.BufferedInputStream; import java.io.ByteArrayOutputStream; @@ -358,10 +357,10 @@ public class GridJettyRestHandler extends AbstractHandler { U.error(log, "Failed to process HTTP request [action=" + act + ", req=" + req + ']', e); -cmdRes = new GridRestResponse(STATUS_FAILED, e.getMessage()); - if (e instanceof Error) throw (Error)e; + +cmdRes = new GridRestResponse(STATUS_FAILED, e.getMessage()); } try { @@ -370,17 +369,10 @@ public class GridJettyRestHandler extends AbstractHandler { try { jsonMapper.writeValue(os, cmdRes); } -catch (JsonGenerationException | JsonMappingException e1) { -U.error(log, "Failed to convert response to JSON: " + cmdRes, e1); +catch (JsonProcessingException e) { +U.error(log, "Failed to convert response to JSON: " + cmdRes, e); -GridRestResponse resFailed = new GridRestResponse(STATUS_FAILED, e1.getMessage()); - -try { -jsonMapper.writeValue(os, resFailed); -} -catch (JsonGenerationException | JsonMappingException e2) { -jsonMapper.writeValue(os, "{\"successStatus\": \"1\", \"error:\" \"" + e2.getMessage() + "\"}}"); -} +jsonMapper.writeValue(os, F.asMap("successStatus", STATUS_FAILED, "error", e.getMessage())); } if (log.isDebugEnabled())
[2/2] ignite git commit: Merge remote-tracking branch 'community/ignite-2.1.3'
Merge remote-tracking branch 'community/ignite-2.1.3' Project: http://git-wip-us.apache.org/repos/asf/ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/b5ad7296 Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/b5ad7296 Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/b5ad7296 Branch: refs/heads/master Commit: b5ad7296997185ed2d078614b3ed6e9a6f405670 Parents: 988ffe3 2e5c343 Author: Alexey GoncharukAuthored: Thu Aug 10 12:08:41 2017 +0300 Committer: Alexey Goncharuk Committed: Thu Aug 10 12:08:41 2017 +0300 -- .../cache/persistence/tree/io/PagePartitionCountersIO.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) --
[1/2] ignite git commit: IGNITE-5950 incorrect assertion fixed
Repository: ignite Updated Branches: refs/heads/master 988ffe3e1 -> b5ad72969 IGNITE-5950 incorrect assertion fixed Project: http://git-wip-us.apache.org/repos/asf/ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/2e5c343d Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/2e5c343d Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/2e5c343d Branch: refs/heads/master Commit: 2e5c343d911e353c6d82630d09562664cc5e89e2 Parents: 0eedf46 Author: Sergey ChugunovAuthored: Mon Aug 7 11:34:01 2017 +0300 Committer: Sergey Chugunov Committed: Mon Aug 7 11:34:01 2017 +0300 -- .../cache/persistence/tree/io/PagePartitionCountersIO.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/ignite/blob/2e5c343d/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/tree/io/PagePartitionCountersIO.java -- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/tree/io/PagePartitionCountersIO.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/tree/io/PagePartitionCountersIO.java index 9bd806f..d5b81c1 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/tree/io/PagePartitionCountersIO.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/tree/io/PagePartitionCountersIO.java @@ -129,7 +129,7 @@ public class PagePartitionCountersIO extends PageIO { long cacheSize = PageUtils.getLong(pageAddr, off); off += 8; -assert cacheSize > 0 : cacheSize; +assert cacheSize >= 0 : cacheSize; Long old = res.put(cacheId, cacheSize);