[jira] [Comment Edited] (IGNITE-6083) Null value have appear in the entry processor, but the entry is existing
[ https://issues.apache.org/jira/browse/IGNITE-6083?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16419072#comment-16419072 ] Alexey Kuznetsov edited comment on IGNITE-6083 at 3/29/18 2:27 PM: --- [~agoncharuk] Hi! I've fixed tests, here actual [TC run|https://ci.ignite.apache.org/viewLog.html?buildId=1162921=buildResultsDiv=IgniteTests24Java8_RunAll] There were some failed tests there, so i rerun them separately: CachePartitionStateTest#testPartitionState2_2_NoCacheOnCoordinator -> [succesfull after rerun|https://ci.ignite.apache.org/viewLog.html?buildId=1166077=buildResultsDiv=IgniteTests24Java8_Cache6] TcpDiscoverySslSelfTest.testNodeShutdownOnRingMessageWorkerStartNotFinished -> [succesfull after rerun|https://ci.ignite.apache.org/viewLog.html?buildId=1166078=buildResultsDiv=IgniteTests24Java8_IgniteSpi] ClientTcpSslMultiThreadedSelfTest.testMultithreadedTaskRun -> [succesfull after rerun|https://ci.ignite.apache.org/viewLog.html?buildId=1166079=buildResultsDiv=IgniteTests24Java8_IgniteJavaClient] IgniteClientReconnectFailoverTest.testReconnectStreamerApi -> [succesfull after rerun|https://ci.ignite.apache.org/viewLog.html?buildId=1166080=buildResultsDiv=IgniteTests24Java8_IgniteClientNodes] Other tests are flacky, even 'Ignite PDS Indexing' So, please, review the ticket [Github review|https://github.com/apache/ignite/pull/2975] or [Upsource review|https://reviews.ignite.apache.org/ignite/review/IGNT-CR-395] was (Author: alexey kuznetsov): [~agoncharuk] Hi! I've fixed tests, here actual [TC run|https://ci.ignite.apache.org/viewLog.html?buildId=1162921=buildResultsDiv=IgniteTests24Java8_RunAll] There were some failed tests there, so i rerun them separately: CachePartitionStateTest#testPartitionState2_2_NoCacheOnCoordinator -> [succesfull after rerun|https://ci.ignite.apache.org/viewLog.html?buildId=1166077=buildResultsDiv=IgniteTests24Java8_Cache6] TcpDiscoverySslSelfTest.testNodeShutdownOnRingMessageWorkerStartNotFinished -> [succesfull after rerun|https://ci.ignite.apache.org/viewLog.html?buildId=1166078=buildResultsDiv=IgniteTests24Java8_IgniteSpi] ClientTcpSslMultiThreadedSelfTest.testMultithreadedTaskRun -> [succesfull after rerun|https://ci.ignite.apache.org/viewLog.html?buildId=1166079=buildResultsDiv=IgniteTests24Java8_IgniteJavaClient] IgniteClientReconnectFailoverTest.testReconnectStreamerApi -> [succesfull after rerun|https://ci.ignite.apache.org/viewLog.html?buildId=1166080=buildResultsDiv=IgniteTests24Java8_IgniteClientNodes] Other tests are flacky, even 'Ignite PDS Indexing' So, please, review the ticket [PR|https://github.com/apache/ignite/pull/2975] > Null value have appear in the entry processor, but the entry is existing > > > Key: IGNITE-6083 > URL: https://issues.apache.org/jira/browse/IGNITE-6083 > Project: Ignite > Issue Type: Bug > Components: cache >Affects Versions: 2.1 >Reporter: Vladislav Pyatkov >Assignee: Alexey Kuznetsov >Priority: Major > Attachments: EntryProcessorInOptimisticTxTest.java > > > In one thread load some data in a cache, after that I have execute > OPTIMISTIC, SERIALIZABLE transaction with two {{IgniteCache.invoke()}} > methods. > The value had been corrected at first {{EntryProcessor}}, but it is NULL at > second. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Comment Edited] (IGNITE-6083) Null value have appear in the entry processor, but the entry is existing
[ https://issues.apache.org/jira/browse/IGNITE-6083?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16419072#comment-16419072 ] Alexey Kuznetsov edited comment on IGNITE-6083 at 3/29/18 2:26 PM: --- [~agoncharuk] Hi! I've fixed tests, here actual [TC run|https://ci.ignite.apache.org/viewLog.html?buildId=1162921=buildResultsDiv=IgniteTests24Java8_RunAll] There were some failed tests there, so i rerun them separately: CachePartitionStateTest#testPartitionState2_2_NoCacheOnCoordinator -> [succesfull after rerun|https://ci.ignite.apache.org/viewLog.html?buildId=1166077=buildResultsDiv=IgniteTests24Java8_Cache6] TcpDiscoverySslSelfTest.testNodeShutdownOnRingMessageWorkerStartNotFinished -> [succesfull after rerun|https://ci.ignite.apache.org/viewLog.html?buildId=1166078=buildResultsDiv=IgniteTests24Java8_IgniteSpi] ClientTcpSslMultiThreadedSelfTest.testMultithreadedTaskRun -> [succesfull after rerun|https://ci.ignite.apache.org/viewLog.html?buildId=1166079=buildResultsDiv=IgniteTests24Java8_IgniteJavaClient] IgniteClientReconnectFailoverTest.testReconnectStreamerApi -> [succesfull after rerun|https://ci.ignite.apache.org/viewLog.html?buildId=1166080=buildResultsDiv=IgniteTests24Java8_IgniteClientNodes] Other tests are flacky, even 'Ignite PDS Indexing' So, please, review the ticket [PR|https://github.com/apache/ignite/pull/2975] was (Author: alexey kuznetsov): [~agoncharuk] Hi! I've fixed tests, here actual [TC run|https://ci.ignite.apache.org/viewLog.html?buildId=1162921=buildResultsDiv=IgniteTests24Java8_RunAll] There are some failed tests there, so i rerun them separately: CachePartitionStateTest#testPartitionState2_2_NoCacheOnCoordinator -> [succesfull after rerun|https://ci.ignite.apache.org/viewLog.html?buildId=1166077=buildResultsDiv=IgniteTests24Java8_Cache6] TcpDiscoverySslSelfTest.testNodeShutdownOnRingMessageWorkerStartNotFinished -> [succesfull after rerun|https://ci.ignite.apache.org/viewLog.html?buildId=1166078=buildResultsDiv=IgniteTests24Java8_IgniteSpi] ClientTcpSslMultiThreadedSelfTest.testMultithreadedTaskRun -> [succesfull after rerun|https://ci.ignite.apache.org/viewLog.html?buildId=1166079=buildResultsDiv=IgniteTests24Java8_IgniteJavaClient] IgniteClientReconnectFailoverTest.testReconnectStreamerApi -> [succesfull after rerun|https://ci.ignite.apache.org/viewLog.html?buildId=1166080=buildResultsDiv=IgniteTests24Java8_IgniteClientNodes] Other tests are flacky, even 'Ignite PDS Indexing' So, please, review the ticket [PR|https://github.com/apache/ignite/pull/2975] > Null value have appear in the entry processor, but the entry is existing > > > Key: IGNITE-6083 > URL: https://issues.apache.org/jira/browse/IGNITE-6083 > Project: Ignite > Issue Type: Bug > Components: cache >Affects Versions: 2.1 >Reporter: Vladislav Pyatkov >Assignee: Alexey Kuznetsov >Priority: Major > Attachments: EntryProcessorInOptimisticTxTest.java > > > In one thread load some data in a cache, after that I have execute > OPTIMISTIC, SERIALIZABLE transaction with two {{IgniteCache.invoke()}} > methods. > The value had been corrected at first {{EntryProcessor}}, but it is NULL at > second. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Comment Edited] (IGNITE-6083) Null value have appear in the entry processor, but the entry is existing
[ https://issues.apache.org/jira/browse/IGNITE-6083?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16419072#comment-16419072 ] Alexey Kuznetsov edited comment on IGNITE-6083 at 3/29/18 2:20 PM: --- [~agoncharuk] Hi! I've fixed tests, here actual [TC run|https://ci.ignite.apache.org/viewLog.html?buildId=1162921=buildResultsDiv=IgniteTests24Java8_RunAll] There are some failed tests there, so i rerun them separately: CachePartitionStateTest#testPartitionState2_2_NoCacheOnCoordinator -> [succesfull after rerun|https://ci.ignite.apache.org/viewLog.html?buildId=1166077=buildResultsDiv=IgniteTests24Java8_Cache6] TcpDiscoverySslSelfTest.testNodeShutdownOnRingMessageWorkerStartNotFinished -> [succesfull after rerun|https://ci.ignite.apache.org/viewLog.html?buildId=1166078=buildResultsDiv=IgniteTests24Java8_IgniteSpi] ClientTcpSslMultiThreadedSelfTest.testMultithreadedTaskRun -> [succesfull after rerun|https://ci.ignite.apache.org/viewLog.html?buildId=1166079=buildResultsDiv=IgniteTests24Java8_IgniteJavaClient] IgniteClientReconnectFailoverTest.testReconnectStreamerApi -> [succesfull after rerun|https://ci.ignite.apache.org/viewLog.html?buildId=1166080=buildResultsDiv=IgniteTests24Java8_IgniteClientNodes] Other tests are flacky, even 'Ignite PDS Indexing' So, please, review the ticket [PR|https://github.com/apache/ignite/pull/2975] was (Author: alexey kuznetsov): [~agoncharuk] Hi! I've fixed tests, here actual [TC run|https://ci.ignite.apache.org/viewLog.html?buildId=1162921=buildResultsDiv=IgniteTests24Java8_RunAll] There are some failed tests there, so i rerun them separately: CachePartitionStateTest#testPartitionState2_2_NoCacheOnCoordinator -> [succesfull after rerun|https://ci.ignite.apache.org/viewLog.html?buildId=1166077=buildResultsDiv=IgniteTests24Java8_Cache6] TcpDiscoverySslSelfTest.testNodeShutdownOnRingMessageWorkerStartNotFinished -> [succesfull after rerun|https://ci.ignite.apache.org/viewLog.html?buildId=1166078=buildResultsDiv=IgniteTests24Java8_IgniteSpi] ClientTcpSslMultiThreadedSelfTest.testMultithreadedTaskRun -> [succesfull after rerun|https://ci.ignite.apache.org/viewLog.html?buildId=1166079=buildResultsDiv=IgniteTests24Java8_IgniteJavaClient] IgniteClientReconnectFailoverTest.testReconnectStreamerApi -> [succesfull after rerun|https://ci.ignite.apache.org/viewLog.html?buildId=1166080=buildResultsDiv=IgniteTests24Java8_IgniteClientNodes] Other tests are flacky, even 'Ignite PDS Indexing' So, please, review the ticket > Null value have appear in the entry processor, but the entry is existing > > > Key: IGNITE-6083 > URL: https://issues.apache.org/jira/browse/IGNITE-6083 > Project: Ignite > Issue Type: Bug > Components: cache >Affects Versions: 2.1 >Reporter: Vladislav Pyatkov >Assignee: Alexey Kuznetsov >Priority: Major > Attachments: EntryProcessorInOptimisticTxTest.java > > > In one thread load some data in a cache, after that I have execute > OPTIMISTIC, SERIALIZABLE transaction with two {{IgniteCache.invoke()}} > methods. > The value had been corrected at first {{EntryProcessor}}, but it is NULL at > second. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Comment Edited] (IGNITE-6083) Null value have appear in the entry processor, but the entry is existing
[ https://issues.apache.org/jira/browse/IGNITE-6083?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16383752#comment-16383752 ] Alexey Kuznetsov edited comment on IGNITE-6083 at 3/5/18 12:11 PM: --- [~agoncharuk] Hi! I've fixed test, checked failed tests in TC run and now its ok, plz review it : [new TC run|https://ci.ignite.apache.org/viewLog.html?buildId=1125362=buildResultsDiv=IgniteTests24Java8_RunAll] was (Author: alexey kuznetsov): [~agoncharuk] Hi! I've fixed test, checked failed tests in TC run and now its ok, plz review it : [new TC run|https://ci.ignite.apache.org/viewQueued.html?itemId=1118525=queuedBuildOverviewTab] > Null value have appear in the entry processor, but the entry is existing > > > Key: IGNITE-6083 > URL: https://issues.apache.org/jira/browse/IGNITE-6083 > Project: Ignite > Issue Type: Bug > Components: cache >Affects Versions: 2.1 >Reporter: Vladislav Pyatkov >Assignee: Alexey Kuznetsov >Priority: Major > Attachments: EntryProcessorInOptimisticTxTest.java > > > In one thread load some data in a cache, after that I have execute > OPTIMISTIC, SERIALIZABLE transaction with two {{IgniteCache.invoke()}} > methods. > The value had been corrected at first {{EntryProcessor}}, but it is NULL at > second. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Comment Edited] (IGNITE-6083) Null value have appear in the entry processor, but the entry is existing
[ https://issues.apache.org/jira/browse/IGNITE-6083?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16380284#comment-16380284 ] Alexey Goncharuk edited comment on IGNITE-6083 at 2/28/18 1:12 PM: --- [~Alexey Kuznetsov] Please note that IgnitePutAllLargeBatchSelfTest (Ignite Cache suite) and AtomicLongTest.TestMultithreaded (two .net suites) are consistently failing in your PR. Please take a look. https://ci.ignite.apache.org/viewType.html?buildTypeId=IgniteTests24Java8_IgniteCache_IgniteTests24Java8=pull%2F3546%2Fhead=buildTypeStatusDiv was (Author: agoncharuk): [~Alexey Kuznetsov] Please note that IgnitePutAllLargeBatchSelfTest (Ignite Cache 4 suite) and AtomicLongTest.TestMultithreaded (two .net suites) are consistently failing in your PR. Please take a look. > Null value have appear in the entry processor, but the entry is existing > > > Key: IGNITE-6083 > URL: https://issues.apache.org/jira/browse/IGNITE-6083 > Project: Ignite > Issue Type: Bug > Components: cache >Affects Versions: 2.1 >Reporter: Vladislav Pyatkov >Assignee: Alexey Kuznetsov >Priority: Major > Attachments: EntryProcessorInOptimisticTxTest.java > > > In one thread load some data in a cache, after that I have execute > OPTIMISTIC, SERIALIZABLE transaction with two {{IgniteCache.invoke()}} > methods. > The value had been corrected at first {{EntryProcessor}}, but it is NULL at > second. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Comment Edited] (IGNITE-6083) Null value have appear in the entry processor, but the entry is existing
[ https://issues.apache.org/jira/browse/IGNITE-6083?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16378680#comment-16378680 ] Alexey Kuznetsov edited comment on IGNITE-6083 at 2/27/18 5:27 PM: --- [~agoncharuk] Hi! In current master branch I came across odd behavior, consider the following scenario: T1: Start optimistic READ_COMMITTED tx, run cache.invoke(); // This cache invoke fetches the key from primary node and stores into tx entry. This Invoke doesn't change the value. T2: run cache.put();// which overwrites the original value; T1: run cache.read();// Here and futher old value will be returned, because of invoke() called above. commit(); In this scenario we have no Non-Repeatable Reads, which seems incorrect for READ_COMMITTED isolation mode. Do you agree ? If yes, I will file another new ticket, fixing it. Also, I run the test in PESSIMISTIC mode, it fails. Need more fixes was (Author: alexey kuznetsov): [~agoncharuk] Hi! In current master branch I came across odd behavior, consider the following scenario: T1: Start optimistic READ_COMMITTED tx, run cache.invoke(); // This cache invoke fetches the key from primary node and stores into tx entry. This Invoke doesn't change the value. T2: run cache.put();// which overwrites the original value; T1: run cache.read();// Here and futher old value will be returned, because of invoke() called above. commit(); In this scenario we have no Non-Repeatable Reads, which seems incorrect for READ_COMMITTED isolation mode. Do you agree ? If yes, I will file another new ticket, fixing it. > Null value have appear in the entry processor, but the entry is existing > > > Key: IGNITE-6083 > URL: https://issues.apache.org/jira/browse/IGNITE-6083 > Project: Ignite > Issue Type: Bug > Components: cache >Affects Versions: 2.1 >Reporter: Vladislav Pyatkov >Assignee: Alexey Kuznetsov >Priority: Major > Attachments: EntryProcessorInOptimisticTxTest.java > > > In one thread load some data in a cache, after that I have execute > OPTIMISTIC, SERIALIZABLE transaction with two {{IgniteCache.invoke()}} > methods. > The value had been corrected at first {{EntryProcessor}}, but it is NULL at > second. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Comment Edited] (IGNITE-6083) Null value have appear in the entry processor, but the entry is existing
[ https://issues.apache.org/jira/browse/IGNITE-6083?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16370147#comment-16370147 ] Alexey Kuznetsov edited comment on IGNITE-6083 at 2/20/18 3:41 PM: --- [~agoncharuk] when first entry processor is called in tx#enlistWriteEntry(), cache entry is pulled from cache by entry.innerGet(). So first entry processor observes non-null value [see source|https://github.com/voipp/ignite/blob/49cd833eed456917b4435fc12ffcce6a689d/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTxLocal.java#L1319]. This value _*would not be saved*_ in IgniteTxEntry. When entry processor is called a second time, it gets value from IgniteTxEntry#value , which is null, because we didn't set any value at first call [see source|https://github.com/apache/ignite/blob/master/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTxLocal.java#L1401] PS. It seems odd, that entry processor is called multiple times : before transaction commit and during prepare phase(after locks are aquired). And the value is set on finish phase in innerSet. I think, we can call only once : before commit, and save the value in Tx entry. was (Author: alexey kuznetsov): [~agoncharuk] when first entry processor is called in tx#enlistWriteEntry(), cache entry is pulled from cache by entry.innerGet(). So first entry processor observes non-null value [see source|https://github.com/voipp/ignite/blob/49cd833eed456917b4435fc12ffcce6a689d/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTxLocal.java#L1319]. This value _*would not be saved*_ in IgniteTxEntry. When entry processor is called a second time, it gets value from IgniteTxEntry#value , which is null, because we didn't set any value at first call. PS. It seems odd, that entry processor is called multiple times : before transaction commit and during prepare phase(after locks are aquired). And the value is set on finish phase in innerSet. I think, we can call only once : before commit, and save the value in Tx entry. > Null value have appear in the entry processor, but the entry is existing > > > Key: IGNITE-6083 > URL: https://issues.apache.org/jira/browse/IGNITE-6083 > Project: Ignite > Issue Type: Bug > Components: cache >Affects Versions: 2.1 >Reporter: Vladislav Pyatkov >Assignee: Alexey Kuznetsov >Priority: Major > Attachments: EntryProcessorInOptimisticTxTest.java > > > In one thread load some data in a cache, after that I have execute > OPTIMISTIC, SERIALIZABLE transaction with two {{IgniteCache.invoke()}} > methods. > The value had been corrected at first {{EntryProcessor}}, but it is NULL at > second. -- This message was sent by Atlassian JIRA (v7.6.3#76005)