You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@harmony.apache.org by "Vera Petrashkova (JIRA)" <ji...@apache.org> on 2007/06/29 07:34:05 UTC
[jira] Created: (HARMONY-4302) [buildtest][vts] 3 vm/jvms/threads
tests do not initialize used variables
[buildtest][vts] 3 vm/jvms/threads tests do not initialize used variables
--------------------------------------------------------------------------
Key: HARMONY-4302
URL: https://issues.apache.org/jira/browse/HARMONY-4302
Project: Harmony
Issue Type: Bug
Components: build - test - ci
Reporter: Vera Petrashkova
Attachments: threads.patch
The following VTS VM tests are incorrect:
vm/jvms/threads/threads201/threads20101/threads20101.xml
vm/jvms/threads/threads209/threads20901/threads20901.xml
vm/jvms/threads/threads189/threads18901/threads18901.xml
According to these tests descriptions (for example, see threads18901.xml)
they should assign "a" and "b" variables during initialization,
then they modify "c" and "d" variable using "a" and "b" and check the values of "c" and "d".
--------------------
<Description>
The test initializes the following fields
a = 1; <<<<<<<<<<<<<<
b = 2; <<<<<<<<<<<<<<
c = d = 0;
and starts two threads. The first thread concurrently calls
the following method:
public void anny() {
a = 3;
b = 4;
}
While the second thread calls concurrently the following method:
public void betty() {
c = a;
d = b;
}
(both methods are not synchronized)
After threads finished their calls, the master thread makes
a synchronous check
of c and d values, for c to be either 1 or 3, for d to be either 2 or 4.
The procedure is repeated until timeout specified by delay parameter is
reached.
Covered assertions assert_thread189
</Description>
----------------------
But actually all these tests assign "c" and "d" variables during initialization:
--------------threads18901p.j-------------------
.method public <init>()V
.limit stack 2
.limit locals 1
aload_0
invokespecial
org/apache/harmony/vts/test/vm/jvms/threads/share/InterruptibleTest/<init>()V
aload_0
iconst_1
putfield
org/apache/harmony/vts/test/vm/jvms/threads/threads189/threads18901/threads18901p/c I <<<<< c instead of a
aload_0
iconst_2
putfield
org/apache/harmony/vts/test/vm/jvms/threads/threads189/threads18901/threads18901p/d I <<<< < d instead of b
return
.end method
----------------threads20101p.j---------------------
.method public <init>()V
.limit stack 2
.limit locals 1
aload_0
invokespecial
org/apache/harmony/vts/test/vm/jvms/threads/share/InterruptibleTest/<init>()V
aload_0
iconst_1
putfield
org/apache/harmony/vts/test/vm/jvms/threads/threads201/threads20101/threads20101p/c I <<<<< c instead of a
aload_0
iconst_2
putfield
org/apache/harmony/vts/test/vm/jvms/threads/threads201/threads20101/threads20101p/d I <<<<< d instead of b
return
.end method
-----------threads20901p.j-------------------------
.method public <init>()V
.limit stack 2
.limit locals 1
aload_0
invokespecial
org/apache/harmony/vts/test/vm/jvms/threads/share/InterruptibleTest/<init>()V
aload_0
iconst_1
putfield
org/apache/harmony/vts/test/vm/jvms/threads/threads209/threads20901/threads20901p/c I <<<<< c instead of a
aload_0
iconst_2
putfield
org/apache/harmony/vts/test/vm/jvms/threads/threads209/threads20901/threads20901p/d I <<<<< d instead of b
return
.end method
----------------------------
As the result if the second thread (Betty) executes before the first thread
(Anny) then "c" and "d" have wrong value 0 and these tests fail.
The initialization of "c" and "d" should be replaced by the initialization "a" and "b"
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Updated: (HARMONY-4302) [buildtest][vts] 3 vm/jvms/threads
tests do not initialize used variables
Posted by "Vera Petrashkova (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HARMONY-4302?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Vera Petrashkova updated HARMONY-4302:
--------------------------------------
Attachment: threads.patch
> [buildtest][vts] 3 vm/jvms/threads tests do not initialize used variables
> --------------------------------------------------------------------------
>
> Key: HARMONY-4302
> URL: https://issues.apache.org/jira/browse/HARMONY-4302
> Project: Harmony
> Issue Type: Bug
> Components: build - test - ci
> Reporter: Vera Petrashkova
> Attachments: threads.patch
>
>
> The following VTS VM tests are incorrect:
> vm/jvms/threads/threads201/threads20101/threads20101.xml
> vm/jvms/threads/threads209/threads20901/threads20901.xml
> vm/jvms/threads/threads189/threads18901/threads18901.xml
> According to these tests descriptions (for example, see threads18901.xml)
> they should assign "a" and "b" variables during initialization,
> then they modify "c" and "d" variable using "a" and "b" and check the values of "c" and "d".
> --------------------
> <Description>
> The test initializes the following fields
> a = 1; <<<<<<<<<<<<<<
> b = 2; <<<<<<<<<<<<<<
> c = d = 0;
> and starts two threads. The first thread concurrently calls
> the following method:
> public void anny() {
> a = 3;
> b = 4;
> }
> While the second thread calls concurrently the following method:
> public void betty() {
> c = a;
> d = b;
> }
> (both methods are not synchronized)
> After threads finished their calls, the master thread makes
> a synchronous check
> of c and d values, for c to be either 1 or 3, for d to be either 2 or 4.
> The procedure is repeated until timeout specified by delay parameter is
> reached.
> Covered assertions assert_thread189
> </Description>
> ----------------------
> But actually all these tests assign "c" and "d" variables during initialization:
> --------------threads18901p.j-------------------
> .method public <init>()V
> .limit stack 2
> .limit locals 1
> aload_0
> invokespecial
> org/apache/harmony/vts/test/vm/jvms/threads/share/InterruptibleTest/<init>()V
> aload_0
> iconst_1
> putfield
> org/apache/harmony/vts/test/vm/jvms/threads/threads189/threads18901/threads18901p/c I <<<<< c instead of a
> aload_0
> iconst_2
> putfield
> org/apache/harmony/vts/test/vm/jvms/threads/threads189/threads18901/threads18901p/d I <<<< < d instead of b
> return
> .end method
> ----------------threads20101p.j---------------------
> .method public <init>()V
> .limit stack 2
> .limit locals 1
> aload_0
> invokespecial
> org/apache/harmony/vts/test/vm/jvms/threads/share/InterruptibleTest/<init>()V
> aload_0
> iconst_1
> putfield
> org/apache/harmony/vts/test/vm/jvms/threads/threads201/threads20101/threads20101p/c I <<<<< c instead of a
> aload_0
> iconst_2
> putfield
> org/apache/harmony/vts/test/vm/jvms/threads/threads201/threads20101/threads20101p/d I <<<<< d instead of b
> return
> .end method
> -----------threads20901p.j-------------------------
> .method public <init>()V
> .limit stack 2
> .limit locals 1
> aload_0
> invokespecial
> org/apache/harmony/vts/test/vm/jvms/threads/share/InterruptibleTest/<init>()V
> aload_0
> iconst_1
> putfield
> org/apache/harmony/vts/test/vm/jvms/threads/threads209/threads20901/threads20901p/c I <<<<< c instead of a
> aload_0
> iconst_2
> putfield
> org/apache/harmony/vts/test/vm/jvms/threads/threads209/threads20901/threads20901p/d I <<<<< d instead of b
> return
> .end method
> ----------------------------
> As the result if the second thread (Betty) executes before the first thread
> (Anny) then "c" and "d" have wrong value 0 and these tests fail.
> The initialization of "c" and "d" should be replaced by the initialization "a" and "b"
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Resolved: (HARMONY-4302) [buildtest][vts] 3 vm/jvms/threads
tests do not initialize used variables
Posted by "Vladimir Ivanov (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HARMONY-4302?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Vladimir Ivanov resolved HARMONY-4302.
--------------------------------------
Resolution: Fixed
Thanks for your patch. It was applied at r556862. Please, verify.
> [buildtest][vts] 3 vm/jvms/threads tests do not initialize used variables
> --------------------------------------------------------------------------
>
> Key: HARMONY-4302
> URL: https://issues.apache.org/jira/browse/HARMONY-4302
> Project: Harmony
> Issue Type: Bug
> Components: build - test - ci
> Reporter: Vera Petrashkova
> Assignee: Vladimir Ivanov
> Attachments: threads.patch
>
>
> The following VTS VM tests are incorrect:
> vm/jvms/threads/threads201/threads20101/threads20101.xml
> vm/jvms/threads/threads209/threads20901/threads20901.xml
> vm/jvms/threads/threads189/threads18901/threads18901.xml
> According to these tests descriptions (for example, see threads18901.xml)
> they should assign "a" and "b" variables during initialization,
> then they modify "c" and "d" variable using "a" and "b" and check the values of "c" and "d".
> --------------------
> <Description>
> The test initializes the following fields
> a = 1; <<<<<<<<<<<<<<
> b = 2; <<<<<<<<<<<<<<
> c = d = 0;
> and starts two threads. The first thread concurrently calls
> the following method:
> public void anny() {
> a = 3;
> b = 4;
> }
> While the second thread calls concurrently the following method:
> public void betty() {
> c = a;
> d = b;
> }
> (both methods are not synchronized)
> After threads finished their calls, the master thread makes
> a synchronous check
> of c and d values, for c to be either 1 or 3, for d to be either 2 or 4.
> The procedure is repeated until timeout specified by delay parameter is
> reached.
> Covered assertions assert_thread189
> </Description>
> ----------------------
> But actually all these tests assign "c" and "d" variables during initialization:
> --------------threads18901p.j-------------------
> .method public <init>()V
> .limit stack 2
> .limit locals 1
> aload_0
> invokespecial
> org/apache/harmony/vts/test/vm/jvms/threads/share/InterruptibleTest/<init>()V
> aload_0
> iconst_1
> putfield
> org/apache/harmony/vts/test/vm/jvms/threads/threads189/threads18901/threads18901p/c I <<<<< c instead of a
> aload_0
> iconst_2
> putfield
> org/apache/harmony/vts/test/vm/jvms/threads/threads189/threads18901/threads18901p/d I <<<< < d instead of b
> return
> .end method
> ----------------threads20101p.j---------------------
> .method public <init>()V
> .limit stack 2
> .limit locals 1
> aload_0
> invokespecial
> org/apache/harmony/vts/test/vm/jvms/threads/share/InterruptibleTest/<init>()V
> aload_0
> iconst_1
> putfield
> org/apache/harmony/vts/test/vm/jvms/threads/threads201/threads20101/threads20101p/c I <<<<< c instead of a
> aload_0
> iconst_2
> putfield
> org/apache/harmony/vts/test/vm/jvms/threads/threads201/threads20101/threads20101p/d I <<<<< d instead of b
> return
> .end method
> -----------threads20901p.j-------------------------
> .method public <init>()V
> .limit stack 2
> .limit locals 1
> aload_0
> invokespecial
> org/apache/harmony/vts/test/vm/jvms/threads/share/InterruptibleTest/<init>()V
> aload_0
> iconst_1
> putfield
> org/apache/harmony/vts/test/vm/jvms/threads/threads209/threads20901/threads20901p/c I <<<<< c instead of a
> aload_0
> iconst_2
> putfield
> org/apache/harmony/vts/test/vm/jvms/threads/threads209/threads20901/threads20901p/d I <<<<< d instead of b
> return
> .end method
> ----------------------------
> As the result if the second thread (Betty) executes before the first thread
> (Anny) then "c" and "d" have wrong value 0 and these tests fail.
> The initialization of "c" and "d" should be replaced by the initialization "a" and "b"
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Assigned: (HARMONY-4302) [buildtest][vts] 3 vm/jvms/threads
tests do not initialize used variables
Posted by "Vladimir Ivanov (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HARMONY-4302?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Vladimir Ivanov reassigned HARMONY-4302:
----------------------------------------
Assignee: Vladimir Ivanov
> [buildtest][vts] 3 vm/jvms/threads tests do not initialize used variables
> --------------------------------------------------------------------------
>
> Key: HARMONY-4302
> URL: https://issues.apache.org/jira/browse/HARMONY-4302
> Project: Harmony
> Issue Type: Bug
> Components: build - test - ci
> Reporter: Vera Petrashkova
> Assignee: Vladimir Ivanov
> Attachments: threads.patch
>
>
> The following VTS VM tests are incorrect:
> vm/jvms/threads/threads201/threads20101/threads20101.xml
> vm/jvms/threads/threads209/threads20901/threads20901.xml
> vm/jvms/threads/threads189/threads18901/threads18901.xml
> According to these tests descriptions (for example, see threads18901.xml)
> they should assign "a" and "b" variables during initialization,
> then they modify "c" and "d" variable using "a" and "b" and check the values of "c" and "d".
> --------------------
> <Description>
> The test initializes the following fields
> a = 1; <<<<<<<<<<<<<<
> b = 2; <<<<<<<<<<<<<<
> c = d = 0;
> and starts two threads. The first thread concurrently calls
> the following method:
> public void anny() {
> a = 3;
> b = 4;
> }
> While the second thread calls concurrently the following method:
> public void betty() {
> c = a;
> d = b;
> }
> (both methods are not synchronized)
> After threads finished their calls, the master thread makes
> a synchronous check
> of c and d values, for c to be either 1 or 3, for d to be either 2 or 4.
> The procedure is repeated until timeout specified by delay parameter is
> reached.
> Covered assertions assert_thread189
> </Description>
> ----------------------
> But actually all these tests assign "c" and "d" variables during initialization:
> --------------threads18901p.j-------------------
> .method public <init>()V
> .limit stack 2
> .limit locals 1
> aload_0
> invokespecial
> org/apache/harmony/vts/test/vm/jvms/threads/share/InterruptibleTest/<init>()V
> aload_0
> iconst_1
> putfield
> org/apache/harmony/vts/test/vm/jvms/threads/threads189/threads18901/threads18901p/c I <<<<< c instead of a
> aload_0
> iconst_2
> putfield
> org/apache/harmony/vts/test/vm/jvms/threads/threads189/threads18901/threads18901p/d I <<<< < d instead of b
> return
> .end method
> ----------------threads20101p.j---------------------
> .method public <init>()V
> .limit stack 2
> .limit locals 1
> aload_0
> invokespecial
> org/apache/harmony/vts/test/vm/jvms/threads/share/InterruptibleTest/<init>()V
> aload_0
> iconst_1
> putfield
> org/apache/harmony/vts/test/vm/jvms/threads/threads201/threads20101/threads20101p/c I <<<<< c instead of a
> aload_0
> iconst_2
> putfield
> org/apache/harmony/vts/test/vm/jvms/threads/threads201/threads20101/threads20101p/d I <<<<< d instead of b
> return
> .end method
> -----------threads20901p.j-------------------------
> .method public <init>()V
> .limit stack 2
> .limit locals 1
> aload_0
> invokespecial
> org/apache/harmony/vts/test/vm/jvms/threads/share/InterruptibleTest/<init>()V
> aload_0
> iconst_1
> putfield
> org/apache/harmony/vts/test/vm/jvms/threads/threads209/threads20901/threads20901p/c I <<<<< c instead of a
> aload_0
> iconst_2
> putfield
> org/apache/harmony/vts/test/vm/jvms/threads/threads209/threads20901/threads20901p/d I <<<<< d instead of b
> return
> .end method
> ----------------------------
> As the result if the second thread (Betty) executes before the first thread
> (Anny) then "c" and "d" have wrong value 0 and these tests fail.
> The initialization of "c" and "d" should be replaced by the initialization "a" and "b"
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.