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/04/12 08:58:16 UTC
ignite git commit: Debugging .NET - more
Repository: ignite
Updated Branches:
refs/heads/ignite-3477-debug 73e9be5fe -> 4751b256a
Debugging .NET - more
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/4751b256
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/4751b256
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/4751b256
Branch: refs/heads/ignite-3477-debug
Commit: 4751b256a66360b5ccfb676492aa58278ed57182
Parents: 73e9be5
Author: Alexey Goncharuk <al...@gmail.com>
Authored: Wed Apr 12 11:58:43 2017 +0300
Committer: Alexey Goncharuk <al...@gmail.com>
Committed: Wed Apr 12 11:58:43 2017 +0300
----------------------------------------------------------------------
.../processors/cache/database/tree/io/DataPageIO.java | 12 +++++++++++-
1 file changed, 11 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/4751b256/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/database/tree/io/DataPageIO.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/database/tree/io/DataPageIO.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/database/tree/io/DataPageIO.java
index f2d17e6..384614f 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/database/tree/io/DataPageIO.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/database/tree/io/DataPageIO.java
@@ -138,12 +138,22 @@ public class DataPageIO extends PageIO {
private int getPageEntrySize(long pageAddr, int dataOff, int show) {
int payloadLen = PageUtils.getShort(pageAddr, dataOff) & 0xFFFF;
+ int payloadLen0 = payloadLen;
+
if ((payloadLen & FRAGMENTED_FLAG) != 0)
payloadLen &= ~FRAGMENTED_FLAG; // We are fragmented and have a link.
else
show &= ~SHOW_LINK; // We are not fragmented, never have a link.
- return getPageEntrySize(payloadLen, show);
+ try {
+ return getPageEntrySize(payloadLen, show);
+ }
+ catch (AssertionError e) {
+ U.debug("Failed [pageAddr=" + U.hexLong(pageAddr) + ", dataOff=" + dataOff + ", show=" + show +
+ ", payloadLen0=" + payloadLen0 + ", payloadLen=" + payloadLen + ']');
+
+ throw e;
+ }
}
/**