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;
+        }
     }
 
     /**