[jira] [Commented] (IGNITE-12761) Add ability to disable check crc sums of stored pages due to invalidate_indexes.
[ https://issues.apache.org/jira/browse/IGNITE-12761?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17057599#comment-17057599 ] Ignite TC Bot commented on IGNITE-12761: {panel:title=Branch: [pull/7517/head] Base: [master] : No blockers found!|borderStyle=dashed|borderColor=#ccc|titleBGColor=#D6F7C1}{panel} [TeamCity *-- Run :: All* Results|https://ci.ignite.apache.org/viewLog.html?buildId=5119929buildTypeId=IgniteTests24Java8_RunAll] > Add ability to disable check crc sums of stored pages due to > invalidate_indexes. > > > Key: IGNITE-12761 > URL: https://issues.apache.org/jira/browse/IGNITE-12761 > Project: Ignite > Issue Type: Bug >Reporter: Philipp Masharov >Assignee: Philipp Masharov >Priority: Major > Time Spent: 10m > Remaining Estimate: 0h > > Add additional param to validate_indexes command > org.apache.ignite.internal.commandline.cache.CacheSubcommands#VALIDATE_INDEXES*like > here: > org.apache.ignite.internal.commandline.cache.argument.IdleVerifyCommandArg#CHECK_CRC > now by default this check is always enabled, need to be configurable like the > same one in IdleVerifyCommandArg -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Commented] (IGNITE-12774) Transaction hangs after too many open files NIO exception
[ https://issues.apache.org/jira/browse/IGNITE-12774?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17057570#comment-17057570 ] Sergey Antonov commented on IGNITE-12774: - [~akalashnikov] Could you review my changes please? > Transaction hangs after too many open files NIO exception > - > > Key: IGNITE-12774 > URL: https://issues.apache.org/jira/browse/IGNITE-12774 > Project: Ignite > Issue Type: Bug >Reporter: Sergey Antonov >Assignee: Sergey Antonov >Priority: Major > Fix For: 2.9 > > Time Spent: 10m > Remaining Estimate: 0h > > Transaction hung after “Open too many files” error and never been finished. > {code:java} > import java.net.SocketException; > import java.util.concurrent.atomic.AtomicBoolean; > import org.apache.ignite.cluster.ClusterNode; > import org.apache.ignite.configuration.CacheConfiguration; > import org.apache.ignite.configuration.IgniteConfiguration; > import org.apache.ignite.failure.StopNodeOrHaltFailureHandler; > import org.apache.ignite.internal.IgniteEx; > import org.apache.ignite.lang.IgniteInClosure; > import org.apache.ignite.plugin.extensions.communication.Message; > import org.apache.ignite.spi.IgniteSpiException; > import org.apache.ignite.spi.communication.tcp.TcpCommunicationSpi; > import org.apache.ignite.testframework.junits.common.GridCommonAbstractTest; > import org.apache.ignite.transactions.Transaction; > import org.apache.ignite.transactions.TransactionConcurrency; > import org.apache.ignite.transactions.TransactionIsolation; > import static org.apache.ignite.cache.CacheAtomicityMode.TRANSACTIONAL; > import static org.apache.ignite.cache.CacheMode.PARTITIONED; > public class TooManyOpenFilesTest extends GridCommonAbstractTest { > @Override protected IgniteConfiguration getConfiguration(String > igniteInstanceName) throws Exception { > return super.getConfiguration(igniteInstanceName) > .setFailureHandler(new StopNodeOrHaltFailureHandler()) > .setCommunicationSpi(new TooManyOpenFilesTcpCommunicationSpi()) > .setConsistentId(igniteInstanceName); > } > @Override protected void beforeTest() throws Exception { > super.beforeTest(); > stopAllGrids(); > cleanPersistenceDir(); > } > @Override protected void afterTest() throws Exception { > stopAllGrids(); > cleanPersistenceDir(); > super.afterTest(); > } > public void test() throws Exception { > IgniteEx crd = startGrids(3); > crd.cluster().active(true); > crd.getOrCreateCache(new > CacheConfiguration<>().setName(DEFAULT_CACHE_NAME).setAtomicityMode(TRANSACTIONAL).setBackups(1).setCacheMode(PARTITIONED)); > TooManyOpenFilesTcpCommunicationSpi spi = > (TooManyOpenFilesTcpCommunicationSpi)grid(2).context().config().getCommunicationSpi(); > try (Transaction tx = > grid(1).transactions().txStart(TransactionConcurrency.PESSIMISTIC, > TransactionIsolation.REPEATABLE_READ)) { > IgniteCache cache = > grid(1).cache(DEFAULT_CACHE_NAME); > cache.put(1, 1); > spi.throwException.set(true); > cache.put(2, 2); > cache.put(3, 2); > cache.put(4, 2); > // hungs here. > tx.commit(); > } > for (int i=0; i < 3 ; i++) { > assertEquals(1, grid(i).cache(DEFAULT_CACHE_NAME).get(1)); > assertEquals(2, grid(i).cache(DEFAULT_CACHE_NAME).get(2)); > } > } > private static class TooManyOpenFilesTcpCommunicationSpi extends > TcpCommunicationSpi { > private final AtomicBoolean throwException = new AtomicBoolean(); > /** {@inheritDoc} */ > @Override public void sendMessage(ClusterNode node, Message msg) > throws IgniteSpiException { > if (throwException.get()) > throw getException(node); > super.sendMessage(node, msg); > } > /** {@inheritDoc} */ > @Override public void sendMessage( > ClusterNode node, > Message msg, > IgniteInClosure ackC > ) throws IgniteSpiException { > if (throwException.get()) > throw getException(node); > super.sendMessage(node, msg, ackC); > } > private IgniteSpiException getException(ClusterNode node) { > String checkedExceptionMsg = "Failed to connect to node (is node > still alive?). " + > "Make sure that each ComputeTask and cache Transaction has a > timeout set " + > "in order to prevent parties from waiting forever in case of > network issues " + > "[nodeId=" + node.id() + ", addrs=null]"; > return new
[jira] [Commented] (IGNITE-12774) Transaction hangs after too many open files NIO exception
[ https://issues.apache.org/jira/browse/IGNITE-12774?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17057566#comment-17057566 ] Ignite TC Bot commented on IGNITE-12774: {panel:title=Branch: [pull/7516/head] Base: [master] : No blockers found!|borderStyle=dashed|borderColor=#ccc|titleBGColor=#D6F7C1}{panel} [TeamCity *-- Run :: All* Results|https://ci.ignite.apache.org/viewLog.html?buildId=5119807buildTypeId=IgniteTests24Java8_RunAll] > Transaction hangs after too many open files NIO exception > - > > Key: IGNITE-12774 > URL: https://issues.apache.org/jira/browse/IGNITE-12774 > Project: Ignite > Issue Type: Bug >Reporter: Sergey Antonov >Assignee: Sergey Antonov >Priority: Major > Fix For: 2.9 > > Time Spent: 10m > Remaining Estimate: 0h > > Transaction hung after “Open too many files” error and never been finished. > {code:java} > import java.net.SocketException; > import java.util.concurrent.atomic.AtomicBoolean; > import org.apache.ignite.cluster.ClusterNode; > import org.apache.ignite.configuration.CacheConfiguration; > import org.apache.ignite.configuration.IgniteConfiguration; > import org.apache.ignite.failure.StopNodeOrHaltFailureHandler; > import org.apache.ignite.internal.IgniteEx; > import org.apache.ignite.lang.IgniteInClosure; > import org.apache.ignite.plugin.extensions.communication.Message; > import org.apache.ignite.spi.IgniteSpiException; > import org.apache.ignite.spi.communication.tcp.TcpCommunicationSpi; > import org.apache.ignite.testframework.junits.common.GridCommonAbstractTest; > import org.apache.ignite.transactions.Transaction; > import org.apache.ignite.transactions.TransactionConcurrency; > import org.apache.ignite.transactions.TransactionIsolation; > import static org.apache.ignite.cache.CacheAtomicityMode.TRANSACTIONAL; > import static org.apache.ignite.cache.CacheMode.PARTITIONED; > public class TooManyOpenFilesTest extends GridCommonAbstractTest { > @Override protected IgniteConfiguration getConfiguration(String > igniteInstanceName) throws Exception { > return super.getConfiguration(igniteInstanceName) > .setFailureHandler(new StopNodeOrHaltFailureHandler()) > .setCommunicationSpi(new TooManyOpenFilesTcpCommunicationSpi()) > .setConsistentId(igniteInstanceName); > } > @Override protected void beforeTest() throws Exception { > super.beforeTest(); > stopAllGrids(); > cleanPersistenceDir(); > } > @Override protected void afterTest() throws Exception { > stopAllGrids(); > cleanPersistenceDir(); > super.afterTest(); > } > public void test() throws Exception { > IgniteEx crd = startGrids(3); > crd.cluster().active(true); > crd.getOrCreateCache(new > CacheConfiguration<>().setName(DEFAULT_CACHE_NAME).setAtomicityMode(TRANSACTIONAL).setBackups(1).setCacheMode(PARTITIONED)); > TooManyOpenFilesTcpCommunicationSpi spi = > (TooManyOpenFilesTcpCommunicationSpi)grid(2).context().config().getCommunicationSpi(); > try (Transaction tx = > grid(1).transactions().txStart(TransactionConcurrency.PESSIMISTIC, > TransactionIsolation.REPEATABLE_READ)) { > IgniteCache cache = > grid(1).cache(DEFAULT_CACHE_NAME); > cache.put(1, 1); > spi.throwException.set(true); > cache.put(2, 2); > cache.put(3, 2); > cache.put(4, 2); > // hungs here. > tx.commit(); > } > for (int i=0; i < 3 ; i++) { > assertEquals(1, grid(i).cache(DEFAULT_CACHE_NAME).get(1)); > assertEquals(2, grid(i).cache(DEFAULT_CACHE_NAME).get(2)); > } > } > private static class TooManyOpenFilesTcpCommunicationSpi extends > TcpCommunicationSpi { > private final AtomicBoolean throwException = new AtomicBoolean(); > /** {@inheritDoc} */ > @Override public void sendMessage(ClusterNode node, Message msg) > throws IgniteSpiException { > if (throwException.get()) > throw getException(node); > super.sendMessage(node, msg); > } > /** {@inheritDoc} */ > @Override public void sendMessage( > ClusterNode node, > Message msg, > IgniteInClosure ackC > ) throws IgniteSpiException { > if (throwException.get()) > throw getException(node); > super.sendMessage(node, msg, ackC); > } > private IgniteSpiException getException(ClusterNode node) { > String checkedExceptionMsg = "Failed to connect to node (is node > still alive?). " + > "Make sure that each ComputeTask and cache Transaction has a >
[jira] [Created] (IGNITE-12775) Update URLs and other content on Ignite downloads page
Denis A. Magda created IGNITE-12775: --- Summary: Update URLs and other content on Ignite downloads page Key: IGNITE-12775 URL: https://issues.apache.org/jira/browse/IGNITE-12775 Project: Ignite Issue Type: Task Reporter: Denis A. Magda Fix For: 2.8.1 As per ASF INFRA advise/request, the downloads page needs to be adjusted this way: * PGP/SHA512 stuff should refer to downloads.apache.org instead of www.apache.org/dist/ * I could not find a link to the KEYS file. * The page links to NIGHTLY builds; these must not be promoted to the general public * the page does not describe how to verify downloads, and only mentions verification for binary downloads. Users should be urged to verify all downloads. * the 'pgp' link for apache-ignite-fabric-2.4.0-bin.zip points to the zip file, likewise for apache-ignite-fabric-2.3.0-bin.zip * apache-ignite-1.3.0-src.zip and earlier are incubating releases, however the link text does not make this clear. * the docker and cloud image links don't have sigs or hashes -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Updated] (IGNITE-12774) Transaction hangs after too many open files NIO exception
[ https://issues.apache.org/jira/browse/IGNITE-12774?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Sergey Antonov updated IGNITE-12774: Fix Version/s: 2.9 > Transaction hangs after too many open files NIO exception > - > > Key: IGNITE-12774 > URL: https://issues.apache.org/jira/browse/IGNITE-12774 > Project: Ignite > Issue Type: Bug >Reporter: Sergey Antonov >Assignee: Sergey Antonov >Priority: Major > Fix For: 2.9 > > Time Spent: 10m > Remaining Estimate: 0h > > Transaction hung after “Open too many files” error and never been finished. > {code:java} > import java.net.SocketException; > import java.util.concurrent.atomic.AtomicBoolean; > import org.apache.ignite.cluster.ClusterNode; > import org.apache.ignite.configuration.CacheConfiguration; > import org.apache.ignite.configuration.IgniteConfiguration; > import org.apache.ignite.failure.StopNodeOrHaltFailureHandler; > import org.apache.ignite.internal.IgniteEx; > import org.apache.ignite.lang.IgniteInClosure; > import org.apache.ignite.plugin.extensions.communication.Message; > import org.apache.ignite.spi.IgniteSpiException; > import org.apache.ignite.spi.communication.tcp.TcpCommunicationSpi; > import org.apache.ignite.testframework.junits.common.GridCommonAbstractTest; > import org.apache.ignite.transactions.Transaction; > import org.apache.ignite.transactions.TransactionConcurrency; > import org.apache.ignite.transactions.TransactionIsolation; > import static org.apache.ignite.cache.CacheAtomicityMode.TRANSACTIONAL; > import static org.apache.ignite.cache.CacheMode.PARTITIONED; > public class TooManyOpenFilesTest extends GridCommonAbstractTest { > @Override protected IgniteConfiguration getConfiguration(String > igniteInstanceName) throws Exception { > return super.getConfiguration(igniteInstanceName) > .setFailureHandler(new StopNodeOrHaltFailureHandler()) > .setCommunicationSpi(new TooManyOpenFilesTcpCommunicationSpi()) > .setConsistentId(igniteInstanceName); > } > @Override protected void beforeTest() throws Exception { > super.beforeTest(); > stopAllGrids(); > cleanPersistenceDir(); > } > @Override protected void afterTest() throws Exception { > stopAllGrids(); > cleanPersistenceDir(); > super.afterTest(); > } > public void test() throws Exception { > IgniteEx crd = startGrids(3); > crd.cluster().active(true); > crd.getOrCreateCache(new > CacheConfiguration<>().setName(DEFAULT_CACHE_NAME).setAtomicityMode(TRANSACTIONAL).setBackups(1).setCacheMode(PARTITIONED)); > TooManyOpenFilesTcpCommunicationSpi spi = > (TooManyOpenFilesTcpCommunicationSpi)grid(2).context().config().getCommunicationSpi(); > try (Transaction tx = > grid(1).transactions().txStart(TransactionConcurrency.PESSIMISTIC, > TransactionIsolation.REPEATABLE_READ)) { > IgniteCache cache = > grid(1).cache(DEFAULT_CACHE_NAME); > cache.put(1, 1); > spi.throwException.set(true); > cache.put(2, 2); > cache.put(3, 2); > cache.put(4, 2); > // hungs here. > tx.commit(); > } > for (int i=0; i < 3 ; i++) { > assertEquals(1, grid(i).cache(DEFAULT_CACHE_NAME).get(1)); > assertEquals(2, grid(i).cache(DEFAULT_CACHE_NAME).get(2)); > } > } > private static class TooManyOpenFilesTcpCommunicationSpi extends > TcpCommunicationSpi { > private final AtomicBoolean throwException = new AtomicBoolean(); > /** {@inheritDoc} */ > @Override public void sendMessage(ClusterNode node, Message msg) > throws IgniteSpiException { > if (throwException.get()) > throw getException(node); > super.sendMessage(node, msg); > } > /** {@inheritDoc} */ > @Override public void sendMessage( > ClusterNode node, > Message msg, > IgniteInClosure ackC > ) throws IgniteSpiException { > if (throwException.get()) > throw getException(node); > super.sendMessage(node, msg, ackC); > } > private IgniteSpiException getException(ClusterNode node) { > String checkedExceptionMsg = "Failed to connect to node (is node > still alive?). " + > "Make sure that each ComputeTask and cache Transaction has a > timeout set " + > "in order to prevent parties from waiting forever in case of > network issues " + > "[nodeId=" + node.id() + ", addrs=null]"; > return new IgniteSpiException("Failed to send message to remote > node: " + node.id(), new
[jira] [Updated] (IGNITE-12774) Transaction hangs after too many open files NIO exception
[ https://issues.apache.org/jira/browse/IGNITE-12774?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Sergey Antonov updated IGNITE-12774: Ignite Flags: Release Notes Required (was: Docs Required,Release Notes Required) > Transaction hangs after too many open files NIO exception > - > > Key: IGNITE-12774 > URL: https://issues.apache.org/jira/browse/IGNITE-12774 > Project: Ignite > Issue Type: Bug >Reporter: Sergey Antonov >Assignee: Sergey Antonov >Priority: Major > Time Spent: 10m > Remaining Estimate: 0h > > Transaction hung after “Open too many files” error and never been finished. > {code:java} > import java.net.SocketException; > import java.util.concurrent.atomic.AtomicBoolean; > import org.apache.ignite.cluster.ClusterNode; > import org.apache.ignite.configuration.CacheConfiguration; > import org.apache.ignite.configuration.IgniteConfiguration; > import org.apache.ignite.failure.StopNodeOrHaltFailureHandler; > import org.apache.ignite.internal.IgniteEx; > import org.apache.ignite.lang.IgniteInClosure; > import org.apache.ignite.plugin.extensions.communication.Message; > import org.apache.ignite.spi.IgniteSpiException; > import org.apache.ignite.spi.communication.tcp.TcpCommunicationSpi; > import org.apache.ignite.testframework.junits.common.GridCommonAbstractTest; > import org.apache.ignite.transactions.Transaction; > import org.apache.ignite.transactions.TransactionConcurrency; > import org.apache.ignite.transactions.TransactionIsolation; > import static org.apache.ignite.cache.CacheAtomicityMode.TRANSACTIONAL; > import static org.apache.ignite.cache.CacheMode.PARTITIONED; > public class TooManyOpenFilesTest extends GridCommonAbstractTest { > @Override protected IgniteConfiguration getConfiguration(String > igniteInstanceName) throws Exception { > return super.getConfiguration(igniteInstanceName) > .setFailureHandler(new StopNodeOrHaltFailureHandler()) > .setCommunicationSpi(new TooManyOpenFilesTcpCommunicationSpi()) > .setConsistentId(igniteInstanceName); > } > @Override protected void beforeTest() throws Exception { > super.beforeTest(); > stopAllGrids(); > cleanPersistenceDir(); > } > @Override protected void afterTest() throws Exception { > stopAllGrids(); > cleanPersistenceDir(); > super.afterTest(); > } > public void test() throws Exception { > IgniteEx crd = startGrids(3); > crd.cluster().active(true); > crd.getOrCreateCache(new > CacheConfiguration<>().setName(DEFAULT_CACHE_NAME).setAtomicityMode(TRANSACTIONAL).setBackups(1).setCacheMode(PARTITIONED)); > TooManyOpenFilesTcpCommunicationSpi spi = > (TooManyOpenFilesTcpCommunicationSpi)grid(2).context().config().getCommunicationSpi(); > try (Transaction tx = > grid(1).transactions().txStart(TransactionConcurrency.PESSIMISTIC, > TransactionIsolation.REPEATABLE_READ)) { > IgniteCache cache = > grid(1).cache(DEFAULT_CACHE_NAME); > cache.put(1, 1); > spi.throwException.set(true); > cache.put(2, 2); > cache.put(3, 2); > cache.put(4, 2); > // hungs here. > tx.commit(); > } > for (int i=0; i < 3 ; i++) { > assertEquals(1, grid(i).cache(DEFAULT_CACHE_NAME).get(1)); > assertEquals(2, grid(i).cache(DEFAULT_CACHE_NAME).get(2)); > } > } > private static class TooManyOpenFilesTcpCommunicationSpi extends > TcpCommunicationSpi { > private final AtomicBoolean throwException = new AtomicBoolean(); > /** {@inheritDoc} */ > @Override public void sendMessage(ClusterNode node, Message msg) > throws IgniteSpiException { > if (throwException.get()) > throw getException(node); > super.sendMessage(node, msg); > } > /** {@inheritDoc} */ > @Override public void sendMessage( > ClusterNode node, > Message msg, > IgniteInClosure ackC > ) throws IgniteSpiException { > if (throwException.get()) > throw getException(node); > super.sendMessage(node, msg, ackC); > } > private IgniteSpiException getException(ClusterNode node) { > String checkedExceptionMsg = "Failed to connect to node (is node > still alive?). " + > "Make sure that each ComputeTask and cache Transaction has a > timeout set " + > "in order to prevent parties from waiting forever in case of > network issues " + > "[nodeId=" + node.id() + ", addrs=null]"; > return new IgniteSpiException("Failed to send message to
[jira] [Updated] (IGNITE-12774) Transaction hangs after too many open files NIO exception
[ https://issues.apache.org/jira/browse/IGNITE-12774?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Sergey Antonov updated IGNITE-12774: Summary: Transaction hangs after too many open files NIO exception (was: Transaction hungs after too many open files NIO exception) > Transaction hangs after too many open files NIO exception > - > > Key: IGNITE-12774 > URL: https://issues.apache.org/jira/browse/IGNITE-12774 > Project: Ignite > Issue Type: Bug >Reporter: Sergey Antonov >Assignee: Sergey Antonov >Priority: Major > > Transaction hung after “Open too many files” error and never been finished. > {code:java} > import java.net.SocketException; > import java.util.concurrent.atomic.AtomicBoolean; > import org.apache.ignite.cluster.ClusterNode; > import org.apache.ignite.configuration.CacheConfiguration; > import org.apache.ignite.configuration.IgniteConfiguration; > import org.apache.ignite.failure.StopNodeOrHaltFailureHandler; > import org.apache.ignite.internal.IgniteEx; > import org.apache.ignite.lang.IgniteInClosure; > import org.apache.ignite.plugin.extensions.communication.Message; > import org.apache.ignite.spi.IgniteSpiException; > import org.apache.ignite.spi.communication.tcp.TcpCommunicationSpi; > import org.apache.ignite.testframework.junits.common.GridCommonAbstractTest; > import org.apache.ignite.transactions.Transaction; > import org.apache.ignite.transactions.TransactionConcurrency; > import org.apache.ignite.transactions.TransactionIsolation; > import static org.apache.ignite.cache.CacheAtomicityMode.TRANSACTIONAL; > import static org.apache.ignite.cache.CacheMode.PARTITIONED; > public class TooManyOpenFilesTest extends GridCommonAbstractTest { > @Override protected IgniteConfiguration getConfiguration(String > igniteInstanceName) throws Exception { > return super.getConfiguration(igniteInstanceName) > .setFailureHandler(new StopNodeOrHaltFailureHandler()) > .setCommunicationSpi(new TooManyOpenFilesTcpCommunicationSpi()) > .setConsistentId(igniteInstanceName); > } > @Override protected void beforeTest() throws Exception { > super.beforeTest(); > stopAllGrids(); > cleanPersistenceDir(); > } > @Override protected void afterTest() throws Exception { > stopAllGrids(); > cleanPersistenceDir(); > super.afterTest(); > } > public void test() throws Exception { > IgniteEx crd = startGrids(3); > crd.cluster().active(true); > crd.getOrCreateCache(new > CacheConfiguration<>().setName(DEFAULT_CACHE_NAME).setAtomicityMode(TRANSACTIONAL).setBackups(1).setCacheMode(PARTITIONED)); > TooManyOpenFilesTcpCommunicationSpi spi = > (TooManyOpenFilesTcpCommunicationSpi)grid(2).context().config().getCommunicationSpi(); > try (Transaction tx = > grid(1).transactions().txStart(TransactionConcurrency.PESSIMISTIC, > TransactionIsolation.REPEATABLE_READ)) { > IgniteCache cache = > grid(1).cache(DEFAULT_CACHE_NAME); > cache.put(1, 1); > spi.throwException.set(true); > cache.put(2, 2); > cache.put(3, 2); > cache.put(4, 2); > // hungs here. > tx.commit(); > } > for (int i=0; i < 3 ; i++) { > assertEquals(1, grid(i).cache(DEFAULT_CACHE_NAME).get(1)); > assertEquals(2, grid(i).cache(DEFAULT_CACHE_NAME).get(2)); > } > } > private static class TooManyOpenFilesTcpCommunicationSpi extends > TcpCommunicationSpi { > private final AtomicBoolean throwException = new AtomicBoolean(); > /** {@inheritDoc} */ > @Override public void sendMessage(ClusterNode node, Message msg) > throws IgniteSpiException { > if (throwException.get()) > throw getException(node); > super.sendMessage(node, msg); > } > /** {@inheritDoc} */ > @Override public void sendMessage( > ClusterNode node, > Message msg, > IgniteInClosure ackC > ) throws IgniteSpiException { > if (throwException.get()) > throw getException(node); > super.sendMessage(node, msg, ackC); > } > private IgniteSpiException getException(ClusterNode node) { > String checkedExceptionMsg = "Failed to connect to node (is node > still alive?). " + > "Make sure that each ComputeTask and cache Transaction has a > timeout set " + > "in order to prevent parties from waiting forever in case of > network issues " + > "[nodeId=" + node.id() + ", addrs=null]"; > return new IgniteSpiException("Failed to send message to
[jira] [Created] (IGNITE-12774) Transaction hungs after too many open files NIO exception
Sergey Antonov created IGNITE-12774: --- Summary: Transaction hungs after too many open files NIO exception Key: IGNITE-12774 URL: https://issues.apache.org/jira/browse/IGNITE-12774 Project: Ignite Issue Type: Bug Reporter: Sergey Antonov Assignee: Sergey Antonov Transaction hung after “Open too many files” error and never been finished. {code:java} import java.net.SocketException; import java.util.concurrent.atomic.AtomicBoolean; import org.apache.ignite.cluster.ClusterNode; import org.apache.ignite.configuration.CacheConfiguration; import org.apache.ignite.configuration.IgniteConfiguration; import org.apache.ignite.failure.StopNodeOrHaltFailureHandler; import org.apache.ignite.internal.IgniteEx; import org.apache.ignite.lang.IgniteInClosure; import org.apache.ignite.plugin.extensions.communication.Message; import org.apache.ignite.spi.IgniteSpiException; import org.apache.ignite.spi.communication.tcp.TcpCommunicationSpi; import org.apache.ignite.testframework.junits.common.GridCommonAbstractTest; import org.apache.ignite.transactions.Transaction; import org.apache.ignite.transactions.TransactionConcurrency; import org.apache.ignite.transactions.TransactionIsolation; import static org.apache.ignite.cache.CacheAtomicityMode.TRANSACTIONAL; import static org.apache.ignite.cache.CacheMode.PARTITIONED; public class TooManyOpenFilesTest extends GridCommonAbstractTest { @Override protected IgniteConfiguration getConfiguration(String igniteInstanceName) throws Exception { return super.getConfiguration(igniteInstanceName) .setFailureHandler(new StopNodeOrHaltFailureHandler()) .setCommunicationSpi(new TooManyOpenFilesTcpCommunicationSpi()) .setConsistentId(igniteInstanceName); } @Override protected void beforeTest() throws Exception { super.beforeTest(); stopAllGrids(); cleanPersistenceDir(); } @Override protected void afterTest() throws Exception { stopAllGrids(); cleanPersistenceDir(); super.afterTest(); } public void test() throws Exception { IgniteEx crd = startGrids(3); crd.cluster().active(true); crd.getOrCreateCache(new CacheConfiguration<>().setName(DEFAULT_CACHE_NAME).setAtomicityMode(TRANSACTIONAL).setBackups(1).setCacheMode(PARTITIONED)); TooManyOpenFilesTcpCommunicationSpi spi = (TooManyOpenFilesTcpCommunicationSpi)grid(2).context().config().getCommunicationSpi(); try (Transaction tx = grid(1).transactions().txStart(TransactionConcurrency.PESSIMISTIC, TransactionIsolation.REPEATABLE_READ)) { IgniteCache cache = grid(1).cache(DEFAULT_CACHE_NAME); cache.put(1, 1); spi.throwException.set(true); cache.put(2, 2); cache.put(3, 2); cache.put(4, 2); // hungs here. tx.commit(); } for (int i=0; i < 3 ; i++) { assertEquals(1, grid(i).cache(DEFAULT_CACHE_NAME).get(1)); assertEquals(2, grid(i).cache(DEFAULT_CACHE_NAME).get(2)); } } private static class TooManyOpenFilesTcpCommunicationSpi extends TcpCommunicationSpi { private final AtomicBoolean throwException = new AtomicBoolean(); /** {@inheritDoc} */ @Override public void sendMessage(ClusterNode node, Message msg) throws IgniteSpiException { if (throwException.get()) throw getException(node); super.sendMessage(node, msg); } /** {@inheritDoc} */ @Override public void sendMessage( ClusterNode node, Message msg, IgniteInClosure ackC ) throws IgniteSpiException { if (throwException.get()) throw getException(node); super.sendMessage(node, msg, ackC); } private IgniteSpiException getException(ClusterNode node) { String checkedExceptionMsg = "Failed to connect to node (is node still alive?). " + "Make sure that each ComputeTask and cache Transaction has a timeout set " + "in order to prevent parties from waiting forever in case of network issues " + "[nodeId=" + node.id() + ", addrs=null]"; return new IgniteSpiException("Failed to send message to remote node: " + node.id(), new IgniteCheckedException(checkedExceptionMsg, new SocketException("Too many open files"))); } } } {code} -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Commented] (IGNITE-12728) The cache#putAllAsync method does not collect statistics
[ https://issues.apache.org/jira/browse/IGNITE-12728?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17057287#comment-17057287 ] Andrey N. Gura commented on IGNITE-12728: - [~alex_pl] No, I don't. Please proceed. > The cache#putAllAsync method does not collect statistics > > > Key: IGNITE-12728 > URL: https://issues.apache.org/jira/browse/IGNITE-12728 > Project: Ignite > Issue Type: Bug >Reporter: Amelchev Nikita >Assignee: Amelchev Nikita >Priority: Major > Labels: IEP-35 > Fix For: 2.9 > > Time Spent: 10m > Remaining Estimate: 0h > > The cache#putAllAsync method does not collect statistics. > The reproducer for {{GridCacheAbstractMetricsSelfTest}}: > {noformat} > @Test > public void testPutAllAsyncAvgTime() throws Exception { > IgniteCache cache = > grid(0).cache(DEFAULT_CACHE_NAME); > assertEquals(0.0, cache.localMetrics().getAveragePutTime(), 0.0); > assertEquals(0, cache.localMetrics().getCachePuts()); > Map values = new HashMap<>(); > values.put(1, 1); > values.put(2, 2); > values.put(3, 3); > IgniteFuture fut = cache.putAllAsync(values); > fut.get(); > assertTrue(waitForCondition(() -> > cache.localMetrics().getAveragePutTime() > 0, 30_000)); > assertEquals(values.size(), cache.localMetrics().getCachePuts()); > } > {noformat} -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Updated] (IGNITE-12773) Reduce number of cluster deactivation methods in internal API.
[ https://issues.apache.org/jira/browse/IGNITE-12773?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Vladimir Steshin updated IGNITE-12773: -- Description: To reduce number of cluster deactivation methods in internal API we might: {code:java} 1. Remove GridClientClusterState#active() 2. Remove GridClientClusterState#active(boolean active) 3. Remove IGridClusterStateProcessor#changeGlobalState( boolean activate, Collection baselineNodes, boolean forceChangeBaselineTopology ) 4. Remove GridClusterStateProcessor#changeGlobalState( final boolean activate, Collection baselineNodes, boolean forceChangeBaselineTopology, boolean isAutoAdjust ) 5. Remove GridClusterStateProcessor#changeGlobalState( final boolean activate, Collection baselineNodes, boolean forceChangeBaselineTopology ) 6. Remove GridClusterStateProcessor#changeGlobalState( ClusterState state, Collection baselineNodes, boolean forceChangeBaselineTopology ) 7. Add boolean isAutoAdjust to IGridClusterStateProcessor#changeGlobalState( ClusterState state, Collection baselineNodes, boolean forceChangeBaselineTopology, boolean isAutoAdjust ) 8. Add @Override to IGridClusterStateProcessor#changeGlobalState( ClusterState state, Collection baselineNodes, boolean forceChangeBaselineTopology, boolean isAutoAdjust ) 9. Remove, combine with #8: IGridClusterStateProcessor#changeGlobalState0( ClusterState state, BaselineTopology blt, boolean forceChangeBaselineTopology, boolean isAutoAdjust ) {code} was: To reduce number of cluster deactivation methods in internal API we might: {code:java} 1. Remove GridClientClusterState#active() 2. Remove GridClientClusterState#active(boolean active) 3. Remove IGridClusterStateProcessor#changeGlobalState( boolean activate, Collection baselineNodes, boolean forceChangeBaselineTopology ) 4. Remove GridClusterStateProcessor#changeGlobalState( final boolean activate, Collection baselineNodes, boolean forceChangeBaselineTopology, boolean isAutoAdjust ) 5. Remove GridClusterStateProcessor#changeGlobalState( final boolean activate, Collection baselineNodes, boolean forceChangeBaselineTopology ) 6. Remove GridClusterStateProcessor#changeGlobalState( ClusterState state, Collection baselineNodes, boolean forceChangeBaselineTopology ) 7. Add boolean isAutoAdjust to IGridClusterStateProcessor#changeGlobalState( ClusterState state, Collection baselineNodes, boolean forceChangeBaselineTopology, /* here */ boolean isAutoAdjust /* here */ ) 8. Add @Override to /* here */ @Override /* here */ IGridClusterStateProcessor#changeGlobalState( ClusterState state, Collection baselineNodes, boolean forceChangeBaselineTopology, boolean isAutoAdjust ) 9. Remove, combine with #8: IGridClusterStateProcessor#changeGlobalState0( ClusterState state, BaselineTopology blt, boolean forceChangeBaselineTopology, boolean isAutoAdjust ) {code} > Reduce number of cluster deactivation methods in internal API. > -- > > Key: IGNITE-12773 > URL: https://issues.apache.org/jira/browse/IGNITE-12773 > Project: Ignite > Issue Type: Improvement >Reporter: Vladimir Steshin >Assignee: Vladimir Steshin >Priority: Minor > > To reduce number of cluster deactivation methods in internal API we might: > {code:java} > 1.Remove > GridClientClusterState#active() > 2.Remove > GridClientClusterState#active(boolean active) > 3.Remove > IGridClusterStateProcessor#changeGlobalState( > boolean activate, > Collection baselineNodes, > boolean forceChangeBaselineTopology > ) > 4.Remove > GridClusterStateProcessor#changeGlobalState( > final boolean activate, > Collection baselineNodes, > boolean forceChangeBaselineTopology, > boolean isAutoAdjust > ) > 5.Remove > GridClusterStateProcessor#changeGlobalState( > final boolean activate, > Collection baselineNodes, > boolean forceChangeBaselineTopology > ) > 6.Remove > GridClusterStateProcessor#changeGlobalState( > ClusterState state, > Collection baselineNodes, > boolean forceChangeBaselineTopology > ) > 7.Add boolean isAutoAdjust to > IGridClusterStateProcessor#changeGlobalState( > ClusterState state, > Collection baselineNodes, > boolean forceChangeBaselineTopology, > boolean isAutoAdjust > ) > 8.Add @Override to > IGridClusterStateProcessor#changeGlobalState( > ClusterState state, > Collection baselineNodes, >
[jira] [Commented] (IGNITE-12773) Reduce number of cluster deactivation methods in internal API.
[ https://issues.apache.org/jira/browse/IGNITE-12773?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17057223#comment-17057223 ] Vladimir Steshin commented on IGNITE-12773: --- Done all the chages. > Reduce number of cluster deactivation methods in internal API. > -- > > Key: IGNITE-12773 > URL: https://issues.apache.org/jira/browse/IGNITE-12773 > Project: Ignite > Issue Type: Improvement >Reporter: Vladimir Steshin >Assignee: Vladimir Steshin >Priority: Minor > > To reduce number of cluster deactivation methods in internal API we might: > {code:java} > 1.Remove > GridClientClusterState#active() > 2.Remove > GridClientClusterState#active(boolean active) > 3.Remove > IGridClusterStateProcessor#changeGlobalState( > boolean activate, > Collection baselineNodes, > boolean forceChangeBaselineTopology > ) > 4.Remove > GridClusterStateProcessor#changeGlobalState( > final boolean activate, > Collection baselineNodes, > boolean forceChangeBaselineTopology, > boolean isAutoAdjust > ) > 5.Remove > GridClusterStateProcessor#changeGlobalState( > final boolean activate, > Collection baselineNodes, > boolean forceChangeBaselineTopology > ) > 6.Remove > GridClusterStateProcessor#changeGlobalState( > ClusterState state, > Collection baselineNodes, > boolean forceChangeBaselineTopology > ) > 7.Add boolean isAutoAdjust to > IGridClusterStateProcessor#changeGlobalState( > ClusterState state, > Collection baselineNodes, > boolean forceChangeBaselineTopology, >/* here */ boolean isAutoAdjust /* here */ > ) > 8.Add @Override to > /* here */ @Override /* here */ > IGridClusterStateProcessor#changeGlobalState( > ClusterState state, > Collection baselineNodes, > boolean forceChangeBaselineTopology, > boolean isAutoAdjust > ) > 9. Remove, combine with #8: > IGridClusterStateProcessor#changeGlobalState0( > ClusterState state, > BaselineTopology blt, > boolean forceChangeBaselineTopology, > boolean isAutoAdjust > ) > {code} -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Updated] (IGNITE-12762) PHP: Thin client: Transactions
[ https://issues.apache.org/jira/browse/IGNITE-12762?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Igor Sapego updated IGNITE-12762: - Priority: Major (was: Blocker) > PHP: Thin client: Transactions > -- > > Key: IGNITE-12762 > URL: https://issues.apache.org/jira/browse/IGNITE-12762 > Project: Ignite > Issue Type: New Feature > Components: thin client >Reporter: Alexander Kovalev >Priority: Major > Labels: PHP, iep-34 > > dear colleagues, could you explain when in > [https://apacheignite.readme.io/docs/php-thin-client] > transaction support will be enabled? > I found an implementation for other languages, but support is needed > specifically for PHP > > I'd like to have a link from this issue to > [https://cwiki.apache.org/confluence/display/IGNITE/IEP-34+Thin+client%3A+transactions+support] -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Updated] (IGNITE-12773) Reduce number of cluster deactivation methods in internal API.
[ https://issues.apache.org/jira/browse/IGNITE-12773?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Vladimir Steshin updated IGNITE-12773: -- Description: To reduce number of cluster deactivation methods in internal API we might: {code:java} 1. Remove GridClientClusterState#active() 2. Remove GridClientClusterState#active(boolean active) 3. Remove IGridClusterStateProcessor#changeGlobalState( boolean activate, Collection baselineNodes, boolean forceChangeBaselineTopology ) 4. Remove GridClusterStateProcessor#changeGlobalState( final boolean activate, Collection baselineNodes, boolean forceChangeBaselineTopology, boolean isAutoAdjust ) 5. Remove GridClusterStateProcessor#changeGlobalState( final boolean activate, Collection baselineNodes, boolean forceChangeBaselineTopology ) 6. Remove GridClusterStateProcessor#changeGlobalState( ClusterState state, Collection baselineNodes, boolean forceChangeBaselineTopology ) 7. Add boolean isAutoAdjust to IGridClusterStateProcessor#changeGlobalState( ClusterState state, Collection baselineNodes, boolean forceChangeBaselineTopology, /* here */ boolean isAutoAdjust /* here */ ) 8. Add @Override to /* here */ @Override /* here */ IGridClusterStateProcessor#changeGlobalState( ClusterState state, Collection baselineNodes, boolean forceChangeBaselineTopology, boolean isAutoAdjust ) 9. Remove, combine with #8: IGridClusterStateProcessor#changeGlobalState0( ClusterState state, BaselineTopology blt, boolean forceChangeBaselineTopology, boolean isAutoAdjust ) {code} was: To reduce number of cluster deactivation methods in internal API we might: {code:java} 1. Remove GridClientClusterState#active() 2. Remove GridClientClusterState#active(boolean active) 3. Remove IGridClusterStateProcessor#changeGlobalState( boolean activate, Collection baselineNodes, boolean forceChangeBaselineTopology ) 4. Remove GridClusterStateProcessor#changeGlobalState( final boolean activate, Collection baselineNodes, boolean forceChangeBaselineTopology, boolean isAutoAdjust ) 5. Remove GridClusterStateProcessor#changeGlobalState( final boolean activate, Collection baselineNodes, boolean forceChangeBaselineTopology ) 6. Remove GridClusterStateProcessor#changeGlobalState( ClusterState state, Collection baselineNodes, boolean forceChangeBaselineTopology ) 7. Add boolean isAutoAdjust to IGridClusterStateProcessor#changeGlobalState( ClusterState state, Collection baselineNodes, boolean forceChangeBaselineTopology, /* here */ boolean isAutoAdjust /* here */ ) 8. Add @Override to /* here */ @Override /* here */ IGridClusterStateProcessor#changeGlobalState( ClusterState state, Collection baselineNodes, boolean forceChangeBaselineTopology, boolean isAutoAdjust ) 9. Remove, combine with #8: private IgniteInternalFuture changeGlobalState0( ClusterState state, BaselineTopology blt, boolean forceChangeBaselineTopology, boolean isAutoAdjust ) {code} > Reduce number of cluster deactivation methods in internal API. > -- > > Key: IGNITE-12773 > URL: https://issues.apache.org/jira/browse/IGNITE-12773 > Project: Ignite > Issue Type: Improvement >Reporter: Vladimir Steshin >Assignee: Vladimir Steshin >Priority: Minor > > To reduce number of cluster deactivation methods in internal API we might: > {code:java} > 1.Remove > GridClientClusterState#active() > 2.Remove > GridClientClusterState#active(boolean active) > 3.Remove > IGridClusterStateProcessor#changeGlobalState( > boolean activate, > Collection baselineNodes, > boolean forceChangeBaselineTopology > ) > 4.Remove > GridClusterStateProcessor#changeGlobalState( > final boolean activate, > Collection baselineNodes, > boolean forceChangeBaselineTopology, > boolean isAutoAdjust > ) > 5.Remove > GridClusterStateProcessor#changeGlobalState( > final boolean activate, > Collection baselineNodes, > boolean forceChangeBaselineTopology > ) > 6.Remove > GridClusterStateProcessor#changeGlobalState( > ClusterState state, > Collection baselineNodes, > boolean forceChangeBaselineTopology > ) > 7.Add boolean isAutoAdjust to > IGridClusterStateProcessor#changeGlobalState( > ClusterState state, > Collection baselineNodes, > boolean forceChangeBaselineTopology, >/* here */ boolean isAutoAdjust /* here */ > ) > 8.Add @Override to > /* here */ @Override /* here */ >
[jira] [Updated] (IGNITE-12773) Reduce number of cluster deactivation methods in internal API.
[ https://issues.apache.org/jira/browse/IGNITE-12773?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Vladimir Steshin updated IGNITE-12773: -- Description: To reduce number of cluster deactivation methods in internal API we might: {code:java} 1. Remove GridClientClusterState#active() 2. Remove GridClientClusterState#active(boolean active) 3. Remove IGridClusterStateProcessor#changeGlobalState( boolean activate, Collection baselineNodes, boolean forceChangeBaselineTopology ) 4. Remove GridClusterStateProcessor#changeGlobalState( final boolean activate, Collection baselineNodes, boolean forceChangeBaselineTopology, boolean isAutoAdjust ) 5. Remove GridClusterStateProcessor#changeGlobalState( final boolean activate, Collection baselineNodes, boolean forceChangeBaselineTopology ) 6. Remove GridClusterStateProcessor#changeGlobalState( ClusterState state, Collection baselineNodes, boolean forceChangeBaselineTopology ) 7. Add boolean isAutoAdjust to IGridClusterStateProcessor#changeGlobalState( ClusterState state, Collection baselineNodes, boolean forceChangeBaselineTopology, /* here */ boolean isAutoAdjust /* here */ ) 8. Add @Override to /* here */ @Override /* here */ IGridClusterStateProcessor#changeGlobalState( ClusterState state, Collection baselineNodes, boolean forceChangeBaselineTopology, boolean isAutoAdjust ) 9. Remove, combine with #8: private IgniteInternalFuture changeGlobalState0( ClusterState state, BaselineTopology blt, boolean forceChangeBaselineTopology, boolean isAutoAdjust ) {code} was: To reduce number of cluster deactivation methods in internal API we might: {code:java} 1. Remove GridClientClusterState#active() 2. Remove GridClientClusterState#active(boolean active) 3. Remove IGridClusterStateProcessor#changeGlobalState( boolean activate, Collection baselineNodes, boolean forceChangeBaselineTopology ) 4. Remove GridClusterStateProcessor#changeGlobalState( final boolean activate, Collection baselineNodes, boolean forceChangeBaselineTopology, boolean isAutoAdjust ) 5. Remove GridClusterStateProcessor#changeGlobalState( final boolean activate, Collection baselineNodes, boolean forceChangeBaselineTopology ) 6. Remove GridClusterStateProcessor#changeGlobalState( ClusterState state, Collection baselineNodes, boolean forceChangeBaselineTopology ) 7. Add boolean isAutoAdjust to IGridClusterStateProcessor#changeGlobalState( ClusterState state, Collection baselineNodes, boolean forceChangeBaselineTopology, /* here */ boolean isAutoAdjust /* here */ ) 8. Add @Override to /* here */ @Override /* here */ IGridClusterStateProcessor#changeGlobalState( ClusterState state, boolean forceDeactivation, Collection baselineNodes, boolean forceChangeBaselineTopology, boolean isAutoAdjust ) 9. Remove, combine with #8: private IgniteInternalFuture changeGlobalState0( ClusterState state, BaselineTopology blt, boolean forceChangeBaselineTopology, boolean isAutoAdjust ) {code} > Reduce number of cluster deactivation methods in internal API. > -- > > Key: IGNITE-12773 > URL: https://issues.apache.org/jira/browse/IGNITE-12773 > Project: Ignite > Issue Type: Improvement >Reporter: Vladimir Steshin >Assignee: Vladimir Steshin >Priority: Minor > > To reduce number of cluster deactivation methods in internal API we might: > {code:java} > 1.Remove > GridClientClusterState#active() > 2.Remove > GridClientClusterState#active(boolean active) > 3.Remove > IGridClusterStateProcessor#changeGlobalState( > boolean activate, > Collection baselineNodes, > boolean forceChangeBaselineTopology > ) > 4.Remove > GridClusterStateProcessor#changeGlobalState( > final boolean activate, > Collection baselineNodes, > boolean forceChangeBaselineTopology, > boolean isAutoAdjust > ) > 5.Remove > GridClusterStateProcessor#changeGlobalState( > final boolean activate, > Collection baselineNodes, > boolean forceChangeBaselineTopology > ) > 6.Remove > GridClusterStateProcessor#changeGlobalState( > ClusterState state, > Collection baselineNodes, > boolean forceChangeBaselineTopology > ) > 7.Add boolean isAutoAdjust to > IGridClusterStateProcessor#changeGlobalState( > ClusterState state, > Collection baselineNodes, > boolean forceChangeBaselineTopology, >/* here */ boolean isAutoAdjust /* here */ > ) > 8.Add @Override to > /* here */
[jira] [Updated] (IGNITE-12773) Reduce number of cluster deactivation methods in internal API.
[ https://issues.apache.org/jira/browse/IGNITE-12773?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Vladimir Steshin updated IGNITE-12773: -- Description: To reduce number of cluster deactivation methods in internal API we might: {code:java} 1. Remove GridClientClusterState#active() 2. Remove GridClientClusterState#active(boolean active) 3. Remove IGridClusterStateProcessor#changeGlobalState( boolean activate, Collection baselineNodes, boolean forceChangeBaselineTopology ) 4. Remove GridClusterStateProcessor#changeGlobalState( final boolean activate, Collection baselineNodes, boolean forceChangeBaselineTopology, boolean isAutoAdjust ) 5. Remove GridClusterStateProcessor#changeGlobalState( final boolean activate, Collection baselineNodes, boolean forceChangeBaselineTopology ) 6. Remove GridClusterStateProcessor#changeGlobalState( ClusterState state, Collection baselineNodes, boolean forceChangeBaselineTopology ) 7. Add boolean isAutoAdjust to IGridClusterStateProcessor#changeGlobalState( ClusterState state, Collection baselineNodes, boolean forceChangeBaselineTopology, /* here */ boolean isAutoAdjust /* here */ ) 8. Add @Override to /* here */ @Override /* here */ IGridClusterStateProcessor#changeGlobalState( ClusterState state, boolean forceDeactivation, Collection baselineNodes, boolean forceChangeBaselineTopology, boolean isAutoAdjust ) 9. Remove, combine with #8: private IgniteInternalFuture changeGlobalState0( ClusterState state, BaselineTopology blt, boolean forceChangeBaselineTopology, boolean isAutoAdjust ) {code} was: To reduce number of cluster deactivation methods in internal API we might: {code:java} 1. Remove GridClientClusterState#active() 2. Remove GridClientClusterState#active(boolean active) 3. Remove IGridClusterStateProcessor#changeGlobalState( boolean activate, Collection baselineNodes, boolean forceChangeBaselineTopology ) 4. Remove GridClusterStateProcessor#changeGlobalState( final boolean activate, Collection baselineNodes, boolean forceChangeBaselineTopology, boolean isAutoAdjust ) 5. Remove GridClusterStateProcessor#changeGlobalState( final boolean activate, Collection baselineNodes, boolean forceChangeBaselineTopology ) 6. Remove GridClusterStateProcessor#changeGlobalState( ClusterState state, Collection baselineNodes, boolean forceChangeBaselineTopology ) 7. Add boolean isAutoAdjust to IGridClusterStateProcessor#changeGlobalState( ClusterState state, Collection baselineNodes, boolean forceChangeBaselineTopology, /* here */ boolean isAutoAdjust /* here */ ) 8. Add @Override to /* here */ @Override /* here */ IGridClusterStateProcessor#changeGlobalState( ClusterState state, boolean forceDeactivation, Collection baselineNodes, boolean forceChangeBaselineTopology, boolean isAutoAdjust ) 9. Remove, combine with #8: private IgniteInternalFuture changeGlobalState0( ClusterState state, boolean forceDeactivation, BaselineTopology blt, boolean forceChangeBaselineTopology, boolean isAutoAdjust ) {code} > Reduce number of cluster deactivation methods in internal API. > -- > > Key: IGNITE-12773 > URL: https://issues.apache.org/jira/browse/IGNITE-12773 > Project: Ignite > Issue Type: Improvement >Reporter: Vladimir Steshin >Assignee: Vladimir Steshin >Priority: Minor > > To reduce number of cluster deactivation methods in internal API we might: > {code:java} > 1.Remove > GridClientClusterState#active() > 2.Remove > GridClientClusterState#active(boolean active) > 3.Remove > IGridClusterStateProcessor#changeGlobalState( > boolean activate, > Collection baselineNodes, > boolean forceChangeBaselineTopology > ) > 4.Remove > GridClusterStateProcessor#changeGlobalState( > final boolean activate, > Collection baselineNodes, > boolean forceChangeBaselineTopology, > boolean isAutoAdjust > ) > 5.Remove > GridClusterStateProcessor#changeGlobalState( > final boolean activate, > Collection baselineNodes, > boolean forceChangeBaselineTopology > ) > 6.Remove > GridClusterStateProcessor#changeGlobalState( > ClusterState state, > Collection baselineNodes, > boolean forceChangeBaselineTopology > ) > 7.Add boolean isAutoAdjust to > IGridClusterStateProcessor#changeGlobalState( > ClusterState state, > Collection baselineNodes, > boolean forceChangeBaselineTopology, >/* here */ boolean
[jira] [Updated] (IGNITE-12773) Reduce number of cluster deactivation methods in internal API.
[ https://issues.apache.org/jira/browse/IGNITE-12773?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Vladimir Steshin updated IGNITE-12773: -- Description: To reduce number of cluster deactivation methods in internal API we might: {code:java} 1. Remove GridClientClusterState#active() 2. Remove GridClientClusterState#active(boolean active) 3. Remove IGridClusterStateProcessor#changeGlobalState( boolean activate, Collection baselineNodes, boolean forceChangeBaselineTopology ) 4. Remove GridClusterStateProcessor#changeGlobalState( final boolean activate, Collection baselineNodes, boolean forceChangeBaselineTopology, boolean isAutoAdjust ) 5. Remove GridClusterStateProcessor#changeGlobalState( final boolean activate, Collection baselineNodes, boolean forceChangeBaselineTopology ) 6. Remove GridClusterStateProcessor#changeGlobalState( ClusterState state, Collection baselineNodes, boolean forceChangeBaselineTopology ) 7. Add boolean isAutoAdjust to IGridClusterStateProcessor#changeGlobalState( ClusterState state, Collection baselineNodes, boolean forceChangeBaselineTopology, /* here */ boolean isAutoAdjust /* here */ ) 8. Add @Override to /* here */ @Override /* here */ IGridClusterStateProcessor#changeGlobalState( ClusterState state, boolean forceDeactivation, Collection baselineNodes, boolean forceChangeBaselineTopology, boolean isAutoAdjust ) 9. Remove, combine with #8: private IgniteInternalFuture changeGlobalState0( ClusterState state, boolean forceDeactivation, BaselineTopology blt, boolean forceChangeBaselineTopology, boolean isAutoAdjust ) {code} was: To reduce number of cluster deactivation methods in internal API we might: {code:java} 1. Remove GridClientClusterState#active() 2. Remove GridClientClusterState#active(boolean active) 3. Remove IGridClusterStateProcessor#changeGlobalState( boolean activate, Collection baselineNodes, boolean forceChangeBaselineTopology ) 4. Remove GridClusterStateProcessor#changeGlobalState( final boolean activate, Collection baselineNodes, boolean forceChangeBaselineTopology, boolean isAutoAdjust ) 5. Remove GridClusterStateProcessor#changeGlobalState( final boolean activate, Collection baselineNodes, boolean forceChangeBaselineTopology ) 6. Remove GridClusterStateProcessor#changeGlobalState( ClusterState state, Collection baselineNodes, boolean forceChangeBaselineTopology ) 7. Add boolean isAutoAdjust to IGridClusterStateProcessor#changeGlobalState( ClusterState state, Collection baselineNodes, boolean forceChangeBaselineTopology, /* here */ boolean isAutoAdjust /* here */ ) 8. Add @Override to /* here */ @Override /* here */ GridClusterStateProcessor#changeGlobalState( ClusterState state, Collection baselineNodes, boolean forceChangeBaselineTopology ) 9. Remove private IgniteInternalFuture changeGlobalState0( ClusterState state, boolean forceDeactivation, BaselineTopology blt, boolean forceChangeBaselineTopology, boolean isAutoAdjust ) {code} > Reduce number of cluster deactivation methods in internal API. > -- > > Key: IGNITE-12773 > URL: https://issues.apache.org/jira/browse/IGNITE-12773 > Project: Ignite > Issue Type: Improvement >Reporter: Vladimir Steshin >Assignee: Vladimir Steshin >Priority: Minor > > To reduce number of cluster deactivation methods in internal API we might: > {code:java} > 1.Remove > GridClientClusterState#active() > 2.Remove > GridClientClusterState#active(boolean active) > 3.Remove > IGridClusterStateProcessor#changeGlobalState( > boolean activate, > Collection baselineNodes, > boolean forceChangeBaselineTopology > ) > 4.Remove > GridClusterStateProcessor#changeGlobalState( > final boolean activate, > Collection baselineNodes, > boolean forceChangeBaselineTopology, > boolean isAutoAdjust > ) > 5.Remove > GridClusterStateProcessor#changeGlobalState( > final boolean activate, > Collection baselineNodes, > boolean forceChangeBaselineTopology > ) > 6.Remove > GridClusterStateProcessor#changeGlobalState( > ClusterState state, > Collection baselineNodes, > boolean forceChangeBaselineTopology > ) > 7.Add boolean isAutoAdjust to > IGridClusterStateProcessor#changeGlobalState( > ClusterState state, > Collection baselineNodes, > boolean forceChangeBaselineTopology, >/* here */ boolean isAutoAdjust /* here */ > ) > 8.Add @Override to > /* here
[jira] [Updated] (IGNITE-12773) Reduce number of cluster deactivation methods in internal API.
[ https://issues.apache.org/jira/browse/IGNITE-12773?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Vladimir Steshin updated IGNITE-12773: -- Description: To reduce number of cluster deactivation methods in internal API we might: {code:java} 1. Remove GridClientClusterState#active() 2. Remove GridClientClusterState#active(boolean active) 3. Remove IGridClusterStateProcessor#changeGlobalState( boolean activate, Collection baselineNodes, boolean forceChangeBaselineTopology ) 4. Remove GridClusterStateProcessor#changeGlobalState( final boolean activate, Collection baselineNodes, boolean forceChangeBaselineTopology, boolean isAutoAdjust ) 5. Remove GridClusterStateProcessor#changeGlobalState( final boolean activate, Collection baselineNodes, boolean forceChangeBaselineTopology ) 6. Remove GridClusterStateProcessor#changeGlobalState( ClusterState state, Collection baselineNodes, boolean forceChangeBaselineTopology ) 7. Add boolean isAutoAdjust to IGridClusterStateProcessor#changeGlobalState( ClusterState state, Collection baselineNodes, boolean forceChangeBaselineTopology, /* here */ boolean isAutoAdjust /* here */ ) 8. Add @Override to /* here */ @Override /* here */ GridClusterStateProcessor#changeGlobalState( ClusterState state, Collection baselineNodes, boolean forceChangeBaselineTopology ) 9. Remove private IgniteInternalFuture changeGlobalState0( ClusterState state, boolean forceDeactivation, BaselineTopology blt, boolean forceChangeBaselineTopology, boolean isAutoAdjust ) {code} was: To reduce number of cluster deactivation methods in internal API we might: {code:java} 1. Remove GridClientClusterState#active() 2. Remove GridClientClusterState#active(boolean active) 3. Remove IGridClusterStateProcessor#changeGlobalState( boolean activate, Collection baselineNodes, boolean forceChangeBaselineTopology ) 4. Remove GridClusterStateProcessor#changeGlobalState( final boolean activate, Collection baselineNodes, boolean forceChangeBaselineTopology, boolean isAutoAdjust ) 5. Remove GridClusterStateProcessor#changeGlobalState( final boolean activate, Collection baselineNodes, boolean forceChangeBaselineTopology ) 6. Remove GridClusterStateProcessor#changeGlobalState( ClusterState state, Collection baselineNodes, boolean forceChangeBaselineTopology ) 7. Add boolean isAutoAdjust to IGridClusterStateProcessor#changeGlobalState( ClusterState state, Collection baselineNodes, boolean forceChangeBaselineTopology, /* here */ boolean isAutoAdjust /* here */ ) 8. Add @Override to /* here */ @Override /* here */ GridClusterStateProcessor#changeGlobalState( ClusterState state, Collection baselineNodes, boolean forceChangeBaselineTopology ) 9. Remove private IgniteInternalFuture changeGlobalState0( ClusterState state, boolean forceDeactivation, BaselineTopology blt, boolean forceChangeBaselineTopology, boolean isAutoAdjust ) {code} > Reduce number of cluster deactivation methods in internal API. > -- > > Key: IGNITE-12773 > URL: https://issues.apache.org/jira/browse/IGNITE-12773 > Project: Ignite > Issue Type: Improvement >Reporter: Vladimir Steshin >Assignee: Vladimir Steshin >Priority: Minor > > To reduce number of cluster deactivation methods in internal API we might: > {code:java} > 1.Remove > GridClientClusterState#active() > 2.Remove > GridClientClusterState#active(boolean active) > 3.Remove > IGridClusterStateProcessor#changeGlobalState( > boolean activate, > Collection baselineNodes, > boolean forceChangeBaselineTopology > ) > 4.Remove > GridClusterStateProcessor#changeGlobalState( > final boolean activate, > Collection baselineNodes, > boolean forceChangeBaselineTopology, > boolean isAutoAdjust > ) > 5.Remove > GridClusterStateProcessor#changeGlobalState( > final boolean activate, > Collection baselineNodes, > boolean forceChangeBaselineTopology > ) > 6.Remove > GridClusterStateProcessor#changeGlobalState( > ClusterState state, > Collection baselineNodes, > boolean forceChangeBaselineTopology > ) > 7.Add boolean isAutoAdjust to > IGridClusterStateProcessor#changeGlobalState( > ClusterState state, > Collection baselineNodes, > boolean forceChangeBaselineTopology, >/* here */ boolean isAutoAdjust /* here */ > ) > 8.Add @Override to > /* here */ @Override /* here */ > GridClusterStateProcessor#changeGlobalState( > ClusterState state, >
[jira] [Updated] (IGNITE-12773) Reduce number of cluster deactivation methods in internal API.
[ https://issues.apache.org/jira/browse/IGNITE-12773?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Vladimir Steshin updated IGNITE-12773: -- Description: To reduce number of cluster deactivation methods in internal API we might: {code:java} 1. Remove GridClientClusterState#active() 2. Remove GridClientClusterState#active(boolean active) 3. Remove IGridClusterStateProcessor#changeGlobalState( boolean activate, Collection baselineNodes, boolean forceChangeBaselineTopology ) 4. Remove GridClusterStateProcessor#changeGlobalState( final boolean activate, Collection baselineNodes, boolean forceChangeBaselineTopology, boolean isAutoAdjust ) 5. Remove GridClusterStateProcessor#changeGlobalState( final boolean activate, Collection baselineNodes, boolean forceChangeBaselineTopology ) 6. Remove GridClusterStateProcessor#changeGlobalState( ClusterState state, Collection baselineNodes, boolean forceChangeBaselineTopology ) 7. Add boolean isAutoAdjust to IGridClusterStateProcessor#changeGlobalState( ClusterState state, Collection baselineNodes, boolean forceChangeBaselineTopology, /* here */ boolean isAutoAdjust /* here */ ) 8. Add @Override to /* here */ @Override /* here */ GridClusterStateProcessor#changeGlobalState( ClusterState state, Collection baselineNodes, boolean forceChangeBaselineTopology ) 9. Remove private IgniteInternalFuture changeGlobalState0( ClusterState state, boolean forceDeactivation, BaselineTopology blt, boolean forceChangeBaselineTopology, boolean isAutoAdjust ) {code} was: To reduce number of cluster deactivation methods in internal API we might: {code:java} 1. Remove GridClientClusterState#active() 2. Remove GridClientClusterState#active(boolean active) 3. Remove IGridClusterStateProcessor#changeGlobalState( boolean activate, Collection baselineNodes, boolean forceChangeBaselineTopology ) 4. Remove GridClusterStateProcessor#changeGlobalState( final boolean activate, Collection baselineNodes, boolean forceChangeBaselineTopology, boolean isAutoAdjust ) 5. Remove GridClusterStateProcessor#changeGlobalState( final boolean activate, Collection baselineNodes, boolean forceChangeBaselineTopology ) 6. Remove GridClusterStateProcessor#changeGlobalState( ClusterState state, Collection baselineNodes, boolean forceChangeBaselineTopology ) 7. Add boolean isAutoAdjust to IGridClusterStateProcessor#changeGlobalState( ClusterState state, Collection baselineNodes, boolean forceChangeBaselineTopology, /* here */ boolean isAutoAdjust /* here */ ) 8. Add @Override to /* here */ @Override /* here */ GridClusterStateProcessor#changeGlobalState( ClusterState state, Collection baselineNodes, boolean forceChangeBaselineTopology ) {code} > Reduce number of cluster deactivation methods in internal API. > -- > > Key: IGNITE-12773 > URL: https://issues.apache.org/jira/browse/IGNITE-12773 > Project: Ignite > Issue Type: Improvement >Reporter: Vladimir Steshin >Assignee: Vladimir Steshin >Priority: Minor > > To reduce number of cluster deactivation methods in internal API we might: > {code:java} > 1.Remove > GridClientClusterState#active() > 2.Remove > GridClientClusterState#active(boolean active) > 3.Remove > IGridClusterStateProcessor#changeGlobalState( > boolean activate, > Collection baselineNodes, > boolean forceChangeBaselineTopology > ) > 4.Remove > GridClusterStateProcessor#changeGlobalState( > final boolean activate, > Collection baselineNodes, > boolean forceChangeBaselineTopology, > boolean isAutoAdjust > ) > 5.Remove > GridClusterStateProcessor#changeGlobalState( > final boolean activate, > Collection baselineNodes, > boolean forceChangeBaselineTopology > ) > 6.Remove > GridClusterStateProcessor#changeGlobalState( > ClusterState state, > Collection baselineNodes, > boolean forceChangeBaselineTopology > ) > 7.Add boolean isAutoAdjust to > IGridClusterStateProcessor#changeGlobalState( > ClusterState state, > Collection baselineNodes, > boolean forceChangeBaselineTopology, >/* here */ boolean isAutoAdjust /* here */ > ) > 8.Add @Override to > /* here */ @Override /* here */ > GridClusterStateProcessor#changeGlobalState( > ClusterState state, > Collection baselineNodes, > boolean forceChangeBaselineTopology > ) > 9. Remove > private IgniteInternalFuture changeGlobalState0( > ClusterState state, > boolean forceDeactivation, > BaselineTopology
[jira] [Updated] (IGNITE-12773) Reduce number of cluster deactivation methods in internal API.
[ https://issues.apache.org/jira/browse/IGNITE-12773?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Vladimir Steshin updated IGNITE-12773: -- Description: To reduce number of cluster deactivation methods in internal API we might: {code:java} 1. Remove GridClientClusterState#active() 2. Remove GridClientClusterState#active(boolean active) 3. Remove IGridClusterStateProcessor#changeGlobalState( boolean activate, Collection baselineNodes, boolean forceChangeBaselineTopology ) 4. Remove GridClusterStateProcessor#changeGlobalState( final boolean activate, Collection baselineNodes, boolean forceChangeBaselineTopology, boolean isAutoAdjust ) 5. Remove GridClusterStateProcessor#changeGlobalState( final boolean activate, Collection baselineNodes, boolean forceChangeBaselineTopology ) 6. Remove GridClusterStateProcessor#changeGlobalState( ClusterState state, Collection baselineNodes, boolean forceChangeBaselineTopology ) 7. Add boolean isAutoAdjust to IGridClusterStateProcessor#changeGlobalState( ClusterState state, Collection baselineNodes, boolean forceChangeBaselineTopology, /* here */ boolean isAutoAdjust /* here */ ) 8. Add @Override to /* here */ @Override /* here */ GridClusterStateProcessor#changeGlobalState( ClusterState state, Collection baselineNodes, boolean forceChangeBaselineTopology ) {code} was: To reduce number of cluster deactivation methods in internal API we might: {code:java} 1. Remove GridClientClusterState#active() 2. Remove GridClientClusterState#active(boolean active) 3. Remove IGridClusterStateProcessor#changeGlobalState( boolean activate, Collection baselineNodes, boolean forceChangeBaselineTopology ) 4. Remove GridClusterStateProcessor#changeGlobalState( final boolean activate, Collection baselineNodes, boolean forceChangeBaselineTopology, boolean isAutoAdjust ) 5. Remove GridClusterStateProcessor#changeGlobalState( final boolean activate, Collection baselineNodes, boolean forceChangeBaselineTopology ) 6. Remove GridClusterStateProcessor#changeGlobalState( ClusterState state, boolean forceDeactivation, Collection baselineNodes, boolean forceChangeBaselineTopology ) 7. Add boolean isAutoAdjust to IGridClusterStateProcessor#changeGlobalState( ClusterState state, boolean forceDeactivation, Collection baselineNodes, boolean forceChangeBaselineTopology, /* here */ boolean isAutoAdjust /* here */ ) 8. Add @Override to /* here */ @Override /* here */ GridClusterStateProcessor#changeGlobalState( ClusterState state, boolean forceDeactivation, Collection baselineNodes, boolean forceChangeBaselineTopology ) {code} > Reduce number of cluster deactivation methods in internal API. > -- > > Key: IGNITE-12773 > URL: https://issues.apache.org/jira/browse/IGNITE-12773 > Project: Ignite > Issue Type: Improvement >Reporter: Vladimir Steshin >Assignee: Vladimir Steshin >Priority: Minor > > To reduce number of cluster deactivation methods in internal API we might: > {code:java} > 1.Remove > GridClientClusterState#active() > 2.Remove > GridClientClusterState#active(boolean active) > 3.Remove > IGridClusterStateProcessor#changeGlobalState( > boolean activate, > Collection baselineNodes, > boolean forceChangeBaselineTopology > ) > 4.Remove > GridClusterStateProcessor#changeGlobalState( > final boolean activate, > Collection baselineNodes, > boolean forceChangeBaselineTopology, > boolean isAutoAdjust > ) > 5.Remove > GridClusterStateProcessor#changeGlobalState( > final boolean activate, > Collection baselineNodes, > boolean forceChangeBaselineTopology > ) > 6.Remove > GridClusterStateProcessor#changeGlobalState( > ClusterState state, > Collection baselineNodes, > boolean forceChangeBaselineTopology > ) > 7.Add boolean isAutoAdjust to > IGridClusterStateProcessor#changeGlobalState( > ClusterState state, > Collection baselineNodes, > boolean forceChangeBaselineTopology, >/* here */ boolean isAutoAdjust /* here */ > ) > 8.Add @Override to > /* here */ @Override /* here */ > GridClusterStateProcessor#changeGlobalState( > ClusterState state, > Collection baselineNodes, > boolean forceChangeBaselineTopology > ) > {code} -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Updated] (IGNITE-12773) Reduce number of cluster deactivation methods in internal API.
[ https://issues.apache.org/jira/browse/IGNITE-12773?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Vladimir Steshin updated IGNITE-12773: -- Description: To reduce number of cluster deactivation methods in internal API we might: {code:java} 1. Remove GridClientClusterState#active() 2. Remove GridClientClusterState#active(boolean active) 3. Remove IGridClusterStateProcessor#changeGlobalState( boolean activate, Collection baselineNodes, boolean forceChangeBaselineTopology ) 4. Remove GridClusterStateProcessor#changeGlobalState( final boolean activate, Collection baselineNodes, boolean forceChangeBaselineTopology, boolean isAutoAdjust ) 5. Remove GridClusterStateProcessor#changeGlobalState( final boolean activate, Collection baselineNodes, boolean forceChangeBaselineTopology ) 6. Remove GridClusterStateProcessor#changeGlobalState( ClusterState state, boolean forceDeactivation, Collection baselineNodes, boolean forceChangeBaselineTopology ) 7. Add boolean isAutoAdjust to IGridClusterStateProcessor#changeGlobalState( ClusterState state, boolean forceDeactivation, Collection baselineNodes, boolean forceChangeBaselineTopology, /* here */ boolean isAutoAdjust /* here */ ) 8. Add @Override to /* here */ @Override /* here */ GridClusterStateProcessor#changeGlobalState( ClusterState state, boolean forceDeactivation, Collection baselineNodes, boolean forceChangeBaselineTopology ) {code} was: To reduce number of cluster deactivation methods in internal API we might: 1. Remove GridClientClusterState#active() 2. Remove GridClientClusterState#active(boolean active) 3. Remove IGridClusterStateProcessor#changeGlobalState( boolean activate, Collection baselineNodes, boolean forceChangeBaselineTopology ) 4. Remove GridClusterStateProcessor#changeGlobalState( final boolean activate, Collection baselineNodes, boolean forceChangeBaselineTopology, boolean isAutoAdjust ) 5. Remove GridClusterStateProcessor#changeGlobalState( final boolean activate, Collection baselineNodes, boolean forceChangeBaselineTopology ) 6. Remove GridClusterStateProcessor#changeGlobalState( ClusterState state, boolean forceDeactivation, Collection baselineNodes, boolean forceChangeBaselineTopology ) 7. Add boolean isAutoAdjust to IGridClusterStateProcessor#changeGlobalState( ClusterState state, boolean forceDeactivation, Collection baselineNodes, boolean forceChangeBaselineTopology, /* here */ boolean isAutoAdjust /* here */ ) 8. Add @Override to /* here */ @Override /* here */ GridClusterStateProcessor#changeGlobalState( ClusterState state, boolean forceDeactivation, Collection baselineNodes, boolean forceChangeBaselineTopology ) > Reduce number of cluster deactivation methods in internal API. > -- > > Key: IGNITE-12773 > URL: https://issues.apache.org/jira/browse/IGNITE-12773 > Project: Ignite > Issue Type: Improvement >Reporter: Vladimir Steshin >Assignee: Vladimir Steshin >Priority: Minor > > To reduce number of cluster deactivation methods in internal API we might: > {code:java} > 1.Remove > GridClientClusterState#active() > 2.Remove > GridClientClusterState#active(boolean active) > 3.Remove > IGridClusterStateProcessor#changeGlobalState( > boolean activate, > Collection baselineNodes, > boolean forceChangeBaselineTopology > ) > 4.Remove > GridClusterStateProcessor#changeGlobalState( > final boolean activate, > Collection baselineNodes, > boolean forceChangeBaselineTopology, > boolean isAutoAdjust > ) > 5.Remove > GridClusterStateProcessor#changeGlobalState( > final boolean activate, > Collection baselineNodes, > boolean forceChangeBaselineTopology > ) > 6.Remove > GridClusterStateProcessor#changeGlobalState( > ClusterState state, > boolean forceDeactivation, > Collection baselineNodes, > boolean forceChangeBaselineTopology > ) > 7.Add boolean isAutoAdjust to > IGridClusterStateProcessor#changeGlobalState( > ClusterState state, > boolean forceDeactivation, > Collection baselineNodes, > boolean forceChangeBaselineTopology, >/* here */ boolean isAutoAdjust /* here */ > ) > 8.Add @Override to > /* here */ @Override /* here */ > GridClusterStateProcessor#changeGlobalState( > ClusterState state, > boolean forceDeactivation, > Collection baselineNodes, > boolean forceChangeBaselineTopology > ) > {code} -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (IGNITE-12773) Reduce number of cluster deactivation methods in internal API.
Vladimir Steshin created IGNITE-12773: - Summary: Reduce number of cluster deactivation methods in internal API. Key: IGNITE-12773 URL: https://issues.apache.org/jira/browse/IGNITE-12773 Project: Ignite Issue Type: Improvement Reporter: Vladimir Steshin Assignee: Vladimir Steshin To reduce number of cluster deactivation methods in internal API we might: 1. Remove GridClientClusterState#active() 2. Remove GridClientClusterState#active(boolean active) 3. Remove IGridClusterStateProcessor#changeGlobalState( boolean activate, Collection baselineNodes, boolean forceChangeBaselineTopology ) 4. Remove GridClusterStateProcessor#changeGlobalState( final boolean activate, Collection baselineNodes, boolean forceChangeBaselineTopology, boolean isAutoAdjust ) 5. Remove GridClusterStateProcessor#changeGlobalState( final boolean activate, Collection baselineNodes, boolean forceChangeBaselineTopology ) 6. Remove GridClusterStateProcessor#changeGlobalState( ClusterState state, boolean forceDeactivation, Collection baselineNodes, boolean forceChangeBaselineTopology ) 7. Add boolean isAutoAdjust to IGridClusterStateProcessor#changeGlobalState( ClusterState state, boolean forceDeactivation, Collection baselineNodes, boolean forceChangeBaselineTopology, /* here */ boolean isAutoAdjust /* here */ ) 8. Add @Override to /* here */ @Override /* here */ GridClusterStateProcessor#changeGlobalState( ClusterState state, boolean forceDeactivation, Collection baselineNodes, boolean forceChangeBaselineTopology ) -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (IGNITE-12772) JmxMetricExporterSpi uses log method which must not be used in production code
Andrey N. Gura created IGNITE-12772: --- Summary: JmxMetricExporterSpi uses log method which must not be used in production code Key: IGNITE-12772 URL: https://issues.apache.org/jira/browse/IGNITE-12772 Project: Ignite Issue Type: Bug Reporter: Andrey N. Gura Fix For: 2.8.1 {{JmxMetricExporterSpi.register()}} method uses {{IgniteUtils.debug()}} method that log on {{INFO}} level instead of {{DEBUG}} because it needs only for debug purposes. Should be replaced by explicit {{log.debug()}} invocation. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Commented] (IGNITE-12771) Java Doc: Marshaller: behavior of "marshal" method if null parameter passed
[ https://issues.apache.org/jira/browse/IGNITE-12771?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17057140#comment-17057140 ] Andrey Mashenkov commented on IGNITE-12771: --- [~rkondakov], merged to master. > Java Doc: Marshaller: behavior of "marshal" method if null parameter passed > --- > > Key: IGNITE-12771 > URL: https://issues.apache.org/jira/browse/IGNITE-12771 > Project: Ignite > Issue Type: Bug >Reporter: Roman Kondakov >Priority: Trivial > Fix For: 2.9 > > Time Spent: 20m > Remaining Estimate: 0h > > After fix for GG-19786 java docs looks like this: > {code:java} > marshal > void marshal(@Nullable > @Nullable Object obj, > OutputStream out) > throws IgniteCheckedException > Marshals object to the output stream. This method should not close given > output stream. Note: null obj will be marshaled to binary null representation. > Parameters: > obj - Object to marshal. > out - Output stream to marshal into. > Throws: > IgniteCheckedException - If marshalling failed. > marshal > byte[] marshal(@Nullable >@Nullable Object obj) > throws IgniteCheckedException > Marshals object to byte array. Note: null obj will be marshaled to binary > null representation. > Parameters: > obj - Object to marshal. > Returns: > Byte array. > Throws: > IgniteCheckedException - If marshalling failed. > unmarshal > T unmarshal(InputStream in, > @Nullable > @Nullable ClassLoader clsLdr) > throws IgniteCheckedException > Unmarshals object from the input stream using given class loader. This method > should not close given input stream. > Type Parameters: > T - Type of unmarshalled object. > Parameters: > in - Input stream. > clsLdr - Class loader to use. > Returns: > Unmarshalled object. > Throws: > IgniteCheckedException - If unmarshalling failed. > unmarshal > T unmarshal(byte[] arr, > @Nullable > @Nullable ClassLoader clsLdr) > throws IgniteCheckedException > Unmarshals object from byte array using given class loader. > Type Parameters: > T - Type of unmarshalled object. > Parameters: > arr - Byte array. > clsLdr - Class loader to use. > Returns: > Unmarshalled object. > Throws: > IgniteCheckedException - If unmarshalling failed. > {code} > 1. Doubles for @Nullable > 2. question what's the point of allowing null value? is not addressed. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Commented] (IGNITE-12701) Disallow silent deactivation in CLI and REST.
[ https://issues.apache.org/jira/browse/IGNITE-12701?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17057139#comment-17057139 ] Nikolay Izhikov commented on IGNITE-12701: -- LGTM > Disallow silent deactivation in CLI and REST. > - > > Key: IGNITE-12701 > URL: https://issues.apache.org/jira/browse/IGNITE-12701 > Project: Ignite > Issue Type: Sub-task >Affects Versions: 2.7.6 >Reporter: Vladimir Steshin >Assignee: Vladimir Steshin >Priority: Major > Fix For: 2.9 > > Time Spent: 6h 20m > Remaining Estimate: 0h > > Disallow silent deactivation through the CLI and REST. > Skip JMX call > {code:java} > void IgniteMXBean#active(boolean active) > {code} -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Commented] (IGNITE-12771) Java Doc: Marshaller: behavior of "marshal" method if null parameter passed
[ https://issues.apache.org/jira/browse/IGNITE-12771?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17057137#comment-17057137 ] Roman Kondakov commented on IGNITE-12771: - It looks like the javadoc suite is OK on [TC|https://ci.ignite.apache.org/project/IgniteTests24Java8?branch=pull%2F7512%2Fhead=overview=builds#all-projects]. > Java Doc: Marshaller: behavior of "marshal" method if null parameter passed > --- > > Key: IGNITE-12771 > URL: https://issues.apache.org/jira/browse/IGNITE-12771 > Project: Ignite > Issue Type: Bug >Reporter: Roman Kondakov >Priority: Trivial > Time Spent: 10m > Remaining Estimate: 0h > > After fix for GG-19786 java docs looks like this: > {code:java} > marshal > void marshal(@Nullable > @Nullable Object obj, > OutputStream out) > throws IgniteCheckedException > Marshals object to the output stream. This method should not close given > output stream. Note: null obj will be marshaled to binary null representation. > Parameters: > obj - Object to marshal. > out - Output stream to marshal into. > Throws: > IgniteCheckedException - If marshalling failed. > marshal > byte[] marshal(@Nullable >@Nullable Object obj) > throws IgniteCheckedException > Marshals object to byte array. Note: null obj will be marshaled to binary > null representation. > Parameters: > obj - Object to marshal. > Returns: > Byte array. > Throws: > IgniteCheckedException - If marshalling failed. > unmarshal > T unmarshal(InputStream in, > @Nullable > @Nullable ClassLoader clsLdr) > throws IgniteCheckedException > Unmarshals object from the input stream using given class loader. This method > should not close given input stream. > Type Parameters: > T - Type of unmarshalled object. > Parameters: > in - Input stream. > clsLdr - Class loader to use. > Returns: > Unmarshalled object. > Throws: > IgniteCheckedException - If unmarshalling failed. > unmarshal > T unmarshal(byte[] arr, > @Nullable > @Nullable ClassLoader clsLdr) > throws IgniteCheckedException > Unmarshals object from byte array using given class loader. > Type Parameters: > T - Type of unmarshalled object. > Parameters: > arr - Byte array. > clsLdr - Class loader to use. > Returns: > Unmarshalled object. > Throws: > IgniteCheckedException - If unmarshalling failed. > {code} > 1. Doubles for @Nullable > 2. question what's the point of allowing null value? is not addressed. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Commented] (IGNITE-12771) Java Doc: Marshaller: behavior of "marshal" method if null parameter passed
[ https://issues.apache.org/jira/browse/IGNITE-12771?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17057103#comment-17057103 ] Roman Kondakov commented on IGNITE-12771: - [~amashenkov], please take a look. This is a minor javadoc patch. > Java Doc: Marshaller: behavior of "marshal" method if null parameter passed > --- > > Key: IGNITE-12771 > URL: https://issues.apache.org/jira/browse/IGNITE-12771 > Project: Ignite > Issue Type: Bug >Reporter: Roman Kondakov >Priority: Trivial > Time Spent: 10m > Remaining Estimate: 0h > > After fix for GG-19786 java docs looks like this: > {code:java} > marshal > void marshal(@Nullable > @Nullable Object obj, > OutputStream out) > throws IgniteCheckedException > Marshals object to the output stream. This method should not close given > output stream. Note: null obj will be marshaled to binary null representation. > Parameters: > obj - Object to marshal. > out - Output stream to marshal into. > Throws: > IgniteCheckedException - If marshalling failed. > marshal > byte[] marshal(@Nullable >@Nullable Object obj) > throws IgniteCheckedException > Marshals object to byte array. Note: null obj will be marshaled to binary > null representation. > Parameters: > obj - Object to marshal. > Returns: > Byte array. > Throws: > IgniteCheckedException - If marshalling failed. > unmarshal > T unmarshal(InputStream in, > @Nullable > @Nullable ClassLoader clsLdr) > throws IgniteCheckedException > Unmarshals object from the input stream using given class loader. This method > should not close given input stream. > Type Parameters: > T - Type of unmarshalled object. > Parameters: > in - Input stream. > clsLdr - Class loader to use. > Returns: > Unmarshalled object. > Throws: > IgniteCheckedException - If unmarshalling failed. > unmarshal > T unmarshal(byte[] arr, > @Nullable > @Nullable ClassLoader clsLdr) > throws IgniteCheckedException > Unmarshals object from byte array using given class loader. > Type Parameters: > T - Type of unmarshalled object. > Parameters: > arr - Byte array. > clsLdr - Class loader to use. > Returns: > Unmarshalled object. > Throws: > IgniteCheckedException - If unmarshalling failed. > {code} > 1. Doubles for @Nullable > 2. question what's the point of allowing null value? is not addressed. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (IGNITE-12771) Java Doc: Marshaller: behavior of "marshal" method if null parameter passed
Roman Kondakov created IGNITE-12771: --- Summary: Java Doc: Marshaller: behavior of "marshal" method if null parameter passed Key: IGNITE-12771 URL: https://issues.apache.org/jira/browse/IGNITE-12771 Project: Ignite Issue Type: Bug Reporter: Roman Kondakov After fix for GG-19786 java docs looks like this: {code:java} marshal void marshal(@Nullable @Nullable Object obj, OutputStream out) throws IgniteCheckedException Marshals object to the output stream. This method should not close given output stream. Note: null obj will be marshaled to binary null representation. Parameters: obj - Object to marshal. out - Output stream to marshal into. Throws: IgniteCheckedException - If marshalling failed. marshal byte[] marshal(@Nullable @Nullable Object obj) throws IgniteCheckedException Marshals object to byte array. Note: null obj will be marshaled to binary null representation. Parameters: obj - Object to marshal. Returns: Byte array. Throws: IgniteCheckedException - If marshalling failed. unmarshal T unmarshal(InputStream in, @Nullable @Nullable ClassLoader clsLdr) throws IgniteCheckedException Unmarshals object from the input stream using given class loader. This method should not close given input stream. Type Parameters: T - Type of unmarshalled object. Parameters: in - Input stream. clsLdr - Class loader to use. Returns: Unmarshalled object. Throws: IgniteCheckedException - If unmarshalling failed. unmarshal T unmarshal(byte[] arr, @Nullable @Nullable ClassLoader clsLdr) throws IgniteCheckedException Unmarshals object from byte array using given class loader. Type Parameters: T - Type of unmarshalled object. Parameters: arr - Byte array. clsLdr - Class loader to use. Returns: Unmarshalled object. Throws: IgniteCheckedException - If unmarshalling failed. {code} 1. Doubles for @Nullable 2. question what's the point of allowing null value? is not addressed. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Updated] (IGNITE-12759) Getting a SecurityContext from GridSecurityProcessor
[ https://issues.apache.org/jira/browse/IGNITE-12759?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Denis Garus updated IGNITE-12759: - Affects Version/s: (was: 2.8) > Getting a SecurityContext from GridSecurityProcessor > > > Key: IGNITE-12759 > URL: https://issues.apache.org/jira/browse/IGNITE-12759 > Project: Ignite > Issue Type: Improvement > Components: security >Reporter: Denis Garus >Assignee: Denis Garus >Priority: Major > Labels: iep-41 > > Extend the _GridSecurityProcessor_ interface by adding _securityContext(UUID > subjId)_ method and use this method to get the actual security context. > h4. Backward compatibility > The logic of getting security context for Ignite: > # Get a security context through _GridSecurityProcessor_; > # If _GridSecurityProcessor_ returned null, try to get a security context > using _ClusterNode_ attributes (as it works now). -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Commented] (IGNITE-12746) Regression in GridCacheColocatedDebugTest: putAll of sorted keys causes deadlock
[ https://issues.apache.org/jira/browse/IGNITE-12746?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17057019#comment-17057019 ] Ilya Kasnacheev commented on IGNITE-12746: -- [~irakov] Unfortunately I do not have expertise to review this change. I think we should ask [~agoncharuk]. What is the scope of this problem? > Regression in GridCacheColocatedDebugTest: putAll of sorted keys causes > deadlock > > > Key: IGNITE-12746 > URL: https://issues.apache.org/jira/browse/IGNITE-12746 > Project: Ignite > Issue Type: Bug > Components: cache >Reporter: Ilya Kasnacheev >Assignee: Ivan Rakov >Priority: Blocker > Fix For: 2.8.1 > > Time Spent: 10m > Remaining Estimate: 0h > > After this commit: > 7d4bb49264b IGNITE-12329 Invalid handling of remote entries causes partition > desync and transaction hanging in COMMITTING state. > the following tests: > org.apache.ignite.internal.processors.cache.distributed.dht.GridCacheColocatedDebugTest#testPutsMultithreadedColocated > org.apache.ignite.internal.processors.cache.distributed.dht.GridCacheColocatedDebugTest#testPutsMultithreadedMixed > started to be flaky because their ordered putAll operations started > deadlocking. > This is a regression compared to 2.7 and should be fixed, since it may affect > production clusters. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Updated] (IGNITE-12752) Pass thin clients SSL certificates to security
[ https://issues.apache.org/jira/browse/IGNITE-12752?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Ilya Kasnacheev updated IGNITE-12752: - Issue Type: New Feature (was: Bug) > Pass thin clients SSL certificates to security > -- > > Key: IGNITE-12752 > URL: https://issues.apache.org/jira/browse/IGNITE-12752 > Project: Ignite > Issue Type: New Feature > Components: security >Reporter: Ilya Kasnacheev >Assignee: Ilya Kasnacheev >Priority: Major > Time Spent: 10m > Remaining Estimate: 0h > > Add SSL certificates to AuthenticationContext, so, authenticators can make > additional checks based on SSL certificates. > Please note that this is *Phase I* which only concerns all flavors of thin > clients, but not server/client nodes! It includes JDBC, old and new flavor of > Ignite thin client, control.sh and REST. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Assigned] (IGNITE-12752) Pass thin clients SSL certificates to security
[ https://issues.apache.org/jira/browse/IGNITE-12752?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Ilya Kasnacheev reassigned IGNITE-12752: Assignee: Ilya Kasnacheev > Pass thin clients SSL certificates to security > -- > > Key: IGNITE-12752 > URL: https://issues.apache.org/jira/browse/IGNITE-12752 > Project: Ignite > Issue Type: Bug > Components: security >Reporter: Ilya Kasnacheev >Assignee: Ilya Kasnacheev >Priority: Major > Time Spent: 10m > Remaining Estimate: 0h > > Add SSL certificates to AuthenticationContext, so, authenticators can make > additional checks based on SSL certificates. > Please note that this is *Phase I* which only concerns all flavors of thin > clients, but not server/client nodes! It includes JDBC, old and new flavor of > Ignite thin client, control.sh and REST. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Commented] (IGNITE-12740) Supports feature flags on index meta page
[ https://issues.apache.org/jira/browse/IGNITE-12740?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17056978#comment-17056978 ] Ignite TC Bot commented on IGNITE-12740: {panel:title=Branch: [pull/7493/head] Base: [master] : No blockers found!|borderStyle=dashed|borderColor=#ccc|titleBGColor=#D6F7C1}{panel} [TeamCity *-- Run :: All* Results|https://ci.ignite.apache.org/viewLog.html?buildId=5105064buildTypeId=IgniteTests24Java8_RunAll] > Supports feature flags on index meta page > - > > Key: IGNITE-12740 > URL: https://issues.apache.org/jira/browse/IGNITE-12740 > Project: Ignite > Issue Type: Task > Components: sql >Reporter: Taras Ledkov >Assignee: Taras Ledkov >Priority: Major > Fix For: 2.9 > > Time Spent: 10m > Remaining Estimate: 0h > > Some changes on indexing e.g. inl;ine java objects, unwrap PK columns and > several planned features (change inline pojo format, inline DECIMAL fields > etc) break backward compatibility. > We have to add metadata about index layout and format to index tree meta-page. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Resolved] (IGNITE-10945) Document Baseline auto-adjust feature
[ https://issues.apache.org/jira/browse/IGNITE-10945?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Artem Budnikov resolved IGNITE-10945. - Resolution: Fixed > Document Baseline auto-adjust feature > - > > Key: IGNITE-10945 > URL: https://issues.apache.org/jira/browse/IGNITE-10945 > Project: Ignite > Issue Type: Task > Components: documentation >Reporter: Ivan Bessonov >Assignee: Artem Budnikov >Priority: Critical > Labels: IEP-4, Phase-2 > Fix For: 2.8 > > > From IGNITE-8571: > Now we have only one way to change BLAT - manually update it via console.sh > or API. > We need to add the possibility to change it automatically. Adjust to current > topology. > So, I propose 3 new parameters which would be responsible to tune this > feature. > 1. Flag autoAdjustEnabled - true/false. Easy. Manual baseline control or > auto adjusting baseline. > 2. autoAdjustTimeout - time which we would wait after the actual topology > change. But it would be reset if new discovery event happened. (node > join/exit). > 3. autoAdjustMaxTimeout - time which we would wait from the first dicovery > event in the chain. If we achieved it than we would change BLAT right away > (no matter were another node join/exit happened or not). > We need to change API next way: > 1. org.apache.ignite.IgniteCluster > *Add* > isBaselineAutoAdjustEnabled() > setBaselineAutoAdjustEnabled(boolean enabled); > setBaselineAutoAdjustTimeout(long timeoutInMs); > setBaselineAutoAdjustMaxTimeout(long timeoutInMs); > 2. org.apache.ignite.configuration.IgniteConfiguration > *Add* > IgniteConfiguration setBaselineAutoAdjustEnabled(boolean enabled); > IgniteConfiguration setBaselineAutoAdjustTimeout(long timeoutInMs); > IgniteConfiguration setBaselineAutoAdjustMaxTimeout(long timeoutInMs); > Also, we need to ensure that all nodes would have the same parameters. > And we should be able to survive coordinator left during parameters changes. > - > For IGNITE-8575: > Proposed API format for control.sh: > {{--baseline autoadjust disable}} > {{--baseline autoadjust enable }} -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Commented] (IGNITE-10945) Document Baseline auto-adjust feature
[ https://issues.apache.org/jira/browse/IGNITE-10945?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17056946#comment-17056946 ] Artem Budnikov commented on IGNITE-10945: - Added https://apacheignite.readme.io/v2.8.0/docs/baseline-topology#section-baseline-topology-autoadjustment > Document Baseline auto-adjust feature > - > > Key: IGNITE-10945 > URL: https://issues.apache.org/jira/browse/IGNITE-10945 > Project: Ignite > Issue Type: Task > Components: documentation >Reporter: Ivan Bessonov >Assignee: Artem Budnikov >Priority: Critical > Labels: IEP-4, Phase-2 > Fix For: 2.8 > > > From IGNITE-8571: > Now we have only one way to change BLAT - manually update it via console.sh > or API. > We need to add the possibility to change it automatically. Adjust to current > topology. > So, I propose 3 new parameters which would be responsible to tune this > feature. > 1. Flag autoAdjustEnabled - true/false. Easy. Manual baseline control or > auto adjusting baseline. > 2. autoAdjustTimeout - time which we would wait after the actual topology > change. But it would be reset if new discovery event happened. (node > join/exit). > 3. autoAdjustMaxTimeout - time which we would wait from the first dicovery > event in the chain. If we achieved it than we would change BLAT right away > (no matter were another node join/exit happened or not). > We need to change API next way: > 1. org.apache.ignite.IgniteCluster > *Add* > isBaselineAutoAdjustEnabled() > setBaselineAutoAdjustEnabled(boolean enabled); > setBaselineAutoAdjustTimeout(long timeoutInMs); > setBaselineAutoAdjustMaxTimeout(long timeoutInMs); > 2. org.apache.ignite.configuration.IgniteConfiguration > *Add* > IgniteConfiguration setBaselineAutoAdjustEnabled(boolean enabled); > IgniteConfiguration setBaselineAutoAdjustTimeout(long timeoutInMs); > IgniteConfiguration setBaselineAutoAdjustMaxTimeout(long timeoutInMs); > Also, we need to ensure that all nodes would have the same parameters. > And we should be able to survive coordinator left during parameters changes. > - > For IGNITE-8575: > Proposed API format for control.sh: > {{--baseline autoadjust disable}} > {{--baseline autoadjust enable }} -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Commented] (IGNITE-12770) Add multiple hash index support.
[ https://issues.apache.org/jira/browse/IGNITE-12770?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17056906#comment-17056906 ] Ivan Pavlukhin commented on IGNITE-12770: - [~arsen], could you please provide more details in a ticket description? What hash indexes are assumed? What are benefits of supporting multiple of them? > Add multiple hash index support. > > > Key: IGNITE-12770 > URL: https://issues.apache.org/jira/browse/IGNITE-12770 > Project: Ignite > Issue Type: Wish >Reporter: Arsen Manucharyan >Priority: Major > -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Resolved] (IGNITE-11370) Doc: remove SqlQuery documentation
[ https://issues.apache.org/jira/browse/IGNITE-11370?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Artem Budnikov resolved IGNITE-11370. - Resolution: Fixed > Doc: remove SqlQuery documentation > -- > > Key: IGNITE-11370 > URL: https://issues.apache.org/jira/browse/IGNITE-11370 > Project: Ignite > Issue Type: Task > Components: documentation >Affects Versions: 2.7 >Reporter: Taras Ledkov >Assignee: Artem Budnikov >Priority: Major > Fix For: 2.8 > > > Need to remove all mentions about {{SqlQuery}} from the whole documentation, > as it is deprecated for now. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Updated] (IGNITE-12759) Getting a SecurityContext from GridSecurityProcessor
[ https://issues.apache.org/jira/browse/IGNITE-12759?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Denis Garus updated IGNITE-12759: - Description: Extend the _GridSecurityProcessor_ interface by adding _securityContext(UUID subjId)_ method and use this method to get the actual security context. h4. Backward compatibility The logic of getting security context for Ignite: # Get a security context through _GridSecurityProcessor_; # If _GridSecurityProcessor_ returned null, try to get a security context using _ClusterNode_ attributes (as it works now). was: Extend the _GridSecurityProcessor_ interface by adding _securityContext(UUID subjId)_ method and use this method to get the actual security context. h4. Backward compatibility The logic of getting security context for Ignite: # Get a security context through _GridSecurityProcessor_; # If _GridSecurityProcessor_ returned null, try to get a security context using _ClusterNode_ attributes (as it works now); # If _ClusterNode_ attributes contain no security context, return _the unknown security context_. > Getting a SecurityContext from GridSecurityProcessor > > > Key: IGNITE-12759 > URL: https://issues.apache.org/jira/browse/IGNITE-12759 > Project: Ignite > Issue Type: Improvement > Components: security >Affects Versions: 2.8 >Reporter: Denis Garus >Assignee: Denis Garus >Priority: Major > Labels: iep-41 > > Extend the _GridSecurityProcessor_ interface by adding _securityContext(UUID > subjId)_ method and use this method to get the actual security context. > h4. Backward compatibility > The logic of getting security context for Ignite: > # Get a security context through _GridSecurityProcessor_; > # If _GridSecurityProcessor_ returned null, try to get a security context > using _ClusterNode_ attributes (as it works now). -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Updated] (IGNITE-12759) Getting a SecurityContext from GridSecurityProcessor
[ https://issues.apache.org/jira/browse/IGNITE-12759?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Denis Garus updated IGNITE-12759: - Description: Extend the _GridSecurityProcessor_ interface by adding _securityContext(UUID subjId)_ method and use this method to get the actual security context. h4. Backward compatibility The logic of getting security context for Ignite: # Get a security context through _GridSecurityProcessor_; # If _GridSecurityProcessor_ returned null, try to get a security context using _ClusterNode_ attributes (as it works now); # If _ClusterNode_ attributes contain no security context, return _the unknown security context_. was:Extend the _GridSecurityProcessor_ interface by adding _securityContext(UUID subjId)_ method and use this method to get the actual security context. > Getting a SecurityContext from GridSecurityProcessor > > > Key: IGNITE-12759 > URL: https://issues.apache.org/jira/browse/IGNITE-12759 > Project: Ignite > Issue Type: Improvement > Components: security >Affects Versions: 2.8 >Reporter: Denis Garus >Assignee: Denis Garus >Priority: Major > Labels: iep-41 > > Extend the _GridSecurityProcessor_ interface by adding _securityContext(UUID > subjId)_ method and use this method to get the actual security context. > h4. Backward compatibility > The logic of getting security context for Ignite: > # Get a security context through _GridSecurityProcessor_; > # If _GridSecurityProcessor_ returned null, try to get a security context > using _ClusterNode_ attributes (as it works now); > # If _ClusterNode_ attributes contain no security context, return _the > unknown security context_. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (IGNITE-12770) Add multiple hash index support.
Arsen Manucharyan created IGNITE-12770: -- Summary: Add multiple hash index support. Key: IGNITE-12770 URL: https://issues.apache.org/jira/browse/IGNITE-12770 Project: Ignite Issue Type: Wish Reporter: Arsen Manucharyan -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Assigned] (IGNITE-8152) Forbid empty sql schema name
[ https://issues.apache.org/jira/browse/IGNITE-8152?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Alexey reassigned IGNITE-8152: -- Assignee: Alexey > Forbid empty sql schema name > > > Key: IGNITE-8152 > URL: https://issues.apache.org/jira/browse/IGNITE-8152 > Project: Ignite > Issue Type: Improvement > Components: sql >Reporter: Pavel Kuznetsov >Assignee: Alexey >Priority: Major > Labels: newbie > > Currently we allow empty schema name (quoted) in cache configuration > org.apache.ignite.configuration.CacheConfiguration#setSqlSchema : > {noformat} > When sqlSchema is not specified, quoted cacheName is used instead. > sqlSchema could not be an empty string. Has to be "\"\"" instead. > Params: > sqlSchema - Schema name for current cache according to SQL ANSI-99. Should > not be null. > {noformat} > Specifying schema \"\" results in empty string schema name. > No schema in sql query is treated as PUBLIC, but \"\" is regular schema name. > It's better to disallow usage of \"\" schema -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Commented] (IGNITE-8152) Forbid empty sql schema name
[ https://issues.apache.org/jira/browse/IGNITE-8152?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17056768#comment-17056768 ] Alexey commented on IGNITE-8152: I am ready to take the IGNITE-8152 ticket to work > Forbid empty sql schema name > > > Key: IGNITE-8152 > URL: https://issues.apache.org/jira/browse/IGNITE-8152 > Project: Ignite > Issue Type: Improvement > Components: sql >Reporter: Pavel Kuznetsov >Priority: Major > Labels: newbie > > Currently we allow empty schema name (quoted) in cache configuration > org.apache.ignite.configuration.CacheConfiguration#setSqlSchema : > {noformat} > When sqlSchema is not specified, quoted cacheName is used instead. > sqlSchema could not be an empty string. Has to be "\"\"" instead. > Params: > sqlSchema - Schema name for current cache according to SQL ANSI-99. Should > not be null. > {noformat} > Specifying schema \"\" results in empty string schema name. > No schema in sql query is treated as PUBLIC, but \"\" is regular schema name. > It's better to disallow usage of \"\" schema -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Comment Edited] (IGNITE-12766) Node startup can be broken in case of using Local cache with persistence enabled.
[ https://issues.apache.org/jira/browse/IGNITE-12766?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17056766#comment-17056766 ] Vyacheslav Koptilin edited comment on IGNITE-12766 at 3/11/20, 8:58 AM: Hi [~Pavlukhin], I think that a placeholder which delegates all method calls to a moved LocalAffinityFunction should work. I am going to try this approach. was (Author: slava.koptilin): Hi [~Pavlukhin], I think that a placeholder which delegates all method calls to a moved LocalAffinityFunction should work. I am going to try this approach. > Node startup can be broken in case of using Local cache with persistence > enabled. > - > > Key: IGNITE-12766 > URL: https://issues.apache.org/jira/browse/IGNITE-12766 > Project: Ignite > Issue Type: Bug >Reporter: Vyacheslav Koptilin >Assignee: Vyacheslav Koptilin >Priority: Major > Fix For: 2.9 > > > Trying to upgrade from the previous version of Apache Ignite (AI 2.7.6 for > example) may result in the following exception when Local cache is used and > persistence enabled. > {code} > [2020-03-05 16:47:39,222][ERROR][main][IgniteKernal] Exception during start > processors, node will be stopped and close connections[2020-03-05 > 16:47:39,222][ERROR][main][IgniteKernal] Exception during start processors, > node will be stopped and close connectionsclass > org.apache.ignite.IgniteCheckedException: An error occurred during cache > configuration loading from file [file=...] at > org.apache.ignite.internal.processors.cache.persistence.file.FilePageStoreManager.readCacheData(FilePageStoreManager.java:965) > at > org.apache.ignite.internal.processors.cache.persistence.file.FilePageStoreManager.readCacheConfigurations(FilePageStoreManager.java:907) > at > org.apache.ignite.internal.processors.cache.GridLocalConfigManager.restoreCaches(GridLocalConfigManager.java:171) > at > org.apache.ignite.internal.processors.cache.GridLocalConfigManager.restoreCacheConfigurations(GridLocalConfigManager.java:124) > at > org.apache.ignite.internal.processors.cache.GridCacheProcessor$CacheRecoveryLifecycle.onReadyForRead(GridCacheProcessor.java:5198) > at > org.apache.ignite.internal.processors.cache.persistence.GridCacheDatabaseSharedManager.notifyMetastorageReadyForRead(GridCacheDatabaseSharedManager.java:488) > at > org.apache.ignite.internal.processors.cache.persistence.GridCacheDatabaseSharedManager.readMetastore(GridCacheDatabaseSharedManager.java:824) > at > org.apache.ignite.internal.processors.cache.persistence.GridCacheDatabaseSharedManager.notifyMetaStorageSubscribersOnReadyForRead(GridCacheDatabaseSharedManager.java:5378) > at org.apache.ignite.internal.IgniteKernal.start(IgniteKernal.java:1286) at > org.apache.ignite.internal.IgnitionEx$IgniteNamedInstance.start0(IgnitionEx.java:2054) > at > org.apache.ignite.internal.IgnitionEx$IgniteNamedInstance.start(IgnitionEx.java:1704) > at org.apache.ignite.internal.IgnitionEx.start0(IgnitionEx.java:1117) at > org.apache.ignite.internal.IgnitionEx.startConfigurations(IgnitionEx.java:1035) > at org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:921) at > org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:820) at > org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:690) at > org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:659) at > org.apache.ignite.Ignition.start(Ignition.java:346) at > org.apache.ignite.examples.ExampleNodeStartup.main(ExampleNodeStartup.java:38)Caused > by: class org.apache.ignite.IgniteCheckedException: Failed to find class > with given class loader for unmarshalling (make sure same versions of all > classes are available on all nodes or enable peer-class-loading) > [clsLdr=sun.misc.Launcher$AppClassLoader@18b4aac2, > cls=org.apache.ignite.internal.processors.cache.GridCacheProcessor$LocalAffinityFunction] > at > org.apache.ignite.marshaller.jdk.JdkMarshaller.unmarshal0(JdkMarshaller.java:129) > at > org.apache.ignite.marshaller.AbstractNodeNameAwareMarshaller.unmarshal(AbstractNodeNameAwareMarshaller.java:93) > at > org.apache.ignite.internal.processors.cache.persistence.file.FilePageStoreManager.readCacheData(FilePageStoreManager.java:961) > ... 18 moreCaused by: java.lang.ClassNotFoundException: > org.apache.ignite.internal.processors.cache.GridCacheProcessor$LocalAffinityFunction > at java.net.URLClassLoader.findClass(URLClassLoader.java:381) at > java.lang.ClassLoader.loadClass(ClassLoader.java:424) at > sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:335) at > java.lang.ClassLoader.loadClass(ClassLoader.java:357) at > java.lang.Class.forName0(Native Method) at > java.lang.Class.forName(Class.java:348) at >
[jira] [Commented] (IGNITE-12766) Node startup can be broken in case of using Local cache with persistence enabled.
[ https://issues.apache.org/jira/browse/IGNITE-12766?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17056766#comment-17056766 ] Vyacheslav Koptilin commented on IGNITE-12766: -- Hi [~Pavlukhin], I think that a placeholder which delegates all method calls to a moved LocalAffinityFunction should work. I am going to try this approach. > Node startup can be broken in case of using Local cache with persistence > enabled. > - > > Key: IGNITE-12766 > URL: https://issues.apache.org/jira/browse/IGNITE-12766 > Project: Ignite > Issue Type: Bug >Reporter: Vyacheslav Koptilin >Assignee: Vyacheslav Koptilin >Priority: Major > Fix For: 2.9 > > > Trying to upgrade from the previous version of Apache Ignite (AI 2.7.6 for > example) may result in the following exception when Local cache is used and > persistence enabled. > {code} > [2020-03-05 16:47:39,222][ERROR][main][IgniteKernal] Exception during start > processors, node will be stopped and close connections[2020-03-05 > 16:47:39,222][ERROR][main][IgniteKernal] Exception during start processors, > node will be stopped and close connectionsclass > org.apache.ignite.IgniteCheckedException: An error occurred during cache > configuration loading from file [file=...] at > org.apache.ignite.internal.processors.cache.persistence.file.FilePageStoreManager.readCacheData(FilePageStoreManager.java:965) > at > org.apache.ignite.internal.processors.cache.persistence.file.FilePageStoreManager.readCacheConfigurations(FilePageStoreManager.java:907) > at > org.apache.ignite.internal.processors.cache.GridLocalConfigManager.restoreCaches(GridLocalConfigManager.java:171) > at > org.apache.ignite.internal.processors.cache.GridLocalConfigManager.restoreCacheConfigurations(GridLocalConfigManager.java:124) > at > org.apache.ignite.internal.processors.cache.GridCacheProcessor$CacheRecoveryLifecycle.onReadyForRead(GridCacheProcessor.java:5198) > at > org.apache.ignite.internal.processors.cache.persistence.GridCacheDatabaseSharedManager.notifyMetastorageReadyForRead(GridCacheDatabaseSharedManager.java:488) > at > org.apache.ignite.internal.processors.cache.persistence.GridCacheDatabaseSharedManager.readMetastore(GridCacheDatabaseSharedManager.java:824) > at > org.apache.ignite.internal.processors.cache.persistence.GridCacheDatabaseSharedManager.notifyMetaStorageSubscribersOnReadyForRead(GridCacheDatabaseSharedManager.java:5378) > at org.apache.ignite.internal.IgniteKernal.start(IgniteKernal.java:1286) at > org.apache.ignite.internal.IgnitionEx$IgniteNamedInstance.start0(IgnitionEx.java:2054) > at > org.apache.ignite.internal.IgnitionEx$IgniteNamedInstance.start(IgnitionEx.java:1704) > at org.apache.ignite.internal.IgnitionEx.start0(IgnitionEx.java:1117) at > org.apache.ignite.internal.IgnitionEx.startConfigurations(IgnitionEx.java:1035) > at org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:921) at > org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:820) at > org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:690) at > org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:659) at > org.apache.ignite.Ignition.start(Ignition.java:346) at > org.apache.ignite.examples.ExampleNodeStartup.main(ExampleNodeStartup.java:38)Caused > by: class org.apache.ignite.IgniteCheckedException: Failed to find class > with given class loader for unmarshalling (make sure same versions of all > classes are available on all nodes or enable peer-class-loading) > [clsLdr=sun.misc.Launcher$AppClassLoader@18b4aac2, > cls=org.apache.ignite.internal.processors.cache.GridCacheProcessor$LocalAffinityFunction] > at > org.apache.ignite.marshaller.jdk.JdkMarshaller.unmarshal0(JdkMarshaller.java:129) > at > org.apache.ignite.marshaller.AbstractNodeNameAwareMarshaller.unmarshal(AbstractNodeNameAwareMarshaller.java:93) > at > org.apache.ignite.internal.processors.cache.persistence.file.FilePageStoreManager.readCacheData(FilePageStoreManager.java:961) > ... 18 moreCaused by: java.lang.ClassNotFoundException: > org.apache.ignite.internal.processors.cache.GridCacheProcessor$LocalAffinityFunction > at java.net.URLClassLoader.findClass(URLClassLoader.java:381) at > java.lang.ClassLoader.loadClass(ClassLoader.java:424) at > sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:335) at > java.lang.ClassLoader.loadClass(ClassLoader.java:357) at > java.lang.Class.forName0(Native Method) at > java.lang.Class.forName(Class.java:348) at > org.apache.ignite.internal.util.IgniteUtils.forName(IgniteUtils.java:8870) at > org.apache.ignite.marshaller.jdk.JdkMarshallerObjectInputStream.resolveClass(JdkMarshallerObjectInputStream.java:59) > at
[jira] [Commented] (IGNITE-12766) Node startup can be broken in case of using Local cache with persistence enabled.
[ https://issues.apache.org/jira/browse/IGNITE-12766?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17056753#comment-17056753 ] Ivan Pavlukhin commented on IGNITE-12766: - [~slava.koptilin], do you have already an idea how the problem could be fixed? Will moving {{LocalAffinityFunction}} back just work? > Node startup can be broken in case of using Local cache with persistence > enabled. > - > > Key: IGNITE-12766 > URL: https://issues.apache.org/jira/browse/IGNITE-12766 > Project: Ignite > Issue Type: Bug >Reporter: Vyacheslav Koptilin >Assignee: Vyacheslav Koptilin >Priority: Major > Fix For: 2.9 > > > Trying to upgrade from the previous version of Apache Ignite (AI 2.7.6 for > example) may result in the following exception when Local cache is used and > persistence enabled. > {code} > [2020-03-05 16:47:39,222][ERROR][main][IgniteKernal] Exception during start > processors, node will be stopped and close connections[2020-03-05 > 16:47:39,222][ERROR][main][IgniteKernal] Exception during start processors, > node will be stopped and close connectionsclass > org.apache.ignite.IgniteCheckedException: An error occurred during cache > configuration loading from file [file=...] at > org.apache.ignite.internal.processors.cache.persistence.file.FilePageStoreManager.readCacheData(FilePageStoreManager.java:965) > at > org.apache.ignite.internal.processors.cache.persistence.file.FilePageStoreManager.readCacheConfigurations(FilePageStoreManager.java:907) > at > org.apache.ignite.internal.processors.cache.GridLocalConfigManager.restoreCaches(GridLocalConfigManager.java:171) > at > org.apache.ignite.internal.processors.cache.GridLocalConfigManager.restoreCacheConfigurations(GridLocalConfigManager.java:124) > at > org.apache.ignite.internal.processors.cache.GridCacheProcessor$CacheRecoveryLifecycle.onReadyForRead(GridCacheProcessor.java:5198) > at > org.apache.ignite.internal.processors.cache.persistence.GridCacheDatabaseSharedManager.notifyMetastorageReadyForRead(GridCacheDatabaseSharedManager.java:488) > at > org.apache.ignite.internal.processors.cache.persistence.GridCacheDatabaseSharedManager.readMetastore(GridCacheDatabaseSharedManager.java:824) > at > org.apache.ignite.internal.processors.cache.persistence.GridCacheDatabaseSharedManager.notifyMetaStorageSubscribersOnReadyForRead(GridCacheDatabaseSharedManager.java:5378) > at org.apache.ignite.internal.IgniteKernal.start(IgniteKernal.java:1286) at > org.apache.ignite.internal.IgnitionEx$IgniteNamedInstance.start0(IgnitionEx.java:2054) > at > org.apache.ignite.internal.IgnitionEx$IgniteNamedInstance.start(IgnitionEx.java:1704) > at org.apache.ignite.internal.IgnitionEx.start0(IgnitionEx.java:1117) at > org.apache.ignite.internal.IgnitionEx.startConfigurations(IgnitionEx.java:1035) > at org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:921) at > org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:820) at > org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:690) at > org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:659) at > org.apache.ignite.Ignition.start(Ignition.java:346) at > org.apache.ignite.examples.ExampleNodeStartup.main(ExampleNodeStartup.java:38)Caused > by: class org.apache.ignite.IgniteCheckedException: Failed to find class > with given class loader for unmarshalling (make sure same versions of all > classes are available on all nodes or enable peer-class-loading) > [clsLdr=sun.misc.Launcher$AppClassLoader@18b4aac2, > cls=org.apache.ignite.internal.processors.cache.GridCacheProcessor$LocalAffinityFunction] > at > org.apache.ignite.marshaller.jdk.JdkMarshaller.unmarshal0(JdkMarshaller.java:129) > at > org.apache.ignite.marshaller.AbstractNodeNameAwareMarshaller.unmarshal(AbstractNodeNameAwareMarshaller.java:93) > at > org.apache.ignite.internal.processors.cache.persistence.file.FilePageStoreManager.readCacheData(FilePageStoreManager.java:961) > ... 18 moreCaused by: java.lang.ClassNotFoundException: > org.apache.ignite.internal.processors.cache.GridCacheProcessor$LocalAffinityFunction > at java.net.URLClassLoader.findClass(URLClassLoader.java:381) at > java.lang.ClassLoader.loadClass(ClassLoader.java:424) at > sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:335) at > java.lang.ClassLoader.loadClass(ClassLoader.java:357) at > java.lang.Class.forName0(Native Method) at > java.lang.Class.forName(Class.java:348) at > org.apache.ignite.internal.util.IgniteUtils.forName(IgniteUtils.java:8870) at > org.apache.ignite.marshaller.jdk.JdkMarshallerObjectInputStream.resolveClass(JdkMarshallerObjectInputStream.java:59) > at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1826) > at
[jira] [Updated] (IGNITE-12749) Unsupported operation exception on node stop if collisionspi not null
[ https://issues.apache.org/jira/browse/IGNITE-12749?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Nikolay Izhikov updated IGNITE-12749: - Labels: newbie (was: ) > Unsupported operation exception on node stop if collisionspi not null > - > > Key: IGNITE-12749 > URL: https://issues.apache.org/jira/browse/IGNITE-12749 > Project: Ignite > Issue Type: Bug >Reporter: Nikolay Izhikov >Priority: Major > Labels: newbie > > If collision spi specified then on the node stop there are exception: > {noformat} > java.lang.UnsupportedOperationException > at > org.jsr166.ConcurrentLinkedHashMap.clear(ConcurrentLinkedHashMap.java:1542) > at > org.apache.ignite.internal.processors.job.GridJobProcessor.stop(GridJobProcessor.java:376) > at org.apache.ignite.internal.IgniteKernal.stop0(IgniteKernal.java:2697) > at org.apache.ignite.internal.IgniteKernal.stop(IgniteKernal.java:2569) > at > org.apache.ignite.internal.IgnitionEx$IgniteNamedInstance.stop0(IgnitionEx.java:2660) > at > org.apache.ignite.internal.IgnitionEx$IgniteNamedInstance.stop(IgnitionEx.java:2623) > at org.apache.ignite.internal.IgnitionEx.stop(IgnitionEx.java:339) > at org.apache.ignite.Ignition.stop(Ignition.java:223) > at > org.apache.ignite.testframework.junits.GridAbstractTest.stopGrid(GridAbstractTest.java:1316) > at > org.apache.ignite.testframework.junits.GridAbstractTest.stopAllGrids(GridAbstractTest.java:1361) > {noformat} > The issue in the next line: > {code:java} > public GridJobProcessor(GridKernalContext ctx) { > // Collision manager is already started and is fully functional. > jobAlwaysActivate = !ctx.collision().enabled(); > activeJobs = jobAlwaysActivate ? new ConcurrentHashMap GridJobWorker>() : > new JobsMap(1024, 0.75f, 256); > {code} > We need replace JobsMap with the correct implementation. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Updated] (IGNITE-12746) Regression in GridCacheColocatedDebugTest: putAll of sorted keys causes deadlock
[ https://issues.apache.org/jira/browse/IGNITE-12746?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Alexey Scherbakov updated IGNITE-12746: --- Reviewer: Alexey Scherbakov > Regression in GridCacheColocatedDebugTest: putAll of sorted keys causes > deadlock > > > Key: IGNITE-12746 > URL: https://issues.apache.org/jira/browse/IGNITE-12746 > Project: Ignite > Issue Type: Bug > Components: cache >Reporter: Ilya Kasnacheev >Assignee: Ivan Rakov >Priority: Blocker > Fix For: 2.8.1 > > Time Spent: 10m > Remaining Estimate: 0h > > After this commit: > 7d4bb49264b IGNITE-12329 Invalid handling of remote entries causes partition > desync and transaction hanging in COMMITTING state. > the following tests: > org.apache.ignite.internal.processors.cache.distributed.dht.GridCacheColocatedDebugTest#testPutsMultithreadedColocated > org.apache.ignite.internal.processors.cache.distributed.dht.GridCacheColocatedDebugTest#testPutsMultithreadedMixed > started to be flaky because their ordered putAll operations started > deadlocking. > This is a regression compared to 2.7 and should be fixed, since it may affect > production clusters. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Commented] (IGNITE-12746) Regression in GridCacheColocatedDebugTest: putAll of sorted keys causes deadlock
[ https://issues.apache.org/jira/browse/IGNITE-12746?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17056745#comment-17056745 ] Ivan Rakov commented on IGNITE-12746: - [~ilyak] [~ascherbakov] Folks, can you please take a look? > Regression in GridCacheColocatedDebugTest: putAll of sorted keys causes > deadlock > > > Key: IGNITE-12746 > URL: https://issues.apache.org/jira/browse/IGNITE-12746 > Project: Ignite > Issue Type: Bug > Components: cache >Reporter: Ilya Kasnacheev >Assignee: Ivan Rakov >Priority: Blocker > Fix For: 2.8.1 > > Time Spent: 10m > Remaining Estimate: 0h > > After this commit: > 7d4bb49264b IGNITE-12329 Invalid handling of remote entries causes partition > desync and transaction hanging in COMMITTING state. > the following tests: > org.apache.ignite.internal.processors.cache.distributed.dht.GridCacheColocatedDebugTest#testPutsMultithreadedColocated > org.apache.ignite.internal.processors.cache.distributed.dht.GridCacheColocatedDebugTest#testPutsMultithreadedMixed > started to be flaky because their ordered putAll operations started > deadlocking. > This is a regression compared to 2.7 and should be fixed, since it may affect > production clusters. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Commented] (IGNITE-12746) Regression in GridCacheColocatedDebugTest: putAll of sorted keys causes deadlock
[ https://issues.apache.org/jira/browse/IGNITE-12746?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17056744#comment-17056744 ] Ignite TC Bot commented on IGNITE-12746: {panel:title=Branch: [pull/7507/head] Base: [master] : No blockers found!|borderStyle=dashed|borderColor=#ccc|titleBGColor=#D6F7C1}{panel} [TeamCity *-- Run :: All* Results|https://ci.ignite.apache.org/viewLog.html?buildId=5115514buildTypeId=IgniteTests24Java8_RunAll] > Regression in GridCacheColocatedDebugTest: putAll of sorted keys causes > deadlock > > > Key: IGNITE-12746 > URL: https://issues.apache.org/jira/browse/IGNITE-12746 > Project: Ignite > Issue Type: Bug > Components: cache >Reporter: Ilya Kasnacheev >Assignee: Ivan Rakov >Priority: Blocker > Fix For: 2.8.1 > > Time Spent: 10m > Remaining Estimate: 0h > > After this commit: > 7d4bb49264b IGNITE-12329 Invalid handling of remote entries causes partition > desync and transaction hanging in COMMITTING state. > the following tests: > org.apache.ignite.internal.processors.cache.distributed.dht.GridCacheColocatedDebugTest#testPutsMultithreadedColocated > org.apache.ignite.internal.processors.cache.distributed.dht.GridCacheColocatedDebugTest#testPutsMultithreadedMixed > started to be flaky because their ordered putAll operations started > deadlocking. > This is a regression compared to 2.7 and should be fixed, since it may affect > production clusters. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Commented] (IGNITE-12753) Cache SSL contexts in SslContextFactory
[ https://issues.apache.org/jira/browse/IGNITE-12753?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17056733#comment-17056733 ] Denis Mekhanikov commented on IGNITE-12753: --- [~ilyak] the tests are green. Could you help with a merge? > Cache SSL contexts in SslContextFactory > --- > > Key: IGNITE-12753 > URL: https://issues.apache.org/jira/browse/IGNITE-12753 > Project: Ignite > Issue Type: Improvement >Reporter: Denis Mekhanikov >Assignee: Denis Mekhanikov >Priority: Major > Fix For: 2.9 > > Time Spent: 10m > Remaining Estimate: 0h > > When SSL is enabled in a cluster, SslContextFactory#createSslContext is > created every time when connections between nodes are created. It involves > accessing key storage on disk. It may slow down creation of new communication > connections and block striped pool threads if disks are slow. > SSL contexts are stateless and can be shared between threads, so it's safe to > create an SSL context once and use the same instance every time. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Commented] (IGNITE-12753) Cache SSL contexts in SslContextFactory
[ https://issues.apache.org/jira/browse/IGNITE-12753?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17056730#comment-17056730 ] Ignite TC Bot commented on IGNITE-12753: {panel:title=Branch: [pull/7497/head] Base: [master] : No blockers found!|borderStyle=dashed|borderColor=#ccc|titleBGColor=#D6F7C1}{panel} [TeamCity *-- Run :: All* Results|https://ci.ignite.apache.org/viewLog.html?buildId=5102616buildTypeId=IgniteTests24Java8_RunAll] > Cache SSL contexts in SslContextFactory > --- > > Key: IGNITE-12753 > URL: https://issues.apache.org/jira/browse/IGNITE-12753 > Project: Ignite > Issue Type: Improvement >Reporter: Denis Mekhanikov >Assignee: Denis Mekhanikov >Priority: Major > Fix For: 2.9 > > Time Spent: 10m > Remaining Estimate: 0h > > When SSL is enabled in a cluster, SslContextFactory#createSslContext is > created every time when connections between nodes are created. It involves > accessing key storage on disk. It may slow down creation of new communication > connections and block striped pool threads if disks are slow. > SSL contexts are stateless and can be shared between threads, so it's safe to > create an SSL context once and use the same instance every time. -- This message was sent by Atlassian Jira (v8.3.4#803005)