Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
39 commits
Select commit Hold shift + click to select a range
0c52f7f
GG-27066 [GG-25478] Introduce volatileMemPlc for volatile data struct…
alamar Feb 12, 2020
910d419
GG-27004 Fix dependencies to clean up the security report
DirectXceriD Feb 17, 2020
414ee9a
GG-27704 TxOnCachesStartTest#testTransactionCloseOnCachesStartAndStop…
zstan Feb 20, 2020
a1f03ec
GG-25690 Develop cache inconsistency checker (Partition Reconciliation).
ingvard Feb 20, 2020
174e16f
GG-23582 Adding a thread pool to create and rebuild indexes.
Feb 20, 2020
b184f90
GG-27571 Prevent historical rebalancing of cleared partition.
ascherbakoff Feb 21, 2020
6a9f1f1
GG-27356: Fix jvm crached on public TC, Cache5 suite.
zstan Feb 3, 2020
ccea958
GG-27772 Fixed javadoc
agoncharuk Feb 25, 2020
31c355d
GG-27726 Remove wrong assertion in GridH2Table#destroy method.
antonovsergey93 Feb 25, 2020
029d603
GG-27567 SYNC caches are rebalanced in the first place.
sk0x50 Feb 25, 2020
c1adfb7
IGNITE-9305 Wrong off-heap size is reported for a node.
xtern Feb 25, 2020
fa2f60a
GG-21948 [IGNITE-12505] Improve node start-up and periodic logging.
alamar Jan 23, 2020
7bf60b9
GG-24657 Some of rentingFutures in GridDhtPartitionTopologyImpl accum…
sanpwc Feb 26, 2020
75a5ff3
GG-27565 GridIoManager set node version to ThreadLocalContext for des…
ingvard Feb 27, 2020
8fe5a65
GG-27570: Replace failed test under error log.
zstan Feb 27, 2020
98553a4
GG-27745 Develop cache inconsistency checker code review refactoring
ingvard Feb 27, 2020
d71be80
GG-27830 AuthenticationEvent address does not contains full list of a…
akorensh Feb 28, 2020
58a1ba5
GG-27745 Develop cache inconsistency checker code review refactoring
ingvard Mar 2, 2020
2f01b5e
GG-14870 AuthenticationEvent address does not contain full list of ad…
akorensh Mar 3, 2020
5fe9b15
GG-26831 IgniteDatabaseSharedManager refactoring
zstan Dec 26, 2019
bb9b388
GG-24510 Distribute join fix. Fix collocation model when query contai…
Mar 5, 2020
242585e
GG-24675 Rollback transactions if a primary node lefts.
ingvard Mar 5, 2020
1928f5b
Merge remote-tracking branch 'ignite-pro/ignite-2.5-master' into igni…
ingvard Mar 5, 2020
c5f8b6c
GG-27582: always use query flags to create H2CachedStatementKey
Mar 6, 2020
fe82cdd
GG-27975 Avoid releasePage when page from checkpoint buffer was alrea…
akalash Mar 6, 2020
9047c18
GG-27855 Correct the setting of the pool to build the index
tkalkirill Mar 7, 2020
f059807
GG-27825 SoLinger does not set for reader-sockets in discovery
vldpyatkov Mar 3, 2020
53a376d
GG-27819 Prevent AssertionError on message unmarshalling, when classL…
denis-chudov Mar 10, 2020
1ea08ae
GG-27707 Fix transaction hanging due to too many open files exception.
antonovsergey93 Mar 12, 2020
a44bab8
GG-28030 Fixed exception on atomic backup update.
ascherbakoff Mar 12, 2020
cbc2b12
GG-27768 Added fast-check mode to partition reconciliation utility.
sk0x50 Mar 13, 2020
44ec75a
GG-27943: Gathers query plan for long running query from Prepared on …
Mar 17, 2020
df929c0
GG-27686: fix index cost function and support previous versions cost …
Mar 17, 2020
5b24f9c
GG-23528 Add command line option to see full stack trace and cause ex…
Mar 17, 2020
e35588e
GG-28022 [IGNITE-12746] Regression in GridCacheColocatedDebugTest: pu…
glukos Mar 18, 2020
9ec8eee
GG-27767 Flush intermediate partition reconciliation result instead o…
sk0x50 Mar 18, 2020
203e1b3
GG-27952 Fixed erroneously triggered partitions validation for a cach…
sk0x50 Mar 19, 2020
fea703f
Revert "GG-23528 Add command line option to see full stack trace and …
sanpwc Mar 19, 2020
427d570
GG-25585 Rebalance logging extended. Cherry-picked from b8f36002add39…
sanpwc Mar 20, 2020
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 4 additions & 4 deletions modules/cassandra/store/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -35,10 +35,10 @@
<url>http://ignite.apache.org</url>

