River
  1. River
  2. RIVER-301

Move the QA framework donated by Sun inside the jtsk trunk and integrate into build process

    Details

    • Type: Task Task
    • Status: Resolved
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: River_2.2.0
    • Fix Version/s: River_2.2.0
    • Component/s: other
    • Labels:
      None

      Description

      The tests donated by SUN live in their own source project and are runnable in a format that is unfriendly towards IDEs and new developers to the River project.

      This is the proposal to move the test code, mostly unmodified, into the main source directory whilst shoe-horning it into JUnit 3. This will allow it to be easily viewable and runnable. Such a structure will also reduce the code-compile-test cycle since no JARs will have to be created in the middle of the cycle and no long command-line incantations.

      1. River-301.patch.zip
        2.05 MB
        Tom Hobbs
      2. RIVER-301.patch
        3 kB
        Jukka Zitting
      3. RIVER-301.patch
        5 kB
        Tom Hobbs
      4. integrationtest.xml
        5 kB
        Tom Hobbs
      5. River-build-qa5.patch
        391 kB
        Jonathan Costers
      6. RIVER-301-JC-5.1.patch
        120 kB
        Jonathan Costers
      7. RIVER-301-JC-6.0.patch.tar.gz
        2.17 MB
        Jonathan Costers
      8. RIVER-301-txnmanager-CommitExpiredTest.patch
        0.4 kB
        Jonathan Costers

        Issue Links

          Activity

          Hide
          Dan Rollo added a comment -

          If you put this work into a sandbox branch, maybe we could help out and parallelize some of the labor...ooh - sounds distributed.

          Dan Rollo

          Show
          Dan Rollo added a comment - If you put this work into a sandbox branch, maybe we could help out and parallelize some of the labor...ooh - sounds distributed. Dan Rollo
          Hide
          Dan Rollo added a comment -

          Just saw this from Niclas:

          Added:
          incubator/river/jtsk/skunk/niclas1/

          • copied from r724606, incubator/river/jtsk/branches/next/

          Is that the place to look?

          Show
          Dan Rollo added a comment - Just saw this from Niclas: Added: incubator/river/jtsk/skunk/niclas1/ copied from r724606, incubator/river/jtsk/branches/next/ Is that the place to look?
          Hide
          Tom Hobbs added a comment -

          I'd be happy to check in what I've done so far. There are some nasty hacks and lots of sysouts while I try and work out who's doing what to whom and where! Erk.

          Can anyone commit to a sandbox branch? I don't know the purpose of Niclas's branch so I don't know if that's the right thing/place. We'd have to ask him I suppose.

          I would welcome all the help people are prepared to offer. The way I'm working is with a single TransactionManager test as a POC, then I'll move the rest of the TransactionManager tests over, and then see about moving /all/ the other tests over.

          My feeling is that once the approach has been cracked for one of the tests the rest should follow in reasonably short order.

          Show
          Tom Hobbs added a comment - I'd be happy to check in what I've done so far. There are some nasty hacks and lots of sysouts while I try and work out who's doing what to whom and where! Erk. Can anyone commit to a sandbox branch? I don't know the purpose of Niclas's branch so I don't know if that's the right thing/place. We'd have to ask him I suppose. I would welcome all the help people are prepared to offer. The way I'm working is with a single TransactionManager test as a POC, then I'll move the rest of the TransactionManager tests over, and then see about moving /all/ the other tests over. My feeling is that once the approach has been cracked for one of the tests the rest should follow in reasonably short order.
          Hide
          Jukka Zitting added a comment -

          As a first step, would anyone be interested in creating an Ant build file that replaces the current make build in qatests?

          Show
          Jukka Zitting added a comment - As a first step, would anyone be interested in creating an Ant build file that replaces the current make build in qatests?
          Hide
          Wade Chandler added a comment -

          I don't really understand how or why tests being in their own source directory is complicated for IDE users as both NB and Eclipse, and others I have used, allow more than a single source folder, and NB at least allows for a separate source folder specifically for tests. Too, it keeps from having to have other filters in the Ant scripts to remove test packages from the JAR files that will be distributed. Separate test source folders are fairly common in OSS projects too; this is true even in Apache projects. See Tomcat as an example.

          Show
          Wade Chandler added a comment - I don't really understand how or why tests being in their own source directory is complicated for IDE users as both NB and Eclipse, and others I have used, allow more than a single source folder, and NB at least allows for a separate source folder specifically for tests. Too, it keeps from having to have other filters in the Ant scripts to remove test packages from the JAR files that will be distributed. Separate test source folders are fairly common in OSS projects too; this is true even in Apache projects. See Tomcat as an example.
          Hide
          Tom Hobbs added a comment -

          Different source directories are not the issue. The issue, as I see it, is two fold.

          1) The test live in a different repository, they are not checked out automatically with the rest of the River code
          2) They can't be, (or at least, I can't find a way to) run all the tests in one go without many differing command line incantations

          These issues aren't insurmountable in and of themselves. However, moving them into the same repository as the code so everything gets checked out in one go, and having some mechanism to run all the rests from either a single command or a few IDE mouse clicks will make them easier - and therefore more likely - to be run more often and by everyone who checks the code out not just a few developers trying to check something specific. At least, that's my opinion.

          I would still recommend keeping the tests in a different directory specifically to guard against having to use the ant task filters and so on that you mention.

          I've spent a few weeks now trying to move just one test into the JUnit framework and have that run (successfully). Frankly, I'm just tying myself up in knots, I don't know how all the test classes relate to each other well to be able to attempt that kind of refactoring. As someone on the list mentioned, these aren't unit tests anyway, they're integration tests. As Jukka suggests, replacing the make file with an ant script would probably be the first step. I would also consider making it the final step unless a massive rewrite of the integration tests by someone who knows them better than me is attempted - but I would question the value of that work.

          I'm happy to start looking at that ant script, I don't consider this a stopper for AR2 release though, which is just as well because it may take me a while to get it done!

          Show
          Tom Hobbs added a comment - Different source directories are not the issue. The issue, as I see it, is two fold. 1) The test live in a different repository, they are not checked out automatically with the rest of the River code 2) They can't be, (or at least, I can't find a way to) run all the tests in one go without many differing command line incantations These issues aren't insurmountable in and of themselves. However, moving them into the same repository as the code so everything gets checked out in one go, and having some mechanism to run all the rests from either a single command or a few IDE mouse clicks will make them easier - and therefore more likely - to be run more often and by everyone who checks the code out not just a few developers trying to check something specific. At least, that's my opinion. I would still recommend keeping the tests in a different directory specifically to guard against having to use the ant task filters and so on that you mention. I've spent a few weeks now trying to move just one test into the JUnit framework and have that run (successfully). Frankly, I'm just tying myself up in knots, I don't know how all the test classes relate to each other well to be able to attempt that kind of refactoring. As someone on the list mentioned, these aren't unit tests anyway, they're integration tests. As Jukka suggests, replacing the make file with an ant script would probably be the first step. I would also consider making it the final step unless a massive rewrite of the integration tests by someone who knows them better than me is attempted - but I would question the value of that work. I'm happy to start looking at that ant script, I don't consider this a stopper for AR2 release though, which is just as well because it may take me a while to get it done!
          Hide
          Wade Chandler added a comment -

          understandable. Thanks for the clarification.

          Show
          Wade Chandler added a comment - understandable. Thanks for the clarification.
          Hide
          Tom Hobbs added a comment -

          As requested, here's a patch of work-to-date. All that has happened is;

          1) The directory "integrationtests" has been created at the same level as he River source directory
          2) The QA Test directories have been copied into this "integrationtests" dir.
          3) A new ant build XML has been created; integrationtests/integrationtest.xml

          The new XML file can clean the qa test directories and attempts to compile and JAR up the test code.

          Currently it's failing on some compiler errors which I haven had the time (or, unfortunately, the health) to take a look at properly.

          When those errors have been fixed I hope it's just a case of transposing the command line incantation detailed in qatestsREADME.txt to run the tests (once all the correct paths are established and set up).

          I haven't worked out a way to have Ant install the merged policy provider for the tests or install the policy provider for the River distribution.

          Show
          Tom Hobbs added a comment - As requested, here's a patch of work-to-date. All that has happened is; 1) The directory "integrationtests" has been created at the same level as he River source directory 2) The QA Test directories have been copied into this "integrationtests" dir. 3) A new ant build XML has been created; integrationtests/integrationtest.xml The new XML file can clean the qa test directories and attempts to compile and JAR up the test code. Currently it's failing on some compiler errors which I haven had the time (or, unfortunately, the health) to take a look at properly. When those errors have been fixed I hope it's just a case of transposing the command line incantation detailed in qatestsREADME.txt to run the tests (once all the correct paths are established and set up). I haven't worked out a way to have Ant install the merged policy provider for the tests or install the policy provider for the River distribution.
          Hide
          Jukka Zitting added a comment -

          That certainly is one big patch. When moving things around the source tree, it's best to use "svn move" or "svn copy" so that a resulting "svn diff" will only point out that the file was moved instead of including a full copy of the entire file.

          You don't seem to have selected the "Grant license to ASF for inclusion in ASF works" option when uploading the patch. Did you just not notice the option? Could you confirm that the code in the patch intended for inclusion under the Apache license?

          Anyway, I think we can work from here. I'll start by copying the source directories as you describe. This should make it easier to create a less enormous patch.

          Show
          Jukka Zitting added a comment - That certainly is one big patch. When moving things around the source tree, it's best to use "svn move" or "svn copy" so that a resulting "svn diff" will only point out that the file was moved instead of including a full copy of the entire file. You don't seem to have selected the "Grant license to ASF for inclusion in ASF works" option when uploading the patch. Did you just not notice the option? Could you confirm that the code in the patch intended for inclusion under the Apache license? Anyway, I think we can work from here. I'll start by copying the source directories as you describe. This should make it easier to create a less enormous patch.
          Hide
          Jukka Zitting added a comment -

          I copied all the qatests sources to an "integrationtests" directory under the jtsk trunk as you described.

          I'm attaching the patch that results from copying the integrationtest.xml file from your patch to the modified directory structure. I've also included some relevant svn:ignore settings.

          Show
          Jukka Zitting added a comment - I copied all the qatests sources to an "integrationtests" directory under the jtsk trunk as you described. I'm attaching the patch that results from copying the integrationtest.xml file from your patch to the modified directory structure. I've also included some relevant svn:ignore settings.
          Hide
          Tom Hobbs added a comment -

          "svn move" huh? My experience has been limited to check-in/out so I didn't know that that was the way to do it. Apologies for such a massive patch.

          I did notice the license options, I read the option to mention as suggesting that the patch was complete/good enough to be included in a release - which it isn't in it's current guise. The only new file I created was the build XML which contains an Apache license header anyway, so please do consider that the patch is definitely intended for inclusion under the Apache License.

          Cheers.

          Show
          Tom Hobbs added a comment - "svn move" huh? My experience has been limited to check-in/out so I didn't know that that was the way to do it. Apologies for such a massive patch. I did notice the license options, I read the option to mention as suggesting that the patch was complete/good enough to be included in a release - which it isn't in it's current guise. The only new file I created was the build XML which contains an Apache license header anyway, so please do consider that the patch is definitely intended for inclusion under the Apache License. Cheers.
          Hide
          Jukka Zitting added a comment -

          OK, thanks! I committed also the build file in revision 745455. You may want to check whether the jtsk/trunk/integrationtests directory looks the way you had in mind.

          No problem about the patch, as I was able to parse through it to figure out what you were doing. Moving things around is always a bit tricky to express in patch format.

          Show
          Jukka Zitting added a comment - OK, thanks! I committed also the build file in revision 745455. You may want to check whether the jtsk/trunk/integrationtests directory looks the way you had in mind. No problem about the patch, as I was able to parse through it to figure out what you were doing. Moving things around is always a bit tricky to express in patch format.
          Hide
          Jukka Zitting added a comment -

          The following sequence now runs the Ant build in the new integrationtests file:

          cd /path/to/jtsk/trunk
          ant all jars
          cd integrationtests
          ant -f integrationtest.xml
          

          However, the result is a single big jar file that most likely is missing a number of important pieces like resource files, RMI stubs, etc. Also, the original make build results in 58 individual jar files in qa/lib. I'm not sure if there's a deep reason for all those jars, so I can't tell whether we should try to make the Ant build recreate them all.

          Another open question is how to best set up and run all these tests. The best reference I have for now is the following script used by our Hudson CI build:

          echo $JAVA_HOME
          
          cd $WORKSPACE/jtsk/trunk
          ant clean build.release
          ant install.policy
          
          cd $WORKSPACE/qatests/trunk/source/vob/qa/src
          gmake clean
          gmake
          gmake jars
          cp $WORKSPACE/qatests/trunk/source/vob/qa/lib/mergedpolicyprovider.jar $JAVA_HOME/jre/lib/ext
          
          $JAVA_HOME/bin/java \
                 -cp  $WORKSPACE/qatests/trunk/source/vob/qa/lib/jiniharness.jar:$WORKSPACE/jtsk/trunk/lib/jsk-platform.jar:$WORKSPACE/jtsk/trunk/lib/jsk-lib.jar \
                 -Djava.security.policy=$WORKSPACE/qatests/trunk/source/vob/qa/harness/policy/qa.policy \
                 -Djava.util.logging.config.file=$WORKSPACE/qatests/trunk/source/vob/qa/src/com/sun/jini/test/resources/qa1.logging \
              com.sun.jini.qa.harness.QARunner \
                 $WORKSPACE/qatests/trunk/source/vob/qa/src/com/sun/jini/test/resources/qaHarness.prop \
                 -testJar $WORKSPACE/qatests/trunk/source/vob/qa/lib/jinitests.jar \
                 -categories joinmanager \
                 -com.sun.jini.qa.harness.serviceMode transient
          
          Show
          Jukka Zitting added a comment - The following sequence now runs the Ant build in the new integrationtests file: cd /path/to/jtsk/trunk ant all jars cd integrationtests ant -f integrationtest.xml However, the result is a single big jar file that most likely is missing a number of important pieces like resource files, RMI stubs, etc. Also, the original make build results in 58 individual jar files in qa/lib. I'm not sure if there's a deep reason for all those jars, so I can't tell whether we should try to make the Ant build recreate them all. Another open question is how to best set up and run all these tests. The best reference I have for now is the following script used by our Hudson CI build: echo $JAVA_HOME cd $WORKSPACE/jtsk/trunk ant clean build.release ant install.policy cd $WORKSPACE/qatests/trunk/source/vob/qa/src gmake clean gmake gmake jars cp $WORKSPACE/qatests/trunk/source/vob/qa/lib/mergedpolicyprovider.jar $JAVA_HOME/jre/lib/ext $JAVA_HOME/bin/java \ -cp $WORKSPACE/qatests/trunk/source/vob/qa/lib/jiniharness.jar:$WORKSPACE/jtsk/trunk/lib/jsk-platform.jar:$WORKSPACE/jtsk/trunk/lib/jsk-lib.jar \ -Djava.security.policy=$WORKSPACE/qatests/trunk/source/vob/qa/harness/policy/qa.policy \ -Djava.util.logging.config.file=$WORKSPACE/qatests/trunk/source/vob/qa/src/com/sun/jini/test/resources/qa1.logging \ com.sun.jini.qa.harness.QARunner \ $WORKSPACE/qatests/trunk/source/vob/qa/src/com/sun/jini/test/resources/qaHarness.prop \ -testJar $WORKSPACE/qatests/trunk/source/vob/qa/lib/jinitests.jar \ -categories joinmanager \ -com.sun.jini.qa.harness.serviceMode transient
          Hide
          Tom Hobbs added a comment -

          Replaced the ant build script so that it more closely resembles the make file.

          I've put a comment in the XML describing the problem I'm facing with the rmic targets, if someone can offer me some advice on that I'd be grateful.

          I've updated the JAR target to put everything into the single massive jar file (apart from the Java source). Like Jukka, I don't know if the fact that this approach has a single jar (rather than the make file's multiple jars) is going to be a problem.

          I haven't gotten around to replicating the rest of the Hudson CI build script yet, that's probably next on the list.

          Show
          Tom Hobbs added a comment - Replaced the ant build script so that it more closely resembles the make file. I've put a comment in the XML describing the problem I'm facing with the rmic targets, if someone can offer me some advice on that I'd be grateful. I've updated the JAR target to put everything into the single massive jar file (apart from the Java source). Like Jukka, I don't know if the fact that this approach has a single jar (rather than the make file's multiple jars) is going to be a problem. I haven't gotten around to replicating the rest of the Hudson CI build script yet, that's probably next on the list.
          Hide
          Tom Hobbs added a comment -

          This is the new file.

          (Sorry, the "create patch" option seems to have fallen off my IDE and it was late when I tried to get it done last night and that's why I've attached the actual file and not a patch).

          I've moved it down a directory as well, so it's now at the same level as build.xml and build_common.xml.

          When I run this script it successfully runs the tests but about half of them fail. I don't know if that's down to the code genuinely failing the tests or something to do with the script or infrastructure as I've set it up.

          I'm still missing the list of categories so that I can cut/paste the task on line 119 for each one. Can someone help me there please?

          Also missing is installing the policy providers as described in the original tests README. They have to be done as root, but obviously you wouldn't want to run the whole thing root and I haven't figured out how (or if) to do that in Ant.

          I confess to being some what stuck on this until I get the list of categories and figure the policy provider copy thing.

          Any ideas?

          Show
          Tom Hobbs added a comment - This is the new file. (Sorry, the "create patch" option seems to have fallen off my IDE and it was late when I tried to get it done last night and that's why I've attached the actual file and not a patch). I've moved it down a directory as well, so it's now at the same level as build.xml and build_common.xml. When I run this script it successfully runs the tests but about half of them fail. I don't know if that's down to the code genuinely failing the tests or something to do with the script or infrastructure as I've set it up. I'm still missing the list of categories so that I can cut/paste the task on line 119 for each one. Can someone help me there please? Also missing is installing the policy providers as described in the original tests README. They have to be done as root, but obviously you wouldn't want to run the whole thing root and I haven't figured out how (or if) to do that in Ant. I confess to being some what stuck on this until I get the list of categories and figure the policy provider copy thing. Any ideas?
          Hide
          Jukka Zitting added a comment -

          Committed the new build file (after removing the extra "-->" on line 118) in revision 755895.

          Could we merge this into a set of targets inside the standard build.xml file?

          Show
          Jukka Zitting added a comment - Committed the new build file (after removing the extra "-->" on line 118) in revision 755895. Could we merge this into a set of targets inside the standard build.xml file?
          Hide
          Jonathan Costers added a comment - - edited

          Hi

          After spending some time finding out how the QA test harness works, I managed to integrate the QA test suite into the main build process. I significantly updated integrationtests.xml.
          Also, I consolidated the complete River build process into one build.xml file.

          The attached patch (River-build-qa4.patch) contains:

          • updated integrationtests.xml, buildinq the QA suite in a similar way the make files did
          • consolidated scattered build.xml files into on build.xml in the project root directory
          • all QA suite JAR files have been identified and described in integrationtests.xml (conversion from existing GNUMake files has been done)
          • running the QA suite works now with most test categories
          • cleaned up build process in build.xml
          • use -Djava.ext.dirs for running the QA suite instead of (manually) installing policy providers in $JAVA_HOME/jre/lib/ext

          Instructions:

          • apply the attached patch
          • set JAVA_HOME
          • ant build.release run.qa

          Next steps:

          • cleanup

          Please let me know if this patch (River-build-qa4.patch) can be applied.

          PS: On the test categories: most packages under com.sun.jini.test.impl and com.sun.jini.test.spec seem to be test categories. Also, for each test, its category is mentioned in its .td file.

          Show
          Jonathan Costers added a comment - - edited Hi After spending some time finding out how the QA test harness works, I managed to integrate the QA test suite into the main build process. I significantly updated integrationtests.xml. Also, I consolidated the complete River build process into one build.xml file. The attached patch (River-build-qa4.patch) contains: updated integrationtests.xml, buildinq the QA suite in a similar way the make files did consolidated scattered build.xml files into on build.xml in the project root directory all QA suite JAR files have been identified and described in integrationtests.xml (conversion from existing GNUMake files has been done) running the QA suite works now with most test categories cleaned up build process in build.xml use -Djava.ext.dirs for running the QA suite instead of (manually) installing policy providers in $JAVA_HOME/jre/lib/ext Instructions: apply the attached patch set JAVA_HOME ant build.release run.qa Next steps: cleanup Please let me know if this patch (River-build-qa4.patch) can be applied. PS: On the test categories: most packages under com.sun.jini.test.impl and com.sun.jini.test.spec seem to be test categories. Also, for each test, its category is mentioned in its .td file.
          Hide
          Tom Hobbs added a comment -

          Hi Jonathan,

          Thanks for this patch, it looks a lot more robust than my effort!

          I've just done a fresh check-out and applied your patch to test it. Following your instructions though, there is no mention of creating a build.properties file. Should there be, or is it missing from the patch, or have I had another brain malfunction and not managed to check that file out?

          The lack of build.propeties is obviously limiting the amount of testing I can do.

          Cheers,

          Tom

          Show
          Tom Hobbs added a comment - Hi Jonathan, Thanks for this patch, it looks a lot more robust than my effort! I've just done a fresh check-out and applied your patch to test it. Following your instructions though, there is no mention of creating a build.properties file. Should there be, or is it missing from the patch, or have I had another brain malfunction and not managed to check that file out? The lack of build.propeties is obviously limiting the amount of testing I can do. Cheers, Tom
          Hide
          Jonathan Costers added a comment - - edited

          Hi Tom
          Sorry, I intended the build.properties file to be in the patch ... I have attached a new (5th) version of my patch.
          This one should work
          Sorry again
          Jonathan

          PS: I added a few more things in the mean time:

          • creation of keys, certificates and keystore for tests that need it (ported form GNUMake files)
          • run tests in jrmp,jeri,jsse,http,https config modes (haven't tried kerberos yet..)
          • more cleanup of integrationtest.xml
          Show
          Jonathan Costers added a comment - - edited Hi Tom Sorry, I intended the build.properties file to be in the patch ... I have attached a new (5th) version of my patch. This one should work Sorry again Jonathan PS: I added a few more things in the mean time: creation of keys, certificates and keystore for tests that need it (ported form GNUMake files) run tests in jrmp,jeri,jsse,http,https config modes (haven't tried kerberos yet..) more cleanup of integrationtest.xml
          Hide
          Tom Hobbs added a comment -

          That's the ticket! I've got the tests running on a vanilla download plus your patch. Brilliant work.

          I need to find some time to let the tests all run their course, I've left them running for about 30 minutes and they haven't finished yet. I think that par for the course though, isn't it?

          I'm not actually a committer, so it's not up to me, but I don't see a reason why your patch can't be included and close this issue.

          Show
          Tom Hobbs added a comment - That's the ticket! I've got the tests running on a vanilla download plus your patch. Brilliant work. I need to find some time to let the tests all run their course, I've left them running for about 30 minutes and they haven't finished yet. I think that par for the course though, isn't it? I'm not actually a committer, so it's not up to me, but I don't see a reason why your patch can't be included and close this issue.
          Hide
          Jonathan Costers added a comment -

          Excellent! Glad it works.

          Running some of the categories takes a while, others take ages to complete .. No wonder Sun created a full blown distributed test harness for running these tests This alone could be a separate Apache project :-D
          I'm running the 'discoverymanager' category right now, I know this one takes hours on my machine.

          I'm pretty sure there are some loose ends here and there, since porting the GNUMake files was a huge manual and repetitive task. But, I've been running lots of categories and only few errors occur. I'm trying to fix them as they come along.
          I've checked most of the JAR files off to a build of river/qatests/trunk using make, and they seem to contain the same class files and resources.. But I'll most likely have missed some things.

          I believe this can contribute to some new dynamic on this project. I see people are introducing a ClassDep alternative with acceptable licensing .. well these Ant files sure are a nice test for it They have a zillion ClassDep instantiations in there!

          Best
          Jonathan

          Show
          Jonathan Costers added a comment - Excellent! Glad it works. Running some of the categories takes a while, others take ages to complete .. No wonder Sun created a full blown distributed test harness for running these tests This alone could be a separate Apache project :-D I'm running the 'discoverymanager' category right now, I know this one takes hours on my machine. I'm pretty sure there are some loose ends here and there, since porting the GNUMake files was a huge manual and repetitive task. But, I've been running lots of categories and only few errors occur. I'm trying to fix them as they come along. I've checked most of the JAR files off to a build of river/qatests/trunk using make, and they seem to contain the same class files and resources.. But I'll most likely have missed some things. I believe this can contribute to some new dynamic on this project. I see people are introducing a ClassDep alternative with acceptable licensing .. well these Ant files sure are a nice test for it They have a zillion ClassDep instantiations in there! Best Jonathan
          Hide
          Jonathan Costers added a comment -

          This is the result for discoverymanager, after about 4 hours:

          [java] -----------------------------------------
          [java]
          [java] # of tests started = 200
          [java] # of tests completed = 200
          [java] # of tests passed = 197
          [java] # of tests failed = 3
          [java]
          [java] -----------------------------------------
          [java]
          [java] Date finished:
          [java] Fri Mar 27 03:50:13 CET 2009
          [java] Time elapsed:
          [java] 14194 seconds

          Show
          Jonathan Costers added a comment - This is the result for discoverymanager, after about 4 hours: [java] ----------------------------------------- [java] [java] # of tests started = 200 [java] # of tests completed = 200 [java] # of tests passed = 197 [java] # of tests failed = 3 [java] [java] ----------------------------------------- [java] [java] Date finished: [java] Fri Mar 27 03:50:13 CET 2009 [java] Time elapsed: [java] 14194 seconds
          Hide
          Jukka Zitting added a comment -

          Good stuff! Committed in revision 758747.

          Thanks also to Tom for the review and feedback, it gave me much more confidence to commit the relatively large patch.

          Show
          Jukka Zitting added a comment - Good stuff! Committed in revision 758747. Thanks also to Tom for the review and feedback, it gave me much more confidence to commit the relatively large patch.
          Hide
          Jonathan Costers added a comment - - edited

          After some testing of the previous patch (thanks for adding it to the trunk), I discovered some bugs and created a follow up patch, RIVER-301-JC-5.1.patch. Please review and apply if OK.

          changes:
          integrationtest.xml

          • general cleanup
          • added doc.qa target generating javadoc for the test harness and tests
          • fixed dependency bug: when keys are regenerated, JAR targets now pick this up when rebuilt
          • fixed classdep bug in qa1-mercury.jar target
            build.xml
          • general cleanup
          • fixed bugs, related to project directory structure, introduced by previous patch
            build.properties
          • general cleanup
          • changes related to integrationtest.xml and build.xml changes

          next steps:
          short term

          • run all tests and verify (WIP, help appreciated!)
          • find out why more tests fail in Windows
          • sometimes hardcoded references to resources internal to Sun: i.e. hostnames (e.g. "resendes"), domain names (e.g. "east.sun.com") ...
          • find out why some tests are skipped by the QARunner
          • find out why skipped tests cause the test run to fail
          • find out how to make the Kerberos related tests work (it seems an external Kerberos setup is needed)
            longer term
          • think about conversion strategy for the test harness to JUnit or similar framework
          • do we want to convert?
          • what would be the best way to port the tests to use the new framework instead of the test harness

          Also, I noticed that file deletions do not get picked up by the patches I create .. this time I used svn diff, but again I see no sign of my deletions. It seems my first patch just emptied the files I actually wanted to delete. Anything I am doing wrong?

          Here is the output of svn status:
          M .
          M integrationtest.xml
          M integrationtests/qa
          M integrationtests/qa/harness/trust
          M integrationtests/qa/doc
          D build_common.xml
          D src/net/jini/lookup/build.xml
          D src/configentry/build.xml
          D src/com/sun/jini/mercury/build.xml
          D src/com/sun/jini/example/browser/build.xml
          D src/com/sun/jini/start/build.xml
          D src/com/sun/jini/mahalo/build.xml
          D src/com/sun/jini/reggie/build.xml
          D src/com/sun/jini/outrigger/snaplogstore/build.xml
          D src/com/sun/jini/outrigger/build.xml
          D src/com/sun/jini/thread/build.xml
          D src/com/sun/jini/fiddler/build.xml
          D src/com/sun/jini/phoenix/build.xml
          D src/com/sun/jini/norm/build.xml
          D src/com/sun/jini/tool/build.xml
          D src/com/artima/lookup/util/build.xml
          D src/build.xml
          M build.properties
          M build.xml

          Best
          Jonathan

          Show
          Jonathan Costers added a comment - - edited After some testing of the previous patch (thanks for adding it to the trunk), I discovered some bugs and created a follow up patch, RIVER-301 -JC-5.1.patch. Please review and apply if OK. changes: integrationtest.xml general cleanup added doc.qa target generating javadoc for the test harness and tests fixed dependency bug: when keys are regenerated, JAR targets now pick this up when rebuilt fixed classdep bug in qa1-mercury.jar target build.xml general cleanup fixed bugs, related to project directory structure, introduced by previous patch build.properties general cleanup changes related to integrationtest.xml and build.xml changes next steps: short term run all tests and verify (WIP, help appreciated!) find out why more tests fail in Windows sometimes hardcoded references to resources internal to Sun: i.e. hostnames (e.g. "resendes"), domain names (e.g. "east.sun.com") ... find out why some tests are skipped by the QARunner find out why skipped tests cause the test run to fail find out how to make the Kerberos related tests work (it seems an external Kerberos setup is needed) longer term think about conversion strategy for the test harness to JUnit or similar framework do we want to convert? what would be the best way to port the tests to use the new framework instead of the test harness Also, I noticed that file deletions do not get picked up by the patches I create .. this time I used svn diff, but again I see no sign of my deletions. It seems my first patch just emptied the files I actually wanted to delete. Anything I am doing wrong? Here is the output of svn status: M . M integrationtest.xml M integrationtests/qa M integrationtests/qa/harness/trust M integrationtests/qa/doc D build_common.xml D src/net/jini/lookup/build.xml D src/configentry/build.xml D src/com/sun/jini/mercury/build.xml D src/com/sun/jini/example/browser/build.xml D src/com/sun/jini/start/build.xml D src/com/sun/jini/mahalo/build.xml D src/com/sun/jini/reggie/build.xml D src/com/sun/jini/outrigger/snaplogstore/build.xml D src/com/sun/jini/outrigger/build.xml D src/com/sun/jini/thread/build.xml D src/com/sun/jini/fiddler/build.xml D src/com/sun/jini/phoenix/build.xml D src/com/sun/jini/norm/build.xml D src/com/sun/jini/tool/build.xml D src/com/artima/lookup/util/build.xml D src/build.xml M build.properties M build.xml Best Jonathan
          Hide
          Jukka Zitting added a comment -

          RIVER-301-JC-5.1.patch applied in revision 759969. Removed the leftover build files in revision 759974.

          Show
          Jukka Zitting added a comment - RIVER-301 -JC-5.1.patch applied in revision 759969. Removed the leftover build files in revision 759974.
          Hide
          Jonathan Costers added a comment -

          Updated patch RIVER-301-JC-6.0.patch (it is big).

          -Several bug fixes in QA harness and tests build.
          -Introduced more elegant way of QA build integration with main River project.
          -Moved QA tests and harness files from 'integrationtests/qa' to 'qa' and moved build file 'integrationtest.xml' to 'qa/build.xml'.
          -Added descriptions to main build targets in all Ant build files.
          -Further clean up and simplification of all Ant build files.
          -'ant -projecthelp' is now meaningful for all build files.
          -Fixed dependency bugs for many targets of main River build file.
          -Fixed release targets of main River build file, also added QA source and binaries
          -Externalised common macros and property definitions into common.xml, included by main build and QA build

          Work In Progress:
          -Adapt main River and QA build documentation to reflect changes
          -Add targets to call multiple variations of the QA test run
          -Integrate classdep replacement code and remove JDK tools.jar dependency from build
          -Move 'hello' example to subdirectory "examples" in same way as "qa"

          Instructions:
          -check out latest River jtsk/trunk
          -apply this patch
          -set JAVA_HOME

          • from the project root directory:
            run 'ant all' to build everything
            and/or
            run 'ant release' to build everything and create release packages
            and/or
            run 'ant qa.run' to run some QA tests
            -from the main build or from 'qa' subdirectory you can also call targets for the current component only
          Show
          Jonathan Costers added a comment - Updated patch RIVER-301 -JC-6.0.patch (it is big). -Several bug fixes in QA harness and tests build. -Introduced more elegant way of QA build integration with main River project. -Moved QA tests and harness files from 'integrationtests/qa' to 'qa' and moved build file 'integrationtest.xml' to 'qa/build.xml'. -Added descriptions to main build targets in all Ant build files. -Further clean up and simplification of all Ant build files. -'ant -projecthelp' is now meaningful for all build files. -Fixed dependency bugs for many targets of main River build file. -Fixed release targets of main River build file, also added QA source and binaries -Externalised common macros and property definitions into common.xml, included by main build and QA build Work In Progress: -Adapt main River and QA build documentation to reflect changes -Add targets to call multiple variations of the QA test run -Integrate classdep replacement code and remove JDK tools.jar dependency from build -Move 'hello' example to subdirectory "examples" in same way as "qa" Instructions: -check out latest River jtsk/trunk -apply this patch -set JAVA_HOME from the project root directory: run 'ant all' to build everything and/or run 'ant release' to build everything and create release packages and/or run 'ant qa.run' to run some QA tests -from the main build or from 'qa' subdirectory you can also call targets for the current component only
          Hide
          Jonathan Costers added a comment - - edited

          Forget the attached patch, changes are being committed to the trunk as we speak.

          Updates:

          • Added targets to call multiple variations of the QA test run
          • Integrated classdep replacement code (patch for RIVER-272 by Peter Firmstone) and removed JDK tools.jar dependency

          Instructions:

          • check out the trunk to <trunk>
          • cd <trunk>
          • 'ant all' to build everything
          • 'ant release' to build everything and create release packages
          • 'ant qa.run' to run a sample QA test run (assumes everything is built)

          Work In Progress:

          • Move hello example to separate source tree (same way as /qa): separate JIRA issue TBD
          • documentation
          Show
          Jonathan Costers added a comment - - edited Forget the attached patch, changes are being committed to the trunk as we speak. Updates: Added targets to call multiple variations of the QA test run Integrated classdep replacement code (patch for RIVER-272 by Peter Firmstone) and removed JDK tools.jar dependency Instructions: check out the trunk to <trunk> cd <trunk> 'ant all' to build everything 'ant release' to build everything and create release packages 'ant qa.run' to run a sample QA test run (assumes everything is built) Work In Progress: Move hello example to separate source tree (same way as /qa): separate JIRA issue TBD documentation
          Hide
          Jonathan Costers added a comment -

          Donated code consists of two parts: a test harness and the actual tests.
          The harness provides an environment to execute the tests in a number of different flavours and configurations.

          All tests have been incorporated into the main source tree and original GNUMake files have been reverse engineered into an Ant build. This child build is called from within the main River build but is also usable on its own. Running all these tests in all possible configurations to verify the build (i.e. JAR contents, policy files etc.) takes a long time and still some tests fail.

          TODO:

          • Coordinated effort to run all tests, document outcome and investigate any failing ones
          • Clean up QA documentation, source code (e.g. fix bad javadoc tags)
          • Think about a strategy to move to JUnit (concepts are similar so it should be possible)
          Show
          Jonathan Costers added a comment - Donated code consists of two parts: a test harness and the actual tests. The harness provides an environment to execute the tests in a number of different flavours and configurations. All tests have been incorporated into the main source tree and original GNUMake files have been reverse engineered into an Ant build. This child build is called from within the main River build but is also usable on its own. Running all these tests in all possible configurations to verify the build (i.e. JAR contents, policy files etc.) takes a long time and still some tests fail. TODO: Coordinated effort to run all tests, document outcome and investigate any failing ones Clean up QA documentation, source code (e.g. fix bad javadoc tags) Think about a strategy to move to JUnit (concepts are similar so it should be possible)
          Hide
          Jonathan Costers added a comment -

          Some results running the QA suite from the current trunk:

          categories: id,activation,config,constraint,policyprovider,url,io,jrmp,iiop,joinmanager (transient,http)
          ----------------------------------------------------------------------------------------------------

          [java] com/sun/jini/test/spec/constraint/coreconstraint/PrincipalElementsTest.td
          [java] Test Failed: Setup Failed: com.sun.jini.qa.harness.TestException: Exception has been thrown while creating ClientMaxPrincipal object; nested exception is:
          [java] Could not load configuration file /etc/krb5.conf (No such file or directory)
          ...
          com/sun/jini/test/spec/jrmp/jrmpservercontext/GetServerContext_Test.td
          [java] Test Failed: Test Failed with an Unexpected Exception: java.rmi.server.ExportException: tie class unavailable
          [java]
          [java] -----------------------------------------
          [java] com/sun/jini/test/spec/jrmp/jrmpservercontext/GetServerContext_Test1.td
          [java] Test Failed: Test Failed with an Unexpected Exception: java.rmi.server.ExportException: tie class unavailable
          [java]
          [java] -----------------------------------------
          [java] com/sun/jini/test/spec/jrmp/jrmpservercontext/GetServerContext_Test2.td
          [java] Test Failed: Test Failed with an Unexpected Exception: java.rmi.server.ExportException: tie class unavailable
          [java]
          [java] -----------------------------------------
          [java] com/sun/jini/test/spec/jrmp/jrmpservercontext/GetServerContext_Test3.td
          [java] Test Failed: Test Failed with an Unexpected Exception: java.rmi.server.ExportException: tie class unavailable
          [java]
          [java] -----------------------------------------
          [java] com/sun/jini/test/spec/jrmp/jrmpservercontext/GetServerContext_Test4.td
          [java] Test Failed: Test Failed with an Unexpected Exception: java.rmi.server.ExportException: tie class unavailable
          ...
          [java] # of tests started = 248
          [java] # of tests completed = 248
          [java] # of tests skipped = 6
          [java] # of tests passed = 242
          [java] # of tests failed = 6
          [java]
          [java] -----------------------------------------
          [java]
          [java] Time elapsed:
          [java] 3077 seconds

          categories: export,io,security,reliability,thread,loader (transient,http)
          ----------------------------------------------------------------------------------------------------

          [java] -----------------------------------------
          [java] com/sun/jini/test/spec/loader/pref/preferredClassLoader/GetResources.td
          [java] Test Failed: Test Failed with an Unexpected Exception: java.lang.NullPointerException
          [java]
          [java] -----------------------------------------
          [java] com/sun/jini/test/spec/loader/pref/preferredClassLoader/GetResourcesNoDlPerm.td
          [java] Test Failed: Test Failed with an Unexpected Exception: java.lang.NullPointerException
          [java]
          [java] -----------------------------------------

          [java] # of tests started = 147
          [java] # of tests completed = 147
          [java] # of tests skipped = 10
          [java] # of tests passed = 145
          [java] # of tests failed = 2
          [java]
          [java] -----------------------------------------
          [java]
          [java] Time elapsed:
          [java] 935 seconds

          categories: jeri,discoverymanager,discoveryproviders,locatordiscovery,lookupdiscovery (transient,http)
          ----------------------------------------------------------------------------------------------------

          [java] -----------------------------------------
          [java] com/sun/jini/test/spec/jeri/kerberos/KerberosCheckConstraints.td
          [java] Test Failed: Test Failed with an Unexpected Exception: java.security.PrivilegedActionException: net.jini.config.ConfigurationException: jar:file:/home/jonathan/NetBeansProjects/River/jtsk/trunk/qa/lib/jinitests.jar!/com/sun/jini/test/spec/jeri/kerberos/KerberosServerEndpointTest.config:15: problem invoking method KerberosServerEndpoint.getInstance; caused by:
          [java] net.jini.io.UnsupportedConstraintException: Forgot JAAS login? Using default serverSubject but no subject is associated with the current access control context.
          [java]
          [java] -----------------------------------------
          [java] com/sun/jini/test/spec/jeri/kerberos/KerberosCheckTrustEquivalence.td
          [java] Test Failed: Test Failed with an Unexpected Exception: java.lang.NullPointerException
          [java]
          [java] -----------------------------------------
          [java] com/sun/jini/test/spec/jeri/kerberos/KerberosConstructorAccessor.td
          [java] Test Failed: Test Failed with an Unexpected Exception: java.lang.NullPointerException
          [java]
          [java] -----------------------------------------
          [java] com/sun/jini/test/spec/jeri/kerberos/KerberosEndpointInUse.td
          [java] Test Failed: Test Failed with an Unexpected Exception: java.security.PrivilegedActionException: net.jini.config.ConfigurationException: jar:file:/home/jonathan/NetBeansProjects/River/jtsk/trunk/qa/lib/jinitests.jar!/com/sun/jini/test/spec/jeri/kerberos/KerberosServerEndpointTest.config:15: problem invoking method KerberosServerEndpoint.getInstance; caused by:
          [java] net.jini.io.UnsupportedConstraintException: Forgot JAAS login? Using default serverSubject but no subject is associated with the current access control context.
          [java]
          [java] -----------------------------------------
          [java] com/sun/jini/test/spec/jeri/kerberos/KerberosEqualityTest.td
          [java] Test Failed: Test Failed with an Unexpected Exception: java.security.PrivilegedActionException: net.jini.config.ConfigurationException: jar:file:/home/jonathan/NetBeansProjects/River/jtsk/trunk/qa/lib/jinitests.jar!/com/sun/jini/test/spec/jeri/kerberos/KerberosServerEndpointTest.config:15: problem invoking method KerberosServerEndpoint.getInstance; caused by:
          [java] net.jini.io.UnsupportedConstraintException: Forgot JAAS login? Using default serverSubject but no subject is associated with the current access control context.
          [java]
          [java] -----------------------------------------
          [java] com/sun/jini/test/spec/jeri/kerberos/KerberosIllegalArgumentException.td
          [java] Test Failed: Test Failed with an Unexpected Exception: java.security.PrivilegedActionException: net.jini.config.ConfigurationException: jar:file:/home/jonathan/NetBeansProjects/River/jtsk/trunk/qa/lib/jinitests.jar!/com/sun/jini/test/spec/jeri/kerberos/KerberosServerEndpointTest.config:15: problem invoking method KerberosServerEndpoint.getInstance; caused by:
          [java] net.jini.io.UnsupportedConstraintException: Forgot JAAS login? Using default serverSubject but no subject is associated with the current access control context.
          [java]
          [java] -----------------------------------------
          [java] com/sun/jini/test/spec/jeri/kerberos/KerberosListenContextException.td
          [java] Test Failed: Test Failed with an Unexpected Exception: java.security.PrivilegedActionException: net.jini.config.ConfigurationException: jar:file:/home/jonathan/NetBeansProjects/River/jtsk/trunk/qa/lib/jinitests.jar!/com/sun/jini/test/spec/jeri/kerberos/KerberosServerEndpointTest.config:15: problem invoking method KerberosServerEndpoint.getInstance; caused by:
          [java] net.jini.io.UnsupportedConstraintException: Forgot JAAS login? Using default serverSubject but no subject is associated with the current access control context.
          [java]
          [java] -----------------------------------------
          [java] com/sun/jini/test/spec/jeri/kerberos/KerberosNewRequestConflictingConstraints.td
          [java] Test Failed: Test Failed with an Unexpected Exception: java.security.PrivilegedActionException: net.jini.config.ConfigurationException: jar:file:/home/jonathan/NetBeansProjects/River/jtsk/trunk/qa/lib/jinitests.jar!/com/sun/jini/test/spec/jeri/kerberos/KerberosServerEndpointTest.config:15: problem invoking method KerberosServerEndpoint.getInstance; caused by:
          [java] net.jini.io.UnsupportedConstraintException: Forgot JAAS login? Using default serverSubject but no subject is associated with the current access control context.
          [java]
          [java] -----------------------------------------
          [java] com/sun/jini/test/spec/jeri/kerberos/KerberosNullPointerException.td
          [java] Test Failed: Test Failed with an Unexpected Exception: java.security.PrivilegedActionException: net.jini.config.ConfigurationException: jar:file:/home/jonathan/NetBeansProjects/River/jtsk/trunk/qa/lib/jinitests.jar!/com/sun/jini/test/spec/jeri/kerberos/KerberosServerEndpointTest.config:15: problem invoking method KerberosServerEndpoint.getInstance; caused by:
          [java] net.jini.io.UnsupportedConstraintException: Forgot JAAS login? Using default serverSubject but no subject is associated with the current access control context.
          [java]
          [java] -----------------------------------------
          [java] com/sun/jini/test/spec/jeri/kerberos/KerberosRobustnessTest.td
          [java] Test Failed: Test Failed with an Unexpected Exception: java.security.PrivilegedActionException: net.jini.config.ConfigurationException: jar:file:/home/jonathan/NetBeansProjects/River/jtsk/trunk/qa/lib/jinitests.jar!/com/sun/jini/test/spec/jeri/kerberos/KerberosServerEndpointTest.config:15: problem invoking method KerberosServerEndpoint.getInstance; caused by:
          [java] net.jini.io.UnsupportedConstraintException: Forgot JAAS login? Using default serverSubject but no subject is associated with the current access control context.
          [java]
          [java] -----------------------------------------
          [java] com/sun/jini/test/spec/jeri/kerberos/KerberosServerConstructorAccessor.td
          [java] Test Failed: Test Failed with an Unexpected Exception: java.lang.NullPointerException
          [java]
          [java] -----------------------------------------
          [java] com/sun/jini/test/spec/jeri/kerberos/KerberosServerEndpoint.td
          [java] Test Failed: Test Failed with an Unexpected Exception: java.security.PrivilegedActionException: net.jini.config.ConfigurationException: jar:file:/home/jonathan/NetBeansProjects/River/jtsk/trunk/qa/lib/jinitests.jar!/com/sun/jini/test/spec/jeri/kerberos/KerberosServerEndpointTest.config:15: problem invoking method KerberosServerEndpoint.getInstance; caused by:
          [java] net.jini.io.UnsupportedConstraintException: Forgot JAAS login? Using default serverSubject but no subject is associated with the current access control context.
          [java]
          [java] -----------------------------------------
          ...
          [java] -----------------------------------------
          [java] com/sun/jini/test/spec/jeri/ssl/SslServerConstructorAccessor.td
          [java] Test Failed: Test Failed: com.sun.jini.qa.harness.TestException: SecurityExceptioin was not thrown when creating an instance with an unauthorized host
          [java]
          [java] -----------------------------------------
          ..
          [java] -----------------------------------------
          [java] com/sun/jini/test/spec/locatordiscovery/DiscardUnreachable.td
          [java] Test Failed: Setup Failed: com.sun.jini.qa.harness.TestException: Problem creating service for net.jini.core.lookup.ServiceRegistrar; nested exception is:
          [java] Error occurred in server thread; nested exception is:
          [java] java.lang.NoClassDefFoundError: net/jini/lookup/DiscoveryAdmin
          [java]
          [java] -----------------------------------------
          ...

          [java] -----------------------------------------
          [java] com/sun/jini/test/spec/lookupdiscovery/DiscardUnreachable.td
          [java] Test Failed: Setup Failed: com.sun.jini.qa.harness.TestException: Problem creating service for net.jini.core.lookup.ServiceRegistrar; nested exception is:
          [java] Error occurred in server thread; nested exception is:
          [java] java.lang.NoClassDefFoundError: net/jini/lookup/DiscoveryAdmin
          [java]
          [java] -----------------------------------------
          ...
          [java] -----------------------------------------
          [java] com/sun/jini/test/spec/lookupdiscovery/MulticastMonitorStop.td
          [java] Test Failed: Setup Failed: com.sun.jini.qa.harness.TestException: Problem creating service for net.jini.core.lookup.ServiceRegistrar; nested exception is:
          [java] Error occurred in server thread; nested exception is:
          [java] java.lang.NoClassDefFoundError: net/jini/lookup/DiscoveryAdmin
          [java]
          [java] -----------------------------------------
          [java] com/sun/jini/test/spec/lookupdiscovery/MulticastMonitorStopReplace.td
          [java] Test Failed: Setup Failed: com.sun.jini.qa.harness.TestException: Problem creating service for net.jini.core.lookup.ServiceRegistrar; nested exception is:
          [java] Error occurred in server thread; nested exception is:
          [java] java.lang.NoClassDefFoundError: net/jini/lookup/DiscoveryAdmin
          [java]
          [java] -----------------------------------------
          [java] com/sun/jini/test/spec/lookupdiscovery/MulticastMonitorTerminate.td
          [java] Test Failed: Setup Failed: com.sun.jini.qa.harness.TestException: Problem creating service for net.jini.core.lookup.ServiceRegistrar; nested exception is:
          [java] Error occurred in server thread; nested exception is:
          [java] java.lang.NoClassDefFoundError: net/jini/lookup/DiscoveryAdmin
          [java]
          [java] -----------------------------------------
          ...
          [java] # of tests started = 288
          [java] # of tests completed = 288
          [java] # of tests skipped = 4
          [java] # of tests passed = 269
          [java] # of tests failed = 19
          [java]
          [java] -----------------------------------------
          [java] Time elapsed:
          [java] 9163 seconds

          categories: servicediscovery,eventmailbox,javaspace (transient,http)
          ----------------------------------------------------------------------------------------------------

          [java] -----------------------------------------
          [java] com/sun/jini/test/spec/servicediscovery/lookup/LookupMinLessMax.td
          [java] Test Failed: Test Failed: com.sun.jini.qa.harness.TestException: – blocked longer than expected – requested block = 60 second(s), actual block = 60 second(s)
          [java]
          ...
          [java] -----------------------------------------
          [java] com/sun/jini/test/impl/outrigger/leasing/UseTxnMgrSpaceLeaseTest.td
          [java] Test Failed: Test Failed: com.sun.jini.qa.harness.TestException: Resource was available after lease expiration
          [java]
          [java] -----------------------------------------
          [java] com/sun/jini/test/impl/outrigger/leasing/UseTxnMgrSpaceLeaseTestRenew.td
          [java] Test Failed: Test Failed: com.sun.jini.qa.harness.TestException: Resource was available after lease expiration
          [java]
          [java] -----------------------------------------
          [java] com/sun/jini/test/spec/javaspace/conformance/ExpirationNotifyTest.td
          [java] Test Failed: Test Failed: com.sun.jini.qa.harness.TestException: Not all listeners've got expected number of events.
          [java]
          [java] -----------------------------------------
          [java] com/sun/jini/test/spec/javaspace/conformance/snapshot/SnapshotExpirationNotifyTest.td
          [java] Test Failed: Test Failed: com.sun.jini.qa.harness.TestException: Not all listeners've got expected number of events.
          [java]
          [java] -----------------------------------------
          ...
          [java] # of tests started = 393
          [java] # of tests completed = 393
          [java] # of tests skipped = 7
          [java] # of tests passed = 388
          [java] # of tests failed = 5
          [java]
          [java] -----------------------------------------
          [java]
          [java] Time elapsed:
          [java] 34489 seconds

          There are some errors about the Kerberos setup, which are normal because I have no KDC in my network.
          I am trying to setup a KDC and following the guidelines in the QA documentation to create principles etc.
          Would we have a Kerberos infrastructure available at Apache to run these tests?

          Notes:

          • on Windows, try to make sure there are no spaces in the directories you use for running the QA tests ... just to make sure.
          • make sure your network is configured in a sensible way
          Show
          Jonathan Costers added a comment - Some results running the QA suite from the current trunk: categories: id,activation,config,constraint,policyprovider,url,io,jrmp,iiop,joinmanager (transient,http) ---------------------------------------------------------------------------------------------------- [java] com/sun/jini/test/spec/constraint/coreconstraint/PrincipalElementsTest.td [java] Test Failed: Setup Failed: com.sun.jini.qa.harness.TestException: Exception has been thrown while creating ClientMaxPrincipal object; nested exception is: [java] Could not load configuration file /etc/krb5.conf (No such file or directory) ... com/sun/jini/test/spec/jrmp/jrmpservercontext/GetServerContext_Test.td [java] Test Failed: Test Failed with an Unexpected Exception: java.rmi.server.ExportException: tie class unavailable [java] [java] ----------------------------------------- [java] com/sun/jini/test/spec/jrmp/jrmpservercontext/GetServerContext_Test1.td [java] Test Failed: Test Failed with an Unexpected Exception: java.rmi.server.ExportException: tie class unavailable [java] [java] ----------------------------------------- [java] com/sun/jini/test/spec/jrmp/jrmpservercontext/GetServerContext_Test2.td [java] Test Failed: Test Failed with an Unexpected Exception: java.rmi.server.ExportException: tie class unavailable [java] [java] ----------------------------------------- [java] com/sun/jini/test/spec/jrmp/jrmpservercontext/GetServerContext_Test3.td [java] Test Failed: Test Failed with an Unexpected Exception: java.rmi.server.ExportException: tie class unavailable [java] [java] ----------------------------------------- [java] com/sun/jini/test/spec/jrmp/jrmpservercontext/GetServerContext_Test4.td [java] Test Failed: Test Failed with an Unexpected Exception: java.rmi.server.ExportException: tie class unavailable ... [java] # of tests started = 248 [java] # of tests completed = 248 [java] # of tests skipped = 6 [java] # of tests passed = 242 [java] # of tests failed = 6 [java] [java] ----------------------------------------- [java] [java] Time elapsed: [java] 3077 seconds categories: export,io,security,reliability,thread,loader (transient,http) ---------------------------------------------------------------------------------------------------- [java] ----------------------------------------- [java] com/sun/jini/test/spec/loader/pref/preferredClassLoader/GetResources.td [java] Test Failed: Test Failed with an Unexpected Exception: java.lang.NullPointerException [java] [java] ----------------------------------------- [java] com/sun/jini/test/spec/loader/pref/preferredClassLoader/GetResourcesNoDlPerm.td [java] Test Failed: Test Failed with an Unexpected Exception: java.lang.NullPointerException [java] [java] ----------------------------------------- [java] # of tests started = 147 [java] # of tests completed = 147 [java] # of tests skipped = 10 [java] # of tests passed = 145 [java] # of tests failed = 2 [java] [java] ----------------------------------------- [java] [java] Time elapsed: [java] 935 seconds categories: jeri,discoverymanager,discoveryproviders,locatordiscovery,lookupdiscovery (transient,http) ---------------------------------------------------------------------------------------------------- [java] ----------------------------------------- [java] com/sun/jini/test/spec/jeri/kerberos/KerberosCheckConstraints.td [java] Test Failed: Test Failed with an Unexpected Exception: java.security.PrivilegedActionException: net.jini.config.ConfigurationException: jar: file:/home/jonathan/NetBeansProjects/River/jtsk/trunk/qa/lib/jinitests.jar!/com/sun/jini/test/spec/jeri/kerberos/KerberosServerEndpointTest.config:15: problem invoking method KerberosServerEndpoint.getInstance; caused by: [java] net.jini.io.UnsupportedConstraintException: Forgot JAAS login? Using default serverSubject but no subject is associated with the current access control context. [java] [java] ----------------------------------------- [java] com/sun/jini/test/spec/jeri/kerberos/KerberosCheckTrustEquivalence.td [java] Test Failed: Test Failed with an Unexpected Exception: java.lang.NullPointerException [java] [java] ----------------------------------------- [java] com/sun/jini/test/spec/jeri/kerberos/KerberosConstructorAccessor.td [java] Test Failed: Test Failed with an Unexpected Exception: java.lang.NullPointerException [java] [java] ----------------------------------------- [java] com/sun/jini/test/spec/jeri/kerberos/KerberosEndpointInUse.td [java] Test Failed: Test Failed with an Unexpected Exception: java.security.PrivilegedActionException: net.jini.config.ConfigurationException: jar: file:/home/jonathan/NetBeansProjects/River/jtsk/trunk/qa/lib/jinitests.jar!/com/sun/jini/test/spec/jeri/kerberos/KerberosServerEndpointTest.config:15: problem invoking method KerberosServerEndpoint.getInstance; caused by: [java] net.jini.io.UnsupportedConstraintException: Forgot JAAS login? Using default serverSubject but no subject is associated with the current access control context. [java] [java] ----------------------------------------- [java] com/sun/jini/test/spec/jeri/kerberos/KerberosEqualityTest.td [java] Test Failed: Test Failed with an Unexpected Exception: java.security.PrivilegedActionException: net.jini.config.ConfigurationException: jar: file:/home/jonathan/NetBeansProjects/River/jtsk/trunk/qa/lib/jinitests.jar!/com/sun/jini/test/spec/jeri/kerberos/KerberosServerEndpointTest.config:15: problem invoking method KerberosServerEndpoint.getInstance; caused by: [java] net.jini.io.UnsupportedConstraintException: Forgot JAAS login? Using default serverSubject but no subject is associated with the current access control context. [java] [java] ----------------------------------------- [java] com/sun/jini/test/spec/jeri/kerberos/KerberosIllegalArgumentException.td [java] Test Failed: Test Failed with an Unexpected Exception: java.security.PrivilegedActionException: net.jini.config.ConfigurationException: jar: file:/home/jonathan/NetBeansProjects/River/jtsk/trunk/qa/lib/jinitests.jar!/com/sun/jini/test/spec/jeri/kerberos/KerberosServerEndpointTest.config:15: problem invoking method KerberosServerEndpoint.getInstance; caused by: [java] net.jini.io.UnsupportedConstraintException: Forgot JAAS login? Using default serverSubject but no subject is associated with the current access control context. [java] [java] ----------------------------------------- [java] com/sun/jini/test/spec/jeri/kerberos/KerberosListenContextException.td [java] Test Failed: Test Failed with an Unexpected Exception: java.security.PrivilegedActionException: net.jini.config.ConfigurationException: jar: file:/home/jonathan/NetBeansProjects/River/jtsk/trunk/qa/lib/jinitests.jar!/com/sun/jini/test/spec/jeri/kerberos/KerberosServerEndpointTest.config:15: problem invoking method KerberosServerEndpoint.getInstance; caused by: [java] net.jini.io.UnsupportedConstraintException: Forgot JAAS login? Using default serverSubject but no subject is associated with the current access control context. [java] [java] ----------------------------------------- [java] com/sun/jini/test/spec/jeri/kerberos/KerberosNewRequestConflictingConstraints.td [java] Test Failed: Test Failed with an Unexpected Exception: java.security.PrivilegedActionException: net.jini.config.ConfigurationException: jar: file:/home/jonathan/NetBeansProjects/River/jtsk/trunk/qa/lib/jinitests.jar!/com/sun/jini/test/spec/jeri/kerberos/KerberosServerEndpointTest.config:15: problem invoking method KerberosServerEndpoint.getInstance; caused by: [java] net.jini.io.UnsupportedConstraintException: Forgot JAAS login? Using default serverSubject but no subject is associated with the current access control context. [java] [java] ----------------------------------------- [java] com/sun/jini/test/spec/jeri/kerberos/KerberosNullPointerException.td [java] Test Failed: Test Failed with an Unexpected Exception: java.security.PrivilegedActionException: net.jini.config.ConfigurationException: jar: file:/home/jonathan/NetBeansProjects/River/jtsk/trunk/qa/lib/jinitests.jar!/com/sun/jini/test/spec/jeri/kerberos/KerberosServerEndpointTest.config:15: problem invoking method KerberosServerEndpoint.getInstance; caused by: [java] net.jini.io.UnsupportedConstraintException: Forgot JAAS login? Using default serverSubject but no subject is associated with the current access control context. [java] [java] ----------------------------------------- [java] com/sun/jini/test/spec/jeri/kerberos/KerberosRobustnessTest.td [java] Test Failed: Test Failed with an Unexpected Exception: java.security.PrivilegedActionException: net.jini.config.ConfigurationException: jar: file:/home/jonathan/NetBeansProjects/River/jtsk/trunk/qa/lib/jinitests.jar!/com/sun/jini/test/spec/jeri/kerberos/KerberosServerEndpointTest.config:15: problem invoking method KerberosServerEndpoint.getInstance; caused by: [java] net.jini.io.UnsupportedConstraintException: Forgot JAAS login? Using default serverSubject but no subject is associated with the current access control context. [java] [java] ----------------------------------------- [java] com/sun/jini/test/spec/jeri/kerberos/KerberosServerConstructorAccessor.td [java] Test Failed: Test Failed with an Unexpected Exception: java.lang.NullPointerException [java] [java] ----------------------------------------- [java] com/sun/jini/test/spec/jeri/kerberos/KerberosServerEndpoint.td [java] Test Failed: Test Failed with an Unexpected Exception: java.security.PrivilegedActionException: net.jini.config.ConfigurationException: jar: file:/home/jonathan/NetBeansProjects/River/jtsk/trunk/qa/lib/jinitests.jar!/com/sun/jini/test/spec/jeri/kerberos/KerberosServerEndpointTest.config:15: problem invoking method KerberosServerEndpoint.getInstance; caused by: [java] net.jini.io.UnsupportedConstraintException: Forgot JAAS login? Using default serverSubject but no subject is associated with the current access control context. [java] [java] ----------------------------------------- ... [java] ----------------------------------------- [java] com/sun/jini/test/spec/jeri/ssl/SslServerConstructorAccessor.td [java] Test Failed: Test Failed: com.sun.jini.qa.harness.TestException: SecurityExceptioin was not thrown when creating an instance with an unauthorized host [java] [java] ----------------------------------------- .. [java] ----------------------------------------- [java] com/sun/jini/test/spec/locatordiscovery/DiscardUnreachable.td [java] Test Failed: Setup Failed: com.sun.jini.qa.harness.TestException: Problem creating service for net.jini.core.lookup.ServiceRegistrar; nested exception is: [java] Error occurred in server thread; nested exception is: [java] java.lang.NoClassDefFoundError: net/jini/lookup/DiscoveryAdmin [java] [java] ----------------------------------------- ... [java] ----------------------------------------- [java] com/sun/jini/test/spec/lookupdiscovery/DiscardUnreachable.td [java] Test Failed: Setup Failed: com.sun.jini.qa.harness.TestException: Problem creating service for net.jini.core.lookup.ServiceRegistrar; nested exception is: [java] Error occurred in server thread; nested exception is: [java] java.lang.NoClassDefFoundError: net/jini/lookup/DiscoveryAdmin [java] [java] ----------------------------------------- ... [java] ----------------------------------------- [java] com/sun/jini/test/spec/lookupdiscovery/MulticastMonitorStop.td [java] Test Failed: Setup Failed: com.sun.jini.qa.harness.TestException: Problem creating service for net.jini.core.lookup.ServiceRegistrar; nested exception is: [java] Error occurred in server thread; nested exception is: [java] java.lang.NoClassDefFoundError: net/jini/lookup/DiscoveryAdmin [java] [java] ----------------------------------------- [java] com/sun/jini/test/spec/lookupdiscovery/MulticastMonitorStopReplace.td [java] Test Failed: Setup Failed: com.sun.jini.qa.harness.TestException: Problem creating service for net.jini.core.lookup.ServiceRegistrar; nested exception is: [java] Error occurred in server thread; nested exception is: [java] java.lang.NoClassDefFoundError: net/jini/lookup/DiscoveryAdmin [java] [java] ----------------------------------------- [java] com/sun/jini/test/spec/lookupdiscovery/MulticastMonitorTerminate.td [java] Test Failed: Setup Failed: com.sun.jini.qa.harness.TestException: Problem creating service for net.jini.core.lookup.ServiceRegistrar; nested exception is: [java] Error occurred in server thread; nested exception is: [java] java.lang.NoClassDefFoundError: net/jini/lookup/DiscoveryAdmin [java] [java] ----------------------------------------- ... [java] # of tests started = 288 [java] # of tests completed = 288 [java] # of tests skipped = 4 [java] # of tests passed = 269 [java] # of tests failed = 19 [java] [java] ----------------------------------------- [java] Time elapsed: [java] 9163 seconds categories: servicediscovery,eventmailbox,javaspace (transient,http) ---------------------------------------------------------------------------------------------------- [java] ----------------------------------------- [java] com/sun/jini/test/spec/servicediscovery/lookup/LookupMinLessMax.td [java] Test Failed: Test Failed: com.sun.jini.qa.harness.TestException: – blocked longer than expected – requested block = 60 second(s), actual block = 60 second(s) [java] ... [java] ----------------------------------------- [java] com/sun/jini/test/impl/outrigger/leasing/UseTxnMgrSpaceLeaseTest.td [java] Test Failed: Test Failed: com.sun.jini.qa.harness.TestException: Resource was available after lease expiration [java] [java] ----------------------------------------- [java] com/sun/jini/test/impl/outrigger/leasing/UseTxnMgrSpaceLeaseTestRenew.td [java] Test Failed: Test Failed: com.sun.jini.qa.harness.TestException: Resource was available after lease expiration [java] [java] ----------------------------------------- [java] com/sun/jini/test/spec/javaspace/conformance/ExpirationNotifyTest.td [java] Test Failed: Test Failed: com.sun.jini.qa.harness.TestException: Not all listeners've got expected number of events. [java] [java] ----------------------------------------- [java] com/sun/jini/test/spec/javaspace/conformance/snapshot/SnapshotExpirationNotifyTest.td [java] Test Failed: Test Failed: com.sun.jini.qa.harness.TestException: Not all listeners've got expected number of events. [java] [java] ----------------------------------------- ... [java] # of tests started = 393 [java] # of tests completed = 393 [java] # of tests skipped = 7 [java] # of tests passed = 388 [java] # of tests failed = 5 [java] [java] ----------------------------------------- [java] [java] Time elapsed: [java] 34489 seconds There are some errors about the Kerberos setup, which are normal because I have no KDC in my network. I am trying to setup a KDC and following the guidelines in the QA documentation to create principles etc. Would we have a Kerberos infrastructure available at Apache to run these tests? Notes: on Windows, try to make sure there are no spaces in the directories you use for running the QA tests ... just to make sure. make sure your network is configured in a sensible way
          Hide
          Jonathan Costers added a comment - - edited

          In the mean time, we have:

          • integrated the QA suite and tests
          • ran most QA tests and verified them
          • re-enabled the hello example
          • updated most distribution documentation

          Things to do:

          • update docs for QA subproject (esp. README.txt)
          • run more QA tests on all platforms
          • enable running the jtreg tests (thinking about a way to do it)
          Show
          Jonathan Costers added a comment - - edited In the mean time, we have: integrated the QA suite and tests ran most QA tests and verified them re-enabled the hello example updated most distribution documentation Things to do: update docs for QA subproject (esp. README.txt) run more QA tests on all platforms enable running the jtreg tests (thinking about a way to do it)
          Hide
          Hudson added a comment -

          Integrated in River-trunk #312 (See https://hudson.apache.org/hudson/job/River-trunk/312/)
          RIVER-301: revert QA harness service mode to "transient" until current issues are solved
          RIVER-333: clean up the HTML results directory

          Show
          Hudson added a comment - Integrated in River-trunk #312 (See https://hudson.apache.org/hudson/job/River-trunk/312/ ) RIVER-301 : revert QA harness service mode to "transient" until current issues are solved RIVER-333 : clean up the HTML results directory
          Hide
          Hudson added a comment -

          Integrated in River-trunk #315 (See https://hudson.apache.org/hudson/job/River-trunk/315/)
          RIVER-301: add servicediscovery to default QA test categories to run by target qa.run

          Show
          Hudson added a comment - Integrated in River-trunk #315 (See https://hudson.apache.org/hudson/job/River-trunk/315/ ) RIVER-301 : add servicediscovery to default QA test categories to run by target qa.run
          Hide
          Hudson added a comment -

          Integrated in River-trunk #316 (See https://hudson.apache.org/hudson/job/River-trunk/316/)
          RIVER-301: add io and security QA categories

          Show
          Hudson added a comment - Integrated in River-trunk #316 (See https://hudson.apache.org/hudson/job/River-trunk/316/ ) RIVER-301 : add io and security QA categories
          Hide
          Hudson added a comment -

          Integrated in River-trunk #317 (See https://hudson.apache.org/hudson/job/River-trunk/317/)
          RIVER-301: add a logging properties file to be used for debugging

          Show
          Hudson added a comment - Integrated in River-trunk #317 (See https://hudson.apache.org/hudson/job/River-trunk/317/ ) RIVER-301 : add a logging properties file to be used for debugging
          Hide
          Hudson added a comment -

          Integrated in River-trunk #318 (See https://hudson.apache.org/hudson/job/River-trunk/318/)
          RIVER-301: more robust setting of logging properties file for QA harness

          Show
          Hudson added a comment - Integrated in River-trunk #318 (See https://hudson.apache.org/hudson/job/River-trunk/318/ ) RIVER-301 : more robust setting of logging properties file for QA harness
          Hide
          Hudson added a comment -

          Integrated in River-trunk #321 (See https://hudson.apache.org/hudson/job/River-trunk/321/)
          RIVER-301: add "lookupservice" category to list of QA tests to run by Hudson

          Show
          Hudson added a comment - Integrated in River-trunk #321 (See https://hudson.apache.org/hudson/job/River-trunk/321/ ) RIVER-301 : add "lookupservice" category to list of QA tests to run by Hudson
          Hide
          Hudson added a comment -

          Integrated in River-trunk #322 (See https://hudson.apache.org/hudson/job/River-trunk/322/)
          RIVER-301: add "start" test category to list of categories to run by Hudson
          RIVER-301: add "jeri" test category to list of categories to run by Hudson
          RIVER-307: skip Kerberos related tests in "jeri" category until we have the necessary infrastructure setup
          RIVER-301: point MultiHomedClientTest configuration to an existing logging properties file
          backed out changes to JoinStateManager that broke 2 eventmailbox QA tests. All eventmailbox tests now pass.
          RIVER-301: add "eventmailbox" category to list of QA test categories to run by Hudson
          RIVER-301: add "renewalservice" category to list of QA test categories to run by Hudson
          RIVER-301: point "testLoggingProperties" to an existing logging config file for some "renewalservice" tests

          Show
          Hudson added a comment - Integrated in River-trunk #322 (See https://hudson.apache.org/hudson/job/River-trunk/322/ ) RIVER-301 : add "start" test category to list of categories to run by Hudson RIVER-301 : add "jeri" test category to list of categories to run by Hudson RIVER-307 : skip Kerberos related tests in "jeri" category until we have the necessary infrastructure setup RIVER-301 : point MultiHomedClientTest configuration to an existing logging properties file backed out changes to JoinStateManager that broke 2 eventmailbox QA tests. All eventmailbox tests now pass. RIVER-301 : add "eventmailbox" category to list of QA test categories to run by Hudson RIVER-301 : add "renewalservice" category to list of QA test categories to run by Hudson RIVER-301 : point "testLoggingProperties" to an existing logging config file for some "renewalservice" tests
          Hide
          Hudson added a comment -

          Integrated in River-trunk #323 (See https://hudson.apache.org/hudson/job/River-trunk/323/)
          RIVER-301: add "discoveryproviders" test category to list of categories to run by Hudson, 1 more test
          RIVER-301: add "discoveryservice" test category to list of categories to run by Hudson, 93 more tests

          Show
          Hudson added a comment - Integrated in River-trunk #323 (See https://hudson.apache.org/hudson/job/River-trunk/323/ ) RIVER-301 : add "discoveryproviders" test category to list of categories to run by Hudson, 1 more test RIVER-301 : add "discoveryservice" test category to list of categories to run by Hudson, 93 more tests
          Hide
          Hudson added a comment -

          Integrated in River-trunk #324 (See https://hudson.apache.org/hudson/job/River-trunk/324/)
          RIVER-301: add "discoveryproviders" test category to list of categories to run by Hudson, 1 more test

          Show
          Hudson added a comment - Integrated in River-trunk #324 (See https://hudson.apache.org/hudson/job/River-trunk/324/ ) RIVER-301 : add "discoveryproviders" test category to list of categories to run by Hudson, 1 more test
          Hide
          Jonathan Costers added a comment -

          From river-dev:

          Categories that are still missing (not configured to run by Hudson for now):

          • javaspace: found quite some issues (16 out of 250+ tests fail) running this category
          • txnmanager: one of these tests (GetStateTest) hangs on me .. finding out why, also some other issues to work out
          • scalability: not sure about the purpose of these tests .. need to look into them deeper
          • end2end: one test needs Kerberos, for the others I get some other errors .. to be investigated

          Any help verifying these categories would be appreciated.

          If we can get these running smoothly, we have integrated the complete QA test suite into our build process!

          Show
          Jonathan Costers added a comment - From river-dev: Categories that are still missing (not configured to run by Hudson for now): javaspace: found quite some issues (16 out of 250+ tests fail) running this category txnmanager: one of these tests (GetStateTest) hangs on me .. finding out why, also some other issues to work out scalability: not sure about the purpose of these tests .. need to look into them deeper end2end: one test needs Kerberos, for the others I get some other errors .. to be investigated Any help verifying these categories would be appreciated. If we can get these running smoothly, we have integrated the complete QA test suite into our build process!
          Hide
          Jonathan Costers added a comment -

          com/sun/jini/test/impl/mahalo/RandomStressTest.td
          -> fails consistently for me when the QA harness is run in transient mode, but passes when the harness runs in activatable mode. Maybe needs to be configured to be skipped in transient mode?

          com/sun/jini/test/spec/txnmanager/CommitExpiredTest.td
          -> failed for me but the reason was because the test code was trying to catch a different kind of Exception (UnknownTransactionException), where logically a CannotCommitException would be expected. Changing to CannotCommitException passes the test.

          com/sun/jini/test/spec/txnmanager/GetStateTest.td
          -> this test seems to hang, at the end of the test code it is stuck in a while loop waiting for a TransactionException to be thrown ...

          The rest of the tests in the txnmanager category all pass.

          It would be good if the original author would be able to comment, but not sure if that is possible.

          Show
          Jonathan Costers added a comment - com/sun/jini/test/impl/mahalo/RandomStressTest.td -> fails consistently for me when the QA harness is run in transient mode, but passes when the harness runs in activatable mode. Maybe needs to be configured to be skipped in transient mode? com/sun/jini/test/spec/txnmanager/CommitExpiredTest.td -> failed for me but the reason was because the test code was trying to catch a different kind of Exception (UnknownTransactionException), where logically a CannotCommitException would be expected. Changing to CannotCommitException passes the test. com/sun/jini/test/spec/txnmanager/GetStateTest.td -> this test seems to hang, at the end of the test code it is stuck in a while loop waiting for a TransactionException to be thrown ... The rest of the tests in the txnmanager category all pass. It would be good if the original author would be able to comment, but not sure if that is possible.
          Hide
          Jonathan Costers added a comment -

          Attached patch makes CommitExpiredTest pass (change from UnknownTransactionException to CannotCommitException).
          Please verify.

          Show
          Jonathan Costers added a comment - Attached patch makes CommitExpiredTest pass (change from UnknownTransactionException to CannotCommitException). Please verify.
          Hide
          Hudson added a comment -

          Integrated in River-trunk #329 (See https://hudson.apache.org/hudson/job/River-trunk/329/)
          RIVER-333:

          • add target collect-result to qa/build.xml, that will zip the QA test result HTML reports. This allows for Hudson to pick it up and archive it as a build artifact for every build attempt, as well as developer/testers to more easily send in their results
            RIVER-301:
          • move specification of default value for run.categories to qa/build.xml
          • change call to qa.run-categories to qa.run, which also collects the HTML reports
          • general cleanup
          Show
          Hudson added a comment - Integrated in River-trunk #329 (See https://hudson.apache.org/hudson/job/River-trunk/329/ ) RIVER-333 : add target collect-result to qa/build.xml, that will zip the QA test result HTML reports. This allows for Hudson to pick it up and archive it as a build artifact for every build attempt, as well as developer/testers to more easily send in their results RIVER-301 : move specification of default value for run.categories to qa/build.xml change call to qa.run-categories to qa.run, which also collects the HTML reports general cleanup
          Hide
          Hudson added a comment -

          Integrated in River-trunk #330 (See https://hudson.apache.org/hudson/job/River-trunk/330/)
          RIVER-301: fix catch clause to expect a (logical) CannotCommitException instead of an UnknownTransactionException
          RIVER-301: remove reference to non existing package com.sun.jini.outrigger.logstore
          RIVER-301: fix typo in testing framework class filename..

          Show
          Hudson added a comment - Integrated in River-trunk #330 (See https://hudson.apache.org/hudson/job/River-trunk/330/ ) RIVER-301 : fix catch clause to expect a (logical) CannotCommitException instead of an UnknownTransactionException RIVER-301 : remove reference to non existing package com.sun.jini.outrigger.logstore RIVER-301 : fix typo in testing framework class filename..

            People

            • Assignee:
              Jonathan Costers
              Reporter:
              Tom Hobbs
            • Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Time Tracking

                Estimated:
                Original Estimate - 672h
                672h
                Remaining:
                Remaining Estimate - 672h
                672h
                Logged:
                Time Spent - Not Specified
                Not Specified

                  Development