[21/50] [abbrv] ignite git commit: IGNITE-8469 Fix for non-heap memory leak for calling cluster activation multi times. - Fixes #3986.

2018-05-24 Thread dpavlov
IGNITE-8469 Fix for non-heap memory leak for calling cluster activation multi 
times. - Fixes #3986.

Signed-off-by: dpavlov 


Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/9a4a145b
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/9a4a145b
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/9a4a145b

Branch: refs/heads/ignite-5789-1
Commit: 9a4a145be514e650258715a7e682d427d5812d16
Parents: eb8038f
Author: Maxim Muzafarov 
Authored: Mon May 21 17:28:22 2018 +0300
Committer: dpavlov 
Committed: Mon May 21 17:28:22 2018 +0300

--
 .../mem/file/MappedFileMemoryProvider.java  |  8 ++
 .../mem/unsafe/UnsafeMemoryProvider.java|  8 ++
 .../pagemem/impl/PageMemoryNoStoreImpl.java |  3 +-
 .../apache/ignite/internal/util/GridDebug.java  | 56 +
 .../pagemem/PageMemoryNoStoreLeakTest.java  | 82 
 .../ignite/testsuites/IgnitePdsTestSuite.java   |  2 +
 6 files changed, 144 insertions(+), 15 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/ignite/blob/9a4a145b/modules/core/src/main/java/org/apache/ignite/internal/mem/file/MappedFileMemoryProvider.java
