[jira] [Updated] (IGNITE-11396) Remove JUnit3TestLegacyAssert

2019-02-22 Thread Oleg Ignatenko (JIRA)


 [ 
https://issues.apache.org/jira/browse/IGNITE-11396?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Oleg Ignatenko updated IGNITE-11396:

Description: 
Replace assert methods by imports.

That will lead to full remove JUnit3TestLegacyAssert class.

  was:
Replace assert methods by imports.

That will lead to full remove JUnit3TestLeggriacyAssert class.


> Remove JUnit3TestLegacyAssert
> -
>
> Key: IGNITE-11396
> URL: https://issues.apache.org/jira/browse/IGNITE-11396
> Project: Ignite
>  Issue Type: Bug
>Reporter: Ivan Fedotov
>Assignee: Ivan Fedotov
>Priority: Major
>  Labels: iep-30
>
> Replace assert methods by imports.
> That will lead to full remove JUnit3TestLegacyAssert class.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (IGNITE-11396) Remove JUnit3TestLegacyAssert

2019-02-22 Thread Oleg Ignatenko (JIRA)


 [ 
https://issues.apache.org/jira/browse/IGNITE-11396?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Oleg Ignatenko updated IGNITE-11396:

Summary: Remove JUnit3TestLegacyAssert  (was: Remove 
JUnit3TestLeggriacyAssert)

> Remove JUnit3TestLegacyAssert
> -
>
> Key: IGNITE-11396
> URL: https://issues.apache.org/jira/browse/IGNITE-11396
> Project: Ignite
>  Issue Type: Bug
>Reporter: Ivan Fedotov
>Assignee: Ivan Fedotov
>Priority: Major
>  Labels: iep-30
>
> Replace assert methods by imports.
> That will lead to full remove JUnit3TestLeggriacyAssert class.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (IGNITE-11012) [ML] Add model type validation during parsing json file

2019-02-20 Thread Oleg Ignatenko (JIRA)


[ 
https://issues.apache.org/jira/browse/IGNITE-11012?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16773003#comment-16773003
 ] 

Oleg Ignatenko commented on IGNITE-11012:
-

[~zaleslaw]  class {{SparkModelParserTest}} contains static import from old 
(JUnit 3) API: {{junit.framework.TestCase.fail;}} This is somewhat inconsistent 
because all the rest of the code in this class uses JUnit 4 API.

Consider changing this to newer API: {{import static org.junit.Assert.fail;}} 
to make everything uniform. (FWIW I tried such a change locally and tests 
executed fine)

> [ML] Add model type validation during parsing json file
> ---
>
> Key: IGNITE-11012
> URL: https://issues.apache.org/jira/browse/IGNITE-11012
> Project: Ignite
>  Issue Type: Sub-task
>  Components: ml
>Affects Versions: 2.8
>Reporter: Aleksey Zinoviev
>Assignee: Aleksey Zinoviev
>Priority: Major
> Fix For: 2.8
>
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> After resolving ignite path, check special field in parquet file to validate 
> apropriate model loading.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Comment Edited] (IGNITE-11345) remove deprecation for beforeTestsStarted and afterTestsStopped

2019-02-18 Thread Oleg Ignatenko (JIRA)


[ 
https://issues.apache.org/jira/browse/IGNITE-11345?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16771041#comment-16771041
 ] 

Oleg Ignatenko edited comment on IGNITE-11345 at 2/18/19 1:16 PM:
--

(i) No runs at Teamcity are needed for this change because presence nor absence 
of {{@Deprecated}} annotation can't impact tests execution in any way.

Note to reviewers: please make sure that diff contains exactly 6 lines 
commenting out {{@Deprecated}} annotation with the reference to IGNITE-11240 
and removing deprecation notice from javadoc and that there is nothing else 
besides these 6 lines in the diff.

[~avinogradov] this is the change we discussed recently at dev list. If 
anything there is not as you expected, please let me know.


was (Author: oignatenko):
(i) No runs at Teamcity are needed for this change because presence nor absence 
of {{@Deprecated}} annotation can't impact tests execution in any way.

Note to reviewers: please make sure that diff contains exactly two lines 
commenting out {{@Deprecated}} annotation with the reference to IGNITE-11240 
and that there is nothing else besides these two lines in the diff.

[~avinogradov] this is the change we discussed recently at dev list. If 
anything there is not as you expected, please let me know.

> remove deprecation for beforeTestsStarted and afterTestsStopped
> ---
>
> Key: IGNITE-11345
> URL: https://issues.apache.org/jira/browse/IGNITE-11345
> Project: Ignite
>  Issue Type: Task
>Affects Versions: 2.8
>Reporter: Oleg Ignatenko
>Assignee: Oleg Ignatenko
>Priority: Major
>  Labels: MakeTeamcityGreenAgain
> Fix For: 2.8
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> This task is created per discussion at dev list: [beforeTestsStarted() was 
> deprecated, what should we use 
> instead?|http://apache-ignite-developers.2346864.n4.nabble.com/beforeTestsStarted-was-deprecated-what-should-we-use-instead-td40625.html]
> We are going to remove deprecation from {{beforeTestsStarted}} and 
> {{afterTestsStopped}}. The reason for this is that the way recommended 
> instead of these methods makes it less convenient to start and stop the grid.
> Note that regarding the mentioned inconvenient way, we also plan to improve 
> it (IGNITE-11240). After it is done, we need to consider recovering 
> deprecation for these methods because as follows from above, inconvenience of 
> using the recommended way is the only reason to remove it.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (IGNITE-11345) remove deprecation for beforeTestsStarted and afterTestsStopped

2019-02-18 Thread Oleg Ignatenko (JIRA)


[ 
https://issues.apache.org/jira/browse/IGNITE-11345?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16771041#comment-16771041
 ] 

Oleg Ignatenko commented on IGNITE-11345:
-

(i) No runs at Teamcity are needed for this change because presence nor absence 
of {{@Deprecated}} annotation can't impact tests execution in any way.

Note to reviewers: please make sure that diff contains exactly two lines 
commenting out {{@Deprecated}} annotation with the reference to IGNITE-11240 
and that there is nothing else besides these two lines in the diff.

[~avinogradov] this is the change we discussed recently at dev list. If 
anything there is not as you expected, please let me know.

> remove deprecation for beforeTestsStarted and afterTestsStopped
> ---
>
> Key: IGNITE-11345
> URL: https://issues.apache.org/jira/browse/IGNITE-11345
> Project: Ignite
>  Issue Type: Task
>Affects Versions: 2.8
>Reporter: Oleg Ignatenko
>Assignee: Oleg Ignatenko
>Priority: Major
>  Labels: MakeTeamcityGreenAgain
> Fix For: 2.8
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> This task is created per discussion at dev list: [beforeTestsStarted() was 
> deprecated, what should we use 
> instead?|http://apache-ignite-developers.2346864.n4.nabble.com/beforeTestsStarted-was-deprecated-what-should-we-use-instead-td40625.html]
> We are going to remove deprecation from {{beforeTestsStarted}} and 
> {{afterTestsStopped}}. The reason for this is that the way recommended 
> instead of these methods makes it less convenient to start and stop the grid.
> Note that regarding the mentioned inconvenient way, we also plan to improve 
> it (IGNITE-11240). After it is done, we need to consider recovering 
> deprecation for these methods because as follows from above, inconvenience of 
> using the recommended way is the only reason to remove it.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (IGNITE-11345) remove deprecation for beforeTestsStarted and afterTestsStopped

2019-02-18 Thread Oleg Ignatenko (JIRA)


 [ 
https://issues.apache.org/jira/browse/IGNITE-11345?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Oleg Ignatenko updated IGNITE-11345:

Labels: MakeTeamcityGreenAgain  (was: )

> remove deprecation for beforeTestsStarted and afterTestsStopped
> ---
>
> Key: IGNITE-11345
> URL: https://issues.apache.org/jira/browse/IGNITE-11345
> Project: Ignite
>  Issue Type: Task
>Affects Versions: 2.8
>Reporter: Oleg Ignatenko
>Assignee: Oleg Ignatenko
>Priority: Major
>  Labels: MakeTeamcityGreenAgain
> Fix For: 2.8
>
>
> This task is created per discussion at dev list: [beforeTestsStarted() was 
> deprecated, what should we use 
> instead?|http://apache-ignite-developers.2346864.n4.nabble.com/beforeTestsStarted-was-deprecated-what-should-we-use-instead-td40625.html]
> We are going to remove deprecation from {{beforeTestsStarted}} and 
> {{afterTestsStopped}}. The reason for this is that the way recommended 
> instead of these methods makes it less convenient to start and stop the grid.
> Note that regarding the mentioned inconvenient way, we also plan to improve 
> it (IGNITE-11240). After it is done, we need to consider recovering 
> deprecation for these methods because as follows from above, inconvenience of 
> using the recommended way is the only reason to remove it.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Created] (IGNITE-11345) remove deprecation for beforeTestsStarted and afterTestsStopped

2019-02-18 Thread Oleg Ignatenko (JIRA)
Oleg Ignatenko created IGNITE-11345:
---

 Summary: remove deprecation for beforeTestsStarted and 
afterTestsStopped
 Key: IGNITE-11345
 URL: https://issues.apache.org/jira/browse/IGNITE-11345
 Project: Ignite
  Issue Type: Task
Affects Versions: 2.8
Reporter: Oleg Ignatenko


This task is created per discussion at dev list: [beforeTestsStarted() was 
deprecated, what should we use 
instead?|http://apache-ignite-developers.2346864.n4.nabble.com/beforeTestsStarted-was-deprecated-what-should-we-use-instead-td40625.html]

We are going to remove deprecation from {{beforeTestsStarted}} and 
{{afterTestsStopped}}. The reason for this is that the way recommended instead 
of these methods makes it less convenient to start and stop the grid.

Note that regarding the mentioned inconvenient way, we also plan to improve it 
(IGNITE-11240). After it is done, we need to consider recovering deprecation 
for these methods because as follows from above, inconvenience of using the 
recommended way is the only reason to remove it.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Assigned] (IGNITE-11345) remove deprecation for beforeTestsStarted and afterTestsStopped

2019-02-18 Thread Oleg Ignatenko (JIRA)


 [ 
https://issues.apache.org/jira/browse/IGNITE-11345?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Oleg Ignatenko reassigned IGNITE-11345:
---

Assignee: Oleg Ignatenko

> remove deprecation for beforeTestsStarted and afterTestsStopped
> ---
>
> Key: IGNITE-11345
> URL: https://issues.apache.org/jira/browse/IGNITE-11345
> Project: Ignite
>  Issue Type: Task
>Affects Versions: 2.8
>Reporter: Oleg Ignatenko
>Assignee: Oleg Ignatenko
>Priority: Major
>
> This task is created per discussion at dev list: [beforeTestsStarted() was 
> deprecated, what should we use 
> instead?|http://apache-ignite-developers.2346864.n4.nabble.com/beforeTestsStarted-was-deprecated-what-should-we-use-instead-td40625.html]
> We are going to remove deprecation from {{beforeTestsStarted}} and 
> {{afterTestsStopped}}. The reason for this is that the way recommended 
> instead of these methods makes it less convenient to start and stop the grid.
> Note that regarding the mentioned inconvenient way, we also plan to improve 
> it (IGNITE-11240). After it is done, we need to consider recovering 
> deprecation for these methods because as follows from above, inconvenience of 
> using the recommended way is the only reason to remove it.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (IGNITE-11345) remove deprecation for beforeTestsStarted and afterTestsStopped

2019-02-18 Thread Oleg Ignatenko (JIRA)


 [ 
https://issues.apache.org/jira/browse/IGNITE-11345?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Oleg Ignatenko updated IGNITE-11345:

Fix Version/s: 2.8

> remove deprecation for beforeTestsStarted and afterTestsStopped
> ---
>
> Key: IGNITE-11345
> URL: https://issues.apache.org/jira/browse/IGNITE-11345
> Project: Ignite
>  Issue Type: Task
>Affects Versions: 2.8
>Reporter: Oleg Ignatenko
>Assignee: Oleg Ignatenko
>Priority: Major
> Fix For: 2.8
>
>
> This task is created per discussion at dev list: [beforeTestsStarted() was 
> deprecated, what should we use 
> instead?|http://apache-ignite-developers.2346864.n4.nabble.com/beforeTestsStarted-was-deprecated-what-should-we-use-instead-td40625.html]
> We are going to remove deprecation from {{beforeTestsStarted}} and 
> {{afterTestsStopped}}. The reason for this is that the way recommended 
> instead of these methods makes it less convenient to start and stop the grid.
> Note that regarding the mentioned inconvenient way, we also plan to improve 
> it (IGNITE-11240). After it is done, we need to consider recovering 
> deprecation for these methods because as follows from above, inconvenience of 
> using the recommended way is the only reason to remove it.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (IGNITE-11345) remove deprecation for beforeTestsStarted and afterTestsStopped

2019-02-18 Thread Oleg Ignatenko (JIRA)


 [ 
https://issues.apache.org/jira/browse/IGNITE-11345?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Oleg Ignatenko updated IGNITE-11345:

Ignite Flags:   (was: Docs Required)

> remove deprecation for beforeTestsStarted and afterTestsStopped
> ---
>
> Key: IGNITE-11345
> URL: https://issues.apache.org/jira/browse/IGNITE-11345
> Project: Ignite
>  Issue Type: Task
>Affects Versions: 2.8
>Reporter: Oleg Ignatenko
>Assignee: Oleg Ignatenko
>Priority: Major
>
> This task is created per discussion at dev list: [beforeTestsStarted() was 
> deprecated, what should we use 
> instead?|http://apache-ignite-developers.2346864.n4.nabble.com/beforeTestsStarted-was-deprecated-what-should-we-use-instead-td40625.html]
> We are going to remove deprecation from {{beforeTestsStarted}} and 
> {{afterTestsStopped}}. The reason for this is that the way recommended 
> instead of these methods makes it less convenient to start and stop the grid.
> Note that regarding the mentioned inconvenient way, we also plan to improve 
> it (IGNITE-11240). After it is done, we need to consider recovering 
> deprecation for these methods because as follows from above, inconvenience of 
> using the recommended way is the only reason to remove it.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (IGNITE-8558) Provide an opportunity to stop grids and cancel tasks after execution all tests

2019-02-12 Thread Oleg Ignatenko (JIRA)


[ 
https://issues.apache.org/jira/browse/IGNITE-8558?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16766642#comment-16766642
 ] 

Oleg Ignatenko commented on IGNITE-8558:


[~RodionVl],

Looks good.
Thanks for contribution.

> Provide an opportunity to stop grids and cancel tasks after execution all 
> tests
> ---
>
> Key: IGNITE-8558
> URL: https://issues.apache.org/jira/browse/IGNITE-8558
> Project: Ignite
>  Issue Type: Sub-task
>Affects Versions: 2.6
>Reporter: Maxim Muzafarov
>Assignee: Rodion
>Priority: Minor
>  Labels: MakeTeamcityGreenAgain
> Fix For: 2.8
>
>
> The -IGNITE-6842- issue provides an ability gracefully shutdown all ignite 
> instances by default after execution of tests. Ignite instances are stopped 
> by calling the method - {{stopAllGrids}} ({{cancel = false}} is used). You 
> can refer to these lines of code for the details of how the node stopped:
> {code:java|title=GridAbstractTest.java:1789}
>  if (isSafeTopology()) {
>  stopAllGrids(false);
>  if (stopGridErr) {
>  err = new RuntimeException("Not all Ignite instances has been 
> stopped. " +
>  "Please, see log for details.", err);
>  }
>  }
> {code}
> As part of IGNITE-8266 a lot of boilerplate code have been successfully 
> removed. For instance,
> {code:java}
> /** {@inheritDoc} */
> @Override protected void afterTestsStopped() throws Exception {
> super.afterTestsStopped();
> stopAllGrids();
> }
> {code}
> We need to,
>  * Provide the ability to override the behaviour of gracefully instance 
> shutdown and use {{stopAllGirds(true)}} after all tests execution. Assume a 
> new method would be introduced like {{GridAbstractTest#isSafeTopology}}, so 
> the behaviour can be overridden in subclasses.
>  * Remove the other boilerplate parts of the code. For instance,
> {code:java}
> /** {@inheritDoc} */
> @Override protected void afterTestsStopped() throws Exception {
> stopAllGrids(true);
> }
> {code}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (IGNITE-8558) Provide an opportunity to stop grids and cancel tasks after execution all tests

2019-02-12 Thread Oleg Ignatenko (JIRA)


[ 
https://issues.apache.org/jira/browse/IGNITE-8558?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16765912#comment-16765912
 ] 

Oleg Ignatenko commented on IGNITE-8558:


[~RodionVl] please find review notes below.

* I noticed that TC bot visa is obtained for RunAll - suggest to obtain it for 
"RunAll (Nightly)" instead (in TC bot dropdown it is denoted as 
"IgniteTests24Java8_RunAllNightly"). Normally I would say plain RunAll is 
sufficient, but since your changes involve GridAbstractTest it is better to 
exercise some extra care in verifying these by extended testing performed by 
nightly run.

* ExplainSelfTest code in method afterTestsStopped doesn't invoke code from 
superclass ({{super.afterTestsStopped()}}) - is that intentional? If not then 
please recover that.

* I noticed a couple extra empty lines left after removing some methods. These 
lines would better be deleted to keep uniform formatting of source code:
  line #150 in JdbcThinMetadataPrimaryKeysSelfTest
  line #191 in JdbcThinTransactionsAbstractComplexSelfTest
  line #42 in IgniteDistributedModelBuilderTest
  line #56 in MLPTrainerMnistIntegrationTest
  line #44 in CacheBasedLabelPairCursorTest

Other than above, all the changes I checked make very good sense and after 
addressing points listed above I would _strongly_ recommend merging this PR.

> Provide an opportunity to stop grids and cancel tasks after execution all 
> tests
> ---
>
> Key: IGNITE-8558
> URL: https://issues.apache.org/jira/browse/IGNITE-8558
> Project: Ignite
>  Issue Type: Sub-task
>Affects Versions: 2.6
>Reporter: Maxim Muzafarov
>Assignee: Rodion
>Priority: Minor
>  Labels: MakeTeamcityGreenAgain
> Fix For: 2.8
>
>
> The -IGNITE-6842- issue provides an ability gracefully shutdown all ignite 
> instances by default after execution of tests. Ignite instances are stopped 
> by calling the method - {{stopAllGrids}} ({{cancel = false}} is used). You 
> can refer to these lines of code for the details of how the node stopped:
> {code:java|title=GridAbstractTest.java:1789}
>  if (isSafeTopology()) {
>  stopAllGrids(false);
>  if (stopGridErr) {
>  err = new RuntimeException("Not all Ignite instances has been 
> stopped. " +
>  "Please, see log for details.", err);
>  }
>  }
> {code}
> As part of IGNITE-8266 a lot of boilerplate code have been successfully 
> removed. For instance,
> {code:java}
> /** {@inheritDoc} */
> @Override protected void afterTestsStopped() throws Exception {
> super.afterTestsStopped();
> stopAllGrids();
> }
> {code}
> We need to,
>  * Provide the ability to override the behaviour of gracefully instance 
> shutdown and use {{stopAllGirds(true)}} after all tests execution. Assume a 
> new method would be introduced like {{GridAbstractTest#isSafeTopology}}, so 
> the behaviour can be overridden in subclasses.
>  * Remove the other boilerplate parts of the code. For instance,
> {code:java}
> /** {@inheritDoc} */
> @Override protected void afterTestsStopped() throws Exception {
> stopAllGrids(true);
> }
> {code}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (IGNITE-8558) Provide an opportunity to stop grids and cancel tasks after execution all tests

2019-02-12 Thread Oleg Ignatenko (JIRA)


 [ 
https://issues.apache.org/jira/browse/IGNITE-8558?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Oleg Ignatenko updated IGNITE-8558:
---
Labels: MakeTeamcityGreenAgain  (was: )

> Provide an opportunity to stop grids and cancel tasks after execution all 
> tests
> ---
>
> Key: IGNITE-8558
> URL: https://issues.apache.org/jira/browse/IGNITE-8558
> Project: Ignite
>  Issue Type: Sub-task
>Affects Versions: 2.6
>Reporter: Maxim Muzafarov
>Assignee: Rodion
>Priority: Minor
>  Labels: MakeTeamcityGreenAgain
> Fix For: 2.8
>
>
> The -IGNITE-6842- issue provides an ability gracefully shutdown all ignite 
> instances by default after execution of tests. Ignite instances are stopped 
> by calling the method - {{stopAllGrids}} ({{cancel = false}} is used). You 
> can refer to these lines of code for the details of how the node stopped:
> {code:java|title=GridAbstractTest.java:1789}
>  if (isSafeTopology()) {
>  stopAllGrids(false);
>  if (stopGridErr) {
>  err = new RuntimeException("Not all Ignite instances has been 
> stopped. " +
>  "Please, see log for details.", err);
>  }
>  }
> {code}
> As part of IGNITE-8266 a lot of boilerplate code have been successfully 
> removed. For instance,
> {code:java}
> /** {@inheritDoc} */
> @Override protected void afterTestsStopped() throws Exception {
> super.afterTestsStopped();
> stopAllGrids();
> }
> {code}
> We need to,
>  * Provide the ability to override the behaviour of gracefully instance 
> shutdown and use {{stopAllGirds(true)}} after all tests execution. Assume a 
> new method would be introduced like {{GridAbstractTest#isSafeTopology}}, so 
> the behaviour can be overridden in subclasses.
>  * Remove the other boilerplate parts of the code. For instance,
> {code:java}
> /** {@inheritDoc} */
> @Override protected void afterTestsStopped() throws Exception {
> stopAllGrids(true);
> }
> {code}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (IGNITE-8558) Provide an opportunity to stop grids and cancel tasks after execution all tests

2019-02-12 Thread Oleg Ignatenko (JIRA)


[ 
https://issues.apache.org/jira/browse/IGNITE-8558?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16765872#comment-16765872
 ] 

Oleg Ignatenko commented on IGNITE-8558:


Hi [~RodionVl] - I'll take a look.

> Provide an opportunity to stop grids and cancel tasks after execution all 
> tests
> ---
>
> Key: IGNITE-8558
> URL: https://issues.apache.org/jira/browse/IGNITE-8558
> Project: Ignite
>  Issue Type: Sub-task
>Affects Versions: 2.6
>Reporter: Maxim Muzafarov
>Assignee: Rodion
>Priority: Minor
> Fix For: 2.8
>
>
> The -IGNITE-6842- issue provides an ability gracefully shutdown all ignite 
> instances by default after execution of tests. Ignite instances are stopped 
> by calling the method - {{stopAllGrids}} ({{cancel = false}} is used). You 
> can refer to these lines of code for the details of how the node stopped:
> {code:java|title=GridAbstractTest.java:1789}
>  if (isSafeTopology()) {
>  stopAllGrids(false);
>  if (stopGridErr) {
>  err = new RuntimeException("Not all Ignite instances has been 
> stopped. " +
>  "Please, see log for details.", err);
>  }
>  }
> {code}
> As part of IGNITE-8266 a lot of boilerplate code have been successfully 
> removed. For instance,
> {code:java}
> /** {@inheritDoc} */
> @Override protected void afterTestsStopped() throws Exception {
> super.afterTestsStopped();
> stopAllGrids();
> }
> {code}
> We need to,
>  * Provide the ability to override the behaviour of gracefully instance 
> shutdown and use {{stopAllGirds(true)}} after all tests execution. Assume a 
> new method would be introduced like {{GridAbstractTest#isSafeTopology}}, so 
> the behaviour can be overridden in subclasses.
>  * Remove the other boilerplate parts of the code. For instance,
> {code:java}
> /** {@inheritDoc} */
> @Override protected void afterTestsStopped() throws Exception {
> stopAllGrids(true);
> }
> {code}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (IGNITE-11240) provide more convenient way to start and stop grid from static context of @BeforeClass and @AfterClass

2019-02-06 Thread Oleg Ignatenko (JIRA)


 [ 
https://issues.apache.org/jira/browse/IGNITE-11240?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Oleg Ignatenko updated IGNITE-11240:

Fix Version/s: 2.8

> provide more convenient way to start and stop grid from static context of 
> @BeforeClass and @AfterClass
> --
>
> Key: IGNITE-11240
> URL: https://issues.apache.org/jira/browse/IGNITE-11240
> Project: Ignite
>  Issue Type: Bug
>Affects Versions: 2.8
>Reporter: Oleg Ignatenko
>Priority: Major
>  Labels: MakeTeamcityGreenAgain
> Fix For: 2.8
>
>
> Related discussion at dev list: [beforeTestsStarted() was deprecated, what 
> should we use 
> instead?|http://apache-ignite-developers.2346864.n4.nabble.com/beforeTestsStarted-was-deprecated-what-should-we-use-instead-tt40625.html]
> {quote}...the method should be *static* to be annotated with @BeforeClass. 
> And I see a problem here since you're not able to use non-static methods like 
> GridAbstractTest#startGrid() at method annotated with @BeforeClass.{quote}
> The way to achieve above is currently not quite straightforward: 
> {{MyTestClass.class.newInstance().startGrid()}} and 
> {{MyTestClass.class.newInstance().stopGrid()}}.
> This task is for Ignite testframework to provide more convenient way to do 
> that.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (IGNITE-11240) provide more convenient way to start and stop grid from static context of @BeforeClass and @AfterClass

2019-02-06 Thread Oleg Ignatenko (JIRA)


 [ 
https://issues.apache.org/jira/browse/IGNITE-11240?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Oleg Ignatenko updated IGNITE-11240:

Ignite Flags:   (was: Docs Required)

> provide more convenient way to start and stop grid from static context of 
> @BeforeClass and @AfterClass
> --
>
> Key: IGNITE-11240
> URL: https://issues.apache.org/jira/browse/IGNITE-11240
> Project: Ignite
>  Issue Type: Bug
>Affects Versions: 2.8
>Reporter: Oleg Ignatenko
>Priority: Major
>
> Related discussion at dev list: [beforeTestsStarted() was deprecated, what 
> should we use 
> instead?|http://apache-ignite-developers.2346864.n4.nabble.com/beforeTestsStarted-was-deprecated-what-should-we-use-instead-tt40625.html]
> {quote}...the method should be *static* to be annotated with @BeforeClass. 
> And I see a problem here since you're not able to use non-static methods like 
> GridAbstractTest#startGrid() at method annotated with @BeforeClass.{quote}
> The way to achieve above is currently not quite straightforward: 
> {{MyTestClass.class.newInstance().startGrid()}} and 
> {{MyTestClass.class.newInstance().stopGrid()}}.
> This task is for Ignite testframework to provide more convenient way to do 
> that.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (IGNITE-11240) provide more convenient way to start and stop grid from static context of @BeforeClass and @AfterClass

2019-02-06 Thread Oleg Ignatenko (JIRA)


 [ 
https://issues.apache.org/jira/browse/IGNITE-11240?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Oleg Ignatenko updated IGNITE-11240:

Labels: MakeTeamcityGreenAgain  (was: )

> provide more convenient way to start and stop grid from static context of 
> @BeforeClass and @AfterClass
> --
>
> Key: IGNITE-11240
> URL: https://issues.apache.org/jira/browse/IGNITE-11240
> Project: Ignite
>  Issue Type: Bug
>Affects Versions: 2.8
>Reporter: Oleg Ignatenko
>Priority: Major
>  Labels: MakeTeamcityGreenAgain
>
> Related discussion at dev list: [beforeTestsStarted() was deprecated, what 
> should we use 
> instead?|http://apache-ignite-developers.2346864.n4.nabble.com/beforeTestsStarted-was-deprecated-what-should-we-use-instead-tt40625.html]
> {quote}...the method should be *static* to be annotated with @BeforeClass. 
> And I see a problem here since you're not able to use non-static methods like 
> GridAbstractTest#startGrid() at method annotated with @BeforeClass.{quote}
> The way to achieve above is currently not quite straightforward: 
> {{MyTestClass.class.newInstance().startGrid()}} and 
> {{MyTestClass.class.newInstance().stopGrid()}}.
> This task is for Ignite testframework to provide more convenient way to do 
> that.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Created] (IGNITE-11240) provide more convenient way to start and stop grid from static context of @BeforeClass and @AfterClass

2019-02-06 Thread Oleg Ignatenko (JIRA)
Oleg Ignatenko created IGNITE-11240:
---

 Summary: provide more convenient way to start and stop grid from 
static context of @BeforeClass and @AfterClass
 Key: IGNITE-11240
 URL: https://issues.apache.org/jira/browse/IGNITE-11240
 Project: Ignite
  Issue Type: Bug
Affects Versions: 2.8
Reporter: Oleg Ignatenko


Related discussion at dev list: [beforeTestsStarted() was deprecated, what 
should we use 
instead?|http://apache-ignite-developers.2346864.n4.nabble.com/beforeTestsStarted-was-deprecated-what-should-we-use-instead-tt40625.html]
{quote}...the method should be *static* to be annotated with @BeforeClass. And 
I see a problem here since you're not able to use non-static methods like 
GridAbstractTest#startGrid() at method annotated with @BeforeClass.{quote}

The way to achieve above is currently not quite straightforward: 
{{MyTestClass.class.newInstance().startGrid()}} and 
{{MyTestClass.class.newInstance().stopGrid()}}.

This task is for Ignite testframework to provide more convenient way to do that.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (IGNITE-10173) Gradually move unit tests from Junit 3 to newer version

2019-02-05 Thread Oleg Ignatenko (JIRA)


 [ 
https://issues.apache.org/jira/browse/IGNITE-10173?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Oleg Ignatenko updated IGNITE-10173:

Fix Version/s: 2.8

> Gradually move unit tests from Junit 3 to newer version
> ---
>
> Key: IGNITE-10173
> URL: https://issues.apache.org/jira/browse/IGNITE-10173
> Project: Ignite
>  Issue Type: Task
>Affects Versions: 2.6
>Reporter: Oleg Ignatenko
>Assignee: Oleg Ignatenko
>Priority: Major
>  Labels: MakeTeamcityGreenAgain, technical_debt
> Fix For: 2.8
>
>
> (i) Related dev list discussion: [Is it time to move forward to JUnit4 
> (5)?|http://apache-ignite-developers.2346864.n4.nabble.com/Is-it-time-to-move-forward-to-JUnit4-5-td29608.html]
> Currently unit tests in the project are mix of two versions Junit 3 and 4. 
> This makes it hard to develop and maintain. Making all tests use the same 
> version Junit is intended to address this problem.
> Another reason why migration to newer version is desirable is Junit 4 
> provides developer an option to conveniently mute tests by Ignore annotation 
> while with Junit 3 this could only be done by adding fail and manually muting 
> the test in Teamcity (the latter turned out to be extremely painful when I 
> had to do some things per IGNITE-9884).
> This task is to migrate all tests to single uniform version Junit 4 (with 
> further option to migrate to Junit 5, see also note below).
> The difficulty of migration is that too many tests depend on Junit3-based 
> [GridAbstractTest|https://github.com/apache/ignite/blob/master/modules/core/src/test/java/org/apache/ignite/testframework/junits/GridAbstractTest.java]
>  and its subclasses so that making them all change in a single move would be 
> very tedious and risky. A way to work around this is to create a parallel 
> Junit-4 based "twin" of GridAbstractTest (tentative name 
> {{IgniteAbstractTest}}) and using is move to Junit 4 gradually, smoothly and 
> safely.
> Step by step plan of changes is below (made to sub-tasks under this 
> "umbrella" ticket):
>  # migrate examples tests from Junit 3 to 4
>  This is first task because examples are most publicly visible, relativelly 
> small and least risky part of unit tests in the project.
>  Steps: 1) create Junit-4 based twin of GridAbstractTest (and all needed 
> subclasses), 2) declare GridAbstractTest deprecated with reference to use 
> newer API instead 3) change unit tests in examples to use new API
>  # migrate core module tests from Junit 3 to 4
>  using new API introduced and tested at prior step
>  # migrate non-core modules tests from Junit 3 to 4
>  using new API introduced and tested at prior step
>  # cleanup Junit 3 from the project
>  1) remove deprecated API of GridAbstractTest and its subclasses 2) remove 
> dependencies from Junit 3 in Maven 3) migrate tests that were missed at prior 
> steps, if there are any
>  # change tests that fail("Ignite JIRA ticket URL") to @Ignore("Ignite JIRA 
> ticket URL")
>  Note this step would better be coordinated with Teamcity and TC bot 
> maintainers because it may substantially impact them
>  # Change new tests root to use @BeforeClass and @AfterClass instead of 
> isFirstTest() and isLastTest()
>  these homebrew methods seem to be in GridAbstractTest only because Junit 3 
> lacked necessary functionality; after migration to Junit 4 these would better 
> changed to use standard API of this framework.
>  # Investigate migration from Junit 4 to 5
>  Find out if Junit 5 is mature enough - specifically why maven still uses 
> Junit 4 as default, are there serious reasons for that or not. If it looks 
> okay, create a new JIRA task to migrate.
> 
> Note on migrating to Junit 5. While preparing this task I considered an 
> option to migrate from Junit 3 to 5 instead of 4.
> I dropped that primarily because migration from Junit 3 requires quite a lot 
> of manual changes in the code (changing imports and adding annotations), as 
> opposed to migration from Junit 4 to 5 for which there seem to be options to 
> make most changes automatically (eg IntelliJ seem to provide such an option). 
> Because of that it looks more convenient to split it to separate steps, so 
> that after all tests in the project get to Junit 4 we could do an automated 
> migration to newer version.
> Another thing that made me prefer this way is that I wanted to avoid having 
> three different versions Junit in the project (3, 4, 5), even if that would 
> be temporarily (note that migration from Junit 3 is expected to be manual and 
> quite lengthy, so "temporarily" may mean quite a lot of time really).
> Also note that as pointed in above list of steps we better make some 
> preliminary assessment on whether time has really come to migrate to Junit 5.



--
This 

[jira] [Resolved] (IGNITE-10951) migration from Junit 3 to 4 phase 2 (follow-up to IGNITE-10173)

2019-02-05 Thread Oleg Ignatenko (JIRA)


 [ 
https://issues.apache.org/jira/browse/IGNITE-10951?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Oleg Ignatenko resolved IGNITE-10951.
-
   Resolution: Done
Fix Version/s: 2.8

> migration from Junit 3 to 4 phase 2 (follow-up to IGNITE-10173)
> ---
>
> Key: IGNITE-10951
> URL: https://issues.apache.org/jira/browse/IGNITE-10951
> Project: Ignite
>  Issue Type: Task
>Affects Versions: 2.8
>Reporter: Oleg Ignatenko
>Assignee: Oleg Ignatenko
>Priority: Major
>  Labels: MakeTeamcityGreenAgain, technical_debt
> Fix For: 2.8
>
>
> This is an umbrella ticket for those tasks related to migration from JUnit 3 
> to 4 which assume that all JUnit 3 related code has been already cleaned from 
> the project in prior phase per IGNITE-10173 and IGNITE-10762.
> This involves such tasks as update guidelines as suggested in comments of 
> IGNITE-10178, study of whether to migrate to JUnit 5, removal of scaffolding 
> annotations etc.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (IGNITE-11174) MVCC: Remove deprecated methods form MvccFeatureChecker.

2019-02-05 Thread Oleg Ignatenko (JIRA)


 [ 
https://issues.apache.org/jira/browse/IGNITE-11174?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Oleg Ignatenko updated IGNITE-11174:

Issue Type: Task  (was: Sub-task)
Parent: (was: IGNITE-10951)

> MVCC: Remove deprecated methods form MvccFeatureChecker.
> 
>
> Key: IGNITE-11174
> URL: https://issues.apache.org/jira/browse/IGNITE-11174
> Project: Ignite
>  Issue Type: Task
>  Components: mvcc
>Reporter: Andrew Mashenkov
>Priority: Major
>  Labels: MakeTeamcityGreenAgain
> Fix For: 2.8
>
>
> Let's clean-up the code and remove MvccFeatureChecker.failIfNotSupported 
> method after moving to JUnit 4 completely.
>  MvccFeatureChecker.skipIfNotSupported should be used instead.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (IGNITE-10614) investigate blocking of WalCompactionTest.testCompressorToleratesEmptyWalSegmentsFsync at stopping grids when migrating from JUnit 3 to 4

2019-02-05 Thread Oleg Ignatenko (JIRA)


 [ 
https://issues.apache.org/jira/browse/IGNITE-10614?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Oleg Ignatenko updated IGNITE-10614:

Issue Type: Task  (was: Sub-task)
Parent: (was: IGNITE-10951)

> investigate blocking of 
> WalCompactionTest.testCompressorToleratesEmptyWalSegmentsFsync at stopping 
> grids when migrating from JUnit 3 to 4
> -
>
> Key: IGNITE-10614
> URL: https://issues.apache.org/jira/browse/IGNITE-10614
> Project: Ignite
>  Issue Type: Task
>Affects Versions: 2.8
>Reporter: Oleg Ignatenko
>Assignee: Ivan Rakov
>Priority: Major
>  Labels: MakeTeamcityGreenAgain
>
> {{WalCompactionTest.testCompressorToleratesEmptyWalSegmentsFsync}} runs OK 
> under JUnit 3 but blocks at stopping grids when migrating to JUnit 4.
>  Workaround for that (discovered by [~EdShangGG]) is to run stopAllGrids in 
> separate thread:
>  {code}
>  @Override protected void afterTest() throws Exception {
>  Thread thread = new Thread(this::stopAllGrids);
>  thread.start();
>  thread.join(getTestTimeout());
>  cleanPersistenceDir();
>  }
> {code}
> If needed, [here is a diff at 
> Github|https://github.com/apache/ignite/pull/5615/commits/1b342ee4c8c772b0e57583ee7f8721fc2c070bcf]
>  with more context.
> Need to find out what is going on there and if something needs to be changed 
> in this test or maybe in parent test classes.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (IGNITE-10208) Verify list of tests after migration to Junit 4 against some prior reference (follow-up to IGNITE-10177)

2019-02-05 Thread Oleg Ignatenko (JIRA)


 [ 
https://issues.apache.org/jira/browse/IGNITE-10208?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Oleg Ignatenko updated IGNITE-10208:

Issue Type: Task  (was: Sub-task)
Parent: (was: IGNITE-10951)

> Verify list of tests after migration to Junit 4 against some prior reference  
> (follow-up to IGNITE-10177)
> -
>
> Key: IGNITE-10208
> URL: https://issues.apache.org/jira/browse/IGNITE-10208
> Project: Ignite
>  Issue Type: Task
>Reporter: Oleg Ignatenko
>Priority: Major
>  Labels: MakeTeamcityGreenAgain
>
> Migration from Junit 3 to 4 involves manually adding {{@Test}} annotation to 
> existing test cases. Since Ignite contains many thousands test cases there is 
> a substantial risk that we may miss some of these in such a transition.
> In order to mitigate the risk, suggest to do a check after completion of 
> IGNITE-10177 and IGNITE-10762 - somehow generate list of tests in the project 
> and compare it against similar list of tests of some "known good" prior 
> project version (at this point, 2.7 release branch looks like a good 
> candidate for such a reference).
> If comparison shows that some test cases from older version are missed in 
> newer one, open a ticket to investigate that.
> Comparison is better done using [nightly 
> run-all|https://ci.ignite.apache.org/project.html?projectId=IgniteTests24Java8]
>  test set as it is the most comprehensive.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Assigned] (IGNITE-11123) MVCC: Fix MvccFeatureChecker to throw assumption exception instead of failure.

2019-01-31 Thread Oleg Ignatenko (JIRA)


 [ 
https://issues.apache.org/jira/browse/IGNITE-11123?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Oleg Ignatenko reassigned IGNITE-11123:
---

Assignee: Oleg Ignatenko

> MVCC: Fix MvccFeatureChecker to throw assumption exception instead of failure.
> --
>
> Key: IGNITE-11123
> URL: https://issues.apache.org/jira/browse/IGNITE-11123
> Project: Ignite
>  Issue Type: Sub-task
>  Components: mvcc
>Reporter: Andrew Mashenkov
>Assignee: Oleg Ignatenko
>Priority: Major
>  Labels: MakeTeamcityGreenAgain
> Fix For: 2.8
>
>
> Let's rewrite MvccFeatureChecker.validateFeature() method with using JUnit4 
> Assume instead of Assert.fail().



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (IGNITE-11158) Accommodate some of the recent tests to changes made per IGNITE-10179

2019-01-31 Thread Oleg Ignatenko (JIRA)


[ 
https://issues.apache.org/jira/browse/IGNITE-11158?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16757176#comment-16757176
 ] 

Oleg Ignatenko commented on IGNITE-11158:
-

(/) results of successful TC runs for involved test suites are linked to this 
ticket: Cache (Failover) 1, MVCC Cache 1, MVCC Cache 8

> Accommodate some of the recent tests to changes made per IGNITE-10179
> -
>
> Key: IGNITE-11158
> URL: https://issues.apache.org/jira/browse/IGNITE-11158
> Project: Ignite
>  Issue Type: Bug
>Affects Versions: 2.8
>Reporter: Oleg Ignatenko
>Assignee: Oleg Ignatenko
>Priority: Major
>  Labels: MakeTeamcityGreenAgain
> Fix For: 2.8
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> Changes made per IGNITE-10179 can impact any test inheriting 
> {{GridAbstractTest}}. Some of recent tests were added / enabled too late to 
> properly accommodate to these changes.
> This task is to investigate such tests and do corrections if needed.
> Per failure report of Teamcity bot, list of involved tests is as follows: 
> {quote}
> * cache.IgniteTopologyValidatorNearPartitionedTxCacheGroupsTest
> * eviction.GridCacheConcurrentEvictionConsistencySelfTest
> * cache.IgniteTopologyValidatorNearPartitionedTxCacheTest
> * eviction.DhtAndNearEvictionTest
> * cache.CacheMetricsForClusterGroupSelfTest
> * eviction.GridCacheEvictionLockUnlockSelfTest
> * replicated.GridCacheReplicatedMetricsSelfTest
> * eviction.GridCacheEvictionTouchSelfTest
> * eviction.GridCacheConcurrentEvictionsSelfTest
> * local.GridCacheLocalMetricsSelfTest
> * near.GridCachePartitionedMetricsSelfTest
> * local.GridCacheLocalIteratorsSelfTest
> * internal.TransactionMetricsMxBeanImplTest
> * cache.GridEvictionPolicyMBeansTest
> * cache.GridCacheTxPartitionedLocalStoreSelfTest
> * cache.IgniteCacheNearLockValueSelfTest
> * cache.IgnitePutAllLargeBatchSelfTest
> * jdbc.CacheJdbcPojoStoreBinaryMarshallerStoreKeepBinarySelfTest
> * cache.IgnitePutAllUpdateNonPreloadedPartitionSelfTest
> * jdbc.CacheJdbcPojoStoreBinaryMarshallerSelfTest
> * near.GridCacheGetStoreErrorSelfTest
> * distributed.IgniteCrossCacheTxStoreSelfTest
> * cache.GridCacheColocatedTxStoreExceptionSelfTest
> * cache.IgniteCacheEntryListenerTxTest
> * cache.GridCacheLocalTxStoreExceptionSelfTest
> * near.GridCachePartitionedStorePutSelfTest
> * local.GridCacheLocalTxExceptionSelfTest
> * cache.GridCacheNearTxStoreExceptionSelfTest
> * cache.GridCacheReplicatedTxStoreExceptionSelfTest
> * distributed.CacheTxNearUpdateTopologyChangeTest
> * dht.GridCacheGlobalLoadTest
> * cache.GridCacheTtlManagerSelfTest
> * cache.IgniteCacheEntryListenerEagerTtlDisabledTest
> * store.CacheTransactionalStoreReadFromBackupTest
> * jdbc.CacheJdbcPojoStoreBinaryMarshallerStoreKeepBinaryWithSqlEscapeSelfTest
> * cache.IgniteCacheEntryListenerTxReplicatedTest
> * store.GridCacheLoadOnlyStoreAdapterSelfTest
> * cache.IgniteCacheEntryListenerTxLocalTest
> * cache.CachePutEventListenerErrorSelfTest
> * cache.GridCacheObjectToStringSelfTest
> * near.GridCacheNearTxExceptionSelfTest
> * jdbc.CacheJdbcPojoStoreBinaryMarshallerWithSqlEscapeSelfTest
> * cache.IgniteCacheTxLocalInvokeTest
> * jdbc.GridCacheJdbcBlobStoreMultithreadedSelfTest
> * GridCacheRebalancingPartitionDistributionTest.testRollingRestart
> {quote}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Resolved] (IGNITE-11116) replace Assert in particular test classes from junit.framework (JUnit 3) to org.junit (JUnit 4)

2019-01-31 Thread Oleg Ignatenko (JIRA)


 [ 
https://issues.apache.org/jira/browse/IGNITE-6?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Oleg Ignatenko resolved IGNITE-6.
-
Resolution: Duplicate

> replace Assert in particular test classes from junit.framework (JUnit 3) to 
> org.junit (JUnit 4)
> ---
>
> Key: IGNITE-6
> URL: https://issues.apache.org/jira/browse/IGNITE-6
> Project: Ignite
>  Issue Type: Sub-task
>Affects Versions: 2.7
>Reporter: Oleg Ignatenko
>Assignee: Oleg Ignatenko
>Priority: Major
>  Labels: MakeTeamcityGreenAgain
> Fix For: 2.8
>
>
> Some tests start failing on Teamcity when Assert is replaced to one from 
> {{org.junit}} package (note I couldn't reliably reproduce these failures 
> locally). Per my observations it looks like troublesome code involves 
> {{assertEquals}} that compares double / float values with non-zero delta. 
> This issue was discovered in the course of IGNITE-10927.
> Search in the [PR 5866|https://github.com/apache/ignite/pull/5866] linked to 
> IGNITE-10927 for import of {{junit.framework.Assert}} shows that this 
> involves ZookeeperDiscoverySpiTestHelper, 
> IoStatisticsMetricsLocalMXBeanImplSelfTest, BinaryMarshallerSelfTest, 
> RestMemcacheProtocolSelfTest.
> Search in this PR for static import of {{junit.framework.Assert}} shows 12 
> more involved test classes, CassandraConfigTest, ClientCacheFlagsCodecTest 
> etc.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (IGNITE-11158) Accommodate some of the recent tests to changes made per IGNITE-10179

2019-01-31 Thread Oleg Ignatenko (JIRA)


 [ 
https://issues.apache.org/jira/browse/IGNITE-11158?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Oleg Ignatenko updated IGNITE-11158:

Description: 
Changes made per IGNITE-10179 can impact any test inheriting 
{{GridAbstractTest}}. Some of recent tests were added / enabled too late to 
properly accommodate to these changes.

This task is to investigate such tests and do corrections if needed.

Per failure report of Teamcity bot, list of involved tests is as follows: 
{quote}
* cache.IgniteTopologyValidatorNearPartitionedTxCacheGroupsTest
* eviction.GridCacheConcurrentEvictionConsistencySelfTest
* cache.IgniteTopologyValidatorNearPartitionedTxCacheTest
* eviction.DhtAndNearEvictionTest
* cache.CacheMetricsForClusterGroupSelfTest
* eviction.GridCacheEvictionLockUnlockSelfTest
* replicated.GridCacheReplicatedMetricsSelfTest
* eviction.GridCacheEvictionTouchSelfTest
* eviction.GridCacheConcurrentEvictionsSelfTest
* local.GridCacheLocalMetricsSelfTest
* near.GridCachePartitionedMetricsSelfTest
* local.GridCacheLocalIteratorsSelfTest
* internal.TransactionMetricsMxBeanImplTest
* cache.GridEvictionPolicyMBeansTest

* cache.GridCacheTxPartitionedLocalStoreSelfTest
* cache.IgniteCacheNearLockValueSelfTest
* cache.IgnitePutAllLargeBatchSelfTest
* jdbc.CacheJdbcPojoStoreBinaryMarshallerStoreKeepBinarySelfTest
* cache.IgnitePutAllUpdateNonPreloadedPartitionSelfTest
* jdbc.CacheJdbcPojoStoreBinaryMarshallerSelfTest
* near.GridCacheGetStoreErrorSelfTest
* distributed.IgniteCrossCacheTxStoreSelfTest
* cache.GridCacheColocatedTxStoreExceptionSelfTest
* cache.IgniteCacheEntryListenerTxTest
* cache.GridCacheLocalTxStoreExceptionSelfTest
* near.GridCachePartitionedStorePutSelfTest
* local.GridCacheLocalTxExceptionSelfTest
* cache.GridCacheNearTxStoreExceptionSelfTest
* cache.GridCacheReplicatedTxStoreExceptionSelfTest
* distributed.CacheTxNearUpdateTopologyChangeTest
* dht.GridCacheGlobalLoadTest
* cache.GridCacheTtlManagerSelfTest
* cache.IgniteCacheEntryListenerEagerTtlDisabledTest
* store.CacheTransactionalStoreReadFromBackupTest
* jdbc.CacheJdbcPojoStoreBinaryMarshallerStoreKeepBinaryWithSqlEscapeSelfTest
* cache.IgniteCacheEntryListenerTxReplicatedTest
* store.GridCacheLoadOnlyStoreAdapterSelfTest
* cache.IgniteCacheEntryListenerTxLocalTest
* cache.CachePutEventListenerErrorSelfTest
* cache.GridCacheObjectToStringSelfTest
* near.GridCacheNearTxExceptionSelfTest
* jdbc.CacheJdbcPojoStoreBinaryMarshallerWithSqlEscapeSelfTest
* cache.IgniteCacheTxLocalInvokeTest
* jdbc.GridCacheJdbcBlobStoreMultithreadedSelfTest

* GridCacheRebalancingPartitionDistributionTest.testRollingRestart
{quote}

  was:
Changes made per IGNITE-10179 can impact any test inheriting 
{{GridAbstractTest}}. Some of recent tests were added / enabled too late to 
properly accommodate to these changes.

This task is to investigate such tests and do corrections if needed.

Per failure report of Teamcity bot, list of involved tests is as follows: 
{quote}
* cache.IgniteTopologyValidatorNearPartitionedTxCacheGroupsTest
* eviction.GridCacheConcurrentEvictionConsistencySelfTest
* cache.IgniteTopologyValidatorNearPartitionedTxCacheTest
* eviction.DhtAndNearEvictionTest
* cache.CacheMetricsForClusterGroupSelfTest
* eviction.GridCacheEvictionLockUnlockSelfTest
* replicated.GridCacheReplicatedMetricsSelfTest
* eviction.GridCacheEvictionTouchSelfTest
* eviction.GridCacheConcurrentEvictionsSelfTest
* local.GridCacheLocalMetricsSelfTest
* near.GridCachePartitionedMetricsSelfTest
* local.GridCacheLocalIteratorsSelfTest
* internal.TransactionMetricsMxBeanImplTest
* cache.GridEvictionPolicyMBeansTest

* cache.GridCacheTxPartitionedLocalStoreSelfTest
* cache.IgniteCacheNearLockValueSelfTest
* cache.IgnitePutAllLargeBatchSelfTest
* jdbc.CacheJdbcPojoStoreBinaryMarshallerStoreKeepBinarySelfTest
* cache.IgnitePutAllUpdateNonPreloadedPartitionSelfTest
* jdbc.CacheJdbcPojoStoreBinaryMarshallerSelfTest
* near.GridCacheGetStoreErrorSelfTest
* distributed.IgniteCrossCacheTxStoreSelfTest
* cache.GridCacheColocatedTxStoreExceptionSelfTest
* cache.IgniteCacheEntryListenerTxTest
* cache.GridCacheLocalTxStoreExceptionSelfTest
* near.GridCachePartitionedStorePutSelfTest
* local.GridCacheLocalTxExceptionSelfTest
* cache.GridCacheNearTxStoreExceptionSelfTest
* cache.GridCacheReplicatedTxStoreExceptionSelfTest
* distributed.CacheTxNearUpdateTopologyChangeTest
* dht.GridCacheGlobalLoadTest
* cache.GridCacheTtlManagerSelfTest
* cache.IgniteCacheEntryListenerEagerTtlDisabledTest
* store.CacheTransactionalStoreReadFromBackupTest
* jdbc.CacheJdbcPojoStoreBinaryMarshallerStoreKeepBinaryWithSqlEscapeSelfTest
* cache.IgniteCacheEntryListenerTxReplicatedTest
* store.GridCacheLoadOnlyStoreAdapterSelfTest
* cache.IgniteCacheEntryListenerTxLocalTest
* cache.CachePutEventListenerErrorSelfTest
* cache.GridCacheObjectToStringSelfTest
* near.GridCacheNearTxExceptionSelfTest
* 

[jira] [Updated] (IGNITE-11158) Accommodate some of the recent tests to changes made per IGNITE-10179

2019-01-30 Thread Oleg Ignatenko (JIRA)


 [ 
https://issues.apache.org/jira/browse/IGNITE-11158?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Oleg Ignatenko updated IGNITE-11158:

Fix Version/s: 2.8

> Accommodate some of the recent tests to changes made per IGNITE-10179
> -
>
> Key: IGNITE-11158
> URL: https://issues.apache.org/jira/browse/IGNITE-11158
> Project: Ignite
>  Issue Type: Bug
>Affects Versions: 2.8
>Reporter: Oleg Ignatenko
>Priority: Major
>  Labels: MakeTeamcityGreenAgain
> Fix For: 2.8
>
>
> Changes made per IGNITE-10179 can impact any test inheriting 
> {{GridAbstractTest}}. Some of recent tests were added / enabled too late to 
> properly accommodate to these changes.
> This task is to investigate such tests and do corrections if needed.
> Per failure report of Teamcity bot, list of involved tests is as follows: 
> {quote}
> * cache.IgniteTopologyValidatorNearPartitionedTxCacheGroupsTest
> * eviction.GridCacheConcurrentEvictionConsistencySelfTest
> * cache.IgniteTopologyValidatorNearPartitionedTxCacheTest
> * eviction.DhtAndNearEvictionTest
> * cache.CacheMetricsForClusterGroupSelfTest
> * eviction.GridCacheEvictionLockUnlockSelfTest
> * replicated.GridCacheReplicatedMetricsSelfTest
> * eviction.GridCacheEvictionTouchSelfTest
> * eviction.GridCacheConcurrentEvictionsSelfTest
> * local.GridCacheLocalMetricsSelfTest
> * near.GridCachePartitionedMetricsSelfTest
> * local.GridCacheLocalIteratorsSelfTest
> * internal.TransactionMetricsMxBeanImplTest
> * cache.GridEvictionPolicyMBeansTest
> * cache.GridCacheTxPartitionedLocalStoreSelfTest
> * cache.IgniteCacheNearLockValueSelfTest
> * cache.IgnitePutAllLargeBatchSelfTest
> * jdbc.CacheJdbcPojoStoreBinaryMarshallerStoreKeepBinarySelfTest
> * cache.IgnitePutAllUpdateNonPreloadedPartitionSelfTest
> * jdbc.CacheJdbcPojoStoreBinaryMarshallerSelfTest
> * near.GridCacheGetStoreErrorSelfTest
> * distributed.IgniteCrossCacheTxStoreSelfTest
> * cache.GridCacheColocatedTxStoreExceptionSelfTest
> * cache.IgniteCacheEntryListenerTxTest
> * cache.GridCacheLocalTxStoreExceptionSelfTest
> * near.GridCachePartitionedStorePutSelfTest
> * local.GridCacheLocalTxExceptionSelfTest
> * cache.GridCacheNearTxStoreExceptionSelfTest
> * cache.GridCacheReplicatedTxStoreExceptionSelfTest
> * distributed.CacheTxNearUpdateTopologyChangeTest
> * dht.GridCacheGlobalLoadTest
> * cache.GridCacheTtlManagerSelfTest
> * cache.IgniteCacheEntryListenerEagerTtlDisabledTest
> * store.CacheTransactionalStoreReadFromBackupTest
> * jdbc.CacheJdbcPojoStoreBinaryMarshallerStoreKeepBinaryWithSqlEscapeSelfTest
> * cache.IgniteCacheEntryListenerTxReplicatedTest
> * store.GridCacheLoadOnlyStoreAdapterSelfTest
> * cache.IgniteCacheEntryListenerTxLocalTest
> * cache.CachePutEventListenerErrorSelfTest
> * cache.GridCacheObjectToStringSelfTest
> * near.GridCacheNearTxExceptionSelfTest
> * jdbc.CacheJdbcPojoStoreBinaryMarshallerWithSqlEscapeSelfTest
> * cache.IgniteCacheTxLocalInvokeTest
> * jdbc.GridCacheJdbcBlobStoreMultithreadedSelfTest
> {quote}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (IGNITE-11158) Accommodate some of the recent tests to changes made per IGNITE-10179

2019-01-30 Thread Oleg Ignatenko (JIRA)


 [ 
https://issues.apache.org/jira/browse/IGNITE-11158?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Oleg Ignatenko updated IGNITE-11158:

Ignite Flags:   (was: Docs Required)

> Accommodate some of the recent tests to changes made per IGNITE-10179
> -
>
> Key: IGNITE-11158
> URL: https://issues.apache.org/jira/browse/IGNITE-11158
> Project: Ignite
>  Issue Type: Bug
>Affects Versions: 2.8
>Reporter: Oleg Ignatenko
>Priority: Major
>  Labels: MakeTeamcityGreenAgain
> Fix For: 2.8
>
>
> Changes made per IGNITE-10179 can impact any test inheriting 
> {{GridAbstractTest}}. Some of recent tests were added / enabled too late to 
> properly accommodate to these changes.
> This task is to investigate such tests and do corrections if needed.
> Per failure report of Teamcity bot, list of involved tests is as follows: 
> {quote}
> * cache.IgniteTopologyValidatorNearPartitionedTxCacheGroupsTest
> * eviction.GridCacheConcurrentEvictionConsistencySelfTest
> * cache.IgniteTopologyValidatorNearPartitionedTxCacheTest
> * eviction.DhtAndNearEvictionTest
> * cache.CacheMetricsForClusterGroupSelfTest
> * eviction.GridCacheEvictionLockUnlockSelfTest
> * replicated.GridCacheReplicatedMetricsSelfTest
> * eviction.GridCacheEvictionTouchSelfTest
> * eviction.GridCacheConcurrentEvictionsSelfTest
> * local.GridCacheLocalMetricsSelfTest
> * near.GridCachePartitionedMetricsSelfTest
> * local.GridCacheLocalIteratorsSelfTest
> * internal.TransactionMetricsMxBeanImplTest
> * cache.GridEvictionPolicyMBeansTest
> * cache.GridCacheTxPartitionedLocalStoreSelfTest
> * cache.IgniteCacheNearLockValueSelfTest
> * cache.IgnitePutAllLargeBatchSelfTest
> * jdbc.CacheJdbcPojoStoreBinaryMarshallerStoreKeepBinarySelfTest
> * cache.IgnitePutAllUpdateNonPreloadedPartitionSelfTest
> * jdbc.CacheJdbcPojoStoreBinaryMarshallerSelfTest
> * near.GridCacheGetStoreErrorSelfTest
> * distributed.IgniteCrossCacheTxStoreSelfTest
> * cache.GridCacheColocatedTxStoreExceptionSelfTest
> * cache.IgniteCacheEntryListenerTxTest
> * cache.GridCacheLocalTxStoreExceptionSelfTest
> * near.GridCachePartitionedStorePutSelfTest
> * local.GridCacheLocalTxExceptionSelfTest
> * cache.GridCacheNearTxStoreExceptionSelfTest
> * cache.GridCacheReplicatedTxStoreExceptionSelfTest
> * distributed.CacheTxNearUpdateTopologyChangeTest
> * dht.GridCacheGlobalLoadTest
> * cache.GridCacheTtlManagerSelfTest
> * cache.IgniteCacheEntryListenerEagerTtlDisabledTest
> * store.CacheTransactionalStoreReadFromBackupTest
> * jdbc.CacheJdbcPojoStoreBinaryMarshallerStoreKeepBinaryWithSqlEscapeSelfTest
> * cache.IgniteCacheEntryListenerTxReplicatedTest
> * store.GridCacheLoadOnlyStoreAdapterSelfTest
> * cache.IgniteCacheEntryListenerTxLocalTest
> * cache.CachePutEventListenerErrorSelfTest
> * cache.GridCacheObjectToStringSelfTest
> * near.GridCacheNearTxExceptionSelfTest
> * jdbc.CacheJdbcPojoStoreBinaryMarshallerWithSqlEscapeSelfTest
> * cache.IgniteCacheTxLocalInvokeTest
> * jdbc.GridCacheJdbcBlobStoreMultithreadedSelfTest
> {quote}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (IGNITE-11158) Accommodate some of the recent tests to changes made per IGNITE-10179

2019-01-30 Thread Oleg Ignatenko (JIRA)


 [ 
https://issues.apache.org/jira/browse/IGNITE-11158?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Oleg Ignatenko updated IGNITE-11158:

Labels: MakeTeamcityGreenAgain  (was: )

> Accommodate some of the recent tests to changes made per IGNITE-10179
> -
>
> Key: IGNITE-11158
> URL: https://issues.apache.org/jira/browse/IGNITE-11158
> Project: Ignite
>  Issue Type: Bug
>Affects Versions: 2.8
>Reporter: Oleg Ignatenko
>Priority: Major
>  Labels: MakeTeamcityGreenAgain
>
> Changes made per IGNITE-10179 can impact any test inheriting 
> {{GridAbstractTest}}. Some of recent tests were added / enabled too late to 
> properly accommodate to these changes.
> This task is to investigate such tests and do corrections if needed.
> Per failure report of Teamcity bot, list of involved tests is as follows: 
> {quote}
> * cache.IgniteTopologyValidatorNearPartitionedTxCacheGroupsTest
> * eviction.GridCacheConcurrentEvictionConsistencySelfTest
> * cache.IgniteTopologyValidatorNearPartitionedTxCacheTest
> * eviction.DhtAndNearEvictionTest
> * cache.CacheMetricsForClusterGroupSelfTest
> * eviction.GridCacheEvictionLockUnlockSelfTest
> * replicated.GridCacheReplicatedMetricsSelfTest
> * eviction.GridCacheEvictionTouchSelfTest
> * eviction.GridCacheConcurrentEvictionsSelfTest
> * local.GridCacheLocalMetricsSelfTest
> * near.GridCachePartitionedMetricsSelfTest
> * local.GridCacheLocalIteratorsSelfTest
> * internal.TransactionMetricsMxBeanImplTest
> * cache.GridEvictionPolicyMBeansTest
> * cache.GridCacheTxPartitionedLocalStoreSelfTest
> * cache.IgniteCacheNearLockValueSelfTest
> * cache.IgnitePutAllLargeBatchSelfTest
> * jdbc.CacheJdbcPojoStoreBinaryMarshallerStoreKeepBinarySelfTest
> * cache.IgnitePutAllUpdateNonPreloadedPartitionSelfTest
> * jdbc.CacheJdbcPojoStoreBinaryMarshallerSelfTest
> * near.GridCacheGetStoreErrorSelfTest
> * distributed.IgniteCrossCacheTxStoreSelfTest
> * cache.GridCacheColocatedTxStoreExceptionSelfTest
> * cache.IgniteCacheEntryListenerTxTest
> * cache.GridCacheLocalTxStoreExceptionSelfTest
> * near.GridCachePartitionedStorePutSelfTest
> * local.GridCacheLocalTxExceptionSelfTest
> * cache.GridCacheNearTxStoreExceptionSelfTest
> * cache.GridCacheReplicatedTxStoreExceptionSelfTest
> * distributed.CacheTxNearUpdateTopologyChangeTest
> * dht.GridCacheGlobalLoadTest
> * cache.GridCacheTtlManagerSelfTest
> * cache.IgniteCacheEntryListenerEagerTtlDisabledTest
> * store.CacheTransactionalStoreReadFromBackupTest
> * jdbc.CacheJdbcPojoStoreBinaryMarshallerStoreKeepBinaryWithSqlEscapeSelfTest
> * cache.IgniteCacheEntryListenerTxReplicatedTest
> * store.GridCacheLoadOnlyStoreAdapterSelfTest
> * cache.IgniteCacheEntryListenerTxLocalTest
> * cache.CachePutEventListenerErrorSelfTest
> * cache.GridCacheObjectToStringSelfTest
> * near.GridCacheNearTxExceptionSelfTest
> * jdbc.CacheJdbcPojoStoreBinaryMarshallerWithSqlEscapeSelfTest
> * cache.IgniteCacheTxLocalInvokeTest
> * jdbc.GridCacheJdbcBlobStoreMultithreadedSelfTest
> {quote}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Created] (IGNITE-11158) Accommodate some of the recent tests to changes made per IGNITE-10179

2019-01-30 Thread Oleg Ignatenko (JIRA)
Oleg Ignatenko created IGNITE-11158:
---

 Summary: Accommodate some of the recent tests to changes made per 
IGNITE-10179
 Key: IGNITE-11158
 URL: https://issues.apache.org/jira/browse/IGNITE-11158
 Project: Ignite
  Issue Type: Bug
Affects Versions: 2.8
Reporter: Oleg Ignatenko


Changes made per IGNITE-10179 can impact any test inheriting 
{{GridAbstractTest}}. Some of recent tests were added / enabled too late to 
properly accommodate to these changes.

This task is to investigate such tests and do corrections if needed.

Per failure report of Teamcity bot, list of involved tests is as follows: 
{quote}
* cache.IgniteTopologyValidatorNearPartitionedTxCacheGroupsTest
* eviction.GridCacheConcurrentEvictionConsistencySelfTest
* cache.IgniteTopologyValidatorNearPartitionedTxCacheTest
* eviction.DhtAndNearEvictionTest
* cache.CacheMetricsForClusterGroupSelfTest
* eviction.GridCacheEvictionLockUnlockSelfTest
* replicated.GridCacheReplicatedMetricsSelfTest
* eviction.GridCacheEvictionTouchSelfTest
* eviction.GridCacheConcurrentEvictionsSelfTest
* local.GridCacheLocalMetricsSelfTest
* near.GridCachePartitionedMetricsSelfTest
* local.GridCacheLocalIteratorsSelfTest
* internal.TransactionMetricsMxBeanImplTest
* cache.GridEvictionPolicyMBeansTest

* cache.GridCacheTxPartitionedLocalStoreSelfTest
* cache.IgniteCacheNearLockValueSelfTest
* cache.IgnitePutAllLargeBatchSelfTest
* jdbc.CacheJdbcPojoStoreBinaryMarshallerStoreKeepBinarySelfTest
* cache.IgnitePutAllUpdateNonPreloadedPartitionSelfTest
* jdbc.CacheJdbcPojoStoreBinaryMarshallerSelfTest
* near.GridCacheGetStoreErrorSelfTest
* distributed.IgniteCrossCacheTxStoreSelfTest
* cache.GridCacheColocatedTxStoreExceptionSelfTest
* cache.IgniteCacheEntryListenerTxTest
* cache.GridCacheLocalTxStoreExceptionSelfTest
* near.GridCachePartitionedStorePutSelfTest
* local.GridCacheLocalTxExceptionSelfTest
* cache.GridCacheNearTxStoreExceptionSelfTest
* cache.GridCacheReplicatedTxStoreExceptionSelfTest
* distributed.CacheTxNearUpdateTopologyChangeTest
* dht.GridCacheGlobalLoadTest
* cache.GridCacheTtlManagerSelfTest
* cache.IgniteCacheEntryListenerEagerTtlDisabledTest
* store.CacheTransactionalStoreReadFromBackupTest
* jdbc.CacheJdbcPojoStoreBinaryMarshallerStoreKeepBinaryWithSqlEscapeSelfTest
* cache.IgniteCacheEntryListenerTxReplicatedTest
* store.GridCacheLoadOnlyStoreAdapterSelfTest
* cache.IgniteCacheEntryListenerTxLocalTest
* cache.CachePutEventListenerErrorSelfTest
* cache.GridCacheObjectToStringSelfTest
* near.GridCacheNearTxExceptionSelfTest
* jdbc.CacheJdbcPojoStoreBinaryMarshallerWithSqlEscapeSelfTest
* cache.IgniteCacheTxLocalInvokeTest
* jdbc.GridCacheJdbcBlobStoreMultithreadedSelfTest
{quote}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Assigned] (IGNITE-11158) Accommodate some of the recent tests to changes made per IGNITE-10179

2019-01-30 Thread Oleg Ignatenko (JIRA)


 [ 
https://issues.apache.org/jira/browse/IGNITE-11158?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Oleg Ignatenko reassigned IGNITE-11158:
---

Assignee: Oleg Ignatenko

> Accommodate some of the recent tests to changes made per IGNITE-10179
> -
>
> Key: IGNITE-11158
> URL: https://issues.apache.org/jira/browse/IGNITE-11158
> Project: Ignite
>  Issue Type: Bug
>Affects Versions: 2.8
>Reporter: Oleg Ignatenko
>Assignee: Oleg Ignatenko
>Priority: Major
>  Labels: MakeTeamcityGreenAgain
> Fix For: 2.8
>
>
> Changes made per IGNITE-10179 can impact any test inheriting 
> {{GridAbstractTest}}. Some of recent tests were added / enabled too late to 
> properly accommodate to these changes.
> This task is to investigate such tests and do corrections if needed.
> Per failure report of Teamcity bot, list of involved tests is as follows: 
> {quote}
> * cache.IgniteTopologyValidatorNearPartitionedTxCacheGroupsTest
> * eviction.GridCacheConcurrentEvictionConsistencySelfTest
> * cache.IgniteTopologyValidatorNearPartitionedTxCacheTest
> * eviction.DhtAndNearEvictionTest
> * cache.CacheMetricsForClusterGroupSelfTest
> * eviction.GridCacheEvictionLockUnlockSelfTest
> * replicated.GridCacheReplicatedMetricsSelfTest
> * eviction.GridCacheEvictionTouchSelfTest
> * eviction.GridCacheConcurrentEvictionsSelfTest
> * local.GridCacheLocalMetricsSelfTest
> * near.GridCachePartitionedMetricsSelfTest
> * local.GridCacheLocalIteratorsSelfTest
> * internal.TransactionMetricsMxBeanImplTest
> * cache.GridEvictionPolicyMBeansTest
> * cache.GridCacheTxPartitionedLocalStoreSelfTest
> * cache.IgniteCacheNearLockValueSelfTest
> * cache.IgnitePutAllLargeBatchSelfTest
> * jdbc.CacheJdbcPojoStoreBinaryMarshallerStoreKeepBinarySelfTest
> * cache.IgnitePutAllUpdateNonPreloadedPartitionSelfTest
> * jdbc.CacheJdbcPojoStoreBinaryMarshallerSelfTest
> * near.GridCacheGetStoreErrorSelfTest
> * distributed.IgniteCrossCacheTxStoreSelfTest
> * cache.GridCacheColocatedTxStoreExceptionSelfTest
> * cache.IgniteCacheEntryListenerTxTest
> * cache.GridCacheLocalTxStoreExceptionSelfTest
> * near.GridCachePartitionedStorePutSelfTest
> * local.GridCacheLocalTxExceptionSelfTest
> * cache.GridCacheNearTxStoreExceptionSelfTest
> * cache.GridCacheReplicatedTxStoreExceptionSelfTest
> * distributed.CacheTxNearUpdateTopologyChangeTest
> * dht.GridCacheGlobalLoadTest
> * cache.GridCacheTtlManagerSelfTest
> * cache.IgniteCacheEntryListenerEagerTtlDisabledTest
> * store.CacheTransactionalStoreReadFromBackupTest
> * jdbc.CacheJdbcPojoStoreBinaryMarshallerStoreKeepBinaryWithSqlEscapeSelfTest
> * cache.IgniteCacheEntryListenerTxReplicatedTest
> * store.GridCacheLoadOnlyStoreAdapterSelfTest
> * cache.IgniteCacheEntryListenerTxLocalTest
> * cache.CachePutEventListenerErrorSelfTest
> * cache.GridCacheObjectToStringSelfTest
> * near.GridCacheNearTxExceptionSelfTest
> * jdbc.CacheJdbcPojoStoreBinaryMarshallerWithSqlEscapeSelfTest
> * cache.IgniteCacheTxLocalInvokeTest
> * jdbc.GridCacheJdbcBlobStoreMultithreadedSelfTest
> {quote}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (IGNITE-10927) Relieve JUnit3TestLegacySupport from inheriting deprecated junit.framework.Assert (follow-up to IGNITE-10177)

2019-01-30 Thread Oleg Ignatenko (JIRA)


[ 
https://issues.apache.org/jira/browse/IGNITE-10927?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16756169#comment-16756169
 ] 

Oleg Ignatenko commented on IGNITE-10927:
-

(i) closer studying issue described in IGNITE-6 suggested that most likely 
reason is rather subtle bug introduced in {{JUnit3TestLegacyAssert}}. I plan to 
fix this bug here and re-run nightly TC check to see if it worked. If there 
will be still issues unrelated to mentioned bug, these will be addressed per 
IGNITE-6

> Relieve JUnit3TestLegacySupport from inheriting deprecated 
> junit.framework.Assert (follow-up to IGNITE-10177)
> -
>
> Key: IGNITE-10927
> URL: https://issues.apache.org/jira/browse/IGNITE-10927
> Project: Ignite
>  Issue Type: Sub-task
>Affects Versions: 2.7
>Reporter: Oleg Ignatenko
>Assignee: Oleg Ignatenko
>Priority: Major
> Fix For: 2.8
>
>  Time Spent: 0.5h
>  Remaining Estimate: 0h
>
> {{JUnit3TestLegacySupport}} currently inherits deprecated 
> {{junit.framework.Assert}}. This was done only in order to minimize risky 
> code changes when tests were migrating from Junit 3, after 
> {{GridAbstractTest}} has dropped inheriting {{junit.framework.TestCase}}.
> Now that migration is over it is less risky to cleanup project from 
> deprecated assert methods and drop the harmful inheritance. In order to make 
> this smoother and minimize amount of test changes, after inheritance is 
> dropped, {{JUnit3TestLegacySupport}} should be extended with a set of 
> "temporary patch" methods that would delegate most popular assertions used by 
> subclasses to respective methods of {{org.junit.Assert}}.
> Mentioned temporary patch methods, in turn, should respective 
> {{2deprecation}} notices in javadocs that would encourage developers to 
> (safely and gradually) change them to direct invocations and static imports 
> of respective Assert methods instead of using those inherited from 
> superclass. These patch methods should be declared {{protected final}} or 
> {{protected static}}, in order to minimize their applicability and prevent 
> them spreading more than intended. (as a side note, experimenting has shown 
> that use of {{@Deprecated}} annotation is not feasible as it deprives 
> developers an option to use static imports)



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Assigned] (IGNITE-10988) Zookeeper test case testCommunicationFailureResolve_KillRandom frequently fails in GridAbstractTest.waitForTopology

2019-01-30 Thread Oleg Ignatenko (JIRA)


 [ 
https://issues.apache.org/jira/browse/IGNITE-10988?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Oleg Ignatenko reassigned IGNITE-10988:
---

Assignee: (was: Oleg Ignatenko)

> Zookeeper test case testCommunicationFailureResolve_KillRandom frequently 
> fails in GridAbstractTest.waitForTopology
> ---
>
> Key: IGNITE-10988
> URL: https://issues.apache.org/jira/browse/IGNITE-10988
> Project: Ignite
>  Issue Type: Bug
>Affects Versions: 2.7
>Reporter: Oleg Ignatenko
>Priority: Major
>  Labels: MakeTeamcityGreenAgain
>
> Zookeeper test case testCommunicationFailureResolve_KillRandom frequently 
> fails in GridAbstractTest.waitForTopology.
> Teamcity test history in master currently shows "Test runs: 625 total / 251 
> failures" 
> ([link|https://ci.ignite.apache.org/project.html?projectId=IgniteTests24Java8=-3849782382784091413=testDetails).
> Need to find out why is that and whether test case can be improved and made 
> more reliable.
> Typical failure message looks as follows:
> {noformat}
> [2019-01-18 06:57:23,489][ERROR][main][root] Test failed.
> junit.framework.AssertionFailedError
>   at junit.framework.Assert.fail(Assert.java:55)
>   at junit.framework.Assert.assertTrue(Assert.java:22)
>   at junit.framework.Assert.assertTrue(Assert.java:31)
>   at 
> org.apache.ignite.testframework.junits.GridAbstractTest.waitForTopology(GridAbstractTest.java:2294)
>   at 
> org.apache.ignite.spi.discovery.zk.internal.ZookeeperDiscoverySpiTest.waitForTopology(ZookeeperDiscoverySpiTest.java:5103)
>   at 
> org.apache.ignite.spi.discovery.zk.internal.ZookeeperDiscoverySpiTest.testCommunicationFailureResolve_KillRandom(ZookeeperDiscoverySpiTest.java:3145)
>   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>   at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
>   at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>   at java.lang.reflect.Method.invoke(Method.java:498)
>   at 
> org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:47)
>   at 
> org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
>   at 
> org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:44)
>   at 
> org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
>   at 
> org.apache.ignite.testframework.junits.GridAbstractTest$6.run(GridAbstractTest.java:2088)
>   at java.lang.Thread.run(Thread.java:748){noformat}
> 
> Side note per IGNITE-10777 this test case has moved to another class, from 
> {{ZookeeperDiscoverySpiTest}} to {{ZookeeperDiscoverySpiTest5}} (which was 
> further renamed to {{ZookeeperDiscoveryCommunicationFailureTest}}) but that 
> didn't change anything: it still fails frequently and failure message is the 
> same, with the only difference in the new test class name.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Assigned] (IGNITE-10431) Make tests independent of page size

2019-01-30 Thread Oleg Ignatenko (JIRA)


 [ 
https://issues.apache.org/jira/browse/IGNITE-10431?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Oleg Ignatenko reassigned IGNITE-10431:
---

Assignee: Oleg Ignatenko

> Make tests independent of page size
> ---
>
> Key: IGNITE-10431
> URL: https://issues.apache.org/jira/browse/IGNITE-10431
> Project: Ignite
>  Issue Type: Bug
>Reporter: Sergi Vladykin
>Assignee: Oleg Ignatenko
>Priority: Major
>
> The following tests were added to Page Compression suite and they fail 
> because page size there increased to 8k.
> {code:java}
> org.apache.ignite.testsuites.IgnitePdsCompressionTestSuite2…g.apache.ignite.internal.processors.cache.persistence.db.wal
>  (4)
>  IgniteWALTailIsReachedDuringIterationOverArchiveTest.testStandAloneIterator  
>  IgniteWalFormatFileFailoverTest.testFailureHandlerTriggered  
>  IgniteWalFormatFileFailoverTest.testFailureHandlerTriggeredFsync 
>  IgniteWalIteratorExceptionDuringReadTest.test    
> org.apache.ignite.testsuites.IgnitePdsCompressionTestSuite2…e.ignite.internal.processors.cache.persistence.db.wal.reader
>  (9)
>  IgniteWalReaderTest.testCheckBoundsIterator  
>  IgniteWalReaderTest.testFillWalAndReadRecords    
>  IgniteWalReaderTest.testFillWalForExactSegmentsCount 
>  IgniteWalReaderTest.testFillWalWithDifferentTypes    
>  IgniteWalReaderTest.testPutAllTxIntoTwoNodes 
>  IgniteWalReaderTest.testRemoveOperationPresentedForDataEntry 
>  IgniteWalReaderTest.testRemoveOperationPresentedForDataEntryForAtomic    
>  IgniteWalReaderTest.testTxFillWalAndExtractDataRecords   
>  IgniteWalReaderTest.testTxRecordsReadWoBinaryMeta    
> org.apache.ignite.testsuites.IgnitePdsCompressionTestSuite2…ache.ignite.internal.processors.cache.persistence.wal.reader
>  (2)
>  StandaloneWalRecordsIteratorTest.testCorrectClosingFileDescriptors   
>  StandaloneWalRecordsIteratorTest.testStrictBounds 
> {code}
>  



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Assigned] (IGNITE-11116) replace Assert in particular test classes from junit.framework (JUnit 3) to org.junit (JUnit 4)

2019-01-30 Thread Oleg Ignatenko (JIRA)


 [ 
https://issues.apache.org/jira/browse/IGNITE-6?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Oleg Ignatenko reassigned IGNITE-6:
---

Assignee: Oleg Ignatenko

> replace Assert in particular test classes from junit.framework (JUnit 3) to 
> org.junit (JUnit 4)
> ---
>
> Key: IGNITE-6
> URL: https://issues.apache.org/jira/browse/IGNITE-6
> Project: Ignite
>  Issue Type: Sub-task
>Affects Versions: 2.7
>Reporter: Oleg Ignatenko
>Assignee: Oleg Ignatenko
>Priority: Major
>  Labels: MakeTeamcityGreenAgain
> Fix For: 2.8
>
>
> Some tests start failing on Teamcity when Assert is replaced to one from 
> {{org.junit}} package (note I couldn't reliably reproduce these failures 
> locally). Per my observations it looks like troublesome code involves 
> {{assertEquals}} that compares double / float values with non-zero delta. 
> This issue was discovered in the course of IGNITE-10927.
> Search in the [PR 5866|https://github.com/apache/ignite/pull/5866] linked to 
> IGNITE-10927 for import of {{junit.framework.Assert}} shows that this 
> involves ZookeeperDiscoverySpiTestHelper, 
> IoStatisticsMetricsLocalMXBeanImplSelfTest, BinaryMarshallerSelfTest, 
> RestMemcacheProtocolSelfTest.
> Search in this PR for static import of {{junit.framework.Assert}} shows 12 
> more involved test classes, CassandraConfigTest, ClientCacheFlagsCodecTest 
> etc.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Comment Edited] (IGNITE-10179) Change new tests root to use @BeforeClass and @AfterClass instead of isFirstTest() and isLastTest()

2019-01-30 Thread Oleg Ignatenko (JIRA)


[ 
https://issues.apache.org/jira/browse/IGNITE-10179?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16755174#comment-16755174
 ] 

Oleg Ignatenko edited comment on IGNITE-10179 at 1/30/19 9:11 AM:
--

(i) [~agoncharuk] - this PR 
([#5925|https://github.com/apache/ignite/pull/5925]) is one I told you about 
last week, I would much appreciate if you take a look at it. TC bot visa above 
suggests that it is most probably correct, however I will repeat this TC run in 
order to make sure that multiple changes and merges from master made in last 
few days didn't break something in previously validated test suites.

Core changes worth looking at are in {{GridAbstractTest}} and in 
{{GridSpiAbstractTest}}, the rest is essentially just a scaffolding made to 
accommodate these changes. Also of interest may be the expansion made in 
{{MvccFeatureChecker}} to leverage JUnit 4 Assume API (IGNITE-11123) but in the 
big picture it probably still qualifies more as a scaffolding.

-

Special thanks to [~Pavlukhin] for the idea to use class rule. Ivan, you can 
also take a look at how it is implemented here if you're interested.

-

(/) update visa obtained after TC re-run (see [comment from bot 
below|https://issues.apache.org/jira/browse/IGNITE-10179?focusedCommentId=16755866=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-16755866])
 suggests that this time there were no regressions. At last.


was (Author: oignatenko):
(i) [~agoncharuk] - this PR 
([#5925|https://github.com/apache/ignite/pull/5925]) is one I told you about 
last week, I would much appreciate if you take a look at it. TC bot visa above 
suggests that it is most probably correct, however I will repeat this TC run in 
order to make sure that multiple changes and merges from master made in last 
few days didn't break something in previously validated test suites.

Core changes worth looking at are in {{GridAbstractTest}} and in 
{{GridSpiAbstractTest}}, the rest is essentially just a scaffolding made to 
accommodate these changes. Also of interest may be the expansion made in 
{{MvccFeatureChecker}} to leverage JUnit 4 Assume API (IGNITE-11123) but in the 
big picture it probably still qualifies more as a scaffolding.

-

Special thanks to [~Pavlukhin] for the idea to use class rule. Ivan, you can 
also take a look at how it is implemented here if you're interested.

> Change new tests root to use @BeforeClass and @AfterClass instead of 
> isFirstTest() and isLastTest()
> ---
>
> Key: IGNITE-10179
> URL: https://issues.apache.org/jira/browse/IGNITE-10179
> Project: Ignite
>  Issue Type: Sub-task
>Reporter: Oleg Ignatenko
>Assignee: Oleg Ignatenko
>Priority: Major
>  Time Spent: 0.5h
>  Remaining Estimate: 0h
>
> If needed, refer parent task for more details.
> isFirstTest() and isLastTest() homebrew methods seem to be in 
> GridAbstractTest only because Junit 3 lacked necessary functionality; after 
> migration to Junit 4 these would better changed to use standard API of this 
> framework.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (IGNITE-10179) Change new tests root to use @BeforeClass and @AfterClass instead of isFirstTest() and isLastTest()

2019-01-30 Thread Oleg Ignatenko (JIRA)


[ 
https://issues.apache.org/jira/browse/IGNITE-10179?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16755860#comment-16755860
 ] 

Oleg Ignatenko commented on IGNITE-10179:
-

[~Pavlukhin] thanks for your comments! I just corrected Void (should be void 
indeed) and typo invokation -> invocation and pushed these fixes to branch.

As for repeated calls of skipIfNotSupported, per my testing it appeared as 
necessary. If memory serves I first tried at @Before because it looked like a 
natural place for it. However some tests started failing when I did it this way 
and by debugging I discovered that it checking in getConfiguration fixes these 
failures so I moved it there but then again, some other tests started failing 
because of that and I recovered it in Before and got all tests pass.

For the sake of completeness I also briefly tried if I could find a simpler way 
that would invoke skipIfNotSupported from some single place but it turned out 
that tests have somewhat clumsy inheritance relationship that makes it 
difficult to find such a place, at least without making substantial changes in 
the tests. At this point I dropped that idea and have chosen to keep repeat 
invocations because it looked safer than messing with test code.

> Change new tests root to use @BeforeClass and @AfterClass instead of 
> isFirstTest() and isLastTest()
> ---
>
> Key: IGNITE-10179
> URL: https://issues.apache.org/jira/browse/IGNITE-10179
> Project: Ignite
>  Issue Type: Sub-task
>Reporter: Oleg Ignatenko
>Assignee: Oleg Ignatenko
>Priority: Major
>  Time Spent: 0.5h
>  Remaining Estimate: 0h
>
> If needed, refer parent task for more details.
> isFirstTest() and isLastTest() homebrew methods seem to be in 
> GridAbstractTest only because Junit 3 lacked necessary functionality; after 
> migration to Junit 4 these would better changed to use standard API of this 
> framework.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (IGNITE-10179) Change new tests root to use @BeforeClass and @AfterClass instead of isFirstTest() and isLastTest()

2019-01-29 Thread Oleg Ignatenko (JIRA)


[ 
https://issues.apache.org/jira/browse/IGNITE-10179?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16755174#comment-16755174
 ] 

Oleg Ignatenko commented on IGNITE-10179:
-

(i) [~agoncharuk] - this PR 
([#5925|https://github.com/apache/ignite/pull/5925]) is one I told you about 
last week, I would much appreciate if you take a look at it. TC bot visa above 
suggests that it is most probably correct, however I will repeat this TC run in 
order to make sure that multiple changes and merges from master made in last 
few days didn't break something in previously validated test suites.

Core changes worth looking at are in {{GridAbstractTest}} and in 
{{GridSpiAbstractTest}}, the rest is essentially just a scaffolding made to 
accommodate these changes. Also of interest may be the expansion made in 
{{MvccFeatureChecker}} to leverage JUnit 4 Assume API (IGNITE-11123) but in the 
big picture it probably still qualifies more as a scaffolding.

-

Special thanks to [~Pavlukhin] for the idea to use class rule. Ivan, you can 
also take a look at how it is implemented here if you're interested.

> Change new tests root to use @BeforeClass and @AfterClass instead of 
> isFirstTest() and isLastTest()
> ---
>
> Key: IGNITE-10179
> URL: https://issues.apache.org/jira/browse/IGNITE-10179
> Project: Ignite
>  Issue Type: Sub-task
>Reporter: Oleg Ignatenko
>Assignee: Oleg Ignatenko
>Priority: Major
>  Time Spent: 0.5h
>  Remaining Estimate: 0h
>
> If needed, refer parent task for more details.
> isFirstTest() and isLastTest() homebrew methods seem to be in 
> GridAbstractTest only because Junit 3 lacked necessary functionality; after 
> migration to Junit 4 these would better changed to use standard API of this 
> framework.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (IGNITE-11123) MVCC: Fix MvccFeatureChecker to throw assumption exception instead of failure.

2019-01-29 Thread Oleg Ignatenko (JIRA)


[ 
https://issues.apache.org/jira/browse/IGNITE-11123?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16754915#comment-16754915
 ] 

Oleg Ignatenko commented on IGNITE-11123:
-

(i) in PR 5925 there is an example of how this can be reworked: [method 
skipIfNotSupported|https://github.com/apache/ignite/blob/1ee033459ac8f2ef0804029f5ce8f4caf5ddf5b6/modules/core/src/test/java/org/apache/ignite/testframework/MvccFeatureChecker.java]

> MVCC: Fix MvccFeatureChecker to throw assumption exception instead of failure.
> --
>
> Key: IGNITE-11123
> URL: https://issues.apache.org/jira/browse/IGNITE-11123
> Project: Ignite
>  Issue Type: Sub-task
>  Components: mvcc
>Reporter: Andrew Mashenkov
>Priority: Major
>  Labels: MakeTeamcityGreenAgain
> Fix For: 2.8
>
>
> Let's rewrite MvccFeatureChecker.validateFeature() method with using JUnit4 
> Assume instead of Assert.fail().



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (IGNITE-11116) replace Assert in particular test classes from junit.framework (JUnit 3) to org.junit (JUnit 4)

2019-01-29 Thread Oleg Ignatenko (JIRA)


 [ 
https://issues.apache.org/jira/browse/IGNITE-6?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Oleg Ignatenko updated IGNITE-6:

Fix Version/s: 2.8

> replace Assert in particular test classes from junit.framework (JUnit 3) to 
> org.junit (JUnit 4)
> ---
>
> Key: IGNITE-6
> URL: https://issues.apache.org/jira/browse/IGNITE-6
> Project: Ignite
>  Issue Type: Sub-task
>Affects Versions: 2.7
>Reporter: Oleg Ignatenko
>Priority: Major
>  Labels: MakeTeamcityGreenAgain
> Fix For: 2.8
>
>
> Some tests start failing on Teamcity when Assert is replaced to one from 
> {{org.junit}} package (note I couldn't reliably reproduce these failures 
> locally). Per my observations it looks like troublesome code involves 
> {{assertEquals}} that compares double / float values with non-zero delta. 
> This issue was discovered in the course of IGNITE-10927.
> Search in the [PR 5866|https://github.com/apache/ignite/pull/5866] linked to 
> IGNITE-10927 for import of {{junit.framework.Assert}} shows that this 
> involves ZookeeperDiscoverySpiTestHelper, 
> IoStatisticsMetricsLocalMXBeanImplSelfTest, BinaryMarshallerSelfTest, 
> RestMemcacheProtocolSelfTest.
> Search in this PR for static import of {{junit.framework.Assert}} shows 12 
> more involved test classes, CassandraConfigTest, ClientCacheFlagsCodecTest 
> etc.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (IGNITE-11116) replace Assert in particular test classes from junit.framework (JUnit 3) to org.junit (JUnit 4)

2019-01-29 Thread Oleg Ignatenko (JIRA)


 [ 
https://issues.apache.org/jira/browse/IGNITE-6?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Oleg Ignatenko updated IGNITE-6:

Ignite Flags:   (was: Docs Required)

> replace Assert in particular test classes from junit.framework (JUnit 3) to 
> org.junit (JUnit 4)
> ---
>
> Key: IGNITE-6
> URL: https://issues.apache.org/jira/browse/IGNITE-6
> Project: Ignite
>  Issue Type: Sub-task
>Affects Versions: 2.7
>Reporter: Oleg Ignatenko
>Priority: Major
>  Labels: MakeTeamcityGreenAgain
>
> Some tests start failing on Teamcity when Assert is replaced to one from 
> {{org.junit}} package (note I couldn't reliably reproduce these failures 
> locally). Per my observations it looks like troublesome code involves 
> {{assertEquals}} that compares double / float values with non-zero delta. 
> This issue was discovered in the course of IGNITE-10927.
> Search in the [PR 5866|https://github.com/apache/ignite/pull/5866] linked to 
> IGNITE-10927 for import of {{junit.framework.Assert}} shows that this 
> involves ZookeeperDiscoverySpiTestHelper, 
> IoStatisticsMetricsLocalMXBeanImplSelfTest, BinaryMarshallerSelfTest, 
> RestMemcacheProtocolSelfTest.
> Search in this PR for static import of {{junit.framework.Assert}} shows 12 
> more involved test classes, CassandraConfigTest, ClientCacheFlagsCodecTest 
> etc.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Created] (IGNITE-11116) replace Assert in particular test classes from junit.framework (JUnit 3) to org.junit (JUnit 4)

2019-01-29 Thread Oleg Ignatenko (JIRA)
Oleg Ignatenko created IGNITE-6:
---

 Summary: replace Assert in particular test classes from 
junit.framework (JUnit 3) to org.junit (JUnit 4)
 Key: IGNITE-6
 URL: https://issues.apache.org/jira/browse/IGNITE-6
 Project: Ignite
  Issue Type: Sub-task
Affects Versions: 2.7
Reporter: Oleg Ignatenko


Some tests start failing on Teamcity when Assert is replaced to one from 
{{org.junit}} package (note I couldn't reliably reproduce these failures 
locally). Per my observations it looks like troublesome code involves 
{{assertEquals}} that compares double / float values with non-zero delta. This 
issue was discovered in the course of IGNITE-10927.

Search in the [PR 5866|https://github.com/apache/ignite/pull/5866] linked to 
IGNITE-10927 for import of {{junit.framework.Assert}} shows that this involves 
ZookeeperDiscoverySpiTestHelper, IoStatisticsMetricsLocalMXBeanImplSelfTest, 
BinaryMarshallerSelfTest, RestMemcacheProtocolSelfTest.

Search in this PR for static import of {{junit.framework.Assert}} shows 12 more 
involved test classes, CassandraConfigTest, ClientCacheFlagsCodecTest etc.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (IGNITE-11116) replace Assert in particular test classes from junit.framework (JUnit 3) to org.junit (JUnit 4)

2019-01-29 Thread Oleg Ignatenko (JIRA)


 [ 
https://issues.apache.org/jira/browse/IGNITE-6?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Oleg Ignatenko updated IGNITE-6:

Labels: MakeTeamcityGreenAgain  (was: )

> replace Assert in particular test classes from junit.framework (JUnit 3) to 
> org.junit (JUnit 4)
> ---
>
> Key: IGNITE-6
> URL: https://issues.apache.org/jira/browse/IGNITE-6
> Project: Ignite
>  Issue Type: Sub-task
>Affects Versions: 2.7
>Reporter: Oleg Ignatenko
>Priority: Major
>  Labels: MakeTeamcityGreenAgain
>
> Some tests start failing on Teamcity when Assert is replaced to one from 
> {{org.junit}} package (note I couldn't reliably reproduce these failures 
> locally). Per my observations it looks like troublesome code involves 
> {{assertEquals}} that compares double / float values with non-zero delta. 
> This issue was discovered in the course of IGNITE-10927.
> Search in the [PR 5866|https://github.com/apache/ignite/pull/5866] linked to 
> IGNITE-10927 for import of {{junit.framework.Assert}} shows that this 
> involves ZookeeperDiscoverySpiTestHelper, 
> IoStatisticsMetricsLocalMXBeanImplSelfTest, BinaryMarshallerSelfTest, 
> RestMemcacheProtocolSelfTest.
> Search in this PR for static import of {{junit.framework.Assert}} shows 12 
> more involved test classes, CassandraConfigTest, ClientCacheFlagsCodecTest 
> etc.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (IGNITE-10951) migration from Junit 3 to 4 phase 2 (follow-up to IGNITE-10173)

2019-01-25 Thread Oleg Ignatenko (JIRA)


[ 
https://issues.apache.org/jira/browse/IGNITE-10951?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16752540#comment-16752540
 ] 

Oleg Ignatenko commented on IGNITE-10951:
-

(i) update of coding guidelines mentioned in description was done - if needed 
refer IGNITE-10178 for more details on that.

> migration from Junit 3 to 4 phase 2 (follow-up to IGNITE-10173)
> ---
>
> Key: IGNITE-10951
> URL: https://issues.apache.org/jira/browse/IGNITE-10951
> Project: Ignite
>  Issue Type: Task
>Affects Versions: 2.8
>Reporter: Oleg Ignatenko
>Assignee: Oleg Ignatenko
>Priority: Major
>  Labels: MakeTeamcityGreenAgain, technical_debt
>
> This is an umbrella ticket for those tasks related to migration from JUnit 3 
> to 4 which assume that all JUnit 3 related code has been already cleaned from 
> the project in prior phase per IGNITE-10173 and IGNITE-10762.
> This involves such tasks as update guidelines as suggested in comments of 
> IGNITE-10178, study of whether to migrate to JUnit 5, removal of scaffolding 
> annotations etc.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Comment Edited] (IGNITE-10178) change tests that fail("Ignite JIRA ticket URL") to @Ignore("Ignite JIRA ticket URL")

2019-01-25 Thread Oleg Ignatenko (JIRA)


[ 
https://issues.apache.org/jira/browse/IGNITE-10178?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16752458#comment-16752458
 ] 

Oleg Ignatenko edited comment on IGNITE-10178 at 1/25/19 6:15 PM:
--

(/) [~Mmuzaf] coding guidelines were updated as you recommended in comment 
above, thanks for suggestion!


was (Author: oignatenko):
(/) [~Mmuzaf] coding guidelines were edited as you recommended in [comment 
above|https://issues.apache.org/jira/browse/IGNITE-10178?focusedCommentId=16716635=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-16716635],
 thanks for suggestion!

> change tests that fail("Ignite JIRA ticket URL") to @Ignore("Ignite JIRA 
> ticket URL")
> -
>
> Key: IGNITE-10178
> URL: https://issues.apache.org/jira/browse/IGNITE-10178
> Project: Ignite
>  Issue Type: Sub-task
>Reporter: Oleg Ignatenko
>Assignee: Oleg Ignatenko
>Priority: Major
> Fix For: 2.8
>
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> Change tests that use {{fail("Ignite JIRA ticket URL")}} to {{@Ignore("Ignite 
> JIRA ticket URL")}}. Do the same change for tests that fail by 
> {{@IgniteIgnore("Ignite JIRA ticket URL")}}, like for example 
> [S3CheckpointSpiStartStopSelfTest.testStartStop|https://github.com/apache/ignite/blob/master/modules/aws/src/test/java/org/apache/ignite/spi/checkpoint/s3/S3CheckpointSpiStartStopSelfTest.java].
>  Also, use 
> [Ignore|http://junit.sourceforge.net/javadoc/org/junit/Ignore.html] to 
> annotate empty test classes in examples that were discovered and re-muted per 
> IGNITE-10174.
> If needed, refer parent task for more details.
> Note this step would better be coordinated with Teamcity and TC bot 
> maintainers because it may substantially impact them.
> -
> Note that tests that are expected to be ignored depending on runtime 
> conditions should be rewritten to use {{Assume}} instead of {{fail}}. So that 
> old code...
> {code}if (someRuntimeCondition())
> fail("Ignite JIRA ticket URL");{code}
> ...will change to
> {code}Assume.assumeFalse("Ignite JIRA ticket URL", 
> someRuntimeCondition());{code}
> (this change can be "extracted" into separate JIRA task if it is more 
> convenient). Readers interested to find more details about how {{Assume}} 
> works can find more details and code snippet [in comments 
> here|https://issues.apache.org/jira/browse/IGNITE-10178?focusedCommentId=16723863=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-16723863].



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Comment Edited] (IGNITE-10178) change tests that fail("Ignite JIRA ticket URL") to @Ignore("Ignite JIRA ticket URL")

2019-01-25 Thread Oleg Ignatenko (JIRA)


[ 
https://issues.apache.org/jira/browse/IGNITE-10178?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16752458#comment-16752458
 ] 

Oleg Ignatenko edited comment on IGNITE-10178 at 1/25/19 6:14 PM:
--

(/) [~Mmuzaf] coding guidelines were edited as you recommended in [comment 
above|https://issues.apache.org/jira/browse/IGNITE-10178?focusedCommentId=16716635=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-16716635],
 thanks for suggestion!


was (Author: oignatenko):
[~Mmuzaf] I tried to edit coding guidelines as you recommended in [comment 
above|https://issues.apache.org/jira/browse/IGNITE-10178?focusedCommentId=16716635=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-16716635]
 but couldn't find a way to edit the page, either I lack necessary privileges 
or maybe missed something in UI.

I saw your name in edits history, could you please help me in that? either 
explain the Ui / access rights or maybe edit the page yourself based on 
examples in this ticket?

> change tests that fail("Ignite JIRA ticket URL") to @Ignore("Ignite JIRA 
> ticket URL")
> -
>
> Key: IGNITE-10178
> URL: https://issues.apache.org/jira/browse/IGNITE-10178
> Project: Ignite
>  Issue Type: Sub-task
>Reporter: Oleg Ignatenko
>Assignee: Oleg Ignatenko
>Priority: Major
> Fix For: 2.8
>
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> Change tests that use {{fail("Ignite JIRA ticket URL")}} to {{@Ignore("Ignite 
> JIRA ticket URL")}}. Do the same change for tests that fail by 
> {{@IgniteIgnore("Ignite JIRA ticket URL")}}, like for example 
> [S3CheckpointSpiStartStopSelfTest.testStartStop|https://github.com/apache/ignite/blob/master/modules/aws/src/test/java/org/apache/ignite/spi/checkpoint/s3/S3CheckpointSpiStartStopSelfTest.java].
>  Also, use 
> [Ignore|http://junit.sourceforge.net/javadoc/org/junit/Ignore.html] to 
> annotate empty test classes in examples that were discovered and re-muted per 
> IGNITE-10174.
> If needed, refer parent task for more details.
> Note this step would better be coordinated with Teamcity and TC bot 
> maintainers because it may substantially impact them.
> -
> Note that tests that are expected to be ignored depending on runtime 
> conditions should be rewritten to use {{Assume}} instead of {{fail}}. So that 
> old code...
> {code}if (someRuntimeCondition())
> fail("Ignite JIRA ticket URL");{code}
> ...will change to
> {code}Assume.assumeFalse("Ignite JIRA ticket URL", 
> someRuntimeCondition());{code}
> (this change can be "extracted" into separate JIRA task if it is more 
> convenient). Readers interested to find more details about how {{Assume}} 
> works can find more details and code snippet [in comments 
> here|https://issues.apache.org/jira/browse/IGNITE-10178?focusedCommentId=16723863=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-16723863].



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (IGNITE-10178) change tests that fail("Ignite JIRA ticket URL") to @Ignore("Ignite JIRA ticket URL")

2019-01-25 Thread Oleg Ignatenko (JIRA)


[ 
https://issues.apache.org/jira/browse/IGNITE-10178?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16752458#comment-16752458
 ] 

Oleg Ignatenko commented on IGNITE-10178:
-

[~Mmuzaf] I tried to edit coding guidelines as you recommended in [comment 
above|https://issues.apache.org/jira/browse/IGNITE-10178?focusedCommentId=16716635=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-16716635]
 but couldn't find a way to edit the page, either I lack necessary privileges 
or maybe missed something in UI.

I saw your name in edits history, could you please help me in that? either 
explain the Ui / access rights or maybe edit the page yourself based on 
examples in this ticket?

> change tests that fail("Ignite JIRA ticket URL") to @Ignore("Ignite JIRA 
> ticket URL")
> -
>
> Key: IGNITE-10178
> URL: https://issues.apache.org/jira/browse/IGNITE-10178
> Project: Ignite
>  Issue Type: Sub-task
>Reporter: Oleg Ignatenko
>Assignee: Oleg Ignatenko
>Priority: Major
> Fix For: 2.8
>
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> Change tests that use {{fail("Ignite JIRA ticket URL")}} to {{@Ignore("Ignite 
> JIRA ticket URL")}}. Do the same change for tests that fail by 
> {{@IgniteIgnore("Ignite JIRA ticket URL")}}, like for example 
> [S3CheckpointSpiStartStopSelfTest.testStartStop|https://github.com/apache/ignite/blob/master/modules/aws/src/test/java/org/apache/ignite/spi/checkpoint/s3/S3CheckpointSpiStartStopSelfTest.java].
>  Also, use 
> [Ignore|http://junit.sourceforge.net/javadoc/org/junit/Ignore.html] to 
> annotate empty test classes in examples that were discovered and re-muted per 
> IGNITE-10174.
> If needed, refer parent task for more details.
> Note this step would better be coordinated with Teamcity and TC bot 
> maintainers because it may substantially impact them.
> -
> Note that tests that are expected to be ignored depending on runtime 
> conditions should be rewritten to use {{Assume}} instead of {{fail}}. So that 
> old code...
> {code}if (someRuntimeCondition())
> fail("Ignite JIRA ticket URL");{code}
> ...will change to
> {code}Assume.assumeFalse("Ignite JIRA ticket URL", 
> someRuntimeCondition());{code}
> (this change can be "extracted" into separate JIRA task if it is more 
> convenient). Readers interested to find more details about how {{Assume}} 
> works can find more details and code snippet [in comments 
> here|https://issues.apache.org/jira/browse/IGNITE-10178?focusedCommentId=16723863=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-16723863].



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Assigned] (IGNITE-10988) Zookeeper test case testCommunicationFailureResolve_KillRandom frequently fails in GridAbstractTest.waitForTopology

2019-01-25 Thread Oleg Ignatenko (JIRA)


 [ 
https://issues.apache.org/jira/browse/IGNITE-10988?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Oleg Ignatenko reassigned IGNITE-10988:
---

Assignee: Oleg Ignatenko

> Zookeeper test case testCommunicationFailureResolve_KillRandom frequently 
> fails in GridAbstractTest.waitForTopology
> ---
>
> Key: IGNITE-10988
> URL: https://issues.apache.org/jira/browse/IGNITE-10988
> Project: Ignite
>  Issue Type: Bug
>Affects Versions: 2.7
>Reporter: Oleg Ignatenko
>Assignee: Oleg Ignatenko
>Priority: Major
>  Labels: MakeTeamcityGreenAgain
>
> Zookeeper test case testCommunicationFailureResolve_KillRandom frequently 
> fails in GridAbstractTest.waitForTopology.
> Teamcity test history in master currently shows "Test runs: 625 total / 251 
> failures" 
> ([link|https://ci.ignite.apache.org/project.html?projectId=IgniteTests24Java8=-3849782382784091413=testDetails).
> Need to find out why is that and whether test case can be improved and made 
> more reliable.
> Typical failure message looks as follows:
> {noformat}
> [2019-01-18 06:57:23,489][ERROR][main][root] Test failed.
> junit.framework.AssertionFailedError
>   at junit.framework.Assert.fail(Assert.java:55)
>   at junit.framework.Assert.assertTrue(Assert.java:22)
>   at junit.framework.Assert.assertTrue(Assert.java:31)
>   at 
> org.apache.ignite.testframework.junits.GridAbstractTest.waitForTopology(GridAbstractTest.java:2294)
>   at 
> org.apache.ignite.spi.discovery.zk.internal.ZookeeperDiscoverySpiTest.waitForTopology(ZookeeperDiscoverySpiTest.java:5103)
>   at 
> org.apache.ignite.spi.discovery.zk.internal.ZookeeperDiscoverySpiTest.testCommunicationFailureResolve_KillRandom(ZookeeperDiscoverySpiTest.java:3145)
>   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>   at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
>   at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>   at java.lang.reflect.Method.invoke(Method.java:498)
>   at 
> org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:47)
>   at 
> org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
>   at 
> org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:44)
>   at 
> org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
>   at 
> org.apache.ignite.testframework.junits.GridAbstractTest$6.run(GridAbstractTest.java:2088)
>   at java.lang.Thread.run(Thread.java:748){noformat}
> 
> Side note per IGNITE-10777 this test case has moved to another class, from 
> {{ZookeeperDiscoverySpiTest}} to {{ZookeeperDiscoverySpiTest5}} (which was 
> further renamed to {{ZookeeperDiscoveryCommunicationFailureTest}}) but that 
> didn't change anything: it still fails frequently and failure message is the 
> same, with the only difference in the new test class name.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (IGNITE-10179) Change new tests root to use @BeforeClass and @AfterClass instead of isFirstTest() and isLastTest()

2019-01-25 Thread Oleg Ignatenko (JIRA)


[ 
https://issues.apache.org/jira/browse/IGNITE-10179?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16752214#comment-16752214
 ] 

Oleg Ignatenko commented on IGNITE-10179:
-

(i) I decided to drop originally attempted approach ([PR 
5878|https://github.com/apache/ignite/pull/5878]) in favor of {{ClassRule}} 
based alternative proposed by [~Pavlukhin] - [PR 
5925|https://github.com/apache/ignite/pull/5925] which looks simpler and much 
more reliable

> Change new tests root to use @BeforeClass and @AfterClass instead of 
> isFirstTest() and isLastTest()
> ---
>
> Key: IGNITE-10179
> URL: https://issues.apache.org/jira/browse/IGNITE-10179
> Project: Ignite
>  Issue Type: Sub-task
>Reporter: Oleg Ignatenko
>Assignee: Oleg Ignatenko
>Priority: Major
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> If needed, refer parent task for more details.
> isFirstTest() and isLastTest() homebrew methods seem to be in 
> GridAbstractTest only because Junit 3 lacked necessary functionality; after 
> migration to Junit 4 these would better changed to use standard API of this 
> framework.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (IGNITE-10958) Migrate from Junit 4 to 5

2019-01-25 Thread Oleg Ignatenko (JIRA)


[ 
https://issues.apache.org/jira/browse/IGNITE-10958?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16752185#comment-16752185
 ] 

Oleg Ignatenko commented on IGNITE-10958:
-

(i) Worth keeping in mind that as of now {{GridAbstractTest}} relies on 
reflectively invoked JUnit 4-specific annotations {{org.junit.Test}} and 
{{org.junit.Ignore}} when messing with test counters. Related ticket: 
IGNITE-10179

> Migrate from Junit 4 to 5
> -
>
> Key: IGNITE-10958
> URL: https://issues.apache.org/jira/browse/IGNITE-10958
> Project: Ignite
>  Issue Type: Task
>Reporter: Ivan Fedotov
>Assignee: Ivan Fedotov
>Priority: Major
> Fix For: 2.8
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> Starting with maven-surefire-plugin version 2.22.0 there is full support for 
> JUnit 5 [1].
> Migration to the JUnit 5 includes multiple steps:
>  1. adding new JUnit dependencies to pom files. By artifactId: 
> junit-jupiter-engine, junit-vintage-engine, junit-platform-launcher, 
> junit-platform-runner
>  2. Replace all imports of old JUnit annotations by the newest: from 
> org.junit.Test to org.junit.jupiter.api.Test
>  3. Change annotations Before, After, BeforeClass, AfterClass, Ignore
>  4. Replace concept rules by extension model where it is necessary: 
> ExpectedException to assertThrows
>  5. Migrate Mockito tests: MockitoJUnitRunner becomes MockitoExtension
>  6. Update the Maven surefire plugin to make it work with JUnit 5 [1].
> Investigation about migration to JUnit5 is provided in the ticket 
> IGNITE-10180.
> [1] 
> [https://maven.apache.org/surefire/maven-surefire-plugin/examples/junit-platform.html]



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (IGNITE-10958) Migrate from Junit 4 to 5

2019-01-25 Thread Oleg Ignatenko (JIRA)


 [ 
https://issues.apache.org/jira/browse/IGNITE-10958?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Oleg Ignatenko updated IGNITE-10958:

Fix Version/s: 2.8

> Migrate from Junit 4 to 5
> -
>
> Key: IGNITE-10958
> URL: https://issues.apache.org/jira/browse/IGNITE-10958
> Project: Ignite
>  Issue Type: Task
>Reporter: Ivan Fedotov
>Assignee: Ivan Fedotov
>Priority: Major
> Fix For: 2.8
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> Starting with maven-surefire-plugin version 2.22.0 there is full support for 
> JUnit 5 [1].
> Migration to the JUnit 5 includes multiple steps:
>  1. adding new JUnit dependencies to pom files. By artifactId: 
> junit-jupiter-engine, junit-vintage-engine, junit-platform-launcher, 
> junit-platform-runner
>  2. Replace all imports of old JUnit annotations by the newest: from 
> org.junit.Test to org.junit.jupiter.api.Test
>  3. Change annotations Before, After, BeforeClass, AfterClass, Ignore
>  4. Replace concept rules by extension model where it is necessary: 
> ExpectedException to assertThrows
>  5. Migrate Mockito tests: MockitoJUnitRunner becomes MockitoExtension
>  6. Update the Maven surefire plugin to make it work with JUnit 5 [1].
> Investigation about migration to JUnit5 is provided in the ticket 
> IGNITE-10180.
> [1] 
> [https://maven.apache.org/surefire/maven-surefire-plugin/examples/junit-platform.html]



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (IGNITE-10178) change tests that fail("Ignite JIRA ticket URL") to @Ignore("Ignite JIRA ticket URL")

2019-01-24 Thread Oleg Ignatenko (JIRA)


 [ 
https://issues.apache.org/jira/browse/IGNITE-10178?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Oleg Ignatenko updated IGNITE-10178:

Issue Type: Sub-task  (was: Task)
Parent: IGNITE-10951

> change tests that fail("Ignite JIRA ticket URL") to @Ignore("Ignite JIRA 
> ticket URL")
> -
>
> Key: IGNITE-10178
> URL: https://issues.apache.org/jira/browse/IGNITE-10178
> Project: Ignite
>  Issue Type: Sub-task
>Reporter: Oleg Ignatenko
>Assignee: Oleg Ignatenko
>Priority: Major
> Fix For: 2.8
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> Change tests that use {{fail("Ignite JIRA ticket URL")}} to {{@Ignore("Ignite 
> JIRA ticket URL")}}. Do the same change for tests that fail by 
> {{@IgniteIgnore("Ignite JIRA ticket URL")}}, like for example 
> [S3CheckpointSpiStartStopSelfTest.testStartStop|https://github.com/apache/ignite/blob/master/modules/aws/src/test/java/org/apache/ignite/spi/checkpoint/s3/S3CheckpointSpiStartStopSelfTest.java].
>  Also, use 
> [Ignore|http://junit.sourceforge.net/javadoc/org/junit/Ignore.html] to 
> annotate empty test classes in examples that were discovered and re-muted per 
> IGNITE-10174.
> If needed, refer parent task for more details.
> Note this step would better be coordinated with Teamcity and TC bot 
> maintainers because it may substantially impact them.
> -
> Note that tests that are expected to be ignored depending on runtime 
> conditions should be rewritten to use {{Assume}} instead of {{fail}}. So that 
> old code...
> {code}if (someRuntimeCondition())
> fail("Ignite JIRA ticket URL");{code}
> ...will change to
> {code}Assume.assumeFalse("Ignite JIRA ticket URL", 
> someRuntimeCondition());{code}
> (this change can be "extracted" into separate JIRA task if it is more 
> convenient). Readers interested to find more details about how {{Assume}} 
> works can find more details and code snippet [in comments 
> here|https://issues.apache.org/jira/browse/IGNITE-10178?focusedCommentId=16723863=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-16723863].



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Resolved] (IGNITE-10173) Gradually move unit tests from Junit 3 to newer version

2019-01-24 Thread Oleg Ignatenko (JIRA)


 [ 
https://issues.apache.org/jira/browse/IGNITE-10173?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Oleg Ignatenko resolved IGNITE-10173.
-
Resolution: Done

> Gradually move unit tests from Junit 3 to newer version
> ---
>
> Key: IGNITE-10173
> URL: https://issues.apache.org/jira/browse/IGNITE-10173
> Project: Ignite
>  Issue Type: Task
>Affects Versions: 2.6
>Reporter: Oleg Ignatenko
>Assignee: Oleg Ignatenko
>Priority: Major
>  Labels: MakeTeamcityGreenAgain, technical_debt
>
> (i) Related dev list discussion: [Is it time to move forward to JUnit4 
> (5)?|http://apache-ignite-developers.2346864.n4.nabble.com/Is-it-time-to-move-forward-to-JUnit4-5-td29608.html]
> Currently unit tests in the project are mix of two versions Junit 3 and 4. 
> This makes it hard to develop and maintain. Making all tests use the same 
> version Junit is intended to address this problem.
> Another reason why migration to newer version is desirable is Junit 4 
> provides developer an option to conveniently mute tests by Ignore annotation 
> while with Junit 3 this could only be done by adding fail and manually muting 
> the test in Teamcity (the latter turned out to be extremely painful when I 
> had to do some things per IGNITE-9884).
> This task is to migrate all tests to single uniform version Junit 4 (with 
> further option to migrate to Junit 5, see also note below).
> The difficulty of migration is that too many tests depend on Junit3-based 
> [GridAbstractTest|https://github.com/apache/ignite/blob/master/modules/core/src/test/java/org/apache/ignite/testframework/junits/GridAbstractTest.java]
>  and its subclasses so that making them all change in a single move would be 
> very tedious and risky. A way to work around this is to create a parallel 
> Junit-4 based "twin" of GridAbstractTest (tentative name 
> {{IgniteAbstractTest}}) and using is move to Junit 4 gradually, smoothly and 
> safely.
> Step by step plan of changes is below (made to sub-tasks under this 
> "umbrella" ticket):
>  # migrate examples tests from Junit 3 to 4
>  This is first task because examples are most publicly visible, relativelly 
> small and least risky part of unit tests in the project.
>  Steps: 1) create Junit-4 based twin of GridAbstractTest (and all needed 
> subclasses), 2) declare GridAbstractTest deprecated with reference to use 
> newer API instead 3) change unit tests in examples to use new API
>  # migrate core module tests from Junit 3 to 4
>  using new API introduced and tested at prior step
>  # migrate non-core modules tests from Junit 3 to 4
>  using new API introduced and tested at prior step
>  # cleanup Junit 3 from the project
>  1) remove deprecated API of GridAbstractTest and its subclasses 2) remove 
> dependencies from Junit 3 in Maven 3) migrate tests that were missed at prior 
> steps, if there are any
>  # change tests that fail("Ignite JIRA ticket URL") to @Ignore("Ignite JIRA 
> ticket URL")
>  Note this step would better be coordinated with Teamcity and TC bot 
> maintainers because it may substantially impact them
>  # Change new tests root to use @BeforeClass and @AfterClass instead of 
> isFirstTest() and isLastTest()
>  these homebrew methods seem to be in GridAbstractTest only because Junit 3 
> lacked necessary functionality; after migration to Junit 4 these would better 
> changed to use standard API of this framework.
>  # Investigate migration from Junit 4 to 5
>  Find out if Junit 5 is mature enough - specifically why maven still uses 
> Junit 4 as default, are there serious reasons for that or not. If it looks 
> okay, create a new JIRA task to migrate.
> 
> Note on migrating to Junit 5. While preparing this task I considered an 
> option to migrate from Junit 3 to 5 instead of 4.
> I dropped that primarily because migration from Junit 3 requires quite a lot 
> of manual changes in the code (changing imports and adding annotations), as 
> opposed to migration from Junit 4 to 5 for which there seem to be options to 
> make most changes automatically (eg IntelliJ seem to provide such an option). 
> Because of that it looks more convenient to split it to separate steps, so 
> that after all tests in the project get to Junit 4 we could do an automated 
> migration to newer version.
> Another thing that made me prefer this way is that I wanted to avoid having 
> three different versions Junit in the project (3, 4, 5), even if that would 
> be temporarily (note that migration from Junit 3 is expected to be manual and 
> quite lengthy, so "temporarily" may mean quite a lot of time really).
> Also note that as pointed in above list of steps we better make some 
> preliminary assessment on whether time has really come to migrate to Junit 5.



--
This message was sent by Atlassian JIRA

[jira] [Updated] (IGNITE-10178) change tests that fail("Ignite JIRA ticket URL") to @Ignore("Ignite JIRA ticket URL")

2019-01-24 Thread Oleg Ignatenko (JIRA)


 [ 
https://issues.apache.org/jira/browse/IGNITE-10178?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Oleg Ignatenko updated IGNITE-10178:

Issue Type: Task  (was: Sub-task)
Parent: (was: IGNITE-10173)

> change tests that fail("Ignite JIRA ticket URL") to @Ignore("Ignite JIRA 
> ticket URL")
> -
>
> Key: IGNITE-10178
> URL: https://issues.apache.org/jira/browse/IGNITE-10178
> Project: Ignite
>  Issue Type: Task
>Reporter: Oleg Ignatenko
>Assignee: Oleg Ignatenko
>Priority: Major
> Fix For: 2.8
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> Change tests that use {{fail("Ignite JIRA ticket URL")}} to {{@Ignore("Ignite 
> JIRA ticket URL")}}. Do the same change for tests that fail by 
> {{@IgniteIgnore("Ignite JIRA ticket URL")}}, like for example 
> [S3CheckpointSpiStartStopSelfTest.testStartStop|https://github.com/apache/ignite/blob/master/modules/aws/src/test/java/org/apache/ignite/spi/checkpoint/s3/S3CheckpointSpiStartStopSelfTest.java].
>  Also, use 
> [Ignore|http://junit.sourceforge.net/javadoc/org/junit/Ignore.html] to 
> annotate empty test classes in examples that were discovered and re-muted per 
> IGNITE-10174.
> If needed, refer parent task for more details.
> Note this step would better be coordinated with Teamcity and TC bot 
> maintainers because it may substantially impact them.
> -
> Note that tests that are expected to be ignored depending on runtime 
> conditions should be rewritten to use {{Assume}} instead of {{fail}}. So that 
> old code...
> {code}if (someRuntimeCondition())
> fail("Ignite JIRA ticket URL");{code}
> ...will change to
> {code}Assume.assumeFalse("Ignite JIRA ticket URL", 
> someRuntimeCondition());{code}
> (this change can be "extracted" into separate JIRA task if it is more 
> convenient). Readers interested to find more details about how {{Assume}} 
> works can find more details and code snippet [in comments 
> here|https://issues.apache.org/jira/browse/IGNITE-10178?focusedCommentId=16723863=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-16723863].



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Resolved] (IGNITE-10762) Migrate test suites from Junit 3 to 4

2019-01-24 Thread Oleg Ignatenko (JIRA)


 [ 
https://issues.apache.org/jira/browse/IGNITE-10762?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Oleg Ignatenko resolved IGNITE-10762.
-
Resolution: Done

> Migrate test suites from Junit 3 to 4
> -
>
> Key: IGNITE-10762
> URL: https://issues.apache.org/jira/browse/IGNITE-10762
> Project: Ignite
>  Issue Type: Task
>Affects Versions: 2.8
>Reporter: Ivan Pavlukhin
>Assignee: Oleg Ignatenko
>Priority: Major
>  Labels: MakeTeamcityGreenAgain, technical_debt
> Fix For: 2.8
>
>
> It seems that {{@Ignore}} annotation is processed incorrectly when a test in 
> Junit 4 style is included into Junit 3 test suite (wrapped into 
> {{JUnit4TestAdapter}}). Actually such test is skipped silently when it is 
> called during a suite execution. So, for full a blown usage of {{@Ignore}} 
> test suites must be migrated to Junit 4 as well. Expected behavior here is 
> reporting that a particular test method was ignored after tests execution. 
> Ignored tests should be visible in CI.
> Apparently such unexpected behavior of {{@Ignore}} can be caused by 
> {{JUnit4TestAdapter}} as it explicitly filters test method marked with this 
> annotation.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (IGNITE-10776) Migrate from JUnit 3 to 4 config variations test suites

2019-01-23 Thread Oleg Ignatenko (JIRA)


[ 
https://issues.apache.org/jira/browse/IGNITE-10776?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16750787#comment-16750787
 ] 

Oleg Ignatenko commented on IGNITE-10776:
-

(i) note regarding possible blockers reported by TC bot above. Teamcity 
currently reports that both suites fail in master exactly the same way: 
[Queries 1 in 
master|https://ci.ignite.apache.org/viewType.html?buildTypeId=IgniteTests24Java8_Queries1=pull%2F5781%2Fhead=buildTypeStatusDiv_IgniteTests24Java8=%3Cdefault%3E]
 / [Queries (Binary Objects Simple Mapper) in 
master|https://ci.ignite.apache.org/viewType.html?buildTypeId=IgniteTests24Java8_BinaryObjectsSimpleMapperQueries=pull%2F5781%2Fhead=buildTypeStatusDiv_IgniteTests24Java8=%3Cdefault%3E]

[~vozerov] mentioned recently in chat that it is a known problem.

As a side note, diffs for this PR show that changes made here have nothing to 
do with above test suites.

> Migrate from JUnit 3 to 4 config variations test suites
> ---
>
> Key: IGNITE-10776
> URL: https://issues.apache.org/jira/browse/IGNITE-10776
> Project: Ignite
>  Issue Type: Sub-task
>Affects Versions: 2.8
>Reporter: Oleg Ignatenko
>Assignee: Oleg Ignatenko
>Priority: Major
>  Labels: MakeTeamcityGreenAgain
> Fix For: 2.8
>
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> This task is to migrate config variations test suites from JUnit 3 to 4.
> If needed, refer parent task comments for more details.
> Note this might be somewhat tough nut to crack design wise since 
> {{JUnit4TestAdapter}} plays a special role in config variations tests, see 
> IGNITE-10739.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (IGNITE-10179) Change new tests root to use @BeforeClass and @AfterClass instead of isFirstTest() and isLastTest()

2019-01-23 Thread Oleg Ignatenko (JIRA)


[ 
https://issues.apache.org/jira/browse/IGNITE-10179?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16750329#comment-16750329
 ] 

Oleg Ignatenko commented on IGNITE-10179:
-

(i) per my preliminary testing, the right way to fix things would be to use 
custom runner with GridAbstractTest instead of RunRule:
{code:java}
/** */
public static class HelperRunner extends BlockJUnit4ClassRunner {
/** */
public HelperRunner(Class klass) throws InitializationError {
super(klass);
}

/** {@inheritDoc} */
@Override protected Statement methodInvoker(final FrameworkMethod mtd, 
Object test) {
return super.methodInvoker(new FrameworkMethod(mtd.getMethod()){
/** */
@Override public Object invokeExplosively(Object target, 
Object... params) throws Throwable {
System.out.println(">>> from HelperRunner methodInvoker 
invokeExplosively: "
+ (target instanceof GridAbstractTest));
//todo find a way to wrap below invokation into 
GridAbstractTest magic

return super.invokeExplosively(target, params); // this is 
invoked after @Before and prior to @After
}
}, test);
}
}{code}
This solution, however, appears to depend on merge of IGNITE-10758 which 
removes scaffolding annotations {{RunWith(JUnit4.class)}} from subclasses 
because otherwise these annotations would break above custom runner.

> Change new tests root to use @BeforeClass and @AfterClass instead of 
> isFirstTest() and isLastTest()
> ---
>
> Key: IGNITE-10179
> URL: https://issues.apache.org/jira/browse/IGNITE-10179
> Project: Ignite
>  Issue Type: Sub-task
>Reporter: Oleg Ignatenko
>Assignee: Oleg Ignatenko
>Priority: Major
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> If needed, refer parent task for more details.
> isFirstTest() and isLastTest() homebrew methods seem to be in 
> GridAbstractTest only because Junit 3 lacked necessary functionality; after 
> migration to Junit 4 these would better changed to use standard API of this 
> framework.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (IGNITE-10776) Migrate from JUnit 3 to 4 config variations test suites

2019-01-23 Thread Oleg Ignatenko (JIRA)


[ 
https://issues.apache.org/jira/browse/IGNITE-10776?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16750024#comment-16750024
 ] 

Oleg Ignatenko commented on IGNITE-10776:
-

(i) in the course of review [~sergey-chugunov] proposed a way to make 
{{DynamicSuite}} code reusable instead of repeating the same boilerplate in 47 
suite classes, I plan to integrate his improvement.

> Migrate from JUnit 3 to 4 config variations test suites
> ---
>
> Key: IGNITE-10776
> URL: https://issues.apache.org/jira/browse/IGNITE-10776
> Project: Ignite
>  Issue Type: Sub-task
>Affects Versions: 2.8
>Reporter: Oleg Ignatenko
>Assignee: Oleg Ignatenko
>Priority: Major
>  Labels: MakeTeamcityGreenAgain
> Fix For: 2.8
>
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> This task is to migrate config variations test suites from JUnit 3 to 4.
> If needed, refer parent task comments for more details.
> Note this might be somewhat tough nut to crack design wise since 
> {{JUnit4TestAdapter}} plays a special role in config variations tests, see 
> IGNITE-10739.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (IGNITE-10208) Verify list of tests after migration to Junit 4 against some prior reference (follow-up to IGNITE-10177)

2019-01-23 Thread Oleg Ignatenko (JIRA)


[ 
https://issues.apache.org/jira/browse/IGNITE-10208?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16749739#comment-16749739
 ] 

Oleg Ignatenko commented on IGNITE-10208:
-

(i) an example showing that migration could introduce regression of the kind 
that would be verified by proposed check is IGNITE-11038 (particular regression 
reported in this example has been discovered and fixed but we need a more 
thorough check)

> Verify list of tests after migration to Junit 4 against some prior reference  
> (follow-up to IGNITE-10177)
> -
>
> Key: IGNITE-10208
> URL: https://issues.apache.org/jira/browse/IGNITE-10208
> Project: Ignite
>  Issue Type: Sub-task
>Reporter: Oleg Ignatenko
>Priority: Major
>  Labels: MakeTeamcityGreenAgain
>
> Migration from Junit 3 to 4 involves manually adding {{@Test}} annotation to 
> existing test cases. Since Ignite contains many thousands test cases there is 
> a substantial risk that we may miss some of these in such a transition.
> In order to mitigate the risk, suggest to do a check after completion of 
> IGNITE-10177 and IGNITE-10762 - somehow generate list of tests in the project 
> and compare it against similar list of tests of some "known good" prior 
> project version (at this point, 2.7 release branch looks like a good 
> candidate for such a reference).
> If comparison shows that some test cases from older version are missed in 
> newer one, open a ticket to investigate that.
> Comparison is better done using [nightly 
> run-all|https://ci.ignite.apache.org/project.html?projectId=IgniteTests24Java8]
>  test set as it is the most comprehensive.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (IGNITE-11038) recover IgniteCacheTestSuite3 that was lost because of changes made per IGNITE-10796

2019-01-23 Thread Oleg Ignatenko (JIRA)


[ 
https://issues.apache.org/jira/browse/IGNITE-11038?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16749726#comment-16749726
 ] 

Oleg Ignatenko commented on IGNITE-11038:
-

[~DmitriyGovorukhin] - I attached [Cache 3 run 
results|https://ci.ignite.apache.org/viewLog.html?buildId=2879646=queuedBuildOverviewTab]
 as you suggested

> recover IgniteCacheTestSuite3 that was lost because of changes made per 
> IGNITE-10796
> 
>
> Key: IGNITE-11038
> URL: https://issues.apache.org/jira/browse/IGNITE-11038
> Project: Ignite
>  Issue Type: Bug
>Affects Versions: 2.8
>Reporter: Oleg Ignatenko
>Assignee: Oleg Ignatenko
>Priority: Major
>  Labels: MakeTeamcityGreenAgain
> Fix For: 2.8
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> This bug was reported at dev list 
> [here|http://apache-ignite-developers.2346864.n4.nabble.com/IgniteCacheTestSuite3-on-TeamCity-tt40240.html].
> Need to recover IgniteCacheTestSuite3 that was lost because of changes made 
> per IGNITE-10796.
> Specifically, in file {{IgniteBinaryObjectsCacheTestSuite3.java}} line 64 
> currently reads: 
> {code}List> suite = new ArrayList<>(); {code}
> Above is wrong, correct code at this line should be: 
> {code}List> suite = new 
> ArrayList<>(IgniteCacheTestSuite3.suite(ignoredTests)); {code}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Assigned] (IGNITE-10758) remove from tests scaffolding annotations "@RunWith(JUnit4.class)" and their respective imports

2019-01-23 Thread Oleg Ignatenko (JIRA)


 [ 
https://issues.apache.org/jira/browse/IGNITE-10758?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Oleg Ignatenko reassigned IGNITE-10758:
---

Assignee: Oleg Ignatenko

> remove from tests scaffolding annotations "@RunWith(JUnit4.class)" and their 
> respective imports
> ---
>
> Key: IGNITE-10758
> URL: https://issues.apache.org/jira/browse/IGNITE-10758
> Project: Ignite
>  Issue Type: Sub-task
>Affects Versions: 2.8
>Reporter: Oleg Ignatenko
>Assignee: Oleg Ignatenko
>Priority: Major
>  Labels: MakeTeamcityGreenAgain
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> In the course of IGNITE-10175 and IGNITE-10176 many test classes were 
> annotated {{@RunWith(JUnit4.class)}}. This was necessary to allow gradual 
> switching to JUnit 4 to let classes run under the version that worked for 
> these.
> After IGNITE-10177 is over, these scaffolding annotations will be not needed 
> anymore (and will become even somewhat damaging by misleading readers to 
> think that they serve some real purpose).
> The task is to remove these annotations and respective import statements 
> after IGNITE-10177 is merged to master. Note it was initially planned as a 
> part of IGNITE-10177 but per discussion with [~EdShangGG] we decided that it 
> will be more convenient to do this in a separate ticket because this will 
> make changes much easier to review, test and merge.
> (!) Thing worth paying attention is that mentioned annotations should be kept 
> in one case - namely in root test class {{GridAbstractTest}} because over 
> there these are necessary until JUnit 3 dependencies are wiped out from 
> remaining cases listed in IGNITE-10739.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (IGNITE-11038) recover IgniteCacheTestSuite3 that was lost because of changes made per IGNITE-10796

2019-01-23 Thread Oleg Ignatenko (JIRA)


[ 
https://issues.apache.org/jira/browse/IGNITE-11038?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16749665#comment-16749665
 ] 

Oleg Ignatenko commented on IGNITE-11038:
-

[~sboikov] - here is a ticket I promised at dev list today

> recover IgniteCacheTestSuite3 that was lost because of changes made per 
> IGNITE-10796
> 
>
> Key: IGNITE-11038
> URL: https://issues.apache.org/jira/browse/IGNITE-11038
> Project: Ignite
>  Issue Type: Bug
>Affects Versions: 2.8
>Reporter: Oleg Ignatenko
>Assignee: Oleg Ignatenko
>Priority: Major
>  Labels: MakeTeamcityGreenAgain
> Fix For: 2.8
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> This bug was reported at dev list 
> [here|http://apache-ignite-developers.2346864.n4.nabble.com/IgniteCacheTestSuite3-on-TeamCity-tt40240.html].
> Need to recover IgniteCacheTestSuite3 that was lost because of changes made 
> per IGNITE-10796.
> Specifically, in file {{IgniteBinaryObjectsCacheTestSuite3.java}} line 64 
> currently reads: 
> {code}List> suite = new ArrayList<>(); {code}
> Above is wrong, correct code at this line should be: 
> {code}List> suite = new 
> ArrayList<>(IgniteCacheTestSuite3.suite(ignoredTests)); {code}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (IGNITE-11038) recover IgniteCacheTestSuite3 that was lost because of changes made per IGNITE-10796

2019-01-23 Thread Oleg Ignatenko (JIRA)


 [ 
https://issues.apache.org/jira/browse/IGNITE-11038?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Oleg Ignatenko updated IGNITE-11038:

Ignite Flags:   (was: Docs Required)

> recover IgniteCacheTestSuite3 that was lost because of changes made per 
> IGNITE-10796
> 
>
> Key: IGNITE-11038
> URL: https://issues.apache.org/jira/browse/IGNITE-11038
> Project: Ignite
>  Issue Type: Bug
>Affects Versions: 2.8
>Reporter: Oleg Ignatenko
>Assignee: Oleg Ignatenko
>Priority: Major
> Fix For: 2.8
>
>
> This bug was reported at dev list 
> [here|http://apache-ignite-developers.2346864.n4.nabble.com/IgniteCacheTestSuite3-on-TeamCity-tt40240.html].
> Need to recover IgniteCacheTestSuite3 that was lost because of changes made 
> per IGNITE-10796.
> Specifically, in file {{IgniteBinaryObjectsCacheTestSuite3.java}} line 64 
> currently reads: 
> {code}List> suite = new ArrayList<>(); {code}
> Above is wrong, correct code at this line should be: 
> {code}List> suite = new 
> ArrayList<>(IgniteCacheTestSuite3.suite(ignoredTests)); {code}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (IGNITE-11038) recover IgniteCacheTestSuite3 that was lost because of changes made per IGNITE-10796

2019-01-23 Thread Oleg Ignatenko (JIRA)


 [ 
https://issues.apache.org/jira/browse/IGNITE-11038?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Oleg Ignatenko updated IGNITE-11038:

Fix Version/s: 2.8

> recover IgniteCacheTestSuite3 that was lost because of changes made per 
> IGNITE-10796
> 
>
> Key: IGNITE-11038
> URL: https://issues.apache.org/jira/browse/IGNITE-11038
> Project: Ignite
>  Issue Type: Bug
>Affects Versions: 2.8
>Reporter: Oleg Ignatenko
>Assignee: Oleg Ignatenko
>Priority: Major
> Fix For: 2.8
>
>
> This bug was reported at dev list 
> [here|http://apache-ignite-developers.2346864.n4.nabble.com/IgniteCacheTestSuite3-on-TeamCity-tt40240.html].
> Need to recover IgniteCacheTestSuite3 that was lost because of changes made 
> per IGNITE-10796.
> Specifically, in file {{IgniteBinaryObjectsCacheTestSuite3.java}} line 64 
> currently reads: 
> {code}List> suite = new ArrayList<>(); {code}
> Above is wrong, correct code at this line should be: 
> {code}List> suite = new 
> ArrayList<>(IgniteCacheTestSuite3.suite(ignoredTests)); {code}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (IGNITE-11038) recover IgniteCacheTestSuite3 that was lost because of changes made per IGNITE-10796

2019-01-23 Thread Oleg Ignatenko (JIRA)


 [ 
https://issues.apache.org/jira/browse/IGNITE-11038?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Oleg Ignatenko updated IGNITE-11038:

Labels: MakeTeamcityGreenAgain  (was: )

> recover IgniteCacheTestSuite3 that was lost because of changes made per 
> IGNITE-10796
> 
>
> Key: IGNITE-11038
> URL: https://issues.apache.org/jira/browse/IGNITE-11038
> Project: Ignite
>  Issue Type: Bug
>Affects Versions: 2.8
>Reporter: Oleg Ignatenko
>Assignee: Oleg Ignatenko
>Priority: Major
>  Labels: MakeTeamcityGreenAgain
> Fix For: 2.8
>
>
> This bug was reported at dev list 
> [here|http://apache-ignite-developers.2346864.n4.nabble.com/IgniteCacheTestSuite3-on-TeamCity-tt40240.html].
> Need to recover IgniteCacheTestSuite3 that was lost because of changes made 
> per IGNITE-10796.
> Specifically, in file {{IgniteBinaryObjectsCacheTestSuite3.java}} line 64 
> currently reads: 
> {code}List> suite = new ArrayList<>(); {code}
> Above is wrong, correct code at this line should be: 
> {code}List> suite = new 
> ArrayList<>(IgniteCacheTestSuite3.suite(ignoredTests)); {code}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Assigned] (IGNITE-11038) recover IgniteCacheTestSuite3 that was lost because of changes made per IGNITE-10796

2019-01-23 Thread Oleg Ignatenko (JIRA)


 [ 
https://issues.apache.org/jira/browse/IGNITE-11038?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Oleg Ignatenko reassigned IGNITE-11038:
---

Assignee: Oleg Ignatenko

> recover IgniteCacheTestSuite3 that was lost because of changes made per 
> IGNITE-10796
> 
>
> Key: IGNITE-11038
> URL: https://issues.apache.org/jira/browse/IGNITE-11038
> Project: Ignite
>  Issue Type: Bug
>Affects Versions: 2.8
>Reporter: Oleg Ignatenko
>Assignee: Oleg Ignatenko
>Priority: Major
>
> This bug was reported at dev list 
> [here|http://apache-ignite-developers.2346864.n4.nabble.com/IgniteCacheTestSuite3-on-TeamCity-tt40240.html].
> Need to recover IgniteCacheTestSuite3 that was lost because of changes made 
> per IGNITE-10796.
> Specifically, in file {{IgniteBinaryObjectsCacheTestSuite3.java}} line 64 
> currently reads: 
> {code}List> suite = new ArrayList<>(); {code}
> Above is wrong, correct code at this line should be: 
> {code}List> suite = new 
> ArrayList<>(IgniteCacheTestSuite3.suite(ignoredTests)); {code}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Created] (IGNITE-11038) recover IgniteCacheTestSuite3 that was lost because of changes made per IGNITE-10796

2019-01-23 Thread Oleg Ignatenko (JIRA)
Oleg Ignatenko created IGNITE-11038:
---

 Summary: recover IgniteCacheTestSuite3 that was lost because of 
changes made per IGNITE-10796
 Key: IGNITE-11038
 URL: https://issues.apache.org/jira/browse/IGNITE-11038
 Project: Ignite
  Issue Type: Bug
Affects Versions: 2.8
Reporter: Oleg Ignatenko


This bug was reported at dev list 
[here|http://apache-ignite-developers.2346864.n4.nabble.com/IgniteCacheTestSuite3-on-TeamCity-tt40240.html].

Need to recover IgniteCacheTestSuite3 that was lost because of changes made per 
IGNITE-10796.

Specifically, in file {{IgniteBinaryObjectsCacheTestSuite3.java}} line 64 
currently reads: 

{code}List> suite = new ArrayList<>(); {code}

Above is wrong, correct code at this line should be: 

{code}List> suite = new 
ArrayList<>(IgniteCacheTestSuite3.suite(ignoredTests)); {code}





--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (IGNITE-10629) Migration follow up: check for old style tests that could be slipped through in transition period

2019-01-22 Thread Oleg Ignatenko (JIRA)


[ 
https://issues.apache.org/jira/browse/IGNITE-10629?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16749614#comment-16749614
 ] 

Oleg Ignatenko commented on IGNITE-10629:
-

(i) to address the second part suggested in description, I searched master and 
found no classes extending JUnit 3 {{TestCase}} class. These were probably all 
cleaned up in prior migration changes.

I performed two checks to search for mentioned classes, one was usage search 
and another was search for plain text {{"junit.framework.TestCase"}} string. 
Both searches got empty results.

> Migration follow up: check for old style tests that could be slipped through 
> in transition period
> -
>
> Key: IGNITE-10629
> URL: https://issues.apache.org/jira/browse/IGNITE-10629
> Project: Ignite
>  Issue Type: Sub-task
>Affects Versions: 2.8
>Reporter: Oleg Ignatenko
>Assignee: Oleg Ignatenko
>Priority: Major
>  Labels: MakeTeamcityGreenAgain
> Attachments: junit_inspections.xml
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> We need to account for risk that while tests are migrating some commits may 
> by mistake slip in old style test cases - that will be ignored by JUnit 4.
> In order to address possible issues of that kind, do the following a week or 
> two after IGNITE-10177 is merged to master: run the IntelliJ inspection 
> called "old style Junit test method in JUnit 4 class", review report and fix 
> discovered problems if there are any.
> For the reference, my version of IDE explains this inspection as follows:
>  {quote}Reports JUnit 3 style test methods which are located inside a class 
> which does not extend the abstract JUnit 3 class TestCase and contains JUnit 
> 4/JUnit 5 @Test annotated methods.{quote}
>  (note concerns mentioned in this ticket were originally raised at dev list: 
> [here|http://apache-ignite-developers.2346864.n4.nabble.com/Is-it-time-to-move-forward-to-JUnit4-5-tp29608p39300.html])
> -
> Another part of this task is to find (and rework if there are still any) 
> classes that still extend {{junit.framework.TestCase}}. These classes are 
> technically legal but after vast majority have been migrated they became 
> harmful from maintenance perspective, by forcing readers of their code learn 
> details of obsolete framework version that lacks many important features. One 
> particularly bad thing about such tests is that they deprive maintainers 
> standard ways to suppress test execution using modern JUnit API of Ignore and 
> Assume.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Comment Edited] (IGNITE-10776) Migrate from JUnit 3 to 4 config variations test suites

2019-01-21 Thread Oleg Ignatenko (JIRA)


[ 
https://issues.apache.org/jira/browse/IGNITE-10776?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16748086#comment-16748086
 ] 

Oleg Ignatenko edited comment on IGNITE-10776 at 1/21/19 5:53 PM:
--

(i) per discussion with reviewer ([~EdShangGG]) originally submitted solution 
has been deeply reworked to use javassist, somewhat similar to how it is done 
in IgniteExamplesMLTestSuite


was (Author: oignatenko):
(i) per discussion with reviewer ([~EdShangGG]) originally submitted solution 
has been reworked to use javassist, somewhat similarly to how it was done in 
IgniteExamplesMLTestSuite

> Migrate from JUnit 3 to 4 config variations test suites
> ---
>
> Key: IGNITE-10776
> URL: https://issues.apache.org/jira/browse/IGNITE-10776
> Project: Ignite
>  Issue Type: Sub-task
>Affects Versions: 2.8
>Reporter: Oleg Ignatenko
>Assignee: Oleg Ignatenko
>Priority: Major
>  Labels: MakeTeamcityGreenAgain
> Fix For: 2.8
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> This task is to migrate config variations test suites from JUnit 3 to 4.
> If needed, refer parent task comments for more details.
> Note this might be somewhat tough nut to crack design wise since 
> {{JUnit4TestAdapter}} plays a special role in config variations tests, see 
> IGNITE-10739.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (IGNITE-10776) Migrate from JUnit 3 to 4 config variations test suites

2019-01-21 Thread Oleg Ignatenko (JIRA)


[ 
https://issues.apache.org/jira/browse/IGNITE-10776?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16748086#comment-16748086
 ] 

Oleg Ignatenko commented on IGNITE-10776:
-

(i) per discussion with reviewer ([~EdShangGG]) originally submitted solution 
has been reworked to use javassist, somewhat similarly to how it was done in 
IgniteExamplesMLTestSuite

> Migrate from JUnit 3 to 4 config variations test suites
> ---
>
> Key: IGNITE-10776
> URL: https://issues.apache.org/jira/browse/IGNITE-10776
> Project: Ignite
>  Issue Type: Sub-task
>Affects Versions: 2.8
>Reporter: Oleg Ignatenko
>Assignee: Oleg Ignatenko
>Priority: Major
>  Labels: MakeTeamcityGreenAgain
> Fix For: 2.8
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> This task is to migrate config variations test suites from JUnit 3 to 4.
> If needed, refer parent task comments for more details.
> Note this might be somewhat tough nut to crack design wise since 
> {{JUnit4TestAdapter}} plays a special role in config variations tests, see 
> IGNITE-10739.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (IGNITE-10927) Relieve JUnit3TestLegacySupport from inheriting deprecated junit.framework.Assert (follow-up to IGNITE-10177)

2019-01-20 Thread Oleg Ignatenko (JIRA)


 [ 
https://issues.apache.org/jira/browse/IGNITE-10927?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Oleg Ignatenko updated IGNITE-10927:

Fix Version/s: 2.8

> Relieve JUnit3TestLegacySupport from inheriting deprecated 
> junit.framework.Assert (follow-up to IGNITE-10177)
> -
>
> Key: IGNITE-10927
> URL: https://issues.apache.org/jira/browse/IGNITE-10927
> Project: Ignite
>  Issue Type: Sub-task
>Affects Versions: 2.7
>Reporter: Oleg Ignatenko
>Assignee: Oleg Ignatenko
>Priority: Major
> Fix For: 2.8
>
>  Time Spent: 0.5h
>  Remaining Estimate: 0h
>
> {{JUnit3TestLegacySupport}} currently inherits deprecated 
> {{junit.framework.Assert}}. This was done only in order to minimize risky 
> code changes when tests were migrating from Junit 3, after 
> {{GridAbstractTest}} has dropped inheriting {{junit.framework.TestCase}}.
> Now that migration is over it is less risky to cleanup project from 
> deprecated assert methods and drop the harmful inheritance. In order to make 
> this smoother and minimize amount of test changes, after inheritance is 
> dropped, {{JUnit3TestLegacySupport}} should be extended with a set of 
> "temporary patch" methods that would delegate most popular assertions used by 
> subclasses to respective methods of {{org.junit.Assert}}.
> Mentioned temporary patch methods, in turn, should respective 
> {{2deprecation}} notices in javadocs that would encourage developers to 
> (safely and gradually) change them to direct invocations and static imports 
> of respective Assert methods instead of using those inherited from 
> superclass. These patch methods should be declared {{protected final}} or 
> {{protected static}}, in order to minimize their applicability and prevent 
> them spreading more than intended. (as a side note, experimenting has shown 
> that use of {{@Deprecated}} annotation is not feasible as it deprives 
> developers an option to use static imports)



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (IGNITE-10758) remove from tests scaffolding annotations "@RunWith(JUnit4.class)" and their respective imports

2019-01-18 Thread Oleg Ignatenko (JIRA)


[ 
https://issues.apache.org/jira/browse/IGNITE-10758?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16746971#comment-16746971
 ] 

Oleg Ignatenko commented on IGNITE-10758:
-

(i) despite involving many files, this change is easy to review and merge:

* Review recommendations: 1) make diff into some text file 2) remove from text 
file all lines containing {{@RunWith(JUnit4.class}} and respective imports 3) 
verify that there are no diffs anymore
* Merge recommendations: just accept everything from master as is. If some 
isolated scaffolding annotations leak back in, ignore them: these are harmless 
and can be removed manually later if desired

> remove from tests scaffolding annotations "@RunWith(JUnit4.class)" and their 
> respective imports
> ---
>
> Key: IGNITE-10758
> URL: https://issues.apache.org/jira/browse/IGNITE-10758
> Project: Ignite
>  Issue Type: Sub-task
>Affects Versions: 2.8
>Reporter: Oleg Ignatenko
>Priority: Major
>  Labels: MakeTeamcityGreenAgain
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> In the course of IGNITE-10175 and IGNITE-10176 many test classes were 
> annotated {{@RunWith(JUnit4.class)}}. This was necessary to allow gradual 
> switching to JUnit 4 to let classes run under the version that worked for 
> these.
> After IGNITE-10177 is over, these scaffolding annotations will be not needed 
> anymore (and will become even somewhat damaging by misleading readers to 
> think that they serve some real purpose).
> The task is to remove these annotations and respective import statements 
> after IGNITE-10177 is merged to master. Note it was initially planned as a 
> part of IGNITE-10177 but per discussion with [~EdShangGG] we decided that it 
> will be more convenient to do this in a separate ticket because this will 
> make changes much easier to review, test and merge.
> (!) Thing worth paying attention is that mentioned annotations should be kept 
> in one case - namely in root test class {{GridAbstractTest}} because over 
> there these are necessary until JUnit 3 dependencies are wiped out from 
> remaining cases listed in IGNITE-10739.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Comment Edited] (IGNITE-10927) Relieve JUnit3TestLegacySupport from inheriting deprecated junit.framework.Assert (follow-up to IGNITE-10177)

2019-01-18 Thread Oleg Ignatenko (JIRA)


[ 
https://issues.apache.org/jira/browse/IGNITE-10927?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16746773#comment-16746773
 ] 

Oleg Ignatenko edited comment on IGNITE-10927 at 1/18/19 11:43 PM:
---

(i) upon closer inspection this task turned out much larger than anticipated.

The reason for that is that many of current tests rely on catching deprecated 
{{junit.framework.AssertionFaledError}} to determine success or failure 
(ClusterNodeMetricsUpdateTest, IgniteClientReconnectCacheTest, 
GridCacheAbstractFullApiSelfTest, IgniteCacheConfigVariationsFullApiTest etc).

As a result, straightforward attempt to delegate assertions to respective 
methods of {{org.junit.Assert}} started failing tests like mentioned above 
because newer assertions throw different kind of error when failed 
({{java.lang.AssertionError}}).

Above means that first step prior to delegating assertions to proper class in 
JUnit 4 should be (potentially risky and massive) rework of multiple existing 
tests that rely on catching outdated AssertionFailedError.

Note that although AssertionError is a superclass of AssertionFailedError, my 
trial attempt to simply replace it in tests that use deprecated error class in 
[PR 5840|https://github.com/apache/ignite/pull/5840] has led to multiple test 
failures at teamcity meaning that this could still be troublesome.


was (Author: oignatenko):
(i) upon closer inspection this task turned out much larger than anticipated.

The reason for that is that many of current tests rely on catching deprecated 
{{junit.framework.AssertionFaledError}} to determine success or failure 
(ClusterNodeMetricsUpdateTest, IgniteClientReconnectCacheTest, 
GridCacheAbstractFullApiSelfTest, IgniteCacheConfigVariationsFullApiTest etc).

As a result, straightforward attempt to delegate assertions to respective 
methods of {{org.junit.Assert}} started failing tests like mentioned above 
because newer assertions throw different kind of error when failed 
({{java.lang.AssertionError}}).

Above means that first step prior to delegating assertions to proper class in 
JUnit 4 should be (potentially risky and massive) rework of multiple existing 
tests that rely on catching outdated AssertionFailedError.

Note that although AssertionError is a superclass of AssertionFailedError, my 
trial attempt to simply replace it in tests that use deprecated error class has 
led to multiple test failures at teamcity meaning that this could still be 
troublesome.

> Relieve JUnit3TestLegacySupport from inheriting deprecated 
> junit.framework.Assert (follow-up to IGNITE-10177)
> -
>
> Key: IGNITE-10927
> URL: https://issues.apache.org/jira/browse/IGNITE-10927
> Project: Ignite
>  Issue Type: Sub-task
>Affects Versions: 2.7
>Reporter: Oleg Ignatenko
>Assignee: Oleg Ignatenko
>Priority: Major
>  Time Spent: 0.5h
>  Remaining Estimate: 0h
>
> {{JUnit3TestLegacySupport}} currently inherits deprecated 
> {{junit.framework.Assert}}. This was done only in order to minimize risky 
> code changes when tests were migrating from Junit 3, after 
> {{GridAbstractTest}} has dropped inheriting {{junit.framework.TestCase}}.
> Now that migration is over it is less risky to cleanup project from 
> deprecated assert methods and drop the harmful inheritance. In order to make 
> this smoother and minimize amount of test changes, after inheritance is 
> dropped, {{JUnit3TestLegacySupport}} should be extended with a set of 
> "temporary patch" methods that would delegate most popular assertions used by 
> subclasses to respective methods of {{org.junit.Assert}}.
> Mentioned temporary patch methods, in turn, should respective 
> {{2deprecation}} notices in javadocs that would encourage developers to 
> (safely and gradually) change them to direct invocations and static imports 
> of respective Assert methods instead of using those inherited from 
> superclass. These patch methods should be declared {{protected final}} or 
> {{protected static}}, in order to minimize their applicability and prevent 
> them spreading more than intended. (as a side note, experimenting has shown 
> that use of {{@Deprecated}} annotation is not feasible as it deprives 
> developers an option to use static imports)



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (IGNITE-10927) Relieve JUnit3TestLegacySupport from inheriting deprecated junit.framework.Assert (follow-up to IGNITE-10177)

2019-01-18 Thread Oleg Ignatenko (JIRA)


[ 
https://issues.apache.org/jira/browse/IGNITE-10927?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16746773#comment-16746773
 ] 

Oleg Ignatenko commented on IGNITE-10927:
-

(i) upon closer inspection this task turned out much larger than anticipated.

The reason for that is that many of current tests rely on catching deprecated 
{{junit.framework.AssertionFaledError}} to determine success or failure 
(ClusterNodeMetricsUpdateTest, IgniteClientReconnectCacheTest, 
GridCacheAbstractFullApiSelfTest, IgniteCacheConfigVariationsFullApiTest etc).

As a result, straightforward attempt to delegate assertions to respective 
methods of {{org.junit.Assert}} started failing tests like mentioned above 
because newer assertions throw different kind of error when failed 
({{java.lang.AssertionError}}).

Above means that first step prior to delegating assertions to proper class in 
JUnit 4 should be (potentially risky and massive) rework of multiple existing 
tests that rely on catching outdated AssertionFailedError.

Note that although AssertionError is a superclass of AssertionFailedError, my 
trial attempt to simply replace it in tests that use deprecated error class has 
led to multiple test failures at teamcity meaning that this could still be 
troublesome.

> Relieve JUnit3TestLegacySupport from inheriting deprecated 
> junit.framework.Assert (follow-up to IGNITE-10177)
> -
>
> Key: IGNITE-10927
> URL: https://issues.apache.org/jira/browse/IGNITE-10927
> Project: Ignite
>  Issue Type: Sub-task
>Affects Versions: 2.7
>Reporter: Oleg Ignatenko
>Assignee: Oleg Ignatenko
>Priority: Major
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> {{JUnit3TestLegacySupport}} currently inherits deprecated 
> {{junit.framework.Assert}}. This was done only in order to minimize risky 
> code changes when tests were migrating from Junit 3, after 
> {{GridAbstractTest}} has dropped inheriting {{junit.framework.TestCase}}.
> Now that migration is over it is less risky to cleanup project from 
> deprecated assert methods and drop the harmful inheritance. In order to make 
> this smoother and minimize amount of test changes, after inheritance is 
> dropped, {{JUnit3TestLegacySupport}} should be extended with a set of 
> "temporary patch" methods that would delegate most popular assertions used by 
> subclasses to respective methods of {{org.junit.Assert}}.
> Mentioned temporary patch methods, in turn, should respective 
> {{2deprecation}} notices in javadocs that would encourage developers to 
> (safely and gradually) change them to direct invocations and static imports 
> of respective Assert methods instead of using those inherited from 
> superclass. These patch methods should be declared {{protected final}} or 
> {{protected static}}, in order to minimize their applicability and prevent 
> them spreading more than intended. (as a side note, experimenting has shown 
> that use of {{@Deprecated}} annotation is not feasible as it deprives 
> developers an option to use static imports)



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (IGNITE-10927) Relieve JUnit3TestLegacySupport from inheriting deprecated junit.framework.Assert (follow-up to IGNITE-10177)

2019-01-18 Thread Oleg Ignatenko (JIRA)


 [ 
https://issues.apache.org/jira/browse/IGNITE-10927?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Oleg Ignatenko updated IGNITE-10927:

Issue Type: Sub-task  (was: Task)
Parent: IGNITE-10951

> Relieve JUnit3TestLegacySupport from inheriting deprecated 
> junit.framework.Assert (follow-up to IGNITE-10177)
> -
>
> Key: IGNITE-10927
> URL: https://issues.apache.org/jira/browse/IGNITE-10927
> Project: Ignite
>  Issue Type: Sub-task
>Affects Versions: 2.7
>Reporter: Oleg Ignatenko
>Assignee: Oleg Ignatenko
>Priority: Major
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> {{JUnit3TestLegacySupport}} currently inherits deprecated 
> {{junit.framework.Assert}}. This was done only in order to minimize risky 
> code changes when tests were migrating from Junit 3, after 
> {{GridAbstractTest}} has dropped inheriting {{junit.framework.TestCase}}.
> Now that migration is over it is less risky to cleanup project from 
> deprecated assert methods and drop the harmful inheritance. In order to make 
> this smoother and minimize amount of test changes, after inheritance is 
> dropped, {{JUnit3TestLegacySupport}} should be extended with a set of 
> "temporary patch" methods that would delegate most popular assertions used by 
> subclasses to respective methods of {{org.junit.Assert}}.
> Mentioned temporary patch methods, in turn, should respective 
> {{2deprecation}} notices in javadocs that would encourage developers to 
> (safely and gradually) change them to direct invocations and static imports 
> of respective Assert methods instead of using those inherited from 
> superclass. These patch methods should be declared {{protected final}} or 
> {{protected static}}, in order to minimize their applicability and prevent 
> them spreading more than intended. (as a side note, experimenting has shown 
> that use of {{@Deprecated}} annotation is not feasible as it deprives 
> developers an option to use static imports)



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (IGNITE-10927) Relieve JUnit3TestLegacySupport from inheriting deprecated junit.framework.Assert (follow-up to IGNITE-10177)

2019-01-18 Thread Oleg Ignatenko (JIRA)


 [ 
https://issues.apache.org/jira/browse/IGNITE-10927?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Oleg Ignatenko updated IGNITE-10927:

Issue Type: Task  (was: Sub-task)
Parent: (was: IGNITE-10173)

> Relieve JUnit3TestLegacySupport from inheriting deprecated 
> junit.framework.Assert (follow-up to IGNITE-10177)
> -
>
> Key: IGNITE-10927
> URL: https://issues.apache.org/jira/browse/IGNITE-10927
> Project: Ignite
>  Issue Type: Task
>Affects Versions: 2.7
>Reporter: Oleg Ignatenko
>Assignee: Oleg Ignatenko
>Priority: Major
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> {{JUnit3TestLegacySupport}} currently inherits deprecated 
> {{junit.framework.Assert}}. This was done only in order to minimize risky 
> code changes when tests were migrating from Junit 3, after 
> {{GridAbstractTest}} has dropped inheriting {{junit.framework.TestCase}}.
> Now that migration is over it is less risky to cleanup project from 
> deprecated assert methods and drop the harmful inheritance. In order to make 
> this smoother and minimize amount of test changes, after inheritance is 
> dropped, {{JUnit3TestLegacySupport}} should be extended with a set of 
> "temporary patch" methods that would delegate most popular assertions used by 
> subclasses to respective methods of {{org.junit.Assert}}.
> Mentioned temporary patch methods, in turn, should respective 
> {{2deprecation}} notices in javadocs that would encourage developers to 
> (safely and gradually) change them to direct invocations and static imports 
> of respective Assert methods instead of using those inherited from 
> superclass. These patch methods should be declared {{protected final}} or 
> {{protected static}}, in order to minimize their applicability and prevent 
> them spreading more than intended. (as a side note, experimenting has shown 
> that use of {{@Deprecated}} annotation is not feasible as it deprives 
> developers an option to use static imports)



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (IGNITE-10988) Zookeeper test case testCommunicationFailureResolve_KillRandom frequently fails in GridAbstractTest.waitForTopology

2019-01-18 Thread Oleg Ignatenko (JIRA)


 [ 
https://issues.apache.org/jira/browse/IGNITE-10988?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Oleg Ignatenko updated IGNITE-10988:

Description: 
Zookeeper test case testCommunicationFailureResolve_KillRandom frequently fails 
in GridAbstractTest.waitForTopology.

Teamcity test history in master currently shows "Test runs: 625 total / 251 
failures" 
([link|https://ci.ignite.apache.org/project.html?projectId=IgniteTests24Java8=-3849782382784091413=testDetails).

Need to find out why is that and whether test case can be improved and made 
more reliable.

Typical failure message looks as follows:
{noformat}
[2019-01-18 06:57:23,489][ERROR][main][root] Test failed.
junit.framework.AssertionFailedError
at junit.framework.Assert.fail(Assert.java:55)
at junit.framework.Assert.assertTrue(Assert.java:22)
at junit.framework.Assert.assertTrue(Assert.java:31)
at 
org.apache.ignite.testframework.junits.GridAbstractTest.waitForTopology(GridAbstractTest.java:2294)
at 
org.apache.ignite.spi.discovery.zk.internal.ZookeeperDiscoverySpiTest.waitForTopology(ZookeeperDiscoverySpiTest.java:5103)
at 
org.apache.ignite.spi.discovery.zk.internal.ZookeeperDiscoverySpiTest.testCommunicationFailureResolve_KillRandom(ZookeeperDiscoverySpiTest.java:3145)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at 
org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:47)
at 
org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
at 
org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:44)
at 
org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
at 
org.apache.ignite.testframework.junits.GridAbstractTest$6.run(GridAbstractTest.java:2088)
at java.lang.Thread.run(Thread.java:748){noformat}

Side note per IGNITE-10777 this test case has moved to another class, from 
{{ZookeeperDiscoverySpiTest}} to {{ZookeeperDiscoverySpiTest5}} (which was 
further renamed to {{ZookeeperDiscoveryCommunicationFailureTest}}) but that 
didn't change anything: it still fails frequently and failure message is the 
same, with the only difference in the new test class name.

  was:
Zookeeper test case testCommunicationFailureResolve_KillRandom frequently fails 
in GridAbstractTest.waitForTopology.

Teamcity test history in master currently shows "Test runs: 625 total / 251 
failures" 
([link|https://ci.ignite.apache.org/project.html?projectId=IgniteTests24Java8=-3849782382784091413=testDetails).

Need to find out why is that and whether test case can be improved and made 
more reliable.

Typical failure message looks as follows:
{noformat}
[2019-01-18 06:57:23,489][ERROR][main][root] Test failed.
junit.framework.AssertionFailedError
at junit.framework.Assert.fail(Assert.java:55)
at junit.framework.Assert.assertTrue(Assert.java:22)
at junit.framework.Assert.assertTrue(Assert.java:31)
at 
org.apache.ignite.testframework.junits.GridAbstractTest.waitForTopology(GridAbstractTest.java:2294)
at 
org.apache.ignite.spi.discovery.zk.internal.ZookeeperDiscoverySpiTest.waitForTopology(ZookeeperDiscoverySpiTest.java:5103)
at 
org.apache.ignite.spi.discovery.zk.internal.ZookeeperDiscoverySpiTest.testCommunicationFailureResolve_KillRandom(ZookeeperDiscoverySpiTest.java:3145)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at 
org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:47)
at 
org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
at 
org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:44)
at 
org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
at 
org.apache.ignite.testframework.junits.GridAbstractTest$6.run(GridAbstractTest.java:2088)
at java.lang.Thread.run(Thread.java:748){noformat}

Side note per IGNITE-10777 this test case has moved to another class, from 
{{ZookeeperDiscoverySpiTest}} to {{ZookeeperDiscoverySpiTest5}} but that didn't 
change anything: it still fails frequently and failure message is the same, 
with the only difference in the new test class name.


> Zookeeper test case testCommunicationFailureResolve_KillRandom frequently 
> 

[jira] [Commented] (IGNITE-10777) Cleanup remainders of JUnit4TestAdapter and other JUnit 3 API involving test suites

2019-01-18 Thread Oleg Ignatenko (JIRA)


[ 
https://issues.apache.org/jira/browse/IGNITE-10777?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16746438#comment-16746438
 ] 

Oleg Ignatenko commented on IGNITE-10777:
-

[~sergey-chugunov] - thanks for suggestion, test classes were renamed as you 
recommended

> Cleanup remainders of JUnit4TestAdapter and other JUnit 3 API involving test 
> suites
> ---
>
> Key: IGNITE-10777
> URL: https://issues.apache.org/jira/browse/IGNITE-10777
> Project: Ignite
>  Issue Type: Sub-task
>Affects Versions: 2.8
>Reporter: Oleg Ignatenko
>Assignee: Oleg Ignatenko
>Priority: Major
>  Labels: MakeTeamcityGreenAgain
> Fix For: 2.8
>
>  Time Spent: 0.5h
>  Remaining Estimate: 0h
>
> This task is to cleanup remainders of JUnit4TestAdapter and other JUnit 3 API 
> involving test suites that may be missed in prior sub-tasks under the parent 
> task.
> If needed, refer to parent task comments for more details.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Created] (IGNITE-10988) Zookeeper test case testCommunicationFailureResolve_KillRandom frequently fails in GridAbstractTest.waitForTopology

2019-01-18 Thread Oleg Ignatenko (JIRA)
Oleg Ignatenko created IGNITE-10988:
---

 Summary: Zookeeper test case 
testCommunicationFailureResolve_KillRandom frequently fails in 
GridAbstractTest.waitForTopology
 Key: IGNITE-10988
 URL: https://issues.apache.org/jira/browse/IGNITE-10988
 Project: Ignite
  Issue Type: Bug
Affects Versions: 2.7
Reporter: Oleg Ignatenko


Zookeeper test case testCommunicationFailureResolve_KillRandom frequently fails 
in GridAbstractTest.waitForTopology.

Teamcity test history in master currently shows "Test runs: 625 total / 251 
failures" 
([link|https://ci.ignite.apache.org/project.html?projectId=IgniteTests24Java8=-3849782382784091413=testDetails).

Need to find out why is that and whether test case can be improved and made 
more reliable.

Typical failure message looks as follows:
{noformat}
[2019-01-18 06:57:23,489][ERROR][main][root] Test failed.
junit.framework.AssertionFailedError
at junit.framework.Assert.fail(Assert.java:55)
at junit.framework.Assert.assertTrue(Assert.java:22)
at junit.framework.Assert.assertTrue(Assert.java:31)
at 
org.apache.ignite.testframework.junits.GridAbstractTest.waitForTopology(GridAbstractTest.java:2294)
at 
org.apache.ignite.spi.discovery.zk.internal.ZookeeperDiscoverySpiTest.waitForTopology(ZookeeperDiscoverySpiTest.java:5103)
at 
org.apache.ignite.spi.discovery.zk.internal.ZookeeperDiscoverySpiTest.testCommunicationFailureResolve_KillRandom(ZookeeperDiscoverySpiTest.java:3145)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at 
org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:47)
at 
org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
at 
org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:44)
at 
org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
at 
org.apache.ignite.testframework.junits.GridAbstractTest$6.run(GridAbstractTest.java:2088)
at java.lang.Thread.run(Thread.java:748){noformat}

Side note per IGNITE-10777 this test case has moved to another class, from 
{{ZookeeperDiscoverySpiTest}} to {{ZookeeperDiscoverySpiTest5}} but that didn't 
change anything: it still fails frequently and failure message is the same, 
with the only difference in the new test class name.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (IGNITE-10988) Zookeeper test case testCommunicationFailureResolve_KillRandom frequently fails in GridAbstractTest.waitForTopology

2019-01-18 Thread Oleg Ignatenko (JIRA)


 [ 
https://issues.apache.org/jira/browse/IGNITE-10988?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Oleg Ignatenko updated IGNITE-10988:

Labels: MakeTeamcityGreenAgain  (was: )

> Zookeeper test case testCommunicationFailureResolve_KillRandom frequently 
> fails in GridAbstractTest.waitForTopology
> ---
>
> Key: IGNITE-10988
> URL: https://issues.apache.org/jira/browse/IGNITE-10988
> Project: Ignite
>  Issue Type: Bug
>Affects Versions: 2.7
>Reporter: Oleg Ignatenko
>Priority: Major
>  Labels: MakeTeamcityGreenAgain
>
> Zookeeper test case testCommunicationFailureResolve_KillRandom frequently 
> fails in GridAbstractTest.waitForTopology.
> Teamcity test history in master currently shows "Test runs: 625 total / 251 
> failures" 
> ([link|https://ci.ignite.apache.org/project.html?projectId=IgniteTests24Java8=-3849782382784091413=testDetails).
> Need to find out why is that and whether test case can be improved and made 
> more reliable.
> Typical failure message looks as follows:
> {noformat}
> [2019-01-18 06:57:23,489][ERROR][main][root] Test failed.
> junit.framework.AssertionFailedError
>   at junit.framework.Assert.fail(Assert.java:55)
>   at junit.framework.Assert.assertTrue(Assert.java:22)
>   at junit.framework.Assert.assertTrue(Assert.java:31)
>   at 
> org.apache.ignite.testframework.junits.GridAbstractTest.waitForTopology(GridAbstractTest.java:2294)
>   at 
> org.apache.ignite.spi.discovery.zk.internal.ZookeeperDiscoverySpiTest.waitForTopology(ZookeeperDiscoverySpiTest.java:5103)
>   at 
> org.apache.ignite.spi.discovery.zk.internal.ZookeeperDiscoverySpiTest.testCommunicationFailureResolve_KillRandom(ZookeeperDiscoverySpiTest.java:3145)
>   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>   at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
>   at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>   at java.lang.reflect.Method.invoke(Method.java:498)
>   at 
> org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:47)
>   at 
> org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
>   at 
> org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:44)
>   at 
> org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
>   at 
> org.apache.ignite.testframework.junits.GridAbstractTest$6.run(GridAbstractTest.java:2088)
>   at java.lang.Thread.run(Thread.java:748){noformat}
> 
> Side note per IGNITE-10777 this test case has moved to another class, from 
> {{ZookeeperDiscoverySpiTest}} to {{ZookeeperDiscoverySpiTest5}} but that 
> didn't change anything: it still fails frequently and failure message is the 
> same, with the only difference in the new test class name.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (IGNITE-10988) Zookeeper test case testCommunicationFailureResolve_KillRandom frequently fails in GridAbstractTest.waitForTopology

2019-01-18 Thread Oleg Ignatenko (JIRA)


 [ 
https://issues.apache.org/jira/browse/IGNITE-10988?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Oleg Ignatenko updated IGNITE-10988:

Ignite Flags:   (was: Docs Required)

> Zookeeper test case testCommunicationFailureResolve_KillRandom frequently 
> fails in GridAbstractTest.waitForTopology
> ---
>
> Key: IGNITE-10988
> URL: https://issues.apache.org/jira/browse/IGNITE-10988
> Project: Ignite
>  Issue Type: Bug
>Affects Versions: 2.7
>Reporter: Oleg Ignatenko
>Priority: Major
>
> Zookeeper test case testCommunicationFailureResolve_KillRandom frequently 
> fails in GridAbstractTest.waitForTopology.
> Teamcity test history in master currently shows "Test runs: 625 total / 251 
> failures" 
> ([link|https://ci.ignite.apache.org/project.html?projectId=IgniteTests24Java8=-3849782382784091413=testDetails).
> Need to find out why is that and whether test case can be improved and made 
> more reliable.
> Typical failure message looks as follows:
> {noformat}
> [2019-01-18 06:57:23,489][ERROR][main][root] Test failed.
> junit.framework.AssertionFailedError
>   at junit.framework.Assert.fail(Assert.java:55)
>   at junit.framework.Assert.assertTrue(Assert.java:22)
>   at junit.framework.Assert.assertTrue(Assert.java:31)
>   at 
> org.apache.ignite.testframework.junits.GridAbstractTest.waitForTopology(GridAbstractTest.java:2294)
>   at 
> org.apache.ignite.spi.discovery.zk.internal.ZookeeperDiscoverySpiTest.waitForTopology(ZookeeperDiscoverySpiTest.java:5103)
>   at 
> org.apache.ignite.spi.discovery.zk.internal.ZookeeperDiscoverySpiTest.testCommunicationFailureResolve_KillRandom(ZookeeperDiscoverySpiTest.java:3145)
>   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>   at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
>   at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>   at java.lang.reflect.Method.invoke(Method.java:498)
>   at 
> org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:47)
>   at 
> org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
>   at 
> org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:44)
>   at 
> org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
>   at 
> org.apache.ignite.testframework.junits.GridAbstractTest$6.run(GridAbstractTest.java:2088)
>   at java.lang.Thread.run(Thread.java:748){noformat}
> 
> Side note per IGNITE-10777 this test case has moved to another class, from 
> {{ZookeeperDiscoverySpiTest}} to {{ZookeeperDiscoverySpiTest5}} but that 
> didn't change anything: it still fails frequently and failure message is the 
> same, with the only difference in the new test class name.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Assigned] (IGNITE-10179) Change new tests root to use @BeforeClass and @AfterClass instead of isFirstTest() and isLastTest()

2019-01-17 Thread Oleg Ignatenko (JIRA)


 [ 
https://issues.apache.org/jira/browse/IGNITE-10179?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Oleg Ignatenko reassigned IGNITE-10179:
---

Assignee: Oleg Ignatenko

> Change new tests root to use @BeforeClass and @AfterClass instead of 
> isFirstTest() and isLastTest()
> ---
>
> Key: IGNITE-10179
> URL: https://issues.apache.org/jira/browse/IGNITE-10179
> Project: Ignite
>  Issue Type: Sub-task
>Reporter: Oleg Ignatenko
>Assignee: Oleg Ignatenko
>Priority: Major
>
> If needed, refer parent task for more details.
> isFirstTest() and isLastTest() homebrew methods seem to be in 
> GridAbstractTest only because Junit 3 lacked necessary functionality; after 
> migration to Junit 4 these would better changed to use standard API of this 
> framework.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (IGNITE-10927) Relieve JUnit3TestLegacySupport from inheriting deprecated junit.framework.Assert (follow-up to IGNITE-10177)

2019-01-17 Thread Oleg Ignatenko (JIRA)


 [ 
https://issues.apache.org/jira/browse/IGNITE-10927?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Oleg Ignatenko updated IGNITE-10927:

Description: 
{{JUnit3TestLegacySupport}} currently inherits deprecated 
{{junit.framework.Assert}}. This was done only in order to minimize risky code 
changes when tests were migrating from Junit 3, after {{GridAbstractTest}} has 
dropped inheriting {{junit.framework.TestCase}}.

Now that migration is over it is less risky to cleanup project from deprecated 
assert methods and drop the harmful inheritance. In order to make this smoother 
and minimize amount of test changes, after inheritance is dropped, 
{{JUnit3TestLegacySupport}} should be extended with a set of "temporary patch" 
methods that would delegate most popular assertions used by subclasses to 
respective methods of {{org.junit.Assert}}.

Mentioned temporary patch methods, in turn, should respective {{2deprecation}} 
notices in javadocs that would encourage developers to (safely and gradually) 
change them to direct invocations and static imports of respective Assert 
methods instead of using those inherited from superclass. These patch methods 
should be declared {{protected final}} or {{protected static}}, in order to 
minimize their applicability and prevent them spreading more than intended. (as 
a side note, experimenting has shown that use of {{@Deprecated}} annotation is 
not feasible as it deprives developers an option to use static imports)

  was:
{{JUnit3TestLegacySupport}} currently inherits deprecated 
{{junit.framework.Assert}}. This was done only in order to minimize risky code 
changes when tests were migrating from Junit 3, after {{GridAbstractTest}} has 
dropped inheriting {{junit.framework.TestCase}}.

Now that migration is over it is less risky to cleanup project from deprecated 
assert methods and drop the harmful inheritance. In order to make this smoother 
and minimize amount of test changes, after inheritance is dropped, 
{{JUnit3TestLegacySupport}} should be extended with a set of "temporary patch" 
methods that would delegate most popular assertions used by subclasses to 
respective methods of {{org.junit.Assert}}.

Mentioned temporary patch methods, in turn, should get {{@Deprecated}} 
annotation and respective {{2deprecation}} noticed in javadocs that would 
encourage developers to (safely and gradually) change them to direct 
invocations and static imports of respective Assert methods instead of using 
those inherited from superclass. These patch methods should be declared 
{{protected final}} or {{protected static}}, in order to minimize their 
applicability and prevent them spreading more than intended.


> Relieve JUnit3TestLegacySupport from inheriting deprecated 
> junit.framework.Assert (follow-up to IGNITE-10177)
> -
>
> Key: IGNITE-10927
> URL: https://issues.apache.org/jira/browse/IGNITE-10927
> Project: Ignite
>  Issue Type: Sub-task
>Affects Versions: 2.7
>Reporter: Oleg Ignatenko
>Assignee: Oleg Ignatenko
>Priority: Major
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> {{JUnit3TestLegacySupport}} currently inherits deprecated 
> {{junit.framework.Assert}}. This was done only in order to minimize risky 
> code changes when tests were migrating from Junit 3, after 
> {{GridAbstractTest}} has dropped inheriting {{junit.framework.TestCase}}.
> Now that migration is over it is less risky to cleanup project from 
> deprecated assert methods and drop the harmful inheritance. In order to make 
> this smoother and minimize amount of test changes, after inheritance is 
> dropped, {{JUnit3TestLegacySupport}} should be extended with a set of 
> "temporary patch" methods that would delegate most popular assertions used by 
> subclasses to respective methods of {{org.junit.Assert}}.
> Mentioned temporary patch methods, in turn, should respective 
> {{2deprecation}} notices in javadocs that would encourage developers to 
> (safely and gradually) change them to direct invocations and static imports 
> of respective Assert methods instead of using those inherited from 
> superclass. These patch methods should be declared {{protected final}} or 
> {{protected static}}, in order to minimize their applicability and prevent 
> them spreading more than intended. (as a side note, experimenting has shown 
> that use of {{@Deprecated}} annotation is not feasible as it deprives 
> developers an option to use static imports)



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (IGNITE-10629) Migration follow up: check for old style tests that could be slipped through in transition period

2019-01-17 Thread Oleg Ignatenko (JIRA)


 [ 
https://issues.apache.org/jira/browse/IGNITE-10629?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Oleg Ignatenko updated IGNITE-10629:

Description: 
We need to account for risk that while tests are migrating some commits may by 
mistake slip in old style test cases - that will be ignored by JUnit 4.

In order to address possible issues of that kind, do the following a week or 
two after IGNITE-10177 is merged to master: run the IntelliJ inspection called 
"old style Junit test method in JUnit 4 class", review report and fix 
discovered problems if there are any.

For the reference, my version of IDE explains this inspection as follows:
 {quote}Reports JUnit 3 style test methods which are located inside a class 
which does not extend the abstract JUnit 3 class TestCase and contains JUnit 
4/JUnit 5 @Test annotated methods.{quote}

 (note concerns mentioned in this ticket were originally raised at dev list: 
[here|http://apache-ignite-developers.2346864.n4.nabble.com/Is-it-time-to-move-forward-to-JUnit4-5-tp29608p39300.html])

-


Another part of this task is to find (and rework if there are still any) 
classes that still extend {{junit.framework.TestCase}}. These classes are 
technically legal but after vast majority have been migrated they became 
harmful from maintenance perspective, by forcing readers of their code learn 
details of obsolete framework version that lacks many important features. One 
particularly bad thing about such tests is that they deprive maintainers 
standard ways to suppress test execution using modern JUnit API of Ignore and 
Assume.

  was:
We need to account for risk that while tests are migrating some commits may by 
mistake slip in old style test cases - that will be ignored by JUnit 4.

In order to address possible issues of that kind, do the following a week or 
two after IGNITE-10177 is merged to master: run the IntelliJ inspection called 
"old style Junit test method in JUnit 4 class", review report and fix 
discovered problems if there are any.

For the reference, my version of IDE explains this inspection as follows:
 {quote}Reports JUnit 3 style test methods which are located inside a class 
which does not extend the abstract JUnit 3 class TestCase and contains JUnit 
4/JUnit 5 @Test annotated methods.{quote}

 (note concerns mentioned in this ticket were originally raised at dev list: 
[here|http://apache-ignite-developers.2346864.n4.nabble.com/Is-it-time-to-move-forward-to-JUnit4-5-tp29608p39300.html])


> Migration follow up: check for old style tests that could be slipped through 
> in transition period
> -
>
> Key: IGNITE-10629
> URL: https://issues.apache.org/jira/browse/IGNITE-10629
> Project: Ignite
>  Issue Type: Sub-task
>Affects Versions: 2.8
>Reporter: Oleg Ignatenko
>Assignee: Oleg Ignatenko
>Priority: Major
>  Labels: MakeTeamcityGreenAgain
> Attachments: junit_inspections.xml
>
>
> We need to account for risk that while tests are migrating some commits may 
> by mistake slip in old style test cases - that will be ignored by JUnit 4.
> In order to address possible issues of that kind, do the following a week or 
> two after IGNITE-10177 is merged to master: run the IntelliJ inspection 
> called "old style Junit test method in JUnit 4 class", review report and fix 
> discovered problems if there are any.
> For the reference, my version of IDE explains this inspection as follows:
>  {quote}Reports JUnit 3 style test methods which are located inside a class 
> which does not extend the abstract JUnit 3 class TestCase and contains JUnit 
> 4/JUnit 5 @Test annotated methods.{quote}
>  (note concerns mentioned in this ticket were originally raised at dev list: 
> [here|http://apache-ignite-developers.2346864.n4.nabble.com/Is-it-time-to-move-forward-to-JUnit4-5-tp29608p39300.html])
> -
> Another part of this task is to find (and rework if there are still any) 
> classes that still extend {{junit.framework.TestCase}}. These classes are 
> technically legal but after vast majority have been migrated they became 
> harmful from maintenance perspective, by forcing readers of their code learn 
> details of obsolete framework version that lacks many important features. One 
> particularly bad thing about such tests is that they deprive maintainers 
> standard ways to suppress test execution using modern JUnit API of Ignore and 
> Assume.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (IGNITE-10958) Migrate from Junit 4 to 5

2019-01-16 Thread Oleg Ignatenko (JIRA)


 [ 
https://issues.apache.org/jira/browse/IGNITE-10958?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Oleg Ignatenko updated IGNITE-10958:

Description: 
Starting with maven-surefire-plugin version 2.22.0 there is full support for 
JUnit 5 [1].

Migration to the JUnit 5 includes multiple steps:
 1. adding new JUnit dependencies to pom files. By artifactId: 
junit-jupiter-engine, junit-vintage-engine, junit-platform-launcher, 
junit-platform-runner
 2. Replace all imports of old JUnit annotations by the newest: from 
org.junit.Test to org.junit.jupiter.api.Test
 3. Change annotations Before, After, BeforeClass, AfterClass, Ignore
 4. Replace concept rules by extension model where it is necessary: 
ExpectedException to assertThrows
 5. Migrate Mockito tests: MockitoJUnitRunner becomes MockitoExtension
 6. Update the Maven surefire plugin to make it work with JUnit 5.

Investigation about migration to JUnit5 is provided in the ticket IGNITE-10180.

[1] 
[https://maven.apache.org/surefire/maven-surefire-plugin/examples/junit-platform.html]

  was:
Starting with maven-surefire-plugin version 2.22.0 there is full support for 
JUnit 5 [1]. 

Migration to the JUnit 5 includes multiple steps:
1. adding new JUnit dependencies to pom files. By artifactId: 
junit-jupiter-engine, junit-vintage-engine, junit-platform-launcher, 
junit-platform-runner
2. Replace all imports of old JUnit annotations by the newest: from 
org.junit.Test to org.junit.jupiter.api.Test
3. Change annotations Before, After, BeforeClass, AfterClass, Ignore
4. Replace concept rules by extension model where it is necessary: 
ExpectedException to assertThrows
5. Migrate Mockito tests: MockitoJUnitRunner becomes MockitoExtension
6. Update the Maven surefire plugin to make it works with JUnit 5.

Investigation about migration to JUnit5 is provided in the ticket IGNITE-10180.

[1] 
https://maven.apache.org/surefire/maven-surefire-plugin/examples/junit-platform.html


> Migrate from Junit 4 to 5
> -
>
> Key: IGNITE-10958
> URL: https://issues.apache.org/jira/browse/IGNITE-10958
> Project: Ignite
>  Issue Type: Task
>Reporter: Ivan Fedotov
>Assignee: Ivan Fedotov
>Priority: Major
>
> Starting with maven-surefire-plugin version 2.22.0 there is full support for 
> JUnit 5 [1].
> Migration to the JUnit 5 includes multiple steps:
>  1. adding new JUnit dependencies to pom files. By artifactId: 
> junit-jupiter-engine, junit-vintage-engine, junit-platform-launcher, 
> junit-platform-runner
>  2. Replace all imports of old JUnit annotations by the newest: from 
> org.junit.Test to org.junit.jupiter.api.Test
>  3. Change annotations Before, After, BeforeClass, AfterClass, Ignore
>  4. Replace concept rules by extension model where it is necessary: 
> ExpectedException to assertThrows
>  5. Migrate Mockito tests: MockitoJUnitRunner becomes MockitoExtension
>  6. Update the Maven surefire plugin to make it work with JUnit 5.
> Investigation about migration to JUnit5 is provided in the ticket 
> IGNITE-10180.
> [1] 
> [https://maven.apache.org/surefire/maven-surefire-plugin/examples/junit-platform.html]



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Comment Edited] (IGNITE-10629) Migration follow up: check for old style tests that could be slipped through in transition period

2019-01-16 Thread Oleg Ignatenko (JIRA)


[ 
https://issues.apache.org/jira/browse/IGNITE-10629?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16715885#comment-16715885
 ] 

Oleg Ignatenko edited comment on IGNITE-10629 at 1/16/19 3:37 PM:
--

(i) draft inspections profile attached: [^junit_inspections.xml]

(i) appropriate cut-off date appears to be 22/Dec/18 when IGNITE-10177 was 
marked resolved (merged to master). After changes made to master per this 
ticket it became impossible to have working test inheriting 
[GridAbstractTest|https://github.com/apache/ignite/commits/master/modules/core/src/test/java/org/apache/ignite/testframework/junits/GridAbstractTest.java]
 other than using JUnit 4 (JUnit 3 kind tests wouldn't execute and IDEA would 
highlight respective test cases with warnings about unused methods)


was (Author: oignatenko):
(i) draft inspections profile attached: [^junit_inspections.xml]

> Migration follow up: check for old style tests that could be slipped through 
> in transition period
> -
>
> Key: IGNITE-10629
> URL: https://issues.apache.org/jira/browse/IGNITE-10629
> Project: Ignite
>  Issue Type: Sub-task
>Affects Versions: 2.8
>Reporter: Oleg Ignatenko
>Assignee: Oleg Ignatenko
>Priority: Major
>  Labels: MakeTeamcityGreenAgain
> Attachments: junit_inspections.xml
>
>
> We need to account for risk that while tests are migrating some commits may 
> by mistake slip in old style test cases - that will be ignored by JUnit 4.
> In order to address possible issues of that kind, do the following a week or 
> two after IGNITE-10177 is merged to master: run the IntelliJ inspection 
> called "old style Junit test method in JUnit 4 class", review report and fix 
> discovered problems if there are any.
> For the reference, my version of IDE explains this inspection as follows:
>  {quote}Reports JUnit 3 style test methods which are located inside a class 
> which does not extend the abstract JUnit 3 class TestCase and contains JUnit 
> 4/JUnit 5 @Test annotated methods.{quote}
>  (note concerns mentioned in this ticket were originally raised at dev list: 
> [here|http://apache-ignite-developers.2346864.n4.nabble.com/Is-it-time-to-move-forward-to-JUnit4-5-tp29608p39300.html])



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (IGNITE-10927) Relieve JUnit3TestLegacySupport from inheriting deprecated junit.framework.Assert (follow-up to IGNITE-10177)

2019-01-16 Thread Oleg Ignatenko (JIRA)


 [ 
https://issues.apache.org/jira/browse/IGNITE-10927?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Oleg Ignatenko updated IGNITE-10927:

Description: 
{{JUnit3TestLegacySupport}} currently inherits deprecated 
{{junit.framework.Assert}}. This was done only in order to minimize risky code 
changes when tests were migrating from Junit 3, after {{GridAbstractTest}} has 
dropped inheriting {{junit.framework.TestCase}}.

Now that migration is over it is less risky to cleanup project from deprecated 
assert methods and drop the harmful inheritance. In order to make this smoother 
and minimize amount of test changes, after inheritance is dropped, 
{{JUnit3TestLegacySupport}} should be extended with a set of "temporary patch" 
methods that would delegate most popular assertions used by subclasses to 
respective methods of {{org.junit.Assert}}.

Mentioned temporary patch methods, in turn, should get {{@Deprecated}} 
annotation and respective {{2deprecation}} noticed in javadocs that would 
encourage developers to (safely and gradually) change them to direct 
invocations and static imports of respective Assert methods instead of using 
those inherited from superclass. These patch methods should be declared 
{{protected final}} or {{protected static}}, in order to minimize their 
applicability and prevent them spreading more than intended.

  was:
{{JUnit3TestLegacySupport}} currently inherits deprecated 
{{junit.framework.Assert}}. This was done only in order to minimize risky code 
changes when tests were migrating from Junit 3, after {{GridAbstractTest}} has 
dropped inheriting {{junit.framework.TestCase}}.

Now that migration is over it is less risky to cleanup project from deprecated 
assert methods and drop the harmful inheritance. In order to make this smoother 
and minimize amount of test changes, after inheritance is dropped, 
{{JUnit3TestLegacySupport}} should be extended with a set of "temporary patch" 
methods that would delegate most popular assertions used by subclasses to 
respective methods of {{org.junit.Assert}}.

Mentioned temporary patch methods, in turn, should get {{@Deprecated}} 
annotation and respective {{2deprecation}} noticed in javadocs that would 
encourage developers to (safely and gradually) change them to direct 
invocations and static imports of respective Assert methods instead of using 
those inherited from superclass. These patch methods should be declared 
protected final or protected static final, to minimize their applicability and 
prevent them spreading more than intended.


> Relieve JUnit3TestLegacySupport from inheriting deprecated 
> junit.framework.Assert (follow-up to IGNITE-10177)
> -
>
> Key: IGNITE-10927
> URL: https://issues.apache.org/jira/browse/IGNITE-10927
> Project: Ignite
>  Issue Type: Sub-task
>Affects Versions: 2.7
>Reporter: Oleg Ignatenko
>Assignee: Oleg Ignatenko
>Priority: Major
>
> {{JUnit3TestLegacySupport}} currently inherits deprecated 
> {{junit.framework.Assert}}. This was done only in order to minimize risky 
> code changes when tests were migrating from Junit 3, after 
> {{GridAbstractTest}} has dropped inheriting {{junit.framework.TestCase}}.
> Now that migration is over it is less risky to cleanup project from 
> deprecated assert methods and drop the harmful inheritance. In order to make 
> this smoother and minimize amount of test changes, after inheritance is 
> dropped, {{JUnit3TestLegacySupport}} should be extended with a set of 
> "temporary patch" methods that would delegate most popular assertions used by 
> subclasses to respective methods of {{org.junit.Assert}}.
> Mentioned temporary patch methods, in turn, should get {{@Deprecated}} 
> annotation and respective {{2deprecation}} noticed in javadocs that would 
> encourage developers to (safely and gradually) change them to direct 
> invocations and static imports of respective Assert methods instead of using 
> those inherited from superclass. These patch methods should be declared 
> {{protected final}} or {{protected static}}, in order to minimize their 
> applicability and prevent them spreading more than intended.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (IGNITE-10629) Migration follow up: check for old style tests that could be slipped through in transition period

2019-01-15 Thread Oleg Ignatenko (JIRA)


 [ 
https://issues.apache.org/jira/browse/IGNITE-10629?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Oleg Ignatenko updated IGNITE-10629:

Issue Type: Task  (was: Sub-task)
Parent: (was: IGNITE-10173)

> Migration follow up: check for old style tests that could be slipped through 
> in transition period
> -
>
> Key: IGNITE-10629
> URL: https://issues.apache.org/jira/browse/IGNITE-10629
> Project: Ignite
>  Issue Type: Task
>Affects Versions: 2.8
>Reporter: Oleg Ignatenko
>Assignee: Oleg Ignatenko
>Priority: Major
>  Labels: MakeTeamcityGreenAgain
> Attachments: junit_inspections.xml
>
>
> We need to account for risk that while tests are migrating some commits may 
> by mistake slip in old style test cases - that will be ignored by JUnit 4.
> In order to address possible issues of that kind, do the following a week or 
> two after IGNITE-10177 is merged to master: run the IntelliJ inspection 
> called "old style Junit test method in JUnit 4 class", review report and fix 
> discovered problems if there are any.
> For the reference, my version of IDE explains this inspection as follows:
>  {quote}Reports JUnit 3 style test methods which are located inside a class 
> which does not extend the abstract JUnit 3 class TestCase and contains JUnit 
> 4/JUnit 5 @Test annotated methods.{quote}
>  (note concerns mentioned in this ticket were originally raised at dev list: 
> [here|http://apache-ignite-developers.2346864.n4.nabble.com/Is-it-time-to-move-forward-to-JUnit4-5-tp29608p39300.html])



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (IGNITE-10180) Investigate migration from Junit 4 to 5

2019-01-15 Thread Oleg Ignatenko (JIRA)


 [ 
https://issues.apache.org/jira/browse/IGNITE-10180?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Oleg Ignatenko updated IGNITE-10180:

Issue Type: Task  (was: Sub-task)
Parent: (was: IGNITE-10173)

> Investigate migration from Junit 4 to 5
> ---
>
> Key: IGNITE-10180
> URL: https://issues.apache.org/jira/browse/IGNITE-10180
> Project: Ignite
>  Issue Type: Task
>Reporter: Oleg Ignatenko
>Assignee: Ivan Fedotov
>Priority: Major
>
> If needed, refer parent task for more details.
> Find out if Junit 5 is mature enough - specifically why maven still uses 
> Junit 4 as default, are there serious reasons for that or not. If it looks 
> okay, create a new JIRA task to migrate.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (IGNITE-10180) Investigate migration from Junit 4 to 5

2019-01-15 Thread Oleg Ignatenko (JIRA)


 [ 
https://issues.apache.org/jira/browse/IGNITE-10180?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Oleg Ignatenko updated IGNITE-10180:

Issue Type: Sub-task  (was: Task)
Parent: IGNITE-10951

> Investigate migration from Junit 4 to 5
> ---
>
> Key: IGNITE-10180
> URL: https://issues.apache.org/jira/browse/IGNITE-10180
> Project: Ignite
>  Issue Type: Sub-task
>Reporter: Oleg Ignatenko
>Assignee: Ivan Fedotov
>Priority: Major
>
> If needed, refer parent task for more details.
> Find out if Junit 5 is mature enough - specifically why maven still uses 
> Junit 4 as default, are there serious reasons for that or not. If it looks 
> okay, create a new JIRA task to migrate.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (IGNITE-10208) Verify list of tests after migration to Junit 4 against some prior reference (follow-up to IGNITE-10177)

2019-01-15 Thread Oleg Ignatenko (JIRA)


 [ 
https://issues.apache.org/jira/browse/IGNITE-10208?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Oleg Ignatenko updated IGNITE-10208:

Issue Type: Sub-task  (was: Task)
Parent: IGNITE-10951

> Verify list of tests after migration to Junit 4 against some prior reference  
> (follow-up to IGNITE-10177)
> -
>
> Key: IGNITE-10208
> URL: https://issues.apache.org/jira/browse/IGNITE-10208
> Project: Ignite
>  Issue Type: Sub-task
>Reporter: Oleg Ignatenko
>Priority: Major
>  Labels: MakeTeamcityGreenAgain
>
> Migration from Junit 3 to 4 involves manually adding {{@Test}} annotation to 
> existing test cases. Since Ignite contains many thousands test cases there is 
> a substantial risk that we may miss some of these in such a transition.
> In order to mitigate the risk, suggest to do a check after completion of 
> IGNITE-10177 and IGNITE-10762 - somehow generate list of tests in the project 
> and compare it against similar list of tests of some "known good" prior 
> project version (at this point, 2.7 release branch looks like a good 
> candidate for such a reference).
> If comparison shows that some test cases from older version are missed in 
> newer one, open a ticket to investigate that.
> Comparison is better done using [nightly 
> run-all|https://ci.ignite.apache.org/project.html?projectId=IgniteTests24Java8]
>  test set as it is the most comprehensive.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (IGNITE-10614) investigate blocking of WalCompactionTest.testCompressorToleratesEmptyWalSegmentsFsync at stopping grids when migrating from JUnit 3 to 4

2019-01-15 Thread Oleg Ignatenko (JIRA)


 [ 
https://issues.apache.org/jira/browse/IGNITE-10614?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Oleg Ignatenko updated IGNITE-10614:

Issue Type: Sub-task  (was: Task)
Parent: IGNITE-10951

> investigate blocking of 
> WalCompactionTest.testCompressorToleratesEmptyWalSegmentsFsync at stopping 
> grids when migrating from JUnit 3 to 4
> -
>
> Key: IGNITE-10614
> URL: https://issues.apache.org/jira/browse/IGNITE-10614
> Project: Ignite
>  Issue Type: Sub-task
>Affects Versions: 2.8
>Reporter: Oleg Ignatenko
>Assignee: Ivan Rakov
>Priority: Major
>  Labels: MakeTeamcityGreenAgain
>
> {{WalCompactionTest.testCompressorToleratesEmptyWalSegmentsFsync}} runs OK 
> under JUnit 3 but blocks at stopping grids when migrating to JUnit 4.
>  Workaround for that (discovered by [~EdShangGG]) is to run stopAllGrids in 
> separate thread:
>  {code}
>  @Override protected void afterTest() throws Exception {
>  Thread thread = new Thread(this::stopAllGrids);
>  thread.start();
>  thread.join(getTestTimeout());
>  cleanPersistenceDir();
>  }
> {code}
> If needed, [here is a diff at 
> Github|https://github.com/apache/ignite/pull/5615/commits/1b342ee4c8c772b0e57583ee7f8721fc2c070bcf]
>  with more context.
> Need to find out what is going on there and if something needs to be changed 
> in this test or maybe in parent test classes.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (IGNITE-10629) Migration follow up: check for old style tests that could be slipped through in transition period

2019-01-15 Thread Oleg Ignatenko (JIRA)


 [ 
https://issues.apache.org/jira/browse/IGNITE-10629?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Oleg Ignatenko updated IGNITE-10629:

Issue Type: Sub-task  (was: Task)
Parent: IGNITE-10951

> Migration follow up: check for old style tests that could be slipped through 
> in transition period
> -
>
> Key: IGNITE-10629
> URL: https://issues.apache.org/jira/browse/IGNITE-10629
> Project: Ignite
>  Issue Type: Sub-task
>Affects Versions: 2.8
>Reporter: Oleg Ignatenko
>Assignee: Oleg Ignatenko
>Priority: Major
>  Labels: MakeTeamcityGreenAgain
> Attachments: junit_inspections.xml
>
>
> We need to account for risk that while tests are migrating some commits may 
> by mistake slip in old style test cases - that will be ignored by JUnit 4.
> In order to address possible issues of that kind, do the following a week or 
> two after IGNITE-10177 is merged to master: run the IntelliJ inspection 
> called "old style Junit test method in JUnit 4 class", review report and fix 
> discovered problems if there are any.
> For the reference, my version of IDE explains this inspection as follows:
>  {quote}Reports JUnit 3 style test methods which are located inside a class 
> which does not extend the abstract JUnit 3 class TestCase and contains JUnit 
> 4/JUnit 5 @Test annotated methods.{quote}
>  (note concerns mentioned in this ticket were originally raised at dev list: 
> [here|http://apache-ignite-developers.2346864.n4.nabble.com/Is-it-time-to-move-forward-to-JUnit4-5-tp29608p39300.html])



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (IGNITE-10179) Change new tests root to use @BeforeClass and @AfterClass instead of isFirstTest() and isLastTest()

2019-01-15 Thread Oleg Ignatenko (JIRA)


 [ 
https://issues.apache.org/jira/browse/IGNITE-10179?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Oleg Ignatenko updated IGNITE-10179:

Issue Type: Sub-task  (was: Task)
Parent: IGNITE-10951

> Change new tests root to use @BeforeClass and @AfterClass instead of 
> isFirstTest() and isLastTest()
> ---
>
> Key: IGNITE-10179
> URL: https://issues.apache.org/jira/browse/IGNITE-10179
> Project: Ignite
>  Issue Type: Sub-task
>Reporter: Oleg Ignatenko
>Priority: Major
>
> If needed, refer parent task for more details.
> isFirstTest() and isLastTest() homebrew methods seem to be in 
> GridAbstractTest only because Junit 3 lacked necessary functionality; after 
> migration to Junit 4 these would better changed to use standard API of this 
> framework.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (IGNITE-10614) investigate blocking of WalCompactionTest.testCompressorToleratesEmptyWalSegmentsFsync at stopping grids when migrating from JUnit 3 to 4

2019-01-15 Thread Oleg Ignatenko (JIRA)


 [ 
https://issues.apache.org/jira/browse/IGNITE-10614?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Oleg Ignatenko updated IGNITE-10614:

Issue Type: Task  (was: Sub-task)
Parent: (was: IGNITE-10173)

> investigate blocking of 
> WalCompactionTest.testCompressorToleratesEmptyWalSegmentsFsync at stopping 
> grids when migrating from JUnit 3 to 4
> -
>
> Key: IGNITE-10614
> URL: https://issues.apache.org/jira/browse/IGNITE-10614
> Project: Ignite
>  Issue Type: Task
>Affects Versions: 2.8
>Reporter: Oleg Ignatenko
>Assignee: Ivan Rakov
>Priority: Major
>  Labels: MakeTeamcityGreenAgain
>
> {{WalCompactionTest.testCompressorToleratesEmptyWalSegmentsFsync}} runs OK 
> under JUnit 3 but blocks at stopping grids when migrating to JUnit 4.
>  Workaround for that (discovered by [~EdShangGG]) is to run stopAllGrids in 
> separate thread:
>  {code}
>  @Override protected void afterTest() throws Exception {
>  Thread thread = new Thread(this::stopAllGrids);
>  thread.start();
>  thread.join(getTestTimeout());
>  cleanPersistenceDir();
>  }
> {code}
> If needed, [here is a diff at 
> Github|https://github.com/apache/ignite/pull/5615/commits/1b342ee4c8c772b0e57583ee7f8721fc2c070bcf]
>  with more context.
> Need to find out what is going on there and if something needs to be changed 
> in this test or maybe in parent test classes.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (IGNITE-10208) Verify list of tests after migration to Junit 4 against some prior reference (follow-up to IGNITE-10177)

2019-01-15 Thread Oleg Ignatenko (JIRA)


 [ 
https://issues.apache.org/jira/browse/IGNITE-10208?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Oleg Ignatenko updated IGNITE-10208:

Issue Type: Task  (was: Sub-task)
Parent: (was: IGNITE-10173)

> Verify list of tests after migration to Junit 4 against some prior reference  
> (follow-up to IGNITE-10177)
> -
>
> Key: IGNITE-10208
> URL: https://issues.apache.org/jira/browse/IGNITE-10208
> Project: Ignite
>  Issue Type: Task
>Reporter: Oleg Ignatenko
>Priority: Major
>  Labels: MakeTeamcityGreenAgain
>
> Migration from Junit 3 to 4 involves manually adding {{@Test}} annotation to 
> existing test cases. Since Ignite contains many thousands test cases there is 
> a substantial risk that we may miss some of these in such a transition.
> In order to mitigate the risk, suggest to do a check after completion of 
> IGNITE-10177 and IGNITE-10762 - somehow generate list of tests in the project 
> and compare it against similar list of tests of some "known good" prior 
> project version (at this point, 2.7 release branch looks like a good 
> candidate for such a reference).
> If comparison shows that some test cases from older version are missed in 
> newer one, open a ticket to investigate that.
> Comparison is better done using [nightly 
> run-all|https://ci.ignite.apache.org/project.html?projectId=IgniteTests24Java8]
>  test set as it is the most comprehensive.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (IGNITE-10179) Change new tests root to use @BeforeClass and @AfterClass instead of isFirstTest() and isLastTest()

2019-01-15 Thread Oleg Ignatenko (JIRA)


 [ 
https://issues.apache.org/jira/browse/IGNITE-10179?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Oleg Ignatenko updated IGNITE-10179:

Issue Type: Task  (was: Sub-task)
Parent: (was: IGNITE-10173)

> Change new tests root to use @BeforeClass and @AfterClass instead of 
> isFirstTest() and isLastTest()
> ---
>
> Key: IGNITE-10179
> URL: https://issues.apache.org/jira/browse/IGNITE-10179
> Project: Ignite
>  Issue Type: Task
>Reporter: Oleg Ignatenko
>Priority: Major
>
> If needed, refer parent task for more details.
> isFirstTest() and isLastTest() homebrew methods seem to be in 
> GridAbstractTest only because Junit 3 lacked necessary functionality; after 
> migration to Junit 4 these would better changed to use standard API of this 
> framework.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (IGNITE-10758) remove from tests scaffolding annotations "@RunWith(JUnit4.class)" and their respective imports

2019-01-15 Thread Oleg Ignatenko (JIRA)


 [ 
https://issues.apache.org/jira/browse/IGNITE-10758?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Oleg Ignatenko updated IGNITE-10758:

Issue Type: Sub-task  (was: Task)
Parent: IGNITE-10951

> remove from tests scaffolding annotations "@RunWith(JUnit4.class)" and their 
> respective imports
> ---
>
> Key: IGNITE-10758
> URL: https://issues.apache.org/jira/browse/IGNITE-10758
> Project: Ignite
>  Issue Type: Sub-task
>Affects Versions: 2.8
>Reporter: Oleg Ignatenko
>Priority: Major
>  Labels: MakeTeamcityGreenAgain
>
> In the course of IGNITE-10175 and IGNITE-10176 many test classes were 
> annotated {{@RunWith(JUnit4.class)}}. This was necessary to allow gradual 
> switching to JUnit 4 to let classes run under the version that worked for 
> these.
> After IGNITE-10177 is over, these scaffolding annotations will be not needed 
> anymore (and will become even somewhat damaging by misleading readers to 
> think that they serve some real purpose).
> The task is to remove these annotations and respective import statements 
> after IGNITE-10177 is merged to master. Note it was initially planned as a 
> part of IGNITE-10177 but per discussion with [~EdShangGG] we decided that it 
> will be more convenient to do this in a separate ticket because this will 
> make changes much easier to review, test and merge.
> (!) Thing worth paying attention is that mentioned annotations should be kept 
> in one case - namely in root test class {{GridAbstractTest}} because over 
> there these are necessary until JUnit 3 dependencies are wiped out from 
> remaining cases listed in IGNITE-10739.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (IGNITE-10951) migration from Junit 3 to 4 phase 2 (follow-up to IGNITE-10173)

2019-01-15 Thread Oleg Ignatenko (JIRA)


 [ 
https://issues.apache.org/jira/browse/IGNITE-10951?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Oleg Ignatenko updated IGNITE-10951:

Ignite Flags:   (was: Docs Required)

> migration from Junit 3 to 4 phase 2 (follow-up to IGNITE-10173)
> ---
>
> Key: IGNITE-10951
> URL: https://issues.apache.org/jira/browse/IGNITE-10951
> Project: Ignite
>  Issue Type: Task
>Affects Versions: 2.8
>Reporter: Oleg Ignatenko
>Assignee: Oleg Ignatenko
>Priority: Major
>
> This is an umbrella ticket for those tasks related to migration from JUnit 3 
> to 4 which assume that all JUnit 3 related code has been already cleaned from 
> the project in prior phase per IGNITE-10173 and IGNITE-10762.
> This involves such tasks as update guidelines as suggested in comments of 
> IGNITE-10178, study of whether to migrate to JUnit 5, removal of scaffolding 
> annotations etc.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


  1   2   3   4   5   6   7   8   >