You are viewing a plain text version of this content. The canonical link for it is here.
Posted to derby-dev@db.apache.org by "Myrna van Lunteren (JIRA)" <ji...@apache.org> on 2007/01/23 20:10:49 UTC
[jira] Created: (DERBY-2265) bad logic in jvm:guessWSHome() in old
test harness affects j9 runs
bad logic in jvm:guessWSHome() in old test harness affects j9 runs
------------------------------------------------------------------
Key: DERBY-2265
URL: https://issues.apache.org/jira/browse/DERBY-2265
Project: Derby
Issue Type: Bug
Affects Versions: 10.3.0.0
Environment: wctme5.7_foundation (j2ME 1.0) or weme6.1 (foundation, j2ME 1.1)
Reporter: Myrna van Lunteren
Assigned To: Myrna van Lunteren
Priority: Minor
Running derbyall using either wcmte5.7_foundation or weme6.1 results in the following stack trace.
Exception in thread "main" java.lang.StringIndexOutOfBoundsException
at java.lang.String.substring(String.java:1043)
at org.apache.derbyTesting.functionTests.harness.jvm.guessWSHome(jvm.java:301)
at org.apache.derbyTesting.functionTests.harness.jvm.getSecurityProps(jvm.java:356)
at org.apache.derbyTesting.functionTests.harness.jvm.setSecurityProps(jvm.java:336)
at org.apache.derbyTesting.functionTests.harness.RunTest.buildTestCommand(RunTest.java:2350)
at org.apache.derbyTesting.functionTests.harness.RunTest.testRun(RunTest.java:498)
at org.apache.derbyTesting.functionTests.harness.RunTest.main(RunTest.java:368)
I think this code was not reached until various security related changes recently, but the code is just bad.
I think this code was used at one point to attempt to kick off another jvm to run a server with, but that is now defunct.
Rather than try to make the code work, or try to clean it up, I'd rather spend time converting tests to the junit framework, so I will just fix this up so we don't hit the error.
The bad code is:
wshome = jhome.substring(0,jhome.indexOf(sep + "jre"));
wshome = wshome.substring(0,wshome.lastIndexOf(sep));
If the jhome ( System.getProperty("java.home")) does not contain 'jre', we will get -1 as the 2nd parameter in jhome.substring, and thus cause the ArrayIndexOutOfBounds.
I propose to fix this piece of code as follows:
int havejre=jhome.indexOf(sep + "jre");
if (havejre > 0)
{
wshome = jhome.substring(0,jhome.indexOf(sep + "jre"));
wshome = wshome.substring(0,wshome.lastIndexOf(sep));
}
else
wshome = jhome.substring(0,jhome.lastIndexOf(sep));
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Closed: (DERBY-2265) bad logic in jvm:guessWSHome() in old
test harness affects j9 runs
Posted by "Myrna van Lunteren (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/DERBY-2265?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Myrna van Lunteren closed DERBY-2265.
-------------------------------------
Resolution: Fixed
> bad logic in jvm:guessWSHome() in old test harness affects j9 runs
> ------------------------------------------------------------------
>
> Key: DERBY-2265
> URL: https://issues.apache.org/jira/browse/DERBY-2265
> Project: Derby
> Issue Type: Bug
> Components: Test
> Affects Versions: 10.3.0.0
> Environment: wctme5.7_foundation (j2ME 1.0) or weme6.1 (foundation, j2ME 1.1)
> Reporter: Myrna van Lunteren
> Assigned To: Myrna van Lunteren
> Priority: Minor
> Fix For: 10.3.0.0
>
> Attachments: DERBY-2265_20070123.diff
>
>
> Running derbyall using either wcmte5.7_foundation or weme6.1 results in the following stack trace.
> Exception in thread "main" java.lang.StringIndexOutOfBoundsException
> at java.lang.String.substring(String.java:1043)
> at org.apache.derbyTesting.functionTests.harness.jvm.guessWSHome(jvm.java:301)
> at org.apache.derbyTesting.functionTests.harness.jvm.getSecurityProps(jvm.java:356)
> at org.apache.derbyTesting.functionTests.harness.jvm.setSecurityProps(jvm.java:336)
> at org.apache.derbyTesting.functionTests.harness.RunTest.buildTestCommand(RunTest.java:2350)
> at org.apache.derbyTesting.functionTests.harness.RunTest.testRun(RunTest.java:498)
> at org.apache.derbyTesting.functionTests.harness.RunTest.main(RunTest.java:368)
> I think this code was not reached until various security related changes recently, but the code is just bad.
> I think this code was used at one point to attempt to kick off another jvm to run a server with, but that is now defunct.
> Rather than try to make the code work, or try to clean it up, I'd rather spend time converting tests to the junit framework, so I will just fix this up so we don't hit the error.
> The bad code is:
> wshome = jhome.substring(0,jhome.indexOf(sep + "jre"));
> wshome = wshome.substring(0,wshome.lastIndexOf(sep));
> If the jhome ( System.getProperty("java.home")) does not contain 'jre', we will get -1 as the 2nd parameter in jhome.substring, and thus cause the ArrayIndexOutOfBounds.
> I propose to fix this piece of code as follows:
> int havejre=jhome.indexOf(sep + "jre");
> if (havejre > 0)
> {
> wshome = jhome.substring(0,jhome.indexOf(sep + "jre"));
> wshome = wshome.substring(0,wshome.lastIndexOf(sep));
> }
> else
> wshome = jhome.substring(0,jhome.lastIndexOf(sep));
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Updated: (DERBY-2265) bad logic in jvm:guessWSHome() in old
test harness affects j9 runs
Posted by "Myrna van Lunteren (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/DERBY-2265?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Myrna van Lunteren updated DERBY-2265:
--------------------------------------
Component/s: Test
> bad logic in jvm:guessWSHome() in old test harness affects j9 runs
> ------------------------------------------------------------------
>
> Key: DERBY-2265
> URL: https://issues.apache.org/jira/browse/DERBY-2265
> Project: Derby
> Issue Type: Bug
> Components: Test
> Affects Versions: 10.3.0.0
> Environment: wctme5.7_foundation (j2ME 1.0) or weme6.1 (foundation, j2ME 1.1)
> Reporter: Myrna van Lunteren
> Assigned To: Myrna van Lunteren
> Priority: Minor
> Fix For: 10.3.0.0
>
> Attachments: DERBY-2265_20070123.diff
>
>
> Running derbyall using either wcmte5.7_foundation or weme6.1 results in the following stack trace.
> Exception in thread "main" java.lang.StringIndexOutOfBoundsException
> at java.lang.String.substring(String.java:1043)
> at org.apache.derbyTesting.functionTests.harness.jvm.guessWSHome(jvm.java:301)
> at org.apache.derbyTesting.functionTests.harness.jvm.getSecurityProps(jvm.java:356)
> at org.apache.derbyTesting.functionTests.harness.jvm.setSecurityProps(jvm.java:336)
> at org.apache.derbyTesting.functionTests.harness.RunTest.buildTestCommand(RunTest.java:2350)
> at org.apache.derbyTesting.functionTests.harness.RunTest.testRun(RunTest.java:498)
> at org.apache.derbyTesting.functionTests.harness.RunTest.main(RunTest.java:368)
> I think this code was not reached until various security related changes recently, but the code is just bad.
> I think this code was used at one point to attempt to kick off another jvm to run a server with, but that is now defunct.
> Rather than try to make the code work, or try to clean it up, I'd rather spend time converting tests to the junit framework, so I will just fix this up so we don't hit the error.
> The bad code is:
> wshome = jhome.substring(0,jhome.indexOf(sep + "jre"));
> wshome = wshome.substring(0,wshome.lastIndexOf(sep));
> If the jhome ( System.getProperty("java.home")) does not contain 'jre', we will get -1 as the 2nd parameter in jhome.substring, and thus cause the ArrayIndexOutOfBounds.
> I propose to fix this piece of code as follows:
> int havejre=jhome.indexOf(sep + "jre");
> if (havejre > 0)
> {
> wshome = jhome.substring(0,jhome.indexOf(sep + "jre"));
> wshome = wshome.substring(0,wshome.lastIndexOf(sep));
> }
> else
> wshome = jhome.substring(0,jhome.lastIndexOf(sep));
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Reopened: (DERBY-2265) bad logic in jvm:guessWSHome() in old
test harness affects j9 runs
Posted by "Myrna van Lunteren (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/DERBY-2265?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Myrna van Lunteren reopened DERBY-2265:
---------------------------------------
> bad logic in jvm:guessWSHome() in old test harness affects j9 runs
> ------------------------------------------------------------------
>
> Key: DERBY-2265
> URL: https://issues.apache.org/jira/browse/DERBY-2265
> Project: Derby
> Issue Type: Bug
> Components: Test
> Affects Versions: 10.3.0.0
> Environment: wctme5.7_foundation (j2ME 1.0) or weme6.1 (foundation, j2ME 1.1)
> Reporter: Myrna van Lunteren
> Assigned To: Myrna van Lunteren
> Priority: Minor
> Fix For: 10.3.0.0
>
> Attachments: DERBY-2265_20070123.diff
>
>
> Running derbyall using either wcmte5.7_foundation or weme6.1 results in the following stack trace.
> Exception in thread "main" java.lang.StringIndexOutOfBoundsException
> at java.lang.String.substring(String.java:1043)
> at org.apache.derbyTesting.functionTests.harness.jvm.guessWSHome(jvm.java:301)
> at org.apache.derbyTesting.functionTests.harness.jvm.getSecurityProps(jvm.java:356)
> at org.apache.derbyTesting.functionTests.harness.jvm.setSecurityProps(jvm.java:336)
> at org.apache.derbyTesting.functionTests.harness.RunTest.buildTestCommand(RunTest.java:2350)
> at org.apache.derbyTesting.functionTests.harness.RunTest.testRun(RunTest.java:498)
> at org.apache.derbyTesting.functionTests.harness.RunTest.main(RunTest.java:368)
> I think this code was not reached until various security related changes recently, but the code is just bad.
> I think this code was used at one point to attempt to kick off another jvm to run a server with, but that is now defunct.
> Rather than try to make the code work, or try to clean it up, I'd rather spend time converting tests to the junit framework, so I will just fix this up so we don't hit the error.
> The bad code is:
> wshome = jhome.substring(0,jhome.indexOf(sep + "jre"));
> wshome = wshome.substring(0,wshome.lastIndexOf(sep));
> If the jhome ( System.getProperty("java.home")) does not contain 'jre', we will get -1 as the 2nd parameter in jhome.substring, and thus cause the ArrayIndexOutOfBounds.
> I propose to fix this piece of code as follows:
> int havejre=jhome.indexOf(sep + "jre");
> if (havejre > 0)
> {
> wshome = jhome.substring(0,jhome.indexOf(sep + "jre"));
> wshome = wshome.substring(0,wshome.lastIndexOf(sep));
> }
> else
> wshome = jhome.substring(0,jhome.lastIndexOf(sep));
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Updated: (DERBY-2265) bad logic in jvm:guessWSHome() in old
test harness affects j9 runs
Posted by "Myrna van Lunteren (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/DERBY-2265?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Myrna van Lunteren updated DERBY-2265:
--------------------------------------
Attachment: DERBY-2265_20070123.diff
put some more ifs in then in my proposed change. Spot-tested this with jdk14, wcmte5.7 and weme6.1, running individual tests and some suites.
> bad logic in jvm:guessWSHome() in old test harness affects j9 runs
> ------------------------------------------------------------------
>
> Key: DERBY-2265
> URL: https://issues.apache.org/jira/browse/DERBY-2265
> Project: Derby
> Issue Type: Bug
> Affects Versions: 10.3.0.0
> Environment: wctme5.7_foundation (j2ME 1.0) or weme6.1 (foundation, j2ME 1.1)
> Reporter: Myrna van Lunteren
> Assigned To: Myrna van Lunteren
> Priority: Minor
> Attachments: DERBY-2265_20070123.diff
>
>
> Running derbyall using either wcmte5.7_foundation or weme6.1 results in the following stack trace.
> Exception in thread "main" java.lang.StringIndexOutOfBoundsException
> at java.lang.String.substring(String.java:1043)
> at org.apache.derbyTesting.functionTests.harness.jvm.guessWSHome(jvm.java:301)
> at org.apache.derbyTesting.functionTests.harness.jvm.getSecurityProps(jvm.java:356)
> at org.apache.derbyTesting.functionTests.harness.jvm.setSecurityProps(jvm.java:336)
> at org.apache.derbyTesting.functionTests.harness.RunTest.buildTestCommand(RunTest.java:2350)
> at org.apache.derbyTesting.functionTests.harness.RunTest.testRun(RunTest.java:498)
> at org.apache.derbyTesting.functionTests.harness.RunTest.main(RunTest.java:368)
> I think this code was not reached until various security related changes recently, but the code is just bad.
> I think this code was used at one point to attempt to kick off another jvm to run a server with, but that is now defunct.
> Rather than try to make the code work, or try to clean it up, I'd rather spend time converting tests to the junit framework, so I will just fix this up so we don't hit the error.
> The bad code is:
> wshome = jhome.substring(0,jhome.indexOf(sep + "jre"));
> wshome = wshome.substring(0,wshome.lastIndexOf(sep));
> If the jhome ( System.getProperty("java.home")) does not contain 'jre', we will get -1 as the 2nd parameter in jhome.substring, and thus cause the ArrayIndexOutOfBounds.
> I propose to fix this piece of code as follows:
> int havejre=jhome.indexOf(sep + "jre");
> if (havejre > 0)
> {
> wshome = jhome.substring(0,jhome.indexOf(sep + "jre"));
> wshome = wshome.substring(0,wshome.lastIndexOf(sep));
> }
> else
> wshome = jhome.substring(0,jhome.lastIndexOf(sep));
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Closed: (DERBY-2265) bad logic in jvm:guessWSHome() in old
test harness affects j9 runs
Posted by "Myrna van Lunteren (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/DERBY-2265?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Myrna van Lunteren closed DERBY-2265.
-------------------------------------
Resolution: Fixed
Fix Version/s: 10.3.0.0
committed http://svn.apache.org/viewvc?view=rev&revision=499200
> bad logic in jvm:guessWSHome() in old test harness affects j9 runs
> ------------------------------------------------------------------
>
> Key: DERBY-2265
> URL: https://issues.apache.org/jira/browse/DERBY-2265
> Project: Derby
> Issue Type: Bug
> Affects Versions: 10.3.0.0
> Environment: wctme5.7_foundation (j2ME 1.0) or weme6.1 (foundation, j2ME 1.1)
> Reporter: Myrna van Lunteren
> Assigned To: Myrna van Lunteren
> Priority: Minor
> Fix For: 10.3.0.0
>
> Attachments: DERBY-2265_20070123.diff
>
>
> Running derbyall using either wcmte5.7_foundation or weme6.1 results in the following stack trace.
> Exception in thread "main" java.lang.StringIndexOutOfBoundsException
> at java.lang.String.substring(String.java:1043)
> at org.apache.derbyTesting.functionTests.harness.jvm.guessWSHome(jvm.java:301)
> at org.apache.derbyTesting.functionTests.harness.jvm.getSecurityProps(jvm.java:356)
> at org.apache.derbyTesting.functionTests.harness.jvm.setSecurityProps(jvm.java:336)
> at org.apache.derbyTesting.functionTests.harness.RunTest.buildTestCommand(RunTest.java:2350)
> at org.apache.derbyTesting.functionTests.harness.RunTest.testRun(RunTest.java:498)
> at org.apache.derbyTesting.functionTests.harness.RunTest.main(RunTest.java:368)
> I think this code was not reached until various security related changes recently, but the code is just bad.
> I think this code was used at one point to attempt to kick off another jvm to run a server with, but that is now defunct.
> Rather than try to make the code work, or try to clean it up, I'd rather spend time converting tests to the junit framework, so I will just fix this up so we don't hit the error.
> The bad code is:
> wshome = jhome.substring(0,jhome.indexOf(sep + "jre"));
> wshome = wshome.substring(0,wshome.lastIndexOf(sep));
> If the jhome ( System.getProperty("java.home")) does not contain 'jre', we will get -1 as the 2nd parameter in jhome.substring, and thus cause the ArrayIndexOutOfBounds.
> I propose to fix this piece of code as follows:
> int havejre=jhome.indexOf(sep + "jre");
> if (havejre > 0)
> {
> wshome = jhome.substring(0,jhome.indexOf(sep + "jre"));
> wshome = wshome.substring(0,wshome.lastIndexOf(sep));
> }
> else
> wshome = jhome.substring(0,jhome.lastIndexOf(sep));
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.