<properties>
<commons-beanutils.version>1.9.2</commons-beanutils.version>
<cassandra-driver.version>3.0.0</cassandra-driver.version>
<cassandra-all.version>3.3</cassandra-all.version>
<netty.version>4.1.27.Final</netty.version>
<commons-beanutils.version>1.9.4</commons-beanutils.version>
<cassandra-driver.version>3.2.0</cassandra-driver.version>
<cassandra-all.version>3.11.3</cassandra-all.version>
<netty.version>4.1.44.Final</netty.version>
<guava.version>25.1-jre</guava.version>
<metrics-core.version>3.0.2</metrics-core.version>
</properties>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -1148,14 +1148,6 @@ public final class IgniteSystemProperties {
*/
public static final String IGNITE_LOG_CLASSPATH_CONTENT_ON_STARTUP = "IGNITE_LOG_CLASSPATH_CONTENT_ON_STARTUP";

/**
* Index rebuilding parallelism level. If specified, sets the count of threads that are used for index rebuilding
* and can only be greater than <code>0</code>, otherwise default value will be used. Maximum count of threads
* can't be greater than total available processors count.
* Default value is minimum of <code>4</code> and processors count / 4, but always greater than <code>0</code>.
*/
public static final String INDEX_REBUILDING_PARALLELISM = "INDEX_REBUILDING_PARALLELISM";

/** */
public static final String IGNITE_USE_POOL_FOR_LAZY_QUERIES = "IGNITE_USE_POOL_FOR_LAZY_QUERIES";

Expand Down Expand Up @@ -1225,6 +1217,18 @@ public final class IgniteSystemProperties {
*/
public static final String IGNITE_ENABLE_EXTRA_INDEX_REBUILD_LOGGING = "IGNITE_ENABLE_EXTRA_INDEX_REBUILD_LOGGING";

/**
* Choose the index cost function. May be used to compatibility with old version
* .
* The possible values:
* - "LAST",
* - "COMPATIBLE_8_5_17",
* - COMPATIBLE_8_5_13
*
* The last cost function is used by default.
*/
public static final String IGNITE_INDEX_COST_FUNCTION = "IGNITE_INDEX_COST_FUNCTION";

/**
* Enforces singleton.
*/
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -1169,14 +1169,15 @@ public CacheRebalanceMode getRebalanceMode() {
* Gets cache rebalance order. Rebalance order can be set to non-zero value for caches with
* {@link CacheRebalanceMode#SYNC SYNC} or {@link CacheRebalanceMode#ASYNC ASYNC} rebalance modes only.
* <p/>
* If cache rebalance order is positive, rebalancing for this cache will be started only when rebalancing for
* The rebalance order guarantees that rebalancing for this cache will start only when rebalancing for
* all caches with smaller rebalance order will be completed.
* <p/>
* Note that cache with order {@code 0} does not participate in ordering. This means that cache with
* rebalance order {@code 0} will never wait for any other caches. All caches with order {@code 0} will
* be rebalanced right away concurrently with each other and ordered rebalance processes.
* Note that a cache with {@link CacheRebalanceMode#SYNC SYNC} rebalancing mode always takes precedence
* over caches with {@link CacheRebalanceMode#ASYNC ASYNC} rebalancing mode
* in the group of caches with the same rebalance order. This means caches with {@link CacheRebalanceMode#SYNC SYNC}
* rebalancing mode will be rebalanced in the first place.
* <p/>
* If not set, cache order is 0, i.e. rebalancing is not ordered.
* If not set, cache order is 0.
*
* @return Cache rebalance order.
*/
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -79,6 +79,8 @@
import org.apache.ignite.ssl.SslContextFactory;
import org.jetbrains.annotations.Nullable;

import static java.lang.Math.max;
import static java.lang.Math.min;
import static org.apache.ignite.plugin.segmentation.SegmentationPolicy.STOP;

/**
Expand Down Expand Up @@ -147,7 +149,7 @@ public class IgniteConfiguration {
public static final int AVAILABLE_PROC_CNT = Runtime.getRuntime().availableProcessors();

/** Default core size of public thread pool. */
public static final int DFLT_PUBLIC_THREAD_CNT = Math.max(8, AVAILABLE_PROC_CNT);
public static final int DFLT_PUBLIC_THREAD_CNT = max(8, AVAILABLE_PROC_CNT);

/** Default size of data streamer thread pool. */
public static final int DFLT_DATA_STREAMER_POOL_SIZE = DFLT_PUBLIC_THREAD_CNT;
Expand All @@ -173,6 +175,9 @@ public class IgniteConfiguration {
/** Default size of query thread pool. */
public static final int DFLT_QUERY_THREAD_POOL_SIZE = DFLT_PUBLIC_THREAD_CNT;

/** Default size of index create/rebuild thread pool. */
public static final int DFLT_BUILD_IDX_THREAD_POOL_SIZE = min(4, max(1, AVAILABLE_PROC_CNT / 4));

/** Default Ignite thread keep alive time. */
public static final long DFLT_THREAD_KEEP_ALIVE_TIME = 60_000L;

Expand Down Expand Up @@ -281,6 +286,9 @@ public class IgniteConfiguration {
/** Query pool size. */
private int qryPoolSize = DFLT_QUERY_THREAD_POOL_SIZE;

/** Index create/rebuild pool size. */
private int buildIdxPoolSize = DFLT_BUILD_IDX_THREAD_POOL_SIZE;

/** Ignite installation folder. */
private String igniteHome;

Expand Down Expand Up @@ -626,6 +634,7 @@ public IgniteConfiguration(IgniteConfiguration cfg) {
pluginCfgs = cfg.getPluginConfigurations();
pubPoolSize = cfg.getPublicThreadPoolSize();
qryPoolSize = cfg.getQueryThreadPoolSize();
buildIdxPoolSize = cfg.getBuildIndexThreadPoolSize();
rebalanceThreadPoolSize = cfg.getRebalanceThreadPoolSize();
rebalanceTimeout = cfg.getRebalanceTimeout();
rebalanceBatchesPrefetchCnt = cfg.getRebalanceBatchesPrefetchCount();
Expand Down Expand Up @@ -1022,6 +1031,31 @@ public int getQueryThreadPoolSize() {
return qryPoolSize;
}

/**
* Size of thread pool for create/rebuild index.
* <p>
* If not provided, executor service will have size
* {@link #DFLT_BUILD_IDX_THREAD_POOL_SIZE}.
*
* @return Thread pool size for create/rebuild index.
*/
public int getBuildIndexThreadPoolSize() {
return buildIdxPoolSize;
}

/**
* Sets index create/rebuild thread pool size to use within grid.
*
* @param poolSize Thread pool size to use within grid.
* @return {@code this} for chaining.
* @see IgniteConfiguration#getBuildIndexThreadPoolSize()
*/
public IgniteConfiguration setBuildIndexThreadPoolSize(int poolSize) {
buildIdxPoolSize = poolSize;

return this;
}

/**
* Sets thread pool size to use within grid.
*
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -340,30 +340,30 @@ private void initFilter(IgnitePredicate<Event> filter, GridKernalContext ctx) th

ClassLoader ldr = null;

if (cache != null) {
GridCacheDeploymentManager depMgr = cache.context().deploy();

GridDeploymentInfo depInfo = wrapper.depInfo;

if (depInfo != null) {
depMgr.p2pContext(
nodeId,
depInfo.classLoaderId(),
depInfo.userVersion(),
depInfo.deployMode(),
depInfo.participants()
);
}
try {
if (cache != null) {
GridCacheDeploymentManager depMgr = cache.context().deploy();

GridDeploymentInfo depInfo = wrapper.depInfo;

if (depInfo != null) {
depMgr.p2pContext(
nodeId,
depInfo.classLoaderId(),
depInfo.userVersion(),
depInfo.deployMode(),
depInfo.participants()
);
}

ldr = depMgr.globalLoader();
}
else {
U.warn(ctx.log(getClass()), "Received cache event for cache that is not configured locally " +
"when peer class loading is enabled: " + wrapper.cacheName + ". Will try to unmarshal " +
"with default class loader.");
}
ldr = depMgr.globalLoader();
}
else {
U.warn(ctx.log(getClass()), "Received cache event for cache that is not configured locally " +
"when peer class loading is enabled: " + wrapper.cacheName + ". Will try to unmarshal " +
"with default class loader.");
}

try {
wrapper.p2pUnmarshal(ctx.config().getMarshaller(), U.resolveClassLoader(ldr, ctx.config()));
}
catch (IgniteCheckedException e) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -716,4 +716,11 @@ public interface GridKernalContext extends Iterable<GridComponent> {
* @return Local continuous tasks processor.
*/
public DurableBackgroundTasksProcessor durableBackgroundTasksProcessor();

/**
* Return Thread pool for create/rebuild indexes.
*
* @return Thread pool for create/rebuild indexes.
*/
public ExecutorService buildIndexExecutorService();
}
Original file line number Diff line number Diff line change
Expand Up @@ -348,6 +348,10 @@ public class GridKernalContextImpl implements GridKernalContext, Externalizable
@GridToStringExclude
protected ExecutorService idxExecSvc;

/** Thread pool for create/rebuild indexes. */
@GridToStringExclude
private ExecutorService buildIdxExecSvc;

/** */
@GridToStringExclude
protected IgniteStripedThreadPoolExecutor callbackExecSvc;
Expand Down Expand Up @@ -451,6 +455,7 @@ public GridKernalContextImpl() {
* @param restExecSvc REST executor service.
* @param affExecSvc Affinity executor service.
* @param idxExecSvc Indexing executor service.
* @param buildIdxExecSvc Create/rebuild indexes executor service.
* @param callbackExecSvc Callback executor service.
* @param qryExecSvc Query executor service.
* @param schemaExecSvc Schema executor service.
Expand Down Expand Up @@ -479,6 +484,7 @@ protected GridKernalContextImpl(
ExecutorService restExecSvc,
ExecutorService affExecSvc,
@Nullable ExecutorService idxExecSvc,
@Nullable ExecutorService buildIdxExecSvc,
IgniteStripedThreadPoolExecutor callbackExecSvc,
ExecutorService qryExecSvc,
ExecutorService schemaExecSvc,
Expand Down Expand Up @@ -509,6 +515,7 @@ protected GridKernalContextImpl(
this.restExecSvc = restExecSvc;
this.affExecSvc = affExecSvc;
this.idxExecSvc = idxExecSvc;
this.buildIdxExecSvc = buildIdxExecSvc;
this.callbackExecSvc = callbackExecSvc;
this.qryExecSvc = qryExecSvc;
this.schemaExecSvc = schemaExecSvc;
Expand Down Expand Up @@ -1219,6 +1226,11 @@ public void recoveryMode(boolean recoveryMode) {
return durableBackgroundTasksProcessor;
}

/** {@inheritDoc} */
@Override public ExecutorService buildIndexExecutorService() {
return buildIdxExecSvc;
}

/** {@inheritDoc} */
@Override public String toString() {
return S.toString(GridKernalContextImpl.class, this);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,9 +18,13 @@
package org.apache.ignite.internal;

import java.util.BitSet;
import java.util.Collection;
import org.apache.ignite.cluster.ClusterNode;
import org.apache.ignite.configuration.IgniteConfiguration;
import org.apache.ignite.internal.managers.discovery.IgniteDiscoverySpi;
import org.apache.ignite.spi.communication.tcp.TcpCommunicationSpi;
import org.apache.ignite.spi.communication.tcp.messages.HandshakeWaitMessage;
import org.apache.ignite.spi.discovery.DiscoverySpi;

import static org.apache.ignite.IgniteSystemProperties.getBoolean;
import static org.apache.ignite.internal.IgniteNodeAttributes.ATTR_IGNITE_FEATURES;
Expand Down Expand Up @@ -83,7 +87,13 @@ public enum IgniteFeatures {
DISTRIBUTED_CHANGE_LONG_OPERATIONS_DUMP_TIMEOUT(30),

/** Cluster has task to get value from cache by key value. */
WC_GET_CACHE_VALUE(31);
WC_GET_CACHE_VALUE(31),

/** */
VOLATILE_DATA_STRUCTURES_REGION(33),

/** Partition reconciliation utility. */
PARTITION_RECONCILIATION(34);

/**
* Unique feature identifier.
Expand Down Expand Up @@ -160,6 +170,24 @@ public static boolean allNodesSupports(Iterable<ClusterNode> nodes, IgniteFeatur
return true;
}

/**
* @param cfg Configuration.
* @param feature Feature to check.
*
* @return {@code True} if all nodes in the cluster support given feature.
*/
public static boolean allNodesSupport(IgniteConfiguration cfg, IgniteFeatures feature) {
DiscoverySpi discoSpi = cfg.getDiscoverySpi();

if (discoSpi instanceof IgniteDiscoverySpi)
return ((IgniteDiscoverySpi)discoSpi).allNodesSupport(feature);
else {
Collection<ClusterNode> nodes = discoSpi.getRemoteNodes();

return allNodesSupports(nodes, feature);
}
}

/**
* Features supported by the current node.
*
Expand Down
Loading