--
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/mem/file/MappedFileMemoryProvider.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/mem/file/MappedFileMemoryProvider.java
index 7186b27..54b4af4 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/mem/file/MappedFileMemoryProvider.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/mem/file/MappedFileMemoryProvider.java
@@ -55,6 +55,9 @@ public class MappedFileMemoryProvider implements 
DirectMemoryProvider {
 /** */
 private List mappedFiles;
 
+/** Flag shows if current memory provider have been already initialized. */
+private boolean isInit;
+
 /**
  * @param allocationPath Allocation path.
  */
@@ -65,6 +68,9 @@ public class MappedFileMemoryProvider implements 
DirectMemoryProvider {
 
 /** {@inheritDoc} */
 @Override public void initialize(long[] sizes) {
+if (isInit)
+throw new IgniteException("Second initialization does not allowed 
for current provider");
+
 this.sizes = sizes;
 
 mappedFiles = new ArrayList<>(sizes.length);
@@ -90,6 +96,8 @@ public class MappedFileMemoryProvider implements 
DirectMemoryProvider {
 "opened by another process and current user has enough 
rights): " + file);
 }
 }
+
+isInit = true;
 }
 
 /** {@inheritDoc} */

http://git-wip-us.apache.org/repos/asf/ignite/blob/9a4a145b/modules/core/src/main/java/org/apache/ignite/internal/mem/unsafe/UnsafeMemoryProvider.java
--
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/mem/unsafe/UnsafeMemoryProvider.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/mem/unsafe/UnsafeMemoryProvider.java
index 276e10e..7eb58cb 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/mem/unsafe/UnsafeMemoryProvider.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/mem/unsafe/UnsafeMemoryProvider.java
@@ -41,6 +41,9 @@ public class UnsafeMemoryProvider implements 
DirectMemoryProvider {
 /** */
 private IgniteLogger log;
 
+/** Flag shows if current memory provider have been already initialized. */
+private boolean isInit;
+
 /**
  * @param log Ignite logger to use.
  */
@@ -50,9 +53,14 @@ public class UnsafeMemoryProvider implements 
DirectMemoryProvider {
 
 /** {@inheritDoc} */
 @Override public void initialize(long[] sizes) {
+if (isInit)
+throw new IgniteException("Second initialization does not allowed 
for current provider");
+
 this.sizes = sizes;
 
 regions = new ArrayList<>();
+
+isInit = true;
 }
 
 /** {@inheritDoc} */

http://git-wip-us.apache.org/repos/asf/ignite/blob/9a4a145b/modules/core/src/main/java/org/apache/ignite/internal/pagemem/impl/PageMemoryNoStoreImpl.java
--
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/pagemem/impl/PageMemoryNoStoreImpl.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/pagemem/impl/PageMemoryNoStoreImpl.java
index d4b22a6..54b647a 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/pagemem/impl/PageMemoryNoStoreImpl.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/pagemem/impl/PageMemoryNoStoreImpl.java
@@ -231,7 +231,8 @@ public class PageMemoryNoStoreImpl implements 

ignite git commit: IGNITE-8469 Fix for non-heap memory leak for calling cluster activation multi times. - Fixes #3986.

2018-05-21 Thread dpavlov
Repository: ignite
Updated Branches:
  refs/heads/master eb8038f65 -> 9a4a145be


IGNITE-8469 Fix for non-heap memory leak for calling cluster activation multi 
times. - Fixes #3986.

Signed-off-by: dpavlov 


Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/9a4a145b
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/9a4a145b
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/9a4a145b

Branch: refs/heads/master
Commit: 9a4a145be514e650258715a7e682d427d5812d16
Parents: eb8038f
Author: Maxim Muzafarov 
Authored: Mon May 21 17:28:22 2018 +0300
Committer: dpavlov 
Committed: Mon May 21 17:28:22 2018 +0300

--
 .../mem/file/MappedFileMemoryProvider.java  |  8 ++
 .../mem/unsafe/UnsafeMemoryProvider.java|  8 ++
 .../pagemem/impl/PageMemoryNoStoreImpl.java |  3 +-
 .../apache/ignite/internal/util/GridDebug.java  | 56 +
 .../pagemem/PageMemoryNoStoreLeakTest.java  | 82 
 .../ignite/testsuites/IgnitePdsTestSuite.java   |  2 +
 6 files changed, 144 insertions(+), 15 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/ignite/blob/9a4a145b/modules/core/src/main/java/org/apache/ignite/internal/mem/file/MappedFileMemoryProvider.java
--
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/mem/file/MappedFileMemoryProvider.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/mem/file/MappedFileMemoryProvider.java
index 7186b27..54b4af4 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/mem/file/MappedFileMemoryProvider.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/mem/file/MappedFileMemoryProvider.java
@@ -55,6 +55,9 @@ public class MappedFileMemoryProvider implements 
DirectMemoryProvider {
 /** */
 private List mappedFiles;
 
+/** Flag shows if current memory provider have been already initialized. */
+private boolean isInit;
+
 /**
  * @param allocationPath Allocation path.
  */
@@ -65,6 +68,9 @@ public class MappedFileMemoryProvider implements 
DirectMemoryProvider {
 
 /** {@inheritDoc} */
 @Override public void initialize(long[] sizes) {
+if (isInit)
+throw new IgniteException("Second initialization does not allowed 
for current provider");
+
 this.sizes = sizes;
 
 mappedFiles = new ArrayList<>(sizes.length);
@@ -90,6 +96,8 @@ public class MappedFileMemoryProvider implements 
DirectMemoryProvider {
 "opened by another process and current user has enough 
rights): " + file);
 }
 }
+
+isInit = true;
 }
 
 /** {@inheritDoc} */

http://git-wip-us.apache.org/repos/asf/ignite/blob/9a4a145b/modules/core/src/main/java/org/apache/ignite/internal/mem/unsafe/UnsafeMemoryProvider.java
--
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/mem/unsafe/UnsafeMemoryProvider.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/mem/unsafe/UnsafeMemoryProvider.java
index 276e10e..7eb58cb 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/mem/unsafe/UnsafeMemoryProvider.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/mem/unsafe/UnsafeMemoryProvider.java
@@ -41,6 +41,9 @@ public class UnsafeMemoryProvider implements 
DirectMemoryProvider {
 /** */
 private IgniteLogger log;
 
+/** Flag shows if current memory provider have been already initialized. */
+private boolean isInit;
+
 /**
  * @param log Ignite logger to use.
  */
@@ -50,9 +53,14 @@ public class UnsafeMemoryProvider implements 
DirectMemoryProvider {
 
 /** {@inheritDoc} */
 @Override public void initialize(long[] sizes) {
+if (isInit)
+throw new IgniteException("Second initialization does not allowed 
for current provider");
+
 this.sizes = sizes;
 
 regions = new ArrayList<>();
+
+isInit = true;
 }
 
 /** {@inheritDoc} */

http://git-wip-us.apache.org/repos/asf/ignite/blob/9a4a145b/modules/core/src/main/java/org/apache/ignite/internal/pagemem/impl/PageMemoryNoStoreImpl.java
--
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/pagemem/impl/PageMemoryNoStoreImpl.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/pagemem/impl/PageMemoryNoStoreImpl.java
index d4b22a6..54b647a 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/pagemem/impl/PageMemoryNoStoreImpl.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/pagemem/impl/PageMemoryNoStoreImpl.java