[ignite] branch ignite-14953 deleted (was 136234a)

2021-06-24 Thread tledkov
This is an automated email from the ASF dual-hosted git repository.

tledkov pushed a change to branch ignite-14953
in repository https://gitbox.apache.org/repos/asf/ignite.git.


 was 136234a  wip

This change permanently discards the following revisions:

 discard 136234a  wip
 discard 995b108  wip
 discard ab8d2fe  wip


[ignite] branch master updated: IGNITE-14753 Fix builds with maven 3.8.1+

2021-06-24 Thread ilyak
This is an automated email from the ASF dual-hosted git repository.

ilyak pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/ignite.git


The following commit(s) were added to refs/heads/master by this push:
 new 218d09a  IGNITE-14753 Fix builds with maven 3.8.1+
218d09a is described below

commit 218d09a5b3f2b92d260d84b05fd394fef786f823
Author: Ilya Korol 
AuthorDate: Thu Jun 24 12:41:38 2021 +0300

IGNITE-14753 Fix builds with maven 3.8.1+

Update versions (migrate from http repositories):
  - apache parent
  - jotm (with appropriate test fixes)

Fix broken configuration for jar plugin (due to versions upgrade in apache 
parent):
  - Remove 'useDefaultManifestFile' option from ignite parent pom
  - Add classifiers for artifacts in modules/extdata/uri

 Remove duplicated dependencies declarations in several modules to reduce 
maven complains - Fixes #9116.

Signed-off-by: Ilya Kasnacheev 
---
 modules/azure/pom.xml  |  7 ---
 modules/extdata/uri/pom.xml| 59 +++---
 .../HibernateL2CacheTransactionalSelfTest.java |  3 +-
 .../HibernateL2CacheTransactionalSelfTest.java |  3 +-
 .../HibernateL2CacheTransactionalSelfTest.java |  3 +-
 modules/jta/pom.xml|  6 +++
 .../cache/GridJtaTransactionManagerSelfTest.java   |  3 +-
 .../cache/jta/AbstractCacheJtaSelfTest.java|  3 +-
 modules/kubernetes/pom.xml |  7 ---
 modules/urideploy/pom.xml  |  7 ---
 parent/pom.xml |  7 +--
 11 files changed, 59 insertions(+), 49 deletions(-)

diff --git a/modules/azure/pom.xml b/modules/azure/pom.xml
index c3951b3..7caa44b 100644
--- a/modules/azure/pom.xml
+++ b/modules/azure/pom.xml
@@ -242,13 +242,6 @@
 ${azure.netty.version}
 
 
-
-
-io.netty
-netty-transport-native-kqueue
-${azure.netty.version}
-
-
 
 
 io.netty
diff --git a/modules/extdata/uri/pom.xml b/modules/extdata/uri/pom.xml
index a4fba1e..fad9cc1 100644
--- a/modules/extdata/uri/pom.xml
+++ b/modules/extdata/uri/pom.xml
@@ -64,7 +64,27 @@
 modules/uri-dependency
 
 
+
+
+uri
+${uri.fn}.jar
+
+deployfile
+plain
+${plain.fn}-${plain.clr}.jar
+
+deployfile
+well-signed
+
${well-signed.fn}-${well-signed.clr}.jar
+
+deployfile
+bad-signed
+${bad-signed.fn}-${bad-signed.clr}.jar
+
+
+
 
+
 
 
 src/main/java
@@ -115,36 +135,37 @@
 maven-jar-plugin
 
 
-jar-file
+jar-uri
 compile
 
 jar
 
 
-deployfile
-
${basedir}/target/file
+${uri.fn}
+
${basedir}/target/deploy
 
 
**/GridUriDeploymentTestTask8.class
 
**/GridUriDeploymentTestWithNameTask8.class
-
**/GridUriDeploymentTestTask9.class
-
**/GridUriDeploymentDependency9.class
-**/test9.properties
-**/spring9.xml
 
 
 
 
-jar-uri
+jar-plain
 compile
 
 jar
 
 
-uri
-
${basedir}/target/deploy
+${plain.fn}
+${plain.clr}
+
${basedir}/target/file
 
 
**/GridUriDeploymentTestTask8.class
 
**/GridUriDeploymentTestWithNameTask8.class
+
**/GridUriDeploymentTestTask9.class
+
**/GridUriDeploymentDependency9.class
+**/test9.properties
+**/spring9.xml
 
 
 
@@ -155,7 +176,8 @@
 jar
 
 
-well-signed-deployfile
+${well-signed.fn}
+${well-signed.clr}
 
${basedir}/target/file

[ignite-3] 01/02: Simplify row size estimation. Fallback to single vartable format.

2021-06-24 Thread amashenkov
This is an automated email from the ASF dual-hosted git repository.

amashenkov pushed a commit to branch ignite-14743-compaction
in repository https://gitbox.apache.org/repos/asf/ignite-3.git

commit 40b85de0f3ffeeeae788a38661d1752cc1bddf0a
Author: Andrew Mashenkov 
AuthorDate: Thu Jun 24 01:16:43 2021 +0300

Simplify row size estimation.
Fallback to single vartable format.
---
 .../internal/schema/marshaller/MarshallerUtil.java |  3 +-
 .../marshaller/reflection/JavaSerializer.java  |  2 +-
 .../ignite/internal/schema/row/RowAssembler.java   | 80 +-
 .../ignite/internal/table/TupleBuilderImpl.java|  2 +-
 .../ignite/internal/table/TupleMarshallerImpl.java | 22 +++---
 5 files changed, 28 insertions(+), 81 deletions(-)

diff --git 
a/modules/schema/src/main/java/org/apache/ignite/internal/schema/marshaller/MarshallerUtil.java
 
b/modules/schema/src/main/java/org/apache/ignite/internal/schema/marshaller/MarshallerUtil.java
index 265c3f9..ecf77be 100644
--- 
a/modules/schema/src/main/java/org/apache/ignite/internal/schema/marshaller/MarshallerUtil.java
+++ 
b/modules/schema/src/main/java/org/apache/ignite/internal/schema/marshaller/MarshallerUtil.java
@@ -21,7 +21,6 @@ import java.util.BitSet;
 import java.util.UUID;
 import org.apache.ignite.internal.schema.InvalidTypeException;
 import org.apache.ignite.internal.schema.NativeType;
