You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ignite.apache.org by ag...@apache.org on 2017/01/17 17:54:20 UTC
[1/2] ignite git commit: ignite-gg-8.0.2.ea2 igfs test fix
Repository: ignite
Updated Branches:
refs/heads/ignite-3477 7db65ddd1 -> f8c775339
ignite-gg-8.0.2.ea2 igfs test fix
(cherry picked from commit 9b40d0e)
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/b721d73d
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/b721d73d
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/b721d73d
Branch: refs/heads/ignite-3477
Commit: b721d73dfe4bc5c64a9de0d93119c482a7020d79
Parents: cb60e38
Author: Dmitriy Govorukhin <dg...@gridgain.com>
Authored: Tue Jan 17 20:44:15 2017 +0300
Committer: Dmitriy Govorukhin <dg...@gridgain.com>
Committed: Tue Jan 17 20:50:57 2017 +0300
----------------------------------------------------------------------
.../processors/cache/GridCacheMapEntry.java | 31 -------------
.../processors/cache/GridCacheProcessor.java | 9 ++--
.../cache/IgniteCacheOffheapManagerImpl.java | 48 ++++++++++++++++++++
.../query/h2/opt/GridH2TreeIndex.java | 2 +-
4 files changed, 55 insertions(+), 35 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/b721d73d/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheMapEntry.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheMapEntry.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheMapEntry.java
index 9f01888..ee39ed9 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheMapEntry.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheMapEntry.java
@@ -205,40 +205,9 @@ public abstract class GridCacheMapEntry extends GridMetadataAwareAdapter impleme
protected void value(@Nullable CacheObject val) {
assert Thread.holdsLock(this);
- // In case we deal with IGFS cache, count updated data
- if (cctx.cache().isIgfsDataCache() &&
- cctx.kernalContext().igfsHelper().isIgfsBlockKey(keyValue(false))) {
- int newSize = valueLength0(val, null);
- int oldSize = valueLength0(this.val, null);
-
- int delta = newSize - oldSize;
-
- if (delta != 0 && !cctx.isNear())
- cctx.cache().onIgfsDataSizeChanged(delta);
- }
-
this.val = val;
}
- /**
- * Isolated method to get length of IGFS block.
- *
- * @param val Value.
- * @param valBytes Value bytes.
- * @return Length of value.
- */
- private int valueLength0(@Nullable CacheObject val, @Nullable IgniteBiTuple<byte[], Byte> valBytes) {
- byte[] bytes = val != null ? (byte[])val.value(cctx.cacheObjectContext(), false) : null;
-
- if (bytes != null)
- return bytes.length;
-
- if (valBytes == null)
- return 0;
-
- return valBytes.get1().length - (((valBytes.get2() == CacheObject.TYPE_BYTE_ARR) ? 0 : 6));
- }
-
/** {@inheritDoc} */
@Override public int memorySize() throws IgniteCheckedException {
byte[] kb;
http://git-wip-us.apache.org/repos/asf/ignite/blob/b721d73d/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheProcessor.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheProcessor.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheProcessor.java
index be22aed..57b0d84 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheProcessor.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheProcessor.java
@@ -2037,9 +2037,12 @@ public class GridCacheProcessor extends GridProcessorAdapter {
if (desc == null)
continue;
- // requestId must be null because on different node will be different byte [] and we get duplicate discovery data
- // see TcpDiscoveryNodeAddedMessage#addDiscoveryData 'Arrays.equals(curData, discoDataEntry.getValue())'
- DynamicCacheChangeRequest req = new DynamicCacheChangeRequest(null, cache.name(), null);
+
+ // RequestId must be null because on different node will be different byte [] and
+ // we get duplicate discovery data, for more details see
+ // TcpDiscoveryNodeAddedMessage#addDiscoveryData.
+ DynamicCacheChangeRequest req = new DynamicCacheChangeRequest(
+ null, cache.name(), null);
req.startCacheConfiguration(desc.cacheConfiguration());
http://git-wip-us.apache.org/repos/asf/ignite/blob/b721d73d/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/IgniteCacheOffheapManagerImpl.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/IgniteCacheOffheapManagerImpl.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/IgniteCacheOffheapManagerImpl.java
index 76450fb..6aea247 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/IgniteCacheOffheapManagerImpl.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/IgniteCacheOffheapManagerImpl.java
@@ -921,6 +921,8 @@ public class IgniteCacheOffheapManagerImpl extends GridCacheManagerAdapter imple
if (pendingEntries != null && expireTime != 0)
pendingEntries.put(new PendingRow(expireTime, dataRow.link()));
+
+ updateIgfsMetrics(key, (old != null ? old.value() : null), val);
}
finally {
busyLock.leaveBusy();
@@ -961,6 +963,8 @@ public class IgniteCacheOffheapManagerImpl extends GridCacheManagerAdapter imple
if (dataRow != null)
rowStore.removeRow(dataRow.link());
+
+ updateIgfsMetrics(key, (dataRow != null ? dataRow.value() : null), null);
}
finally {
busyLock.leaveBusy();
@@ -1029,6 +1033,50 @@ public class IgniteCacheOffheapManagerImpl extends GridCacheManagerAdapter imple
storageSize.set(size);
cntr.set(updCntr);
}
+
+ /**
+ * @param key Key.
+ * @param oldVal Old value.
+ * @param newVal New value.
+ */
+ private void updateIgfsMetrics(
+ KeyCacheObject key,
+ CacheObject oldVal,
+ CacheObject newVal
+ ) throws IgniteCheckedException {
+ // In case we deal with IGFS cache, count updated data
+ if (cctx.cache().isIgfsDataCache() &&
+ !cctx.isNear() &&
+ cctx.kernalContext()
+ .igfsHelper()
+ .isIgfsBlockKey(key.value(cctx.cacheObjectContext(), false))) {
+ int oldSize = valueLength(oldVal);
+ int newSize = valueLength(newVal);
+
+ int delta = newSize - oldSize;
+
+ if (delta != 0)
+ cctx.cache().onIgfsDataSizeChanged(delta);
+ }
+ }
+
+ /**
+ * Isolated method to get length of IGFS block.
+ *
+ * @param val Value.
+ * @return Length of value.
+ */
+ private int valueLength(@Nullable CacheObject val) {
+ if (val == null)
+ return 0;
+
+ byte[] bytes = val.value(cctx.cacheObjectContext(), false);
+
+ if (bytes != null)
+ return bytes.length;
+ else
+ return 0;
+ }
}
/**
http://git-wip-us.apache.org/repos/asf/ignite/blob/b721d73d/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/opt/GridH2TreeIndex.java
----------------------------------------------------------------------
diff --git a/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/opt/GridH2TreeIndex.java b/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/opt/GridH2TreeIndex.java
index 0f93f52..729309a 100644
--- a/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/opt/GridH2TreeIndex.java
+++ b/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/opt/GridH2TreeIndex.java
@@ -521,7 +521,7 @@ public class GridH2TreeIndex extends GridH2IndexBase implements Comparator<GridS
else if (lower == null)
rows = tree.headMap(upper).values();
else
- rows = tree.subMap(lower, true, upper, true).values();
+ rows = tree.subMap(lower, false, upper, false).values();
return new GridCursorIteratorWrapper<>(rows.iterator());
}
[2/2] ignite git commit: Merge branch 'ignite-3477' of
https://git-wip-us.apache.org/repos/asf/ignite into ignite-db-x
Posted by ag...@apache.org.
Merge branch 'ignite-3477' of https://git-wip-us.apache.org/repos/asf/ignite into ignite-db-x
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/f8c77533
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/f8c77533
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/f8c77533
Branch: refs/heads/ignite-3477
Commit: f8c7753395a6cf9c4948ebb32f1e0260e92d0915
Parents: b721d73d 7db65dd
Author: Alexey Goncharuk <al...@gmail.com>
Authored: Tue Jan 17 20:52:42 2017 +0300
Committer: Alexey Goncharuk <al...@gmail.com>
Committed: Tue Jan 17 20:52:42 2017 +0300
----------------------------------------------------------------------
.../internal/binary/BinaryEnumObjectImpl.java | 7 +
.../internal/binary/BinaryObjectImpl.java | 5 +
.../binary/BinaryObjectOffheapImpl.java | 5 +
.../apache/ignite/internal/pagemem/Page.java | 11 +-
.../ignite/internal/pagemem/PageMemory.java | 9 +-
.../ignite/internal/pagemem/PageUtils.java | 185 ++++++
.../pagemem/impl/PageMemoryNoStoreImpl.java | 134 ++--
.../internal/pagemem/impl/PageNoStoreImpl.java | 91 +--
.../delta/DataPageInsertFragmentRecord.java | 8 +-
.../wal/record/delta/DataPageInsertRecord.java | 8 +-
.../wal/record/delta/DataPageRemoveRecord.java | 8 +-
.../delta/DataPageSetFreeListPageRecord.java | 8 +-
.../wal/record/delta/FixCountRecord.java | 8 +-
.../record/delta/FixLeftmostChildRecord.java | 8 +-
.../pagemem/wal/record/delta/FixRemoveId.java | 8 +-
.../wal/record/delta/InitNewPageRecord.java | 8 +-
.../wal/record/delta/InnerReplaceRecord.java | 4 +-
.../pagemem/wal/record/delta/InsertRecord.java | 5 +-
.../pagemem/wal/record/delta/MergeRecord.java | 3 +-
.../wal/record/delta/MetaPageAddRootRecord.java | 8 +-
.../wal/record/delta/MetaPageCutRootRecord.java | 7 +-
.../wal/record/delta/MetaPageInitRecord.java | 14 +-
.../record/delta/MetaPageInitRootRecord.java | 9 +-
.../delta/MetaPageUpdateLastAllocatedIndex.java | 10 +-
...aPageUpdateLastSuccessfulFullSnapshotId.java | 8 +-
.../MetaPageUpdateLastSuccessfulSnapshotId.java | 8 +-
.../delta/MetaPageUpdateNextSnapshotId.java | 8 +-
.../MetaPageUpdatePartitionDataRecord.java | 12 +-
.../wal/record/delta/NewRootInitRecord.java | 6 +-
.../wal/record/delta/PageDeltaRecord.java | 7 +-
.../delta/PageListMetaResetCountRecord.java | 8 +-
.../record/delta/PagesListAddPageRecord.java | 8 +-
.../delta/PagesListInitNewPageRecord.java | 10 +-
.../record/delta/PagesListRemovePageRecord.java | 8 +-
.../record/delta/PagesListSetNextRecord.java | 8 +-
.../delta/PagesListSetPreviousRecord.java | 8 +-
.../pagemem/wal/record/delta/RecycleRecord.java | 6 +-
.../pagemem/wal/record/delta/RemoveRecord.java | 12 +-
.../pagemem/wal/record/delta/ReplaceRecord.java | 7 +-
.../record/delta/SplitExistingPageRecord.java | 8 +-
.../record/delta/SplitForwardPageRecord.java | 3 +-
.../record/delta/TrackingPageDeltaRecord.java | 10 +-
.../internal/processors/cache/CacheObject.java | 7 +
.../processors/cache/CacheObjectAdapter.java | 40 +-
.../cache/CacheObjectByteArrayImpl.java | 5 +
.../cache/IgniteCacheOffheapManagerImpl.java | 372 +++++++----
.../processors/cache/database/CacheDataRow.java | 13 +-
.../cache/database/CacheDataRowAdapter.java | 72 ++-
.../cache/database/CacheSearchRow.java | 40 ++
.../cache/database/DataStructure.java | 36 +-
.../IgniteCacheDatabaseSharedManager.java | 2 +-
.../cache/database/MetadataStorage.java | 149 +++--
.../cache/database/freelist/FreeListImpl.java | 61 +-
.../cache/database/freelist/PagesList.java | 212 +++----
.../database/freelist/io/PagesListMetaIO.java | 71 +--
.../database/freelist/io/PagesListNodeIO.java | 117 ++--
.../cache/database/tree/BPlusTree.java | 616 ++++++++++---------
.../cache/database/tree/io/BPlusIO.java | 201 +++---
.../cache/database/tree/io/BPlusInnerIO.java | 71 ++-
.../cache/database/tree/io/BPlusLeafIO.java | 11 +-
.../cache/database/tree/io/BPlusMetaIO.java | 79 +--
.../cache/database/tree/io/CacheVersionIO.java | 46 ++
.../cache/database/tree/io/DataPageIO.java | 545 ++++++++--------
.../cache/database/tree/io/DataPagePayload.java | 64 ++
.../cache/database/tree/io/IOVersions.java | 12 +-
.../cache/database/tree/io/PageIO.java | 110 +++-
.../cache/database/tree/io/PageMetaIO.java | 118 ++--
.../database/tree/io/PagePartitionMetaIO.java | 67 +-
.../database/tree/reuse/ReuseListImpl.java | 2 +-
.../cache/database/tree/util/PageHandler.java | 135 ++--
.../database/tree/util/PageLockListener.java | 17 +-
.../atomic/GridDhtAtomicSingleUpdateFuture.java | 3 +-
.../atomic/GridNearAtomicUpdateResponse.java | 3 +
.../apache/ignite/internal/util/GridUnsafe.java | 12 +
.../apache/ignite/internal/util/IgniteTree.java | 31 +-
.../internal/GridAffinityNoCacheSelfTest.java | 5 +
.../pagemem/impl/PageMemoryNoLoadSelfTest.java | 29 +-
.../IgniteIncompleteCacheObjectSelfTest.java | 5 +
.../database/tree/io/TrackingPageIOTest.java | 38 +-
.../database/BPlusTreeReuseSelfTest.java | 22 +-
.../processors/database/BPlusTreeSelfTest.java | 85 +--
.../database/FreeListImplSelfTest.java | 15 +-
.../database/MetadataStorageSelfTest.java | 2 +-
.../internal/processors/query/h2/H2Cursor.java | 9 +-
.../processors/query/h2/database/H2Tree.java | 5 +-
.../query/h2/database/H2TreeIndex.java | 5 +-
.../query/h2/database/io/H2InnerIO.java | 24 +-
.../query/h2/database/io/H2LeafIO.java | 22 +-
.../query/h2/database/io/H2RowLinkIO.java | 6 +-
.../processors/query/h2/opt/GridH2Row.java | 5 +
.../query/IgniteSqlDistributedJoinSelfTest.java | 46 +-
.../h2/GridIndexingSpiAbstractSelfTest.java | 5 +
.../IgniteDistributedJoinTestSuite.java | 2 +-
93 files changed, 2579 insertions(+), 1807 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/f8c77533/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/IgniteCacheOffheapManagerImpl.java
----------------------------------------------------------------------