Return-Path: X-Original-To: archive-asf-public-internal@cust-asf2.ponee.io Delivered-To: archive-asf-public-internal@cust-asf2.ponee.io Received: from cust-asf.ponee.io (cust-asf.ponee.io [163.172.22.183]) by cust-asf2.ponee.io (Postfix) with ESMTP id 829D3200C22 for ; Mon, 16 Jan 2017 16:21:30 +0100 (CET) Received: by cust-asf.ponee.io (Postfix) id 813B7160B22; Mon, 16 Jan 2017 15:21:30 +0000 (UTC) Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by cust-asf.ponee.io (Postfix) with SMTP id 52B74160B5B for ; Mon, 16 Jan 2017 16:21:29 +0100 (CET) Received: (qmail 34230 invoked by uid 500); 16 Jan 2017 15:21:28 -0000 Mailing-List: contact commits-help@ignite.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@ignite.apache.org Delivered-To: mailing list commits@ignite.apache.org Received: (qmail 34053 invoked by uid 99); 16 Jan 2017 15:21:28 -0000 Received: from git1-us-west.apache.org (HELO git1-us-west.apache.org) (140.211.11.23) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 16 Jan 2017 15:21:28 +0000 Received: by git1-us-west.apache.org (ASF Mail Server at git1-us-west.apache.org, from userid 33) id 4A038F2DCD; Mon, 16 Jan 2017 15:21:28 +0000 (UTC) Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit From: yzhdanov@apache.org To: commits@ignite.apache.org Date: Mon, 16 Jan 2017 15:21:38 -0000 Message-Id: <1b2023a875e04418a2389d135240c756@git.apache.org> In-Reply-To: References: X-Mailer: ASF-Git Admin Mailer Subject: [12/12] ignite git commit: merge from master archived-at: Mon, 16 Jan 2017 15:21:30 -0000 merge from master Project: http://git-wip-us.apache.org/repos/asf/ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/ecd727c4 Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/ecd727c4 Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/ecd727c4 Branch: refs/heads/ignite-comm-balance-master Commit: ecd727c4df9d9f53ece4a24182d964102e2c1508 Parents: 18229e8 b7908d7 Author: Yakov Zhdanov Authored: Mon Jan 16 18:21:10 2017 +0300 Committer: Yakov Zhdanov Committed: Mon Jan 16 18:21:10 2017 +0300 ---------------------------------------------------------------------- .../ignite/cache/query/SqlFieldsQuery.java | 6 + .../store/jdbc/dialect/BasicJdbcDialect.java | 31 +- .../GridClientConnectionManagerAdapter.java | 7 +- .../impl/connection/GridClientTopology.java | 53 +++- .../GridNearAtomicAbstractUpdateFuture.java | 34 ++- .../GridNearAtomicSingleUpdateFuture.java | 48 ++- .../dht/atomic/GridNearAtomicUpdateFuture.java | 61 ++-- .../IgniteCacheObjectProcessorImpl.java | 5 +- .../utils/PlatformConfigurationUtils.java | 128 +++++++- .../processors/query/GridQueryProcessor.java | 2 +- .../store/jdbc/CacheJdbcPojoStoreTest.java | 48 ++- .../ignite/cache/store/jdbc/model/Person.java | 2 +- .../cache/CacheEntryProcessorCopySelfTest.java | 6 +- .../cache/GridCacheBasicStoreAbstractTest.java | 2 +- .../GridCacheDhtEvictionsDisabledSelfTest.java | 5 +- .../AtomicPutAllChangingTopologyTest.java | 212 +++++++++++++ .../IgniteCacheFailoverTestSuite.java | 3 + .../apache/ignite/stream/flume/IgniteSink.java | 7 +- .../hadoop/impl/v2/HadoopV2TaskContext.java | 7 - ...niteCacheAbstractInsertSqlQuerySelfTest.java | 14 +- .../IgniteCacheAbstractSqlDmlQuerySelfTest.java | 6 +- .../IgniteCacheInsertSqlQuerySelfTest.java | 18 +- .../cache/IgniteCacheMergeSqlQuerySelfTest.java | 14 +- .../IgniteCacheUpdateSqlQuerySelfTest.java | 4 +- .../Apache.Ignite.Core.Tests.csproj | 3 + .../Binary/BinaryBuilderSelfTest.cs | 159 ++++++---- .../BinaryBuilderSelfTestArrayIdentity.cs | 34 +++ .../Binary/BinaryEqualityComparerTest.cs | 279 +++++++++++++++++ .../Binary/IO/BinaryStreamsTest.cs | 19 ++ .../Cache/CacheConfigurationTest.cs | 5 +- .../Cache/Query/CacheDmlQueriesTest.cs | 296 +++++++++++++++++++ .../IgniteConfigurationSerializerTest.cs | 46 ++- .../IgniteConfigurationTest.cs | 28 ++ .../Apache.Ignite.Core.csproj | 4 + .../Binary/BinaryArrayEqualityComparer.cs | 149 ++++++++++ .../Binary/BinaryConfiguration.cs | 24 ++ .../Binary/BinaryTypeConfiguration.cs | 14 + .../Cache/Configuration/QueryEntity.cs | 33 ++- .../Cache/Configuration/QueryField.cs | 6 + .../Apache.Ignite.Core/IgniteConfiguration.cs | 85 ++++-- .../IgniteConfigurationSection.xsd | 19 ++ .../Apache.Ignite.Core/Impl/Binary/Binary.cs | 28 +- .../Binary/BinaryEqualityComparerSerializer.cs | 99 +++++++ .../Impl/Binary/BinaryFieldEqualityComparer.cs | 138 +++++++++ .../Impl/Binary/BinaryFullTypeDescriptor.cs | 21 +- .../Impl/Binary/BinaryObject.cs | 31 +- .../Impl/Binary/BinaryObjectBuilder.cs | 62 +++- .../Impl/Binary/BinaryObjectHeader.cs | 21 +- .../Impl/Binary/BinaryObjectSchemaHolder.cs | 22 ++ .../Impl/Binary/BinaryReader.cs | 16 +- .../Binary/BinarySurrogateTypeDescriptor.cs | 6 + .../Impl/Binary/BinarySystemHandlers.cs | 6 +- .../Impl/Binary/BinaryWriter.cs | 11 +- .../Impl/Binary/DateTimeHolder.cs | 15 +- .../Impl/Binary/IBinaryEqualityComparer.cs | 53 ++++ .../Impl/Binary/IBinaryTypeDescriptor.cs | 5 + .../Impl/Binary/Io/BinaryHeapStream.cs | 9 + .../Impl/Binary/Io/BinaryStreamBase.cs | 13 + .../Impl/Binary/Io/IBinaryStream.cs | 25 ++ .../Impl/Binary/Marshaller.cs | 22 +- .../Impl/Binary/SerializableObjectHolder.cs | 16 + .../Common/IgniteConfigurationXmlSerializer.cs | 5 +- .../Impl/Memory/PlatformMemoryStream.cs | 16 + 63 files changed, 2271 insertions(+), 295 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/ignite/blob/ecd727c4/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridNearAtomicAbstractUpdateFuture.java ---------------------------------------------------------------------- diff --cc modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridNearAtomicAbstractUpdateFuture.java index fb4ca78,c92e0f5..a77facc --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridNearAtomicAbstractUpdateFuture.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridNearAtomicAbstractUpdateFuture.java @@@ -220,26 -220,10 +223,27 @@@ public abstract class GridNearAtomicAbs } /** + * @param completer + */ + public void completer(Runnable completer) { + this.completer = completer; + } + + /** {@inheritDoc} */ + protected Runnable clearCompleter() { + Runnable r = completer; + + if (r != null) + completer = null; + + return r; + } + + /** * @param topVer Topology version. + * @param futVer Future version */ - protected abstract void map(AffinityTopologyVersion topVer); + protected abstract void map(AffinityTopologyVersion topVer, GridCacheVersion futVer); /** * Maps future on ready topology. http://git-wip-us.apache.org/repos/asf/ignite/blob/ecd727c4/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridNearAtomicSingleUpdateFuture.java ---------------------------------------------------------------------- diff --cc modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridNearAtomicSingleUpdateFuture.java index f148cbb,7376aff..06076be --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridNearAtomicSingleUpdateFuture.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridNearAtomicSingleUpdateFuture.java @@@ -386,60 -379,61 +379,67 @@@ public class GridNearAtomicSingleUpdate /** {@inheritDoc} */ @Override protected void mapOnTopology() { - AffinityTopologyVersion topVer = null; - cache.topology().readLock(); - + AffinityTopologyVersion topVer; - + GridCacheVersion futVer; - try { - if (cache.topology().stopping()) { - onDone(new IgniteCheckedException("Failed to perform cache operation (cache is stopped): " + - cache.name())); + if (!CU.cheatCache(cctx.cacheId())) { + cache.topology().readLock(); - return; - } + try { + if (cache.topology().stopping()) { + onDone(new IgniteCheckedException("Failed to perform cache operation (cache is stopped): " + + cache.name())); - GridDhtTopologyFuture fut = cache.topology().topologyVersionFuture(); + return; + } - if (fut.isDone()) { - Throwable err = fut.validateCache(cctx); + GridDhtTopologyFuture fut = cache.topology().topologyVersionFuture(); - if (err != null) { - onDone(err); + if (fut.isDone()) { + Throwable err = fut.validateCache(cctx); - return; - } + if (err != null) { + onDone(err); - topVer = fut.topologyVersion(); + return; + } - futVer = addAtomicFuture(topVer); - } - else { - if (waitTopFut) { - assert !topLocked : this; - - fut.listen(new CI1>() { - @Override public void apply(IgniteInternalFuture t) { - cctx.kernalContext().closure().runLocalSafe(new Runnable() { - @Override public void run() { - mapOnTopology(); - } - }); - } - }); + topVer = fut.topologyVersion(); ++ ++ futVer = addAtomicFuture(topVer); } - else - onDone(new GridCacheTryPutFailedException()); + else { + if (waitTopFut) { + assert !topLocked : this; + + fut.listen(new CI1>() { + @Override public void apply(IgniteInternalFuture t) { + cctx.kernalContext().closure().runLocalSafe(new Runnable() { + @Override public void run() { + mapOnTopology(); + } + }); + } + }); + } + else + onDone(new GridCacheTryPutFailedException()); - return; + return; + } + } + finally { + cache.topology().readUnlock(); } } - else - finally { - cache.topology().readUnlock(); ++ else { + topVer = cache.topology().topologyVersionFuture().topologyVersion(); + - map(topVer); ++ futVer = addAtomicFuture(topVer); + } + + if (futVer != null) + map(topVer, futVer); } /** {@inheritDoc} */ http://git-wip-us.apache.org/repos/asf/ignite/blob/ecd727c4/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridNearAtomicUpdateFuture.java ---------------------------------------------------------------------- diff --cc modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridNearAtomicUpdateFuture.java index 0b917e9,950e5bd..9f6e761 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridNearAtomicUpdateFuture.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridNearAtomicUpdateFuture.java @@@ -495,60 -488,61 +488,67 @@@ public class GridNearAtomicUpdateFutur /** {@inheritDoc} */ @Override protected void mapOnTopology() { - AffinityTopologyVersion topVer = null; - cache.topology().readLock(); - + AffinityTopologyVersion topVer; - + GridCacheVersion futVer; - try { - if (cache.topology().stopping()) { - onDone(new IgniteCheckedException("Failed to perform cache operation (cache is stopped): " + - cache.name())); + if (!CU.cheatCache(cctx.cacheId())) { + cache.topology().readLock(); - return; - } + try { + if (cache.topology().stopping()) { + onDone(new IgniteCheckedException("Failed to perform cache operation (cache is stopped): " + + cache.name())); - GridDhtTopologyFuture fut = cache.topology().topologyVersionFuture(); + return; + } - if (fut.isDone()) { - Throwable err = fut.validateCache(cctx); + GridDhtTopologyFuture fut = cache.topology().topologyVersionFuture(); - if (err != null) { - onDone(err); + if (fut.isDone()) { + Throwable err = fut.validateCache(cctx); - return; - } + if (err != null) { + onDone(err); - topVer = fut.topologyVersion(); + return; + } - futVer = addAtomicFuture(topVer); - } - else { - if (waitTopFut) { - assert !topLocked : this; - - fut.listen(new CI1>() { - @Override public void apply(IgniteInternalFuture t) { - cctx.kernalContext().closure().runLocalSafe(new Runnable() { - @Override public void run() { - mapOnTopology(); - } - }); - } - }); + topVer = fut.topologyVersion(); ++ ++ futVer = addAtomicFuture(topVer); } - else - onDone(new GridCacheTryPutFailedException()); + else { + if (waitTopFut) { + assert !topLocked : this; + + fut.listen(new CI1>() { + @Override public void apply(IgniteInternalFuture t) { + cctx.kernalContext().closure().runLocalSafe(new Runnable() { + @Override public void run() { + mapOnTopology(); + } + }); + } + }); + } + else + onDone(new GridCacheTryPutFailedException()); - return; + return; + } + } + finally { + cache.topology().readUnlock(); } } - else - finally { - cache.topology().readUnlock(); ++ else { + topVer = cache.topology().topologyVersionFuture().topologyVersion(); + - map(topVer, null); ++ futVer = addAtomicFuture(topVer); + } + + if (futVer != null) + map(topVer, futVer, remapKeys); } /**