-import org.apache.ignite.internal.schema.row.RowAssembler;
 import org.apache.ignite.internal.util.ObjectFactory;
 
 /**
@@ -41,7 +40,7 @@ public final class MarshallerUtil {
 return ((byte[])val).length;
 
 case STRING:
-return RowAssembler.utf8EncodedLength((CharSequence)val);
+return ((CharSequence)val).length() << 1; 
//RowAssembler.utf8EncodedLength((CharSequence)val);
 
 default:
 throw new InvalidTypeException("Unsupported variable-length 
type: " + type);
diff --git 
a/modules/schema/src/main/java/org/apache/ignite/internal/schema/marshaller/reflection/JavaSerializer.java
 
b/modules/schema/src/main/java/org/apache/ignite/internal/schema/marshaller/reflection/JavaSerializer.java
index 57b5bdd..2e4f4b3 100644
--- 
a/modules/schema/src/main/java/org/apache/ignite/internal/schema/marshaller/reflection/JavaSerializer.java
+++ 
b/modules/schema/src/main/java/org/apache/ignite/internal/schema/marshaller/reflection/JavaSerializer.java
@@ -98,7 +98,7 @@ public class JavaSerializer extends AbstractSerializer {
  */
 private ObjectStatistic collectObjectStats(Columns cols, Marshaller marsh, 
Object obj) {
 if (obj == null || !cols.hasVarlengthColumns())
-return new ObjectStatistic(0, 0);
+return new ObjectStatistic(0, cols.fixsizeMaxLen());
 
 int cnt = 0;
 int size = cols.fixsizeMaxLen();
diff --git 
a/modules/schema/src/main/java/org/apache/ignite/internal/schema/row/RowAssembler.java
 
b/modules/schema/src/main/java/org/apache/ignite/internal/schema/row/RowAssembler.java
index b639480..d07f621 100644
--- 
a/modules/schema/src/main/java/org/apache/ignite/internal/schema/row/RowAssembler.java
+++ 
b/modules/schema/src/main/java/org/apache/ignite/internal/schema/row/RowAssembler.java
@@ -57,12 +57,6 @@ public class RowAssembler {
 /** The number of non-null varlen columns in values chunk. */
 private final int valVarlenCols;
 
-/** Value null-map size in bytes. */
-private int valNullMapSize;
-
-/** Value write mode. */
-private final VarTableFormat valWriteMode;
-
 /** Current columns chunk. */
 private Columns curCols;
 
@@ -93,9 +87,6 @@ public class RowAssembler {
 /** Current offset for the next column to be appended. */
 protected int curOff;
 
-/** Vartable format helper. */
-private VarTableFormat format;
-
 /**
  * Calculates encoded string length.
  *
@@ -140,10 +131,8 @@ public class RowAssembler {
 ) {
 this(schema,
 0,
-schema.keyColumns().nullMapSize() > 0,
 nonNullVarlenKeyCols,
 0,
-schema.valueColumns().nullMapSize() > 0,
 nonNullVarlenValCols);
 }
 
@@ -154,46 +143,15 @@ public class RowAssembler {
  *
  * @param schema Row schema.
  * @param keyDataSize Key payload size. Estimated upper-bound or zero if 
unknown.
- * @param nonNullVarlenKeyCols Number of non-null varlen columns in key 
chunk.
- * @param valDataSize Value data size. Estimated upper-bound or zero if 
unknown.
- * @param nonNullVarlenValCols Number of non-null varlen columns in value 
chunk.
- */
-public RowAssembler(
-SchemaDescriptor schema,
-int keyDataSize,
-int nonNullVarlenKeyCols,
-int valDataSize,
-int nonNullVarlenValCols
-) {
-this(schema,
-keyDataSize,
-schema.keyColumns().nullMapSize() > 0,
-nonNullVarlenKeyCols,
-valDataSize,
-  

[ignite-3] 02/02: Minor.

2021-06-24 Thread amashenkov
This is an automated email from the ASF dual-hosted git repository.

amashenkov pushed a commit to branch ignite-14743-compaction
in repository https://gitbox.apache.org/repos/asf/ignite-3.git

commit fae6c3aace4dde9cc49e80fa1373b1a5713c99cb
Author: Andrew Mashenkov 
AuthorDate: Thu Jun 24 12:39:18 2021 +0300

Minor.
---
 .../marshaller/reflection/JavaSerializer.java  |  15 +-
 .../internal/schema/row/ExpandableByteBuf.java |   9 -
 .../org/apache/ignite/internal/schema/row/Row.java |   1 -
 .../ignite/internal/schema/row/RowAssembler.java   | 292 ++---
 .../ignite/internal/table/TupleMarshallerImpl.java |  99 +++
 5 files changed, 199 insertions(+), 217 deletions(-)

diff --git 
a/modules/schema/src/main/java/org/apache/ignite/internal/schema/marshaller/reflection/JavaSerializer.java
 
b/modules/schema/src/main/java/org/apache/ignite/internal/schema/marshaller/reflection/JavaSerializer.java
index 2e4f4b3..06ac189 100644
--- 
a/modules/schema/src/main/java/org/apache/ignite/internal/schema/marshaller/reflection/JavaSerializer.java
+++ 
b/modules/schema/src/main/java/org/apache/ignite/internal/schema/marshaller/reflection/JavaSerializer.java
@@ -85,7 +85,7 @@ public class JavaSerializer extends AbstractSerializer {
 ObjectStatistic keyStat = collectObjectStats(schema.keyColumns(), 
keyMarsh, key);
 ObjectStatistic valStat = collectObjectStats(schema.valueColumns(), 
valMarsh, val);
 
-return new RowAssembler(schema, keyStat.maxChunkDataSize, 
keyStat.nonNullCols, valStat.maxChunkDataSize, valStat.nonNullCols);
+return new RowAssembler(schema, keyStat.nonNullColsSize, 
keyStat.nonNullCols, valStat.nonNullColsSize, valStat.nonNullCols);
 }
 
 /**
@@ -98,10 +98,10 @@ public class JavaSerializer extends AbstractSerializer {
  */
 private ObjectStatistic collectObjectStats(Columns cols, Marshaller marsh, 
Object obj) {
 if (obj == null || !cols.hasVarlengthColumns())
-return new ObjectStatistic(0, cols.fixsizeMaxLen());
+return ObjectStatistic.ZERO_VARLEN_STATISTICS;
 
 int cnt = 0;
-int size = cols.fixsizeMaxLen();
+int size = 0;
 
 for (int i = cols.firstVarlengthColumn(); i < cols.length(); i++) {
 final Object val = marsh.value(obj, i);
@@ -138,16 +138,19 @@ public class JavaSerializer extends AbstractSerializer {
  * Object statistic.
  */
 private static class ObjectStatistic {
+/** Cached zero statistics. */
+static final ObjectStatistic ZERO_VARLEN_STATISTICS = new 
ObjectStatistic(0,0);
+
 /** Non-null columns of varlen type. */
 int nonNullCols;
 
 /** Length of all non-null columns of varlen types. */
-int maxChunkDataSize;
+int nonNullColsSize;
 
 /** Constructor. */
-ObjectStatistic(int nonNullCols, int maxRowSize) {
+ObjectStatistic(int nonNullCols, int nonNullColsSize) {
 this.nonNullCols = nonNullCols;
-this.maxChunkDataSize = maxRowSize;
+this.nonNullColsSize = nonNullColsSize;
 }
 }
 }
diff --git 
a/modules/schema/src/main/java/org/apache/ignite/internal/schema/row/ExpandableByteBuf.java
 
b/modules/schema/src/main/java/org/apache/ignite/internal/schema/row/ExpandableByteBuf.java
index 74f5099..159153e 100644
--- 
a/modules/schema/src/main/java/org/apache/ignite/internal/schema/row/ExpandableByteBuf.java
+++ 
b/modules/schema/src/main/java/org/apache/ignite/internal/schema/row/ExpandableByteBuf.java
@@ -280,13 +280,4 @@ public class ExpandableByteBuf {
 buf.position(oldPos);
 buf.order(ByteOrder.LITTLE_ENDIAN);
 }
-
-/**
- * Unwrap to ByteBuffer.
- *
- * @return internal buffer.
- */
-ByteBuffer unwrap() {
-return buf;
-}
 }
diff --git 
a/modules/schema/src/main/java/org/apache/ignite/internal/schema/row/Row.java 
b/modules/schema/src/main/java/org/apache/ignite/internal/schema/row/Row.java
index c9e27d5..8e2553e 100644
--- 
a/modules/schema/src/main/java/org/apache/ignite/internal/schema/row/Row.java
+++ 
b/modules/schema/src/main/java/org/apache/ignite/internal/schema/row/Row.java
@@ -55,7 +55,6 @@ public class Row implements BinaryRow {
 
 this.row = row;
 this.schema = schema;
-
 }
 
 /**
diff --git 
a/modules/schema/src/main/java/org/apache/ignite/internal/schema/row/RowAssembler.java
 
b/modules/schema/src/main/java/org/apache/ignite/internal/schema/row/RowAssembler.java
index d07f621..76ded31 100644
--- 
a/modules/schema/src/main/java/org/apache/ignite/internal/schema/row/RowAssembler.java
+++ 
b/modules/schema/src/main/java/org/apache/ignite/internal/schema/row/RowAssembler.java
@@ -34,8 +34,6 @@ import org.apache.ignite.internal.schema.NativeTypeSpec;
 import org.apache.ignite.internal.schema.NativeTypes;
 import org.apache.ignite.internal.schema.SchemaDescriptor;
 
-import static org.apache.ignite.internal.schema.Bi

[ignite-3] branch ignite-14743-compaction created (now fae6c3a)

2021-06-24 Thread amashenkov
This is an automated email from the ASF dual-hosted git repository.

amashenkov pushed a change to branch ignite-14743-compaction
in repository https://gitbox.apache.org/repos/asf/ignite-3.git.


  at fae6c3a  Minor.

This branch includes the following new commits:

 new 40b85de  Simplify row size estimation. Fallback to single vartable 
format.
 new fae6c3a  Minor.

The 2 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.



[ignite-3] branch ignite-14743-row-formats created (now 4d31cb3)

2021-06-24 Thread amashenkov
This is an automated email from the ASF dual-hosted git repository.

amashenkov pushed a change to branch ignite-14743-row-formats
in repository https://gitbox.apache.org/repos/asf/ignite-3.git.


  at 4d31cb3  Minor.

This branch includes the following new commits:

 new 28f2f46  Merge branch 'main' into ignite-14743-row-formats
 new 4d31cb3  Minor.

The 2 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.



[ignite-3] 01/02: Merge branch 'main' into ignite-14743-row-formats

2021-06-24 Thread amashenkov
This is an automated email from the ASF dual-hosted git repository.

amashenkov pushed a commit to branch ignite-14743-row-formats
in repository https://gitbox.apache.org/repos/asf/ignite-3.git

commit 28f2f467f7b9fd6c8d74d10aeda99384f397fad4
Merge: 6284c34 972672f
Author: Andrew Mashenkov 
AuthorDate: Thu Jun 24 01:42:02 2021 +0300

Merge branch 'main' into ignite-14743-row-formats

 .../ignite/internal/affinity/AffinityManager.java  |8 +-
 .../internal/affinity/AffinityManagerTest.java |   37 +-
 .../affinity/TestConfigurationStorage.java |   10 +-
 .../network/NetworkConfigurationSchema.java|2 +-
 .../schemas/rest/RestConfigurationSchema.java  |2 +-
 .../schemas/runner/ClusterConfigurationSchema.java |2 +-
 .../schemas/runner/NodeConfigurationSchema.java|2 +-
 .../schemas/table/TablesConfigurationSchema.java   |2 +-
 .../main/java/org/apache/ignite/table/Table.java   |8 +
 .../ignite/internal/baseline/BaselineManager.java  |2 +-
 .../internal/processors/query/calcite/Stubs.java   |6 -
 .../query/calcite/exec/AbstractIndexScan.java  |  107 +
 .../query/calcite/exec/ArrayRowHandler.java|   77 +
 .../calcite/exec/ExecutionCancelledException.java} |8 +-
 .../query/calcite/exec/ExecutionContext.java   |  292 +++
 .../query/calcite/exec/PlannerHelper.java  |  229 ++
 .../query/calcite/exec/QueryTaskExecutor.java} |   35 +-
 .../query/calcite/exec/QueryTaskExecutorImpl.java  |   95 +
 .../processors/query/calcite/exec/RowHandler.java  |   73 +
 .../query/calcite/exec/RuntimeHashIndex.java   |  113 +
 .../query/calcite/exec/RuntimeIndex.java}  |   12 +-
 .../query/calcite/exec/RuntimeTreeIndex.java   |  196 ++
 .../query/calcite/exec/TableFunctionScan.java  |   48 +
 .../processors/query/calcite/exec/TreeIndex.java}  |   17 +-
 .../query/calcite/exec/exp/CallImplementor.java|   42 +
 .../query/calcite/exec/exp/ConverterUtils.java |  460 
 .../query/calcite/exec/exp/ExpressionFactory.java  |  125 +
 .../calcite/exec/exp/ExpressionFactoryImpl.java|  509 
 .../calcite/exec/exp/IgniteBuiltInMethod.java  |   45 +
 .../query/calcite/exec/exp/IgniteSqlFunctions.java |  154 ++
 .../calcite/exec/exp/ImplementableFunction.java}   |   34 +-
 .../query/calcite/exec/exp/NotNullImplementor.java |   43 +
 .../exec/exp/ReflectiveCallNotNullImplementor.java |   82 +
 .../query/calcite/exec/exp/RexImpTable.java| 2574 
 .../query/calcite/exec/exp/RexToLixTranslator.java | 1312 ++
 .../processors/query/calcite/exec/exp/Scalar.java} |   10 +-
 .../query/calcite/exec/exp/agg/Accumulator.java}   |   27 +-
 .../calcite/exec/exp/agg/AccumulatorWrapper.java}  |   19 +-
 .../query/calcite/exec/exp/agg/Accumulators.java   | 1068 
 .../calcite/exec/exp/agg/AccumulatorsFactory.java  |  330 +++
 .../query/calcite/exec/exp/agg/AggregateType.java} |   17 +-
 .../query/calcite/exec/exp/agg/GroupKey.java   |  101 +
 .../query/calcite/exec/rel/AbstractNode.java   |  202 ++
 .../query/calcite/exec/rel/AbstractSetOpNode.java  |  367 +++
 .../exec/rel/CorrelatedNestedLoopJoinNode.java |  479 
 .../query/calcite/exec/rel/Downstream.java}|   31 +-
 .../query/calcite/exec/rel/FilterNode.java |  145 ++
 .../query/calcite/exec/rel/HashAggregateNode.java  |  372 +++
 .../query/calcite/exec/rel/IndexSpoolNode.java |  205 ++
 .../query/calcite/exec/rel/IntersectNode.java  |  118 +
 .../query/calcite/exec/rel/LimitNode.java  |  132 +
 .../query/calcite/exec/rel/Mailbox.java}   |   25 +-
 .../query/calcite/exec/rel/MergeJoinNode.java  | 1134 +
 .../query/calcite/exec/rel/MinusNode.java  |  102 +
 .../query/calcite/exec/rel/NestedLoopJoinNode.java |  812 ++
 .../processors/query/calcite/exec/rel/Node.java|   81 +
 .../query/calcite/exec/rel/ProjectNode.java|   84 +
 .../query/calcite/exec/rel/RootNode.java   |  283 +++
 .../query/calcite/exec/rel/ScanNode.java   |  130 +
 .../query/calcite/exec/rel/SingleNode.java}|   28 +-
 .../query/calcite/exec/rel/SortAggregateNode.java  |  316 +++
 .../query/calcite/exec/rel/SortNode.java   |  148 ++
 .../query/calcite/exec/rel/TableSpoolNode.java |  160 ++
 .../query/calcite/exec/rel/UnionAllNode.java   |   97 +
 .../calcite/metadata/FragmentDescription.java  |   75 +
 .../calcite/metadata/cost/IgniteCostFactory.java   |4 +-
 .../calcite/prepare/ddl/ColumnDefinition.java  |2 +-
 .../processors/query/calcite/util/Commons.java |   27 +-
 .../query/calcite/util/FilteringIterator.java  |   79 +
 .../query/calcite/util/IgniteMethod.java   |   25 +
 .../processors/query/calcite/util/RexUtils.java|8 +-
 .../calcite/util/StripedThreadPoolExecutor.java|  226 ++
 .../query/calcite/util/TransformingIterator.java}  |   33 +-
 .../processors/query/calcite/util/TypeUtils.java  

[ignite-3] 02/02: Minor.

2021-06-24 Thread amashenkov
This is an automated email from the ASF dual-hosted git repository.

amashenkov pushed a commit to branch ignite-14743-row-formats
in repository https://gitbox.apache.org/repos/asf/ignite-3.git

commit 4d31cb3dd2d37d6c8be17e6dcd5c59c5a29a8971
Author: Andrew Mashenkov 
AuthorDate: Thu Jun 24 15:11:38 2021 +0300

Minor.
---
 .../schema/marshaller/reflection/JavaSerializer.java| 13 -
 .../org/apache/ignite/internal/schema/row/ChunkFormat.java  |  4 +---
 2 files changed, 9 insertions(+), 8 deletions(-)

diff --git 
a/modules/schema/src/main/java/org/apache/ignite/internal/schema/marshaller/reflection/JavaSerializer.java
 
b/modules/schema/src/main/java/org/apache/ignite/internal/schema/marshaller/reflection/JavaSerializer.java
index 57b5bdd..6b5f252 100644
--- 
a/modules/schema/src/main/java/org/apache/ignite/internal/schema/marshaller/reflection/JavaSerializer.java
+++ 
b/modules/schema/src/main/java/org/apache/ignite/internal/schema/marshaller/reflection/JavaSerializer.java
@@ -85,7 +85,7 @@ public class JavaSerializer extends AbstractSerializer {
 ObjectStatistic keyStat = collectObjectStats(schema.keyColumns(), 
keyMarsh, key);
 ObjectStatistic valStat = collectObjectStats(schema.valueColumns(), 
valMarsh, val);
 
-return new RowAssembler(schema, keyStat.maxChunkDataSize, 
keyStat.nonNullCols, valStat.maxChunkDataSize, valStat.nonNullCols);
+return new RowAssembler(schema, keyStat.nonNullColsSize, 
keyStat.nonNullCols, valStat.nonNullColsSize, valStat.nonNullCols);
 }
 
 /**
@@ -98,7 +98,7 @@ public class JavaSerializer extends AbstractSerializer {
  */
 private ObjectStatistic collectObjectStats(Columns cols, Marshaller marsh, 
Object obj) {
 if (obj == null || !cols.hasVarlengthColumns())
-return new ObjectStatistic(0, 0);
+return ObjectStatistic.ZERO_VARLEN_STATISTICS;
 
 int cnt = 0;
 int size = cols.fixsizeMaxLen();
@@ -138,16 +138,19 @@ public class JavaSerializer extends AbstractSerializer {
  * Object statistic.
  */
 private static class ObjectStatistic {
+/** Cached zero statistics. */
+static final ObjectStatistic ZERO_VARLEN_STATISTICS = new 
ObjectStatistic(0,0);
+
 /** Non-null columns of varlen type. */
 int nonNullCols;
 
 /** Length of all non-null columns of varlen types. */
-int maxChunkDataSize;
+int nonNullColsSize;
 
 /** Constructor. */
-ObjectStatistic(int nonNullCols, int maxRowSize) {
+ObjectStatistic(int nonNullCols, int nonNullColsSize) {
 this.nonNullCols = nonNullCols;
-this.maxChunkDataSize = maxRowSize;
+this.nonNullColsSize = nonNullColsSize;
 }
 }
 }
diff --git 
a/modules/schema/src/main/java/org/apache/ignite/internal/schema/row/ChunkFormat.java
 
b/modules/schema/src/main/java/org/apache/ignite/internal/schema/row/ChunkFormat.java
index ba2588c..e18156f 100644
--- 
a/modules/schema/src/main/java/org/apache/ignite/internal/schema/row/ChunkFormat.java
+++ 
b/modules/schema/src/main/java/org/apache/ignite/internal/schema/row/ChunkFormat.java
@@ -149,9 +149,7 @@ abstract class ChunkFormat {
  * @return Chunk formatter regarding the provided flags.
  */
 private static ChunkFormat fromFlags(byte chunkFlags) {
-final int mode = chunkFlags & FORMAT_CODE_MASK;
-
-switch (mode) {
+switch (chunkFlags & FORMAT_CODE_MASK) {
 case 1:
 return TINY;
 case 2:


[ignite-3] branch ignite-14743-row-formats updated (4d31cb3 -> 0b79ebf)

2021-06-24 Thread amashenkov
This is an automated email from the ASF dual-hosted git repository.

amashenkov pushed a change to branch ignite-14743-row-formats
in repository https://gitbox.apache.org/repos/asf/ignite-3.git.


 discard 4d31cb3  Minor.
 new 0b79ebf  Minor.

This update added new revisions after undoing existing revisions.
That is to say, some revisions that were in the old version of the
branch are not in the new version.  This situation occurs
when a user --force pushes a change and generates a repository
containing something like this:

 * -- * -- B -- O -- O -- O   (4d31cb3)
\
 N -- N -- N   refs/heads/ignite-14743-row-formats (0b79ebf)

You should already have received notification emails for all of the O
revisions, and so the following emails describe only the N revisions
from the common base, B.

Any revisions marked "omit" are not gone; other references still
refer to them.  Any revisions marked "discard" are gone forever.

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 .../ignite/internal/schema/marshaller/reflection/JavaSerializer.java | 5 +
 .../main/java/org/apache/ignite/internal/schema/row/ChunkWriter.java | 4 ++--
 2 files changed, 3 insertions(+), 6 deletions(-)


[ignite-3] 01/01: Minor.

2021-06-24 Thread amashenkov
This is an automated email from the ASF dual-hosted git repository.

amashenkov pushed a commit to branch ignite-14743-row-formats
in repository https://gitbox.apache.org/repos/asf/ignite-3.git

commit 0b79ebfa289e288ec99d30c136d0955bacc28efa
Author: Andrew Mashenkov 
AuthorDate: Thu Jun 24 15:11:38 2021 +0300

Minor.
---
 .../internal/schema/marshaller/reflection/JavaSerializer.java  | 10 +-
 .../org/apache/ignite/internal/schema/row/ChunkFormat.java |  4 +---
 .../org/apache/ignite/internal/schema/row/ChunkWriter.java |  4 ++--
 3 files changed, 8 insertions(+), 10 deletions(-)

diff --git 
a/modules/schema/src/main/java/org/apache/ignite/internal/schema/marshaller/reflection/JavaSerializer.java
 
b/modules/schema/src/main/java/org/apache/ignite/internal/schema/marshaller/reflection/JavaSerializer.java
index 57b5bdd..c32f01a 100644
--- 
a/modules/schema/src/main/java/org/apache/ignite/internal/schema/marshaller/reflection/JavaSerializer.java
+++ 
b/modules/schema/src/main/java/org/apache/ignite/internal/schema/marshaller/reflection/JavaSerializer.java
@@ -85,7 +85,7 @@ public class JavaSerializer extends AbstractSerializer {
 ObjectStatistic keyStat = collectObjectStats(schema.keyColumns(), 
keyMarsh, key);
 ObjectStatistic valStat = collectObjectStats(schema.valueColumns(), 
valMarsh, val);
 
-return new RowAssembler(schema, keyStat.maxChunkDataSize, 
keyStat.nonNullCols, valStat.maxChunkDataSize, valStat.nonNullCols);
+return new RowAssembler(schema, keyStat.nonNullColsSize, 
keyStat.nonNullCols, valStat.nonNullColsSize, valStat.nonNullCols);
 }
 
 /**
@@ -98,7 +98,7 @@ public class JavaSerializer extends AbstractSerializer {
  */
 private ObjectStatistic collectObjectStats(Columns cols, Marshaller marsh, 
Object obj) {
 if (obj == null || !cols.hasVarlengthColumns())
-return new ObjectStatistic(0, 0);
+return new ObjectStatistic(0,cols.fixsizeMaxLen());
 
 int cnt = 0;
 int size = cols.fixsizeMaxLen();
@@ -142,12 +142,12 @@ public class JavaSerializer extends AbstractSerializer {
 int nonNullCols;
 
 /** Length of all non-null columns of varlen types. */
-int maxChunkDataSize;
+int nonNullColsSize;
 
 /** Constructor. */
-ObjectStatistic(int nonNullCols, int maxRowSize) {
+ObjectStatistic(int nonNullCols, int nonNullColsSize) {
 this.nonNullCols = nonNullCols;
-this.maxChunkDataSize = maxRowSize;
+this.nonNullColsSize = nonNullColsSize;
 }
 }
 }
diff --git 
a/modules/schema/src/main/java/org/apache/ignite/internal/schema/row/ChunkFormat.java
 
b/modules/schema/src/main/java/org/apache/ignite/internal/schema/row/ChunkFormat.java
index ba2588c..e18156f 100644
--- 
a/modules/schema/src/main/java/org/apache/ignite/internal/schema/row/ChunkFormat.java
+++ 
b/modules/schema/src/main/java/org/apache/ignite/internal/schema/row/ChunkFormat.java
@@ -149,9 +149,7 @@ abstract class ChunkFormat {
  * @return Chunk formatter regarding the provided flags.
  */
 private static ChunkFormat fromFlags(byte chunkFlags) {
-final int mode = chunkFlags & FORMAT_CODE_MASK;
-
-switch (mode) {
+switch (chunkFlags & FORMAT_CODE_MASK) {
 case 1:
 return TINY;
 case 2:
diff --git 
a/modules/schema/src/main/java/org/apache/ignite/internal/schema/row/ChunkWriter.java
 
b/modules/schema/src/main/java/org/apache/ignite/internal/schema/row/ChunkWriter.java
index 56f1f3c..6249d3d 100644
--- 
a/modules/schema/src/main/java/org/apache/ignite/internal/schema/row/ChunkWriter.java
+++ 
b/modules/schema/src/main/java/org/apache/ignite/internal/schema/row/ChunkWriter.java
@@ -262,8 +262,8 @@ class ChunkWriter {
 protected void setNull(int colIdx) {
 assert (flags & ChunkFormat.OMIT_NULL_MAP_FLAG) == 0 : "Null-map is 
omitted.";
 
-int byteInMap = colIdx / 8;
-int bitInByte = colIdx % 8;
+int byteInMap = colIdx >> 3;
+int bitInByte = colIdx & 7;
 
 buf.ensureCapacity(nullmapOff() + byteInMap + 1);
 


[ignite] branch ignite-ducktape updated (73c5b2d -> fdc1b2e)

2021-06-24 Thread ivandasch
This is an automated email from the ASF dual-hosted git repository.

ivandasch pushed a change to branch ignite-ducktape
in repository https://gitbox.apache.org/repos/asf/ignite.git.


from 73c5b2d  IGNITE-14780 Thin client test should use versions from 
globals (#9147)
 add fdc1b2e  IGNITE-14477 Add test for rebalance with persistence - Fixes 
#9142.

No new revisions were added by this update.

Summary of changes:
 .../tests/rebalance/DataGenerationApplication.java |  51 +---
 .../ignitetest/services/utils/control_utility.py   |   2 +-
 .../ignitetest/services/utils/ignite_aware.py  |  39 ++-
 .../utils/ignite_configuration/data_storage.py |   1 +
 .../services/utils/templates/datastorage_macro.j2  |   3 +
 .../tests/ignitetest/tests/rebalance/__init__.py   | 175 ---
 .../ignitetest/tests/rebalance/in_memory_test.py   |  72 ++---
 .../ignitetest/tests/rebalance/persistent_test.py  | 246 
 .../tests/ignitetest/tests/rebalance/util.py   | 324 +
 .../tests/ignitetest/tests/suites/fast_suite.yml   |   1 +
 10 files changed, 646 insertions(+), 268 deletions(-)
 create mode 100644 
modules/ducktests/tests/ignitetest/tests/rebalance/persistent_test.py
 create mode 100644 modules/ducktests/tests/ignitetest/tests/rebalance/util.py


[ignite-3] branch ignite-14743-compaction updated: Add compaction.

2021-06-24 Thread amashenkov
This is an automated email from the ASF dual-hosted git repository.

amashenkov pushed a commit to branch ignite-14743-compaction
in repository https://gitbox.apache.org/repos/asf/ignite-3.git


The following commit(s) were added to refs/heads/ignite-14743-compaction by 
this push:
 new d789c59  Add compaction.
d789c59 is described below

commit d789c595d7ddcfb3ff13a42aa14cdc858a1b0f0a
Author: Andrew Mashenkov 
AuthorDate: Thu Jun 24 19:32:05 2021 +0300

Add compaction.
---
 .../ignite/internal/schema/ByteBufferRow.java  |   4 +-
 .../internal/schema/row/ExpandableByteBuf.java |  28 ++
 .../org/apache/ignite/internal/schema/row/Row.java |  26 ++---
 .../ignite/internal/schema/row/RowAssembler.java   |  77 ++
 .../ignite/internal/schema/row/VarTableFormat.java |  87 ++--
 .../schema/RowAssemblerAdvancedSchemaTest.java |  17 ++--
 .../schema/RowAssemblerSimpleSchemaTest.java   | 111 +++--
 7 files changed, 167 insertions(+), 183 deletions(-)

diff --git 
a/modules/schema/src/main/java/org/apache/ignite/internal/schema/ByteBufferRow.java
 
b/modules/schema/src/main/java/org/apache/ignite/internal/schema/ByteBufferRow.java
index 6ae8889..6041aa3 100644
--- 
a/modules/schema/src/main/java/org/apache/ignite/internal/schema/ByteBufferRow.java
+++ 
b/modules/schema/src/main/java/org/apache/ignite/internal/schema/ByteBufferRow.java
@@ -78,12 +78,12 @@ public class ByteBufferRow implements BinaryRow {
 
 /** {@inheritDoc} */
 @Override public byte readByte(int off) {
-return (byte)(buf.get(off) & 0xFF);
+return buf.get(off);
 }
 
 /** {@inheritDoc} */
 @Override public short readShort(int off) {
-return (short)(buf.getShort(off) & 0x);
+return buf.getShort(off);
 }
 
 /** {@inheritDoc} */
diff --git 
a/modules/schema/src/main/java/org/apache/ignite/internal/schema/row/ExpandableByteBuf.java
 
b/modules/schema/src/main/java/org/apache/ignite/internal/schema/row/ExpandableByteBuf.java
index 159153e..19d9f44 100644
--- 
a/modules/schema/src/main/java/org/apache/ignite/internal/schema/row/ExpandableByteBuf.java
+++ 
b/modules/schema/src/main/java/org/apache/ignite/internal/schema/row/ExpandableByteBuf.java
@@ -235,6 +235,16 @@ public class ExpandableByteBuf {
 }
 
 /**
+ * Reads {@code short} value from buffer.
+ *
+ * @param off Buffer offset.
+ * @return Value.
+ */
+public short getShort(int off) {
+return buf.getShort(off);
+}
+
+/**
  * @return The byte array of all bytes written to this array, including 
gaps.
  */
 public byte[] toArray() {
@@ -280,4 +290,22 @@ public class ExpandableByteBuf {
 buf.position(oldPos);
 buf.order(ByteOrder.LITTLE_ENDIAN);
 }
+
+/**
+ * Compact array.
+ *
+ * @param srcOff Source offset.
+ * @param dstOff Destination offset.
+ * @param len Length.
+ */
+void shift(int srcOff, int dstOff, int len) {
+assert srcOff > dstOff;
+
+System.arraycopy(arr, srcOff, arr, dstOff, len);
+Arrays.fill(arr, dstOff + len, srcOff + len, (byte)0);
+
+this.len -= (srcOff - dstOff);
+buf = ByteBuffer.wrap(arr);
+buf.order(ByteOrder.LITTLE_ENDIAN);
+}
 }
diff --git 
a/modules/schema/src/main/java/org/apache/ignite/internal/schema/row/Row.java 
b/modules/schema/src/main/java/org/apache/ignite/internal/schema/row/Row.java
index 8e2553e..8a9b5d7 100644
--- 
a/modules/schema/src/main/java/org/apache/ignite/internal/schema/row/Row.java
+++ 
b/modules/schema/src/main/java/org/apache/ignite/internal/schema/row/Row.java
@@ -370,7 +370,7 @@ public class Row implements BinaryRow {
 int nullMapLen = (flags & VarTableFormat.OMIT_NULL_MAP_FLAG) == 0 ? 
cols.nullMapSize() : 0;
 VarTableFormat format = (flags & VarTableFormat.OMIT_VARTBL_FLAG) == 0 
? VarTableFormat.fromFlags(flags) : null;
 
-if (nullMapLen > 0 && isNull(chunkBaseOff + 
BinaryRow.CHUNK_LEN_FLD_SIZE, colIdx))
+if (nullMapLen > 0 && isNull(chunkBaseOff, colIdx))
 return -1;
 
 int dataOffset = varTableOffset(chunkBaseOff, nullMapLen);
@@ -409,9 +409,9 @@ public class Row implements BinaryRow {
 if (hasNullmap) {
 // Fold offset based on the whole map bytes in the schema
 for (int i = 0; i < colByteIdx; i++)
-colOff += cols.foldFixedLength(i, 
row.readByte(nullMapOffset(chunkBaseOff) + i));
+colOff += cols.foldFixedLength(i, 
Byte.toUnsignedInt(row.readByte(nullMapOffset(chunkBaseOff) + i)));
 
-colOff += cols.foldFixedLength(colByteIdx, 
row.readByte(nullMapOffset(chunkBaseOff) + colByteIdx) | mask);
+colOff += cols.foldFixedLength(colByteIdx, 
Byte.toUnsignedInt(row.readByte(nullMapOffset(chunkBaseOff) + colByteIdx)) | 
mask);
 }
 else {
 for (int i = 0; i < colByteIdx; i++)
@@ -525,31 +525,17 @@ p

[ignite-3] branch ignite-14743-compaction updated (d789c59 -> f8cdbd8)

2021-06-24 Thread amashenkov
This is an automated email from the ASF dual-hosted git repository.

amashenkov pushed a change to branch ignite-14743-compaction
in repository https://gitbox.apache.org/repos/asf/ignite-3.git.


 discard d789c59  Add compaction.
 new f8cdbd8  Add compaction.

This update added new revisions after undoing existing revisions.
That is to say, some revisions that were in the old version of the
branch are not in the new version.  This situation occurs
when a user --force pushes a change and generates a repository
containing something like this:

 * -- * -- B -- O -- O -- O   (d789c59)
\
 N -- N -- N   refs/heads/ignite-14743-compaction (f8cdbd8)

You should already have received notification emails for all of the O
revisions, and so the following emails describe only the N revisions
from the common base, B.

Any revisions marked "omit" are not gone; other references still
refer to them.  Any revisions marked "discard" are gone forever.

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 .../internal/schema/row/ExpandableByteBuf.java | 11 ++---
 .../ignite/internal/schema/row/RowAssembler.java   | 46 +++-
 .../ignite/internal/schema/row/VarTableFormat.java | 49 ++
 3 files changed, 60 insertions(+), 46 deletions(-)


[ignite-3] 01/01: Add compaction.

2021-06-24 Thread amashenkov
This is an automated email from the ASF dual-hosted git repository.

amashenkov pushed a commit to branch ignite-14743-compaction
in repository https://gitbox.apache.org/repos/asf/ignite-3.git

commit f8cdbd8c7f17524a3a1e942c8f36a60a73174477
Author: Andrew Mashenkov 
AuthorDate: Thu Jun 24 19:32:05 2021 +0300

Add compaction.
---
 .../ignite/internal/schema/ByteBufferRow.java  |   4 +-
 .../internal/schema/row/ExpandableByteBuf.java |  29 +
 .../org/apache/ignite/internal/schema/row/Row.java |  26 ++---
 .../ignite/internal/schema/row/RowAssembler.java   |  41 +++
 .../ignite/internal/schema/row/VarTableFormat.java | 118 +
 .../schema/RowAssemblerAdvancedSchemaTest.java |  17 ++-
 .../schema/RowAssemblerSimpleSchemaTest.java   | 111 +--
 7 files changed, 172 insertions(+), 174 deletions(-)

diff --git 
a/modules/schema/src/main/java/org/apache/ignite/internal/schema/ByteBufferRow.java
 
b/modules/schema/src/main/java/org/apache/ignite/internal/schema/ByteBufferRow.java
index 6ae8889..6041aa3 100644
--- 
a/modules/schema/src/main/java/org/apache/ignite/internal/schema/ByteBufferRow.java
+++ 
b/modules/schema/src/main/java/org/apache/ignite/internal/schema/ByteBufferRow.java
@@ -78,12 +78,12 @@ public class ByteBufferRow implements BinaryRow {
 
 /** {@inheritDoc} */
 @Override public byte readByte(int off) {
-return (byte)(buf.get(off) & 0xFF);
+return buf.get(off);
 }
 
 /** {@inheritDoc} */
 @Override public short readShort(int off) {
-return (short)(buf.getShort(off) & 0x);
+return buf.getShort(off);
 }
 
 /** {@inheritDoc} */
diff --git 
a/modules/schema/src/main/java/org/apache/ignite/internal/schema/row/ExpandableByteBuf.java
 
b/modules/schema/src/main/java/org/apache/ignite/internal/schema/row/ExpandableByteBuf.java
index 159153e..72cae54 100644
--- 
a/modules/schema/src/main/java/org/apache/ignite/internal/schema/row/ExpandableByteBuf.java
+++ 
b/modules/schema/src/main/java/org/apache/ignite/internal/schema/row/ExpandableByteBuf.java
@@ -235,6 +235,16 @@ public class ExpandableByteBuf {
 }
 
 /**
+ * Reads {@code short} value from buffer.
+ *
+ * @param off Buffer offset.
+ * @return Value.
+ */
+public short getShort(int off) {
+return buf.getShort(off);
+}
+
+/**
  * @return The byte array of all bytes written to this array, including 
gaps.
  */
 public byte[] toArray() {
@@ -280,4 +290,23 @@ public class ExpandableByteBuf {
 buf.position(oldPos);
 buf.order(ByteOrder.LITTLE_ENDIAN);
 }
+
+/**
+ * Compact array.
+ *
+ * @param srcOff Source offset.
+ * @param dstOff Destination offset.
+ */
+void shift(int srcOff, int dstOff) {
+assert srcOff > dstOff;
+
+final int shift = srcOff - dstOff;
+
+System.arraycopy(arr, srcOff, arr, dstOff, len - srcOff);
+Arrays.fill(arr, len - shift, len, (byte)0);
+
+len -= shift;
+buf = ByteBuffer.wrap(arr);
+buf.order(ByteOrder.LITTLE_ENDIAN);
+}
 }
diff --git 
a/modules/schema/src/main/java/org/apache/ignite/internal/schema/row/Row.java 
b/modules/schema/src/main/java/org/apache/ignite/internal/schema/row/Row.java
index 8e2553e..8a9b5d7 100644
--- 
a/modules/schema/src/main/java/org/apache/ignite/internal/schema/row/Row.java
+++ 
b/modules/schema/src/main/java/org/apache/ignite/internal/schema/row/Row.java
@@ -370,7 +370,7 @@ public class Row implements BinaryRow {
 int nullMapLen = (flags & VarTableFormat.OMIT_NULL_MAP_FLAG) == 0 ? 
cols.nullMapSize() : 0;
 VarTableFormat format = (flags & VarTableFormat.OMIT_VARTBL_FLAG) == 0 
? VarTableFormat.fromFlags(flags) : null;
 
-if (nullMapLen > 0 && isNull(chunkBaseOff + 
BinaryRow.CHUNK_LEN_FLD_SIZE, colIdx))
+if (nullMapLen > 0 && isNull(chunkBaseOff, colIdx))
 return -1;
 
 int dataOffset = varTableOffset(chunkBaseOff, nullMapLen);
@@ -409,9 +409,9 @@ public class Row implements BinaryRow {
 if (hasNullmap) {
 // Fold offset based on the whole map bytes in the schema
 for (int i = 0; i < colByteIdx; i++)
-colOff += cols.foldFixedLength(i, 
row.readByte(nullMapOffset(chunkBaseOff) + i));
+colOff += cols.foldFixedLength(i, 
Byte.toUnsignedInt(row.readByte(nullMapOffset(chunkBaseOff) + i)));
 
-colOff += cols.foldFixedLength(colByteIdx, 
row.readByte(nullMapOffset(chunkBaseOff) + colByteIdx) | mask);
+colOff += cols.foldFixedLength(colByteIdx, 
Byte.toUnsignedInt(row.readByte(nullMapOffset(chunkBaseOff) + colByteIdx)) | 
mask);
 }
 else {
 for (int i = 0; i < colByteIdx; i++)
@@ -525,31 +525,17 @@ public class Row implements BinaryRow {
 }
 
 /**
- * @param baseOff Chunk base offset.
- * @param nullMapLen Null-map length.
- * @param format V

[ignite-3] branch ignite-14743-compaction updated: Add benchmark.

2021-06-24 Thread amashenkov
This is an automated email from the ASF dual-hosted git repository.

amashenkov pushed a commit to branch ignite-14743-compaction
in repository https://gitbox.apache.org/repos/asf/ignite-3.git


The following commit(s) were added to refs/heads/ignite-14743-compaction by 
this push:
 new b06f467  Add benchmark.
b06f467 is described below

commit b06f4676a4706860c2d466e6b55cff5639a53def
Author: Andrew Mashenkov 
AuthorDate: Thu Jun 24 22:11:52 2021 +0300

Add benchmark.
---
 .../benchmarks/TupleMarshallerBenchmarkTest.java   | 163 +
 1 file changed, 163 insertions(+)

diff --git 
a/modules/table/src/test/java/org/apache/ignite/internal/benchmarks/TupleMarshallerBenchmarkTest.java
 
b/modules/table/src/test/java/org/apache/ignite/internal/benchmarks/TupleMarshallerBenchmarkTest.java
new file mode 100644
index 000..53546b6
--- /dev/null
+++ 
b/modules/table/src/test/java/org/apache/ignite/internal/benchmarks/TupleMarshallerBenchmarkTest.java
@@ -0,0 +1,163 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *  http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.ignite.internal.benchmarks;
+
+import java.util.Random;
+import java.util.UUID;
+import java.util.concurrent.TimeUnit;
+import java.util.function.Supplier;
+import java.util.stream.IntStream;
+import org.apache.ignite.internal.schema.Column;
+import org.apache.ignite.internal.schema.Columns;
+import org.apache.ignite.internal.schema.SchemaDescriptor;
+import org.apache.ignite.internal.schema.SchemaRegistry;
+import org.apache.ignite.internal.schema.marshaller.TupleMarshaller;
+import org.apache.ignite.internal.schema.row.Row;
+import org.apache.ignite.internal.table.TupleBuilderImpl;
+import org.apache.ignite.internal.table.TupleMarshallerImpl;
+import org.apache.ignite.table.Tuple;
+import org.openjdk.jmh.annotations.Benchmark;
+import org.openjdk.jmh.annotations.BenchmarkMode;
+import org.openjdk.jmh.annotations.Fork;
+import org.openjdk.jmh.annotations.Measurement;
+import org.openjdk.jmh.annotations.Mode;
+import org.openjdk.jmh.annotations.OutputTimeUnit;
+import org.openjdk.jmh.annotations.Param;
+import org.openjdk.jmh.annotations.Scope;
+import org.openjdk.jmh.annotations.Setup;
+import org.openjdk.jmh.annotations.State;
+import org.openjdk.jmh.annotations.Warmup;
+import org.openjdk.jmh.infra.Blackhole;
+import org.openjdk.jmh.runner.Runner;
+import org.openjdk.jmh.runner.RunnerException;
+import org.openjdk.jmh.runner.options.Options;
+import org.openjdk.jmh.runner.options.OptionsBuilder;
+
+import static org.apache.ignite.internal.schema.NativeTypes.BYTES;
+import static org.apache.ignite.internal.schema.NativeTypes.LONG;
+
+/**
+ * Serializer benchmark.
+ */
+@State(Scope.Benchmark)
+@Warmup(iterations = 1, time = 15, timeUnit = TimeUnit.SECONDS)
+@Measurement(iterations = 1, time = 30, timeUnit = TimeUnit.SECONDS)
+@BenchmarkMode({Mode.Throughput, Mode.AverageTime})
+@OutputTimeUnit(TimeUnit.MICROSECONDS)
+@Fork(jvmArgs = "-Djava.lang.invoke.stringConcat=BC_SB" /* Workaround for Java 
9+ */, value = 1)
+public class TupleMarshallerBenchmarkTest {
+/** Random. */
+private Random rnd = new Random();
+
+/** Tuple marshaller. */
+private TupleMarshaller marshaller;
+
+/** Object fields count. */
+@Param({"1", "10", "100"})
+public int fieldsCount;
+
+/** Nullable cols. */
+@Param({"true", "false"})
+public boolean nullable;
+
+/** Fixed length. */
+@Param({"true", "false"})
+public boolean fixedLen;
+
+/** Schema descriptor. */
+private SchemaDescriptor schema;
+
+private Object[] vals;
+
+/**
+ * Runner.
+ */
+public static void main(String[] args) throws RunnerException {
+Options opt = new OptionsBuilder()
+.include(TupleMarshallerBenchmarkTest.class.getSimpleName())
+.build();
+
+new Runner(opt).run();
+}
+
+/**
+ *
+ */
+@Setup
+public void init() {
+long seed = System.currentTimeMillis();
+
+rnd = new Random(seed);
+
+schema = new SchemaDescriptor(
+UUID.randomUUID(),
+42,
+new Column[] {new Column("key", LONG, false)},
+IntStream.range(0, fieldsCount).boxed()
+   

[ignite-3] branch ignite-14951 updated (a6d01e5 -> b774e5b)

2021-06-24 Thread amashenkov
This is an automated email from the ASF dual-hosted git repository.

amashenkov pushed a change to branch ignite-14951
in repository https://gitbox.apache.org/repos/asf/ignite-3.git.


from a6d01e5  Styles.
 add b774e5b  Styles.

No new revisions were added by this update.

Summary of changes:
 .../ignite/internal/schema/AssemblyException.java  | 34 --
 .../org/apache/ignite/internal/schema/Column.java  | 20 ++---
 .../internal/schema/InvalidTypeException.java  | 34 --
 .../ignite/internal/schema/SchemaException.java| 17 ---
 .../schema/SchemaModificationException.java|  3 ++
 .../schema/registry/SchemaRegistryException.java   | 34 --
 6 files changed, 13 insertions(+), 129 deletions(-)


[ignite-3] branch main updated: IGNITE-14890 Using SLF4J log format. Fixes #175

2021-06-24 Thread sk0x50
This is an automated email from the ASF dual-hosted git repository.

sk0x50 pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/ignite-3.git


The following commit(s) were added to refs/heads/main by this push:
 new 2ef376c  IGNITE-14890 Using SLF4J log format. Fixes #175
2ef376c is described below

commit 2ef376c720b8e6dc0fa43605abd74c9767a2702d
Author: Vladislav Pyatkov 
AuthorDate: Fri Jun 25 01:58:53 2021 +0300

IGNITE-14890 Using SLF4J log format. Fixes #175

Signed-off-by: Slava Koptilin 
---
 .../affinity/RendezvousAffinityFunctionTest.java   |   2 +-
 .../org/apache/ignite/internal/util/ByteUtils.java |   5 +-
 .../apache/ignite/internal/util/IgniteUtils.java   |   1 +
 .../java/org/apache/ignite/lang/IgniteLogger.java  | 179 +++--
 .../apache/ignite/lang/LoggerMessageHelper.java| 443 +
 .../tostring/IgniteToStringBuilderSelfTest.java|   4 +-
 .../org/apache/ignite/lang/LoggerHelperTest.java   | 299 ++
 .../network/scalecube/ITNodeRestartsTest.java  |   8 +-
 .../internal/network/netty/ConnectionManager.java  |   2 +-
 .../ScaleCubeDirectMarshallerTransport.java|   6 +-
 .../raft/client/service/RaftGroupServiceTest.java  |   4 +-
 .../raft/server/ITJRaftCounterServerTest.java  |   6 +-
 .../raft/server/ITSimpleCounterServerTest.java |   2 +-
 .../internal/raft/server/impl/RaftServerImpl.java  |   4 +-
 .../apache/ignite/internal/app/IgnitionImpl.java   |   9 +-
 .../marshaller/asm/AsmSerializerGenerator.java |   8 +-
 .../ignite/distributed/ITDistributedTableTest.java |   4 +-
 17 files changed, 926 insertions(+), 60 deletions(-)

diff --git 
a/modules/affinity/src/test/java/org/apache/ignite/internal/affinity/RendezvousAffinityFunctionTest.java
 
b/modules/affinity/src/test/java/org/apache/ignite/internal/affinity/RendezvousAffinityFunctionTest.java
index 1881da0..e51fd40 100644
--- 
a/modules/affinity/src/test/java/org/apache/ignite/internal/affinity/RendezvousAffinityFunctionTest.java
+++ 
b/modules/affinity/src/test/java/org/apache/ignite/internal/affinity/RendezvousAffinityFunctionTest.java
@@ -130,7 +130,7 @@ public class RendezvousAffinityFunctionTest {
 
 assertNotNull(assignment);
 
-LOG.info("Assignment is serialized successfully [bytes=" + 
assignmentBytes.length + ']');
+LOG.info("Assignment is serialized successfully [bytes={}]", 
assignmentBytes.length);
 
 List> deserializedAssignment = 
(List>)ByteUtils.fromBytes(assignmentBytes);
 
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/util/ByteUtils.java 
b/modules/core/src/main/java/org/apache/ignite/internal/util/ByteUtils.java
index 6412df4..dd4da72 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/util/ByteUtils.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/util/ByteUtils.java
@@ -22,6 +22,7 @@ import java.io.ByteArrayOutputStream;
 import java.io.ObjectInputStream;
 import java.io.ObjectOutputStream;
 import org.apache.ignite.lang.IgniteLogger;
+import org.apache.ignite.lang.LoggerMessageHelper;
 
 /**
  * Utility class provides various method for manipulating with bytes.
@@ -118,7 +119,9 @@ public class ByteUtils {
 }
 }
 catch (Exception e) {
-LOG.warn("Could not serialize a class [cls=" + 
obj.getClass().getName() + "]", e);
+LOG.warn(() ->
+LoggerMessageHelper.format("Could not serialize a class 
[cls={}]", obj.getClass().getName()),
+e);
 
 return null;
 }
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/util/IgniteUtils.java 
b/modules/core/src/main/java/org/apache/ignite/internal/util/IgniteUtils.java
index 796edd1..0b61103 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/util/IgniteUtils.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/util/IgniteUtils.java
@@ -309,6 +309,7 @@ public class IgniteUtils {
  *
  * @param clsName Class name.
  * @param ldr Class loader.
+ * @param clsFilter Predicate to filter class names.
  * @return Class.
  * @throws ClassNotFoundException If class not found.
  */
diff --git 
a/modules/core/src/main/java/org/apache/ignite/lang/IgniteLogger.java 
b/modules/core/src/main/java/org/apache/ignite/lang/IgniteLogger.java
index b99b005..a81ba46 100644
--- a/modules/core/src/main/java/org/apache/ignite/lang/IgniteLogger.java
+++ b/modules/core/src/main/java/org/apache/ignite/lang/IgniteLogger.java
@@ -17,15 +17,11 @@
 
 package org.apache.ignite.lang;
 
+import java.lang.System.Logger.Level;
 import java.util.Objects;
+import java.util.function.Supplier;
 import org.jetbrains.annotations.NotNull;
 
-import static java.lang.System.Logger.Level.DEBUG;
-import static java.lang.System.Logger.Level.ERROR;
-import static java.lang.System.Logger.Level.INFO;
-import static java.lang.System.Logger.Level.TRACE;
-import static java

[ignite-3] 02/07: IGNITE-14993 - Choose available port out of a range

2021-06-24 Thread vkulichenko
This is an automated email from the ASF dual-hosted git repository.

vkulichenko pushed a commit to branch ignite-3.0.0-alpha2
in repository https://gitbox.apache.org/repos/asf/ignite-3.git

commit 1f6acbbf1612c32c702b32bbe0a0e03dba6168ef
Author: Valentin Kulichenko 
AuthorDate: Thu Jun 24 14:15:00 2021 -0700

IGNITE-14993 - Choose available port out of a range
---
 .../ignite/network/internal/netty/ConnectionManager.java   |  2 ++
 .../apache/ignite/network/internal/netty/NettyServer.java  | 14 +-
 2 files changed, 15 insertions(+), 1 deletion(-)

diff --git 
a/modules/network/src/main/java/org/apache/ignite/network/internal/netty/ConnectionManager.java
 
b/modules/network/src/main/java/org/apache/ignite/network/internal/netty/ConnectionManager.java
index 3b3f94c..b2f4a10 100644
--- 
a/modules/network/src/main/java/org/apache/ignite/network/internal/netty/ConnectionManager.java
+++ 
b/modules/network/src/main/java/org/apache/ignite/network/internal/netty/ConnectionManager.java
@@ -94,6 +94,8 @@ public class ConnectionManager {
 public void start() throws IgniteInternalException {
 try {
 server.start().join();
+
+LOG.info("Connection created [address=" + server.address() + ']');
 }
 catch (CompletionException e) {
 Throwable cause = e.getCause();
diff --git 
a/modules/network/src/main/java/org/apache/ignite/network/internal/netty/NettyServer.java
 
b/modules/network/src/main/java/org/apache/ignite/network/internal/netty/NettyServer.java
index feb99ed..2a458a5 100644
--- 
a/modules/network/src/main/java/org/apache/ignite/network/internal/netty/NettyServer.java
+++ 
b/modules/network/src/main/java/org/apache/ignite/network/internal/netty/NettyServer.java
@@ -25,6 +25,7 @@ import java.util.function.BiConsumer;
 import java.util.function.Consumer;
 import java.util.function.Function;
 import io.netty.bootstrap.ServerBootstrap;
+import io.netty.channel.Channel;
 import io.netty.channel.ChannelInitializer;
 import io.netty.channel.ChannelOption;
 import io.netty.channel.ServerChannel;
@@ -171,7 +172,18 @@ public class NettyServer {
  */
 .childOption(ChannelOption.SO_KEEPALIVE, true);
 
-serverStartFuture = 
NettyUtils.toChannelCompletableFuture(bootstrap.bind(port))
+CompletableFuture bindFuture = 
NettyUtils.toChannelCompletableFuture(bootstrap.bind(port));
+
+for (int i = 1; i < PORT_RANGE; i++) {
+int port0 = port + i;
+
+bindFuture = bindFuture
+.thenApply(CompletableFuture::completedFuture)
+.exceptionally(err -> 
NettyUtils.toChannelCompletableFuture(bootstrap.bind(port0)))
+.thenCompose(Function.identity());
+}
+
+serverStartFuture = bindFuture
 .handle((channel, err) -> {
 synchronized (startStopLock) {
 CompletableFuture workerCloseFuture = 
serverCloseFuture;


[ignite-3] 03/07: IGNITE-14994 - Topology snapshot print out

2021-06-24 Thread vkulichenko
This is an automated email from the ASF dual-hosted git repository.

vkulichenko pushed a commit to branch ignite-3.0.0-alpha2
in repository https://gitbox.apache.org/repos/asf/ignite-3.git

commit 9b314004ae561f9f0b009907f9bcc2eb44b65e81
Author: Valentin Kulichenko 
AuthorDate: Thu Jun 24 14:17:05 2021 -0700

IGNITE-14994 - Topology snapshot print out
---
 .../main/java/org/apache/ignite/network/ClusterNode.java |  2 ++
 .../network/scalecube/ScaleCubeTopologyService.java  | 16 
 2 files changed, 18 insertions(+)

diff --git 
a/modules/network-api/src/main/java/org/apache/ignite/network/ClusterNode.java 
b/modules/network-api/src/main/java/org/apache/ignite/network/ClusterNode.java
index 2573a08..4a48908 100644
--- 
a/modules/network-api/src/main/java/org/apache/ignite/network/ClusterNode.java
+++ 
b/modules/network-api/src/main/java/org/apache/ignite/network/ClusterNode.java
@@ -18,6 +18,7 @@ package org.apache.ignite.network;
 
 import java.io.Serializable;
 import java.util.Objects;
+import org.apache.ignite.internal.tostring.IgniteToStringExclude;
 import org.apache.ignite.internal.tostring.S;
 
 /**
@@ -37,6 +38,7 @@ public class ClusterNode implements Serializable {
 private final int port;
 
 /** Node address in host:port format (lazily evaluated) */
+@IgniteToStringExclude
 private String address;
 
 /**
diff --git 
a/modules/network/src/main/java/org/apache/ignite/network/scalecube/ScaleCubeTopologyService.java
 
b/modules/network/src/main/java/org/apache/ignite/network/scalecube/ScaleCubeTopologyService.java
index 4f41fd0..352469f 100644
--- 
a/modules/network/src/main/java/org/apache/ignite/network/scalecube/ScaleCubeTopologyService.java
+++ 
b/modules/network/src/main/java/org/apache/ignite/network/scalecube/ScaleCubeTopologyService.java
@@ -22,6 +22,7 @@ import java.util.concurrent.ConcurrentHashMap;
 import java.util.concurrent.ConcurrentMap;
 import io.scalecube.cluster.Member;
 import io.scalecube.cluster.membership.MembershipEvent;
+import org.apache.ignite.lang.IgniteLogger;
 import org.apache.ignite.network.AbstractTopologyService;
 import org.apache.ignite.network.ClusterNode;
 import org.apache.ignite.network.TopologyEventHandler;
@@ -31,6 +32,9 @@ import org.apache.ignite.network.TopologyService;
  * Implementation of {@link TopologyService} based on ScaleCube.
  */
 final class ScaleCubeTopologyService extends AbstractTopologyService {
+/** Logger. */
+private static final IgniteLogger LOG = 
IgniteLogger.forClass(ScaleCubeTopologyService.class);
+
 /** Local member node. */
 private ClusterNode localMember;
 
@@ -56,14 +60,26 @@ final class ScaleCubeTopologyService extends 
AbstractTopologyService {
 if (event.isAdded()) {
 members.put(member.address(), member);
 
+LOG.info("Node joined: " + member);
+
 fireAppearedEvent(member);
 }
 else if (event.isRemoved()) {
 members.compute(member.address(), // Ignore stale remove event.
 (k, v) -> v.id().equals(member.id()) ? null : v);
 
+LOG.info("Node left: " + member);
+
 fireDisappearedEvent(member);
 }
+
+StringBuilder snapshotMsg = new StringBuilder("Topology snapshot 
[nodes=").append(members.size()).append("]\n");
+
+for (ClusterNode node : members.values()) {
+snapshotMsg.append("  ^-- ").append(node).append('\n');
+}
+
+LOG.info(snapshotMsg.toString().trim());
 }
 
 /**


[ignite-3] 07/07: IGNITE-14996 - Updated examples structure

2021-06-24 Thread vkulichenko
This is an automated email from the ASF dual-hosted git repository.

vkulichenko pushed a commit to branch ignite-3.0.0-alpha2
in repository https://gitbox.apache.org/repos/asf/ignite-3.git

commit a3146514b18d3c7bf6522fb423d6cc262257531c
Author: Valentin Kulichenko 
AuthorDate: Thu Jun 24 20:25:23 2021 -0700

IGNITE-14996 - Updated examples structure
---
 assembly/assembly.xml  |   1 +
 examples/README.md |  21 
 .../main/resources => config}/ignite-config.json   |   2 +-
 .../example/table/KeyValueBinaryViewExample.java   |  21 +++-
 .../apache/ignite/example/table/TableExample.java  | 124 -
 5 files changed, 110 insertions(+), 59 deletions(-)

diff --git a/assembly/assembly.xml b/assembly/assembly.xml
index d5d256b..04a7975 100644
--- a/assembly/assembly.xml
+++ b/assembly/assembly.xml
@@ -69,6 +69,7 @@
 examples
 /examples
 
+config/**
 src/**
 
 
diff --git a/examples/README.md b/examples/README.md
new file mode 100644
index 000..8e1b30b
--- /dev/null
+++ b/examples/README.md
@@ -0,0 +1,21 @@
+# Apache Ignite 3 Examples
+
+This project contains code examples for Apache Ignite 3.
+
+Examples are shipped as a separate Maven project, so to start running you 
simply need
+to import provided `pom.xml` file into your favourite IDE.
+
+The following examples are included:
+* `TableExample` - demonstrates the usage of the 
`org.apache.ignite.table.Table` API
+* `KeyValueBinaryViewExample` - demonstrates the usage of the 
`org.apache.ignite.table.KeyValueBinaryView` API
+
+To run an example, do the following:
+1. Import the examples project into you IDE.
+2. (optional) Run one or more standalone nodes using the CLI tool:
+```
+ignite node start --config=$IGNITE_HOME/examples/config/ignite-config.json 
node-1
+ignite node start --config=$IGNITE_HOME/examples/config/ignite-config.json 
node-2
+...
+ignite node start --config=$IGNITE_HOME/examples/config/ignite-config.json 
node-n
+```
+3. Run the preferred example in the IDE.
diff --git a/examples/src/main/resources/ignite-config.json 
b/examples/config/ignite-config.json
similarity index 81%
rename from examples/src/main/resources/ignite-config.json
rename to examples/config/ignite-config.json
index 785d27c..d09db83 100644
--- a/examples/src/main/resources/ignite-config.json
+++ b/examples/config/ignite-config.json
@@ -1,7 +1,7 @@
 {
 "node": {
 "metastorageNodes": [
-"node0"
+"node-0", "node-1", "node-2"
 ]
 },
 "network": {
diff --git 
a/examples/src/main/java/org/apache/ignite/example/table/KeyValueBinaryViewExample.java
 
b/examples/src/main/java/org/apache/ignite/example/table/KeyValueBinaryViewExample.java
index b8e7610..28f6888 100644
--- 
a/examples/src/main/java/org/apache/ignite/example/table/KeyValueBinaryViewExample.java
+++ 
b/examples/src/main/java/org/apache/ignite/example/table/KeyValueBinaryViewExample.java
@@ -25,11 +25,26 @@ import org.apache.ignite.table.KeyValueBinaryView;
 import org.apache.ignite.table.Table;
 import org.apache.ignite.table.Tuple;
 
+/**
+ * This example demonstrates the usage of the {@link KeyValueBinaryView} API.
+ * 
+ * To run the example, do the following:
+ * 
+ * Import the examples project into you IDE.
+ * 
+ * (optional) Run one or more standalone nodes using the CLI tool:
+ * {@code ignite node start 
--config=$IGNITE_HOME/examples/config/ignite-config.json node-1}
+ * {@code ignite node start 
--config=$IGNITE_HOME/examples/config/ignite-config.json node-2}
+ * {@code ...}
+*  {@code ignite node start 
--config=$IGNITE_HOME/examples/config/ignite-config.json node-n}
+ * 
+ * Run the example in the IDE.
+ * 
+ */
 public class KeyValueBinaryViewExample {
 public static void main(String[] args) throws Exception {
-String config = 
Files.readString(Path.of(ClassLoader.getSystemResource("ignite-config.json").toURI()));
-
-Ignite ignite = IgnitionManager.start("node0", config);
+Ignite ignite = IgnitionManager.start("node-0",
+Files.readString(Path.of("config/ignite-config.json")));
 
 
//-
 //
diff --git 
a/examples/src/main/java/org/apache/ignite/example/table/TableExample.java 
b/examples/src/main/java/org/apache/ignite/example/table/TableExample.java
index 222d772..e97c5fe 100644
--- a/examples/src/main/java/org/apache/ignite/example/table/TableExample.java
+++ b/examples/src/main/java/org/apache/ignite/example/table/TableExample.java
@@ -24,72 +24,86 @@ import org.apache.ignite.app.IgnitionManager;
 import org.apache.ignite.table.Table;
 import org.apache.ignite.table.Tuple;
 
+/**
+ * This example demonstrates the usage of the {@link Table} API.
+ * 
+ * To run the exam

[ignite-3] 06/07: IGNITE-14993 - Choose available port out of a range

2021-06-24 Thread vkulichenko
This is an automated email from the ASF dual-hosted git repository.

vkulichenko pushed a commit to branch ignite-3.0.0-alpha2
in repository https://gitbox.apache.org/repos/asf/ignite-3.git

commit d26631c1602bc6198d4d03775c060a82eedb305f
Author: Valentin Kulichenko 
AuthorDate: Thu Jun 24 14:29:36 2021 -0700

IGNITE-14993 - Choose available port out of a range
---
 .../java/org/apache/ignite/network/internal/netty/NettyServer.java | 3 +++
 1 file changed, 3 insertions(+)

diff --git 
a/modules/network/src/main/java/org/apache/ignite/network/internal/netty/NettyServer.java
 
b/modules/network/src/main/java/org/apache/ignite/network/internal/netty/NettyServer.java
index 2a458a5..a229d41 100644
--- 
a/modules/network/src/main/java/org/apache/ignite/network/internal/netty/NettyServer.java
+++ 
b/modules/network/src/main/java/org/apache/ignite/network/internal/netty/NettyServer.java
@@ -43,6 +43,9 @@ import org.jetbrains.annotations.TestOnly;
  * Netty server channel wrapper.
  */
 public class NettyServer {
+/** Port range. */
+private static final int PORT_RANGE = 100;
+
 /** A lock for start and stop operations. */
 private final Object startStopLock = new Object();
 


[ignite-3] branch ignite-3.0.0-alpha2 updated (2ae6c60 -> a314651)

2021-06-24 Thread vkulichenko
This is an automated email from the ASF dual-hosted git repository.

vkulichenko pushed a change to branch ignite-3.0.0-alpha2
in repository https://gitbox.apache.org/repos/asf/ignite-3.git.


from 2ae6c60  Update version to 3.0.0-alpha2
 new dda1590  IGNITE-14992 - Temporarily commenting out the warning to 
avoid excessive output
 new 1f6acbb  IGNITE-14993 - Choose available port out of a range
 new 9b31400  IGNITE-14994 - Topology snapshot print out
 new d63d7a2  IGNITE-14995 - Updated NOTICE
 new 2090ad7  IGNITE-14996 - Added examples for Table and KeyValueBinaryView
 new d26631c  IGNITE-14993 - Choose available port out of a range
 new a314651  IGNITE-14996 - Updated examples structure

The 7 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 NOTICE |   5 +
 assembly/NOTICE|   0
 assembly/assembly.xml  |  29 +-
 examples/README.md |  21 
 examples/config/ignite-config.json |  13 +++
 .../pom.xml => examples/pom-standalone.xml |  21 ++--
 {modules/cli-common => examples}/pom.xml   |   9 +-
 .../example/table/KeyValueBinaryViewExample.java   | 113 +
 .../apache/ignite/example/table/TableExample.java  | 109 
 .../org/apache/ignite/network/ClusterNode.java |   2 +
 .../network/internal/netty/ConnectionManager.java  |   2 +
 .../ignite/network/internal/netty/NettyServer.java |  17 +++-
 .../scalecube/ScaleCubeTopologyService.java|  16 +++
 .../ignite/raft/server/impl/RaftServerImpl.java|   7 +-
 parent/pom.xml |  12 ++-
 pom.xml|   1 +
 16 files changed, 353 insertions(+), 24 deletions(-)
 create mode 100644 NOTICE
 delete mode 100644 assembly/NOTICE
 create mode 100644 examples/README.md
 create mode 100644 examples/config/ignite-config.json
 copy modules/cli-common/pom.xml => examples/pom-standalone.xml (76%)
 copy {modules/cli-common => examples}/pom.xml (85%)
 create mode 100644 
examples/src/main/java/org/apache/ignite/example/table/KeyValueBinaryViewExample.java
 create mode 100644 
examples/src/main/java/org/apache/ignite/example/table/TableExample.java


[ignite-3] 04/07: IGNITE-14995 - Updated NOTICE

2021-06-24 Thread vkulichenko
This is an automated email from the ASF dual-hosted git repository.

vkulichenko pushed a commit to branch ignite-3.0.0-alpha2
in repository https://gitbox.apache.org/repos/asf/ignite-3.git

commit d63d7a2bd8ee5a1858e1df8f587e861d4590ebef
Author: Valentin Kulichenko 
AuthorDate: Thu Jun 24 14:18:45 2021 -0700

IGNITE-14995 - Updated NOTICE
---
 NOTICE| 5 +
 assembly/NOTICE   | 0
 assembly/assembly.xml | 2 +-
 3 files changed, 6 insertions(+), 1 deletion(-)

diff --git a/NOTICE b/NOTICE
new file mode 100644
index 000..1dd5ce4
--- /dev/null
+++ b/NOTICE
@@ -0,0 +1,5 @@
+Apache Ignite
+Copyright 2021 The Apache Software Foundation
+
+This product includes software developed at
+The Apache Software Foundation (http://www.apache.org/).
diff --git a/assembly/NOTICE b/assembly/NOTICE
deleted file mode 100644
index e69de29..000
diff --git a/assembly/assembly.xml b/assembly/assembly.xml
index b78c2c6..7ecb499 100644
--- a/assembly/assembly.xml
+++ b/assembly/assembly.xml
@@ -31,7 +31,7 @@
 
 
 
-assembly/NOTICE
+NOTICE
 
 
 


[ignite-3] 05/07: IGNITE-14996 - Added examples for Table and KeyValueBinaryView

2021-06-24 Thread vkulichenko
This is an automated email from the ASF dual-hosted git repository.

vkulichenko pushed a commit to branch ignite-3.0.0-alpha2
in repository https://gitbox.apache.org/repos/asf/ignite-3.git

commit 2090ad75866c837fb07fb5ffe9b93ad5da54a5bf
Author: Valentin Kulichenko 
AuthorDate: Thu Jun 24 14:27:00 2021 -0700

IGNITE-14996 - Added examples for Table and KeyValueBinaryView
---
 assembly/assembly.xml  | 26 ++
 examples/pom-standalone.xml| 41 +
 examples/pom.xml   | 41 +
 .../example/table/KeyValueBinaryViewExample.java   | 98 ++
 .../apache/ignite/example/table/TableExample.java  | 95 +
 examples/src/main/resources/ignite-config.json | 13 +++
 parent/pom.xml | 12 ++-
 pom.xml|  1 +
 8 files changed, 324 insertions(+), 3 deletions(-)

diff --git a/assembly/assembly.xml b/assembly/assembly.xml
index 7ecb499..d5d256b 100644
--- a/assembly/assembly.xml
+++ b/assembly/assembly.xml
@@ -25,26 +25,52 @@
 
 zip
 
+
 
 
 LICENSE
 
 
+
 
 NOTICE
 
 
+
 
 assembly/README
 
 
+
 
 modules/cli/target/ignite
 
 
+
 
 modules/cli/target/ignite.exe
 
 
+
+
+examples/pom-standalone.xml
+/examples
+pom.xml
+
+
+
+examples/README.md
+/examples
+
 
+
+
+
+examples
+/examples
+
+src/**
+
+
+
 
diff --git a/examples/pom-standalone.xml b/examples/pom-standalone.xml
new file mode 100644
index 000..23da513
--- /dev/null
+++ b/examples/pom-standalone.xml
@@ -0,0 +1,41 @@
+
+
+
+
+http://maven.apache.org/POM/4.0.0";
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
http://maven.apache.org/xsd/maven-4.0.0.xsd";>
+4.0.0
+
+org.apache.ignite
+ignite-examples
+3.0.0-alpha2
+
+
+11
+11
+
+
+
+
+org.apache.ignite
+ignite-runner
+3.0.0-alpha2
+
+
+
diff --git a/examples/pom.xml b/examples/pom.xml
new file mode 100644
index 000..fd5fee8
--- /dev/null
+++ b/examples/pom.xml
@@ -0,0 +1,41 @@
+
+
+
+
+http://maven.apache.org/POM/4.0.0";
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
http://maven.apache.org/xsd/maven-4.0.0.xsd";>
+4.0.0
+
+
+org.apache.ignite
+ignite-parent
+1
+../parent/pom.xml
+
+
+ignite-examples
+3.0.0-alpha2
+
+
+
+org.apache.ignite
+ignite-runner
+
+
+
diff --git 
a/examples/src/main/java/org/apache/ignite/example/table/KeyValueBinaryViewExample.java
 
b/examples/src/main/java/org/apache/ignite/example/table/KeyValueBinaryViewExample.java
new file mode 100644
index 000..b8e7610
--- /dev/null
+++ 
b/examples/src/main/java/org/apache/ignite/example/table/KeyValueBinaryViewExample.java
@@ -0,0 +1,98 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *  http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.ignite.example.table;
+
+import java.nio.file.Files;
+import java.nio.file.Path;
+import org.apache.ignite.app.Ignite;
+import org.apache.ignite.app.IgnitionManager;
+import org.apache.ignite.table.KeyValueBinaryView;
+import org.apache.ignite.table.Table;
+import org.apache.ignite.table.Tuple;
+
+public class KeyValueBinaryViewExample {
+public static void main(String[] args) throws Exception {
+String config = 
Files.readString(Path.of(ClassLoader.getSystemResource("ignite-config.json").toURI()));
+
+Ignite ignite = IgnitionManager.start("node0", config);
+
+
//-
+//
+// Creating a table. T

[ignite-3] 01/07: IGNITE-14992 - Temporarily commenting out the warning to avoid excessive output

2021-06-24 Thread vkulichenko
This is an automated email from the ASF dual-hosted git repository.

vkulichenko pushed a commit to branch ignite-3.0.0-alpha2
in repository https://gitbox.apache.org/repos/asf/ignite-3.git

commit dda15900c3031bf5e0966bd448ddb6313b367885
Author: Valentin Kulichenko 
AuthorDate: Thu Jun 24 14:10:22 2021 -0700

IGNITE-14992 - Temporarily commenting out the warning to avoid excessive 
output
---
 .../java/org/apache/ignite/raft/server/impl/RaftServerImpl.java| 7 ---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git 
a/modules/raft/src/main/java/org/apache/ignite/raft/server/impl/RaftServerImpl.java
 
b/modules/raft/src/main/java/org/apache/ignite/raft/server/impl/RaftServerImpl.java
index 004c819..ff81d90 100644
--- 
a/modules/raft/src/main/java/org/apache/ignite/raft/server/impl/RaftServerImpl.java
+++ 
b/modules/raft/src/main/java/org/apache/ignite/raft/server/impl/RaftServerImpl.java
@@ -125,9 +125,10 @@ public class RaftServerImpl implements RaftServer {
 handleActionRequest(sender, req0, correlationId, 
writeQueue, lsnr);
 }
 }
-else {
-LOG.warn("Unsupported message class " + 
message.getClass().getName());
-}
+// TODO: IGNITE-14992 - Temporarily commenting out for alpha2
+// else {
+// LOG.warn("Unsupported message class " + 
message.getClass().getName());
+// }
 });
 
 readWorker = new Thread(() -> processQueue(readQueue, 
RaftGroupCommandListener::onRead), "read-cmd-worker#" + id);


[ignite-extensions] branch master updated: IGNITE-14942 Fixes README description. (#65)

2021-06-24 Thread namelchev
This is an automated email from the ASF dual-hosted git repository.

namelchev pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/ignite-extensions.git


The following commit(s) were added to refs/heads/master by this push:
 new 63815eb  IGNITE-14942 Fixes README description. (#65)
63815eb is described below

commit 63815eb70b508dff955dcf224d9dd42b785b800e
Author: Mikhail Petrov <32207922+ololo3...@users.noreply.github.com>
AuthorDate: Fri Jun 25 08:57:41 2021 +0300

IGNITE-14942 Fixes README description. (#65)
---
 README.md | 48 ++--
 1 file changed, 6 insertions(+), 42 deletions(-)

diff --git a/README.md b/README.md
index 226a0e0..888b30f 100644
--- a/README.md
+++ b/README.md
@@ -2,53 +2,17 @@
 
 https://ignite.apache.org/";>https://github.com/apache/ignite-website/blob/master/images/ignite_logo_full.svg";
 hspace="20"/>
 
-[![Build 
Status](https://travis-ci.org/apache/ignite.svg?branch=master)](https://travis-ci.org/apache/ignite)
 
[![GitHub](https://img.shields.io/github/license/apache/ignite?color=blue)](https://www.apache.org/licenses/LICENSE-2.0.html)
-[![Maven 
Central](https://maven-badges.herokuapp.com/maven-central/org.apache.ignite/ignite-core/badge.svg)](https://search.maven.org/search?q=org.apache.ignite)
-[![GitHub 
release](https://img.shields.io/badge/release-download-brightgreen.svg)](https://ignite.apache.org/download.cgi)
-![GitHub commit 
activity](https://img.shields.io/github/commit-activity/m/apache/ignite)
+[![GitHub 
release](https://img.shields.io/badge/release-download-brightgreen.svg)](https://ignite.apache.org/download.cgi#extensions)
 [![Twitter 
Follow](https://img.shields.io/twitter/follow/ApacheIgnite?style=social)](https://twitter.com/ApacheIgnite)
 
-## What is Apache Ignite?
+## What Are Apache Ignite Extensions?
 
-Apache Ignite is a distributed database for high-performance computing with 
in-memory speed.
+Apache Ignite Extensions is a group of integrations between [Apache 
Ignite](https://ignite.apache.org) and various Java frameworks.  
+To see the comprehensive list of Apache Ignite Extensions and related 
documentation, visit the *"Extensions and Integrations"* section of an  [Apache 
Ignite Documentation](https://ignite.apache.org/docs/latest/). 
 
-
-https://ignite.apache.org";>
-https://github.com/apache/ignite-website/blob/master/images/png-diagrams/ignite_cluster.png";
 width="400px"/>
-
-
+## Apache Ignite Extensions Publication And Versioning.
 
-* [Technical Documentation](https://ignite.apache.org/docs/latest/)
-* [JavaDoc](https://ignite.apache.org/releases/latest/javadoc/)
-* [C#/.NET APIs](https://ignite.apache.org/releases/latest/dotnetdoc/api/)
-* [C++ APIs](https://ignite.apache.org/releases/latest/cppdoc/)
-* [Scala 
APIs](https://ignite.apache.org/releases/latest/scaladoc/scalar/index.html)
+Each Apache Ignite extension is published as a separate Maven artifact and has 
an independent release lifecycle. Visit the *"Extensions and Integrations"* 
section of an  [Apache Ignite 
Documentation](https://ignite.apache.org/docs/latest/) to see Maven Artifact ID 
and available versions for each extension, as well as the corresponding Apache 
Ignite and extension target compatible versions.
 
-## Multi-Tier Storage
-
-Apache Ignite is designed to work with memory, disk, and Intel Optane as 
active storage tiers. The memory tier allows using DRAM and Intel® Optane™ 
operating in the Memory Mode for data storage and processing needs. The disk 
tier is optional with the support of two options -- you can persist data in an 
external database or keep it in the Ignite native persistence. SSD, Flash, HDD, 
or Intel Optane operating in the AppDirect Mode can be used as a storage device.
-
-[Read More](https://ignite.apache.org/arch/multi-tier-storage.html)
-
-## Ignite Native Persistence
-
-Even though Apache Ignite is broadly used as a caching layer on top of 
external databases, it comes with its native persistence - a distributed, ACID, 
and SQL-compliant disk-based store. The native persistence integrates into the 
Ignite multi-tier storage as a disk tier that can be turned on to let Ignite 
store more data on disk than it can cache in memory and to enable fast cluster 
restarts.
-
-[Read More](https://ignite.apache.org/arch/persistence.html)
-
-## ACID Compliance
-Data stored in Ignite is ACID-compliant both in memory and on disk, making 
Ignite a **strongly consistent** system. Ignite transactions work across the 
network and can span multiple servers.
-
-[Read More](https://ignite.apache.org/features/transactions.html)
-
-## ANSI SQL Support
-Apache Ignite comes with a ANSI-99 compliant, horizontally scalable, and 
fault-tolerant SQL engine that allows you to interact with Ignite as with a 
regular SQL database using JDBC, ODBC drivers, or native SQL APIs available for 
Java, C#, C++, Python, and other programming languages. Ignite supports all DML 
com

[ignite-extensions] branch ignite-performance-statistics-ext-1.0.0 updated (2b134a3 -> 2df1634)

2021-06-24 Thread namelchev
This is an automated email from the ASF dual-hosted git repository.

namelchev pushed a change to branch ignite-performance-statistics-ext-1.0.0
in repository https://gitbox.apache.org/repos/asf/ignite-extensions.git.


from 2b134a3  IGNITE-14706 Provide instructions for build a released 
module. (#60)
 new b985831  Updated broken README file
 new 2df1634  IGNITE-14942 Fixes README description. (#65)

The 2 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 README.md | 89 +++
 1 file changed, 10 insertions(+), 79 deletions(-)


[ignite-extensions] 01/02: Updated broken README file

2021-06-24 Thread namelchev
This is an automated email from the ASF dual-hosted git repository.

namelchev pushed a commit to branch ignite-performance-statistics-ext-1.0.0
in repository https://gitbox.apache.org/repos/asf/ignite-extensions.git

commit b985831ebe7e73d4738792934b10ebe2789ff94f
Author: Denis Magda 
AuthorDate: Wed May 19 14:49:08 2021 -0400

Updated broken README file

(cherry picked from commit 2614e688a432e393cb9f8b2c5d2470dc2917baf2)
---
 README.md | 89 ---
 1 file changed, 28 insertions(+), 61 deletions(-)

diff --git a/README.md b/README.md
index 345f12a..226a0e0 100644
--- a/README.md
+++ b/README.md
@@ -1,87 +1,54 @@
-# Apache Ignite
+# Apache Ignite Extensions
 
-https://ignite.apache.org/";>https://ignite.apache.org/images/logo3.png"; hspace="20"/>
-
-https://ci.ignite.apache.org/viewType.html?buildTypeId=IgniteTests24Java8_RunAll&branch_IgniteTests24Java8=%3Cdefault%3E";>https://ci.ignite.apache.org/app/rest/builds/buildType:(id:IgniteTests24Java8_RunAll)/statusIcon.svg"/>
-
-
-## Getting Started
-
-For information on how to get started with Apache Ignite, please visit: 
[Getting Started][getting-started].
-
-## Full Documentation
-
-You can find the full Apache Ignite documentation here: [Full 
documentation][docs].
+https://ignite.apache.org/";>https://github.com/apache/ignite-website/blob/master/images/ignite_logo_full.svg";
 hspace="20"/>
 
+[![Build 
Status](https://travis-ci.org/apache/ignite.svg?branch=master)](https://travis-ci.org/apache/ignite)
+[![GitHub](https://img.shields.io/github/license/apache/ignite?color=blue)](https://www.apache.org/licenses/LICENSE-2.0.html)
+[![Maven 
Central](https://maven-badges.herokuapp.com/maven-central/org.apache.ignite/ignite-core/badge.svg)](https://search.maven.org/search?q=org.apache.ignite)
+[![GitHub 
release](https://img.shields.io/badge/release-download-brightgreen.svg)](https://ignite.apache.org/download.cgi)
+![GitHub commit 
activity](https://img.shields.io/github/commit-activity/m/apache/ignite)
+[![Twitter 
Follow](https://img.shields.io/twitter/follow/ApacheIgnite?style=social)](https://twitter.com/ApacheIgnite)
 
 ## What is Apache Ignite?
 
-[Apache Ignite][apache-ignite-homepage] is a memory-centric distributed 
database, caching,
- and processing platform for transactional, analytical, and 
streaming workloads delivering in-memory
- speeds at petabyte scale.
+Apache Ignite is a distributed database for high-performance computing with 
in-memory speed.
 
 
-https://ignite.apache.org/whatisignite.html";>
-https://ignite.apache.org/images/ignite_architecture.png"; 
width="400px"/>
+https://ignite.apache.org";>
+https://github.com/apache/ignite-website/blob/master/images/png-diagrams/ignite_cluster.png";
 width="400px"/>
 
 
 
-## Memory-Centric Storage
-Apache Ignite is based on distributed memory-centric architecture that 
combines the performance and scale of in-memory
-computing together with the disk durability and strong consistency in one 
system.
-
-The main difference between the memory-centric approach and the traditional 
disk-centric approach is that the memory
-is treated as a fully functional storage, not just as a caching layer, like 
most databases do.
-For example, Apache Ignite can function in a pure in-memory mode, in which 
case it can be treated as an
-In-Memory Database (IMDB) and In-Memory Data Grid (IMDG) in one.
+* [Technical Documentation](https://ignite.apache.org/docs/latest/)
+* [JavaDoc](https://ignite.apache.org/releases/latest/javadoc/)
+* [C#/.NET APIs](https://ignite.apache.org/releases/latest/dotnetdoc/api/)
+* [C++ APIs](https://ignite.apache.org/releases/latest/cppdoc/)
+* [Scala 
APIs](https://ignite.apache.org/releases/latest/scaladoc/scalar/index.html)
 
-On the other hand, when persistence is turned on, Ignite begins to function as 
a memory-centric system where most of
-the processing happens in memory, but the data and indexes get persisted to 
disk. The main difference here
-from the traditional disk-centric RDBMS or NoSQL system is that Ignite is 
strongly consistent, horizontally
-scalable, and supports both SQL and key-value processing APIs.
+## Multi-Tier Storage
 
-[Read More](https://ignite.apache.org/arch/memorycentric.html)
+Apache Ignite is designed to work with memory, disk, and Intel Optane as 
active storage tiers. The memory tier allows using DRAM and Intel® Optane™ 
operating in the Memory Mode for data storage and processing needs. The disk 
tier is optional with the support of two options -- you can persist data in an 
external database or keep it in the Ignite native persistence. SSD, Flash, HDD, 
or Intel Optane operating in the AppDirect Mode can be used as a storage device.
 
-## Ignite Persistence
+[Read More](https://ignite.apache.org/arch/multi-tier-storage.html)
 
-Ignite Native Persistence is a distributed, ACID, and SQL-compliant **disk 
store** that transparently integrates with
-Ign

[ignite-extensions] 02/02: IGNITE-14942 Fixes README description. (#65)

2021-06-24 Thread namelchev
This is an automated email from the ASF dual-hosted git repository.

namelchev pushed a commit to branch ignite-performance-statistics-ext-1.0.0
in repository https://gitbox.apache.org/repos/asf/ignite-extensions.git

commit 2df16343a0b01bbee156280a324a646993e6d39b
Author: Mikhail Petrov <32207922+ololo3...@users.noreply.github.com>
AuthorDate: Fri Jun 25 08:57:41 2021 +0300

IGNITE-14942 Fixes README description. (#65)


(cherry picked from commit 63815eb70b508dff955dcf224d9dd42b785b800e)
---
 README.md | 48 ++--
 1 file changed, 6 insertions(+), 42 deletions(-)

diff --git a/README.md b/README.md
index 226a0e0..888b30f 100644
--- a/README.md
+++ b/README.md
@@ -2,53 +2,17 @@
 
 https://ignite.apache.org/";>https://github.com/apache/ignite-website/blob/master/images/ignite_logo_full.svg";
 hspace="20"/>
 
-[![Build 
Status](https://travis-ci.org/apache/ignite.svg?branch=master)](https://travis-ci.org/apache/ignite)
 
[![GitHub](https://img.shields.io/github/license/apache/ignite?color=blue)](https://www.apache.org/licenses/LICENSE-2.0.html)
-[![Maven 
Central](https://maven-badges.herokuapp.com/maven-central/org.apache.ignite/ignite-core/badge.svg)](https://search.maven.org/search?q=org.apache.ignite)
-[![GitHub 
release](https://img.shields.io/badge/release-download-brightgreen.svg)](https://ignite.apache.org/download.cgi)
-![GitHub commit 
activity](https://img.shields.io/github/commit-activity/m/apache/ignite)
+[![GitHub 
release](https://img.shields.io/badge/release-download-brightgreen.svg)](https://ignite.apache.org/download.cgi#extensions)
 [![Twitter 
Follow](https://img.shields.io/twitter/follow/ApacheIgnite?style=social)](https://twitter.com/ApacheIgnite)
 
-## What is Apache Ignite?
+## What Are Apache Ignite Extensions?
 
-Apache Ignite is a distributed database for high-performance computing with 
in-memory speed.
+Apache Ignite Extensions is a group of integrations between [Apache 
Ignite](https://ignite.apache.org) and various Java frameworks.  
+To see the comprehensive list of Apache Ignite Extensions and related 
documentation, visit the *"Extensions and Integrations"* section of an  [Apache 
Ignite Documentation](https://ignite.apache.org/docs/latest/). 
 
-
-https://ignite.apache.org";>
-https://github.com/apache/ignite-website/blob/master/images/png-diagrams/ignite_cluster.png";
 width="400px"/>
-
-
+## Apache Ignite Extensions Publication And Versioning.
 
-* [Technical Documentation](https://ignite.apache.org/docs/latest/)
-* [JavaDoc](https://ignite.apache.org/releases/latest/javadoc/)
-* [C#/.NET APIs](https://ignite.apache.org/releases/latest/dotnetdoc/api/)
-* [C++ APIs](https://ignite.apache.org/releases/latest/cppdoc/)
-* [Scala 
APIs](https://ignite.apache.org/releases/latest/scaladoc/scalar/index.html)
+Each Apache Ignite extension is published as a separate Maven artifact and has 
an independent release lifecycle. Visit the *"Extensions and Integrations"* 
section of an  [Apache Ignite 
Documentation](https://ignite.apache.org/docs/latest/) to see Maven Artifact ID 
and available versions for each extension, as well as the corresponding Apache 
Ignite and extension target compatible versions.
 
-## Multi-Tier Storage
-
-Apache Ignite is designed to work with memory, disk, and Intel Optane as 
active storage tiers. The memory tier allows using DRAM and Intel® Optane™ 
operating in the Memory Mode for data storage and processing needs. The disk 
tier is optional with the support of two options -- you can persist data in an 
external database or keep it in the Ignite native persistence. SSD, Flash, HDD, 
or Intel Optane operating in the AppDirect Mode can be used as a storage device.
-
-[Read More](https://ignite.apache.org/arch/multi-tier-storage.html)
-
-## Ignite Native Persistence
-
-Even though Apache Ignite is broadly used as a caching layer on top of 
external databases, it comes with its native persistence - a distributed, ACID, 
and SQL-compliant disk-based store. The native persistence integrates into the 
Ignite multi-tier storage as a disk tier that can be turned on to let Ignite 
store more data on disk than it can cache in memory and to enable fast cluster 
restarts.
-
-[Read More](https://ignite.apache.org/arch/persistence.html)
-
-## ACID Compliance
-Data stored in Ignite is ACID-compliant both in memory and on disk, making 
Ignite a **strongly consistent** system. Ignite transactions work across the 
network and can span multiple servers.
-
-[Read More](https://ignite.apache.org/features/transactions.html)
-
-## ANSI SQL Support
-Apache Ignite comes with a ANSI-99 compliant, horizontally scalable, and 
fault-tolerant SQL engine that allows you to interact with Ignite as with a 
regular SQL database using JDBC, ODBC drivers, or native SQL APIs available for 
Java, C#, C++, Python, and other programming languages. Ignite supports all DML 
commands, including SELECT, UPDATE, INSERT, and D

[ignite-extensions] 01/02: Updated broken README file

2021-06-24 Thread namelchev
This is an automated email from the ASF dual-hosted git repository.

namelchev pushed a commit to branch ignite-spring-data-all-ext-1.0.0
in repository https://gitbox.apache.org/repos/asf/ignite-extensions.git

commit e9c83b06392142b51c36790fd78f44ab9ff8b7bf
Author: Denis Magda 
AuthorDate: Wed May 19 14:49:08 2021 -0400

Updated broken README file

(cherry picked from commit 2614e688a432e393cb9f8b2c5d2470dc2917baf2)
---
 README.md | 89 ---
 1 file changed, 28 insertions(+), 61 deletions(-)

diff --git a/README.md b/README.md
index 345f12a..226a0e0 100644
--- a/README.md
+++ b/README.md
@@ -1,87 +1,54 @@
-# Apache Ignite
+# Apache Ignite Extensions
 
-https://ignite.apache.org/";>https://ignite.apache.org/images/logo3.png"; hspace="20"/>
-
-https://ci.ignite.apache.org/viewType.html?buildTypeId=IgniteTests24Java8_RunAll&branch_IgniteTests24Java8=%3Cdefault%3E";>https://ci.ignite.apache.org/app/rest/builds/buildType:(id:IgniteTests24Java8_RunAll)/statusIcon.svg"/>
-
-
-## Getting Started
-
-For information on how to get started with Apache Ignite, please visit: 
[Getting Started][getting-started].
-
-## Full Documentation
-
-You can find the full Apache Ignite documentation here: [Full 
documentation][docs].
+https://ignite.apache.org/";>https://github.com/apache/ignite-website/blob/master/images/ignite_logo_full.svg";
 hspace="20"/>
 
+[![Build 
Status](https://travis-ci.org/apache/ignite.svg?branch=master)](https://travis-ci.org/apache/ignite)
+[![GitHub](https://img.shields.io/github/license/apache/ignite?color=blue)](https://www.apache.org/licenses/LICENSE-2.0.html)
+[![Maven 
Central](https://maven-badges.herokuapp.com/maven-central/org.apache.ignite/ignite-core/badge.svg)](https://search.maven.org/search?q=org.apache.ignite)
+[![GitHub 
release](https://img.shields.io/badge/release-download-brightgreen.svg)](https://ignite.apache.org/download.cgi)
+![GitHub commit 
activity](https://img.shields.io/github/commit-activity/m/apache/ignite)
+[![Twitter 
Follow](https://img.shields.io/twitter/follow/ApacheIgnite?style=social)](https://twitter.com/ApacheIgnite)
 
 ## What is Apache Ignite?
 
-[Apache Ignite][apache-ignite-homepage] is a memory-centric distributed 
database, caching,
- and processing platform for transactional, analytical, and 
streaming workloads delivering in-memory
- speeds at petabyte scale.
+Apache Ignite is a distributed database for high-performance computing with 
in-memory speed.
 
 
-https://ignite.apache.org/whatisignite.html";>
-https://ignite.apache.org/images/ignite_architecture.png"; 
width="400px"/>
+https://ignite.apache.org";>
+https://github.com/apache/ignite-website/blob/master/images/png-diagrams/ignite_cluster.png";
 width="400px"/>
 
 
 
-## Memory-Centric Storage
-Apache Ignite is based on distributed memory-centric architecture that 
combines the performance and scale of in-memory
-computing together with the disk durability and strong consistency in one 
system.
-
-The main difference between the memory-centric approach and the traditional 
disk-centric approach is that the memory
-is treated as a fully functional storage, not just as a caching layer, like 
most databases do.
-For example, Apache Ignite can function in a pure in-memory mode, in which 
case it can be treated as an
-In-Memory Database (IMDB) and In-Memory Data Grid (IMDG) in one.
+* [Technical Documentation](https://ignite.apache.org/docs/latest/)
+* [JavaDoc](https://ignite.apache.org/releases/latest/javadoc/)
+* [C#/.NET APIs](https://ignite.apache.org/releases/latest/dotnetdoc/api/)
+* [C++ APIs](https://ignite.apache.org/releases/latest/cppdoc/)
+* [Scala 
APIs](https://ignite.apache.org/releases/latest/scaladoc/scalar/index.html)
 
-On the other hand, when persistence is turned on, Ignite begins to function as 
a memory-centric system where most of
-the processing happens in memory, but the data and indexes get persisted to 
disk. The main difference here
-from the traditional disk-centric RDBMS or NoSQL system is that Ignite is 
strongly consistent, horizontally
-scalable, and supports both SQL and key-value processing APIs.
+## Multi-Tier Storage
 
-[Read More](https://ignite.apache.org/arch/memorycentric.html)
+Apache Ignite is designed to work with memory, disk, and Intel Optane as 
active storage tiers. The memory tier allows using DRAM and Intel® Optane™ 
operating in the Memory Mode for data storage and processing needs. The disk 
tier is optional with the support of two options -- you can persist data in an 
external database or keep it in the Ignite native persistence. SSD, Flash, HDD, 
or Intel Optane operating in the AppDirect Mode can be used as a storage device.
 
-## Ignite Persistence
+[Read More](https://ignite.apache.org/arch/multi-tier-storage.html)
 
-Ignite Native Persistence is a distributed, ACID, and SQL-compliant **disk 
store** that transparently integrates with
-Ignite mem

[ignite-extensions] branch ignite-spring-data-all-ext-1.0.0 updated (a228476 -> 21a0067)

2021-06-24 Thread namelchev
This is an automated email from the ASF dual-hosted git repository.

namelchev pushed a change to branch ignite-spring-data-all-ext-1.0.0
in repository https://gitbox.apache.org/repos/asf/ignite-extensions.git.


from a228476  IGNITE-14767 Add examples to spring-data-2.2 module. (#62)
 new e9c83b0  Updated broken README file
 new 21a0067  IGNITE-14942 Fixes README description. (#65)

The 2 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 README.md | 89 +++
 1 file changed, 10 insertions(+), 79 deletions(-)


[ignite-extensions] 02/02: IGNITE-14942 Fixes README description. (#65)

2021-06-24 Thread namelchev
This is an automated email from the ASF dual-hosted git repository.

namelchev pushed a commit to branch ignite-spring-data-all-ext-1.0.0
in repository https://gitbox.apache.org/repos/asf/ignite-extensions.git

commit 21a00671f6eea4bcaa239fc6b59aed5230025928
Author: Mikhail Petrov <32207922+ololo3...@users.noreply.github.com>
AuthorDate: Fri Jun 25 08:57:41 2021 +0300

IGNITE-14942 Fixes README description. (#65)


(cherry picked from commit 63815eb70b508dff955dcf224d9dd42b785b800e)
---
 README.md | 48 ++--
 1 file changed, 6 insertions(+), 42 deletions(-)

diff --git a/README.md b/README.md
index 226a0e0..888b30f 100644
--- a/README.md
+++ b/README.md
@@ -2,53 +2,17 @@
 
 https://ignite.apache.org/";>https://github.com/apache/ignite-website/blob/master/images/ignite_logo_full.svg";
 hspace="20"/>
 
-[![Build 
Status](https://travis-ci.org/apache/ignite.svg?branch=master)](https://travis-ci.org/apache/ignite)
 
[![GitHub](https://img.shields.io/github/license/apache/ignite?color=blue)](https://www.apache.org/licenses/LICENSE-2.0.html)
-[![Maven 
Central](https://maven-badges.herokuapp.com/maven-central/org.apache.ignite/ignite-core/badge.svg)](https://search.maven.org/search?q=org.apache.ignite)
-[![GitHub 
release](https://img.shields.io/badge/release-download-brightgreen.svg)](https://ignite.apache.org/download.cgi)
-![GitHub commit 
activity](https://img.shields.io/github/commit-activity/m/apache/ignite)
+[![GitHub 
release](https://img.shields.io/badge/release-download-brightgreen.svg)](https://ignite.apache.org/download.cgi#extensions)
 [![Twitter 
Follow](https://img.shields.io/twitter/follow/ApacheIgnite?style=social)](https://twitter.com/ApacheIgnite)
 
-## What is Apache Ignite?
+## What Are Apache Ignite Extensions?
 
-Apache Ignite is a distributed database for high-performance computing with 
in-memory speed.
+Apache Ignite Extensions is a group of integrations between [Apache 
Ignite](https://ignite.apache.org) and various Java frameworks.  
+To see the comprehensive list of Apache Ignite Extensions and related 
documentation, visit the *"Extensions and Integrations"* section of an  [Apache 
Ignite Documentation](https://ignite.apache.org/docs/latest/). 
 
-
-https://ignite.apache.org";>
-https://github.com/apache/ignite-website/blob/master/images/png-diagrams/ignite_cluster.png";
 width="400px"/>
-
-
+## Apache Ignite Extensions Publication And Versioning.
 
-* [Technical Documentation](https://ignite.apache.org/docs/latest/)
-* [JavaDoc](https://ignite.apache.org/releases/latest/javadoc/)
-* [C#/.NET APIs](https://ignite.apache.org/releases/latest/dotnetdoc/api/)
-* [C++ APIs](https://ignite.apache.org/releases/latest/cppdoc/)
-* [Scala 
APIs](https://ignite.apache.org/releases/latest/scaladoc/scalar/index.html)
+Each Apache Ignite extension is published as a separate Maven artifact and has 
an independent release lifecycle. Visit the *"Extensions and Integrations"* 
section of an  [Apache Ignite 
Documentation](https://ignite.apache.org/docs/latest/) to see Maven Artifact ID 
and available versions for each extension, as well as the corresponding Apache 
Ignite and extension target compatible versions.
 
-## Multi-Tier Storage
-
-Apache Ignite is designed to work with memory, disk, and Intel Optane as 
active storage tiers. The memory tier allows using DRAM and Intel® Optane™ 
operating in the Memory Mode for data storage and processing needs. The disk 
tier is optional with the support of two options -- you can persist data in an 
external database or keep it in the Ignite native persistence. SSD, Flash, HDD, 
or Intel Optane operating in the AppDirect Mode can be used as a storage device.
-
-[Read More](https://ignite.apache.org/arch/multi-tier-storage.html)
-
-## Ignite Native Persistence
-
-Even though Apache Ignite is broadly used as a caching layer on top of 
external databases, it comes with its native persistence - a distributed, ACID, 
and SQL-compliant disk-based store. The native persistence integrates into the 
Ignite multi-tier storage as a disk tier that can be turned on to let Ignite 
store more data on disk than it can cache in memory and to enable fast cluster 
restarts.
-
-[Read More](https://ignite.apache.org/arch/persistence.html)
-
-## ACID Compliance
-Data stored in Ignite is ACID-compliant both in memory and on disk, making 
Ignite a **strongly consistent** system. Ignite transactions work across the 
network and can span multiple servers.
-
-[Read More](https://ignite.apache.org/features/transactions.html)
-
-## ANSI SQL Support
-Apache Ignite comes with a ANSI-99 compliant, horizontally scalable, and 
fault-tolerant SQL engine that allows you to interact with Ignite as with a 
regular SQL database using JDBC, ODBC drivers, or native SQL APIs available for 
Java, C#, C++, Python, and other programming languages. Ignite supports all DML 
commands, including SELECT, UPDATE, INSERT, and DELETE q