[jboss-jira] [JBoss JIRA] (AS7-2392) EnterpriseDeploymentTestCase fails consistently on windows

Thomas Diesler (JIRA) jira-events at lists.jboss.org
Fri Jan 13 03:54:22 EST 2012


    [ https://issues.jboss.org/browse/AS7-2392?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12655418#comment-12655418 ] 

Thomas Diesler edited comment on AS7-2392 at 1/13/12 3:52 AM:
--------------------------------------------------------------

What happens is that the JSR88 layer generates a tmp file and passes the URL to which to the AS7 management API. During the building of the ADD step an InputStream for that URL is opened and stored as content to the ADD step. When deployment is done, the JSR88 layer attempts to delete the tmp file, which fails on w2k8 presumably because the associated input stream is not closed.

See the client [test log file|https://hudson.qa.jboss.com/hudson/view/JBossOSGi/job/jboss-as7-as2392/ws/testsuite/integration/smoke/target/workdir/target/test.log] and search for deployment-app.ear.

{code}
03:19:18,396 INFO  [org.jboss.as.ee.deployment.spi] (Thread-179) JBAS016101: End deploy: [target=http://org.jboss.as.ee.deployment/jsr88?targetType=as7,parent=null,type=ear,id=file:/C:/DOCUME~1/hudson/LOCALS~1/Temp/deployment-app.ear]
03:19:18,397 WARN  [org.jboss.as.ee.deployment.spi] (Thread-179) JBAS016103: Cannot delete deployment file C:\DOCUME~1\hudson\LOCALS~1\Temp\deployment-app.ear, will be deleted on exit
{code}

This particular test fails because it tries to deploy the same EAR twice, but cannot use the same tmp file name. In branch [as2392|https://github.com/tdiesler/jboss-as/tree/as2392] I implemented a workaround that assigns a different tmp file name when the tmp file already exists and cannot be deleted.

The underlying issue IMHO is however in the AS7 deployment layer and its handling of input streams associated with user provided URLs. This should be a general issue for all management clients running on w2k8
                
      was (Author: thomas.diesler):
    What happens is that the JSR88 layer generates a tmp file and passes the URL to which to the AS7 management API. During the building of the ADD step an InputStream for that URL is opened and stored as content to the ADD step. When deployment is done, the JSR88 layer attempts to delete the tmp file, which fails w2k8 presumably because the associated input stream is not closed.

See the client [test log file|https://hudson.qa.jboss.com/hudson/view/JBossOSGi/job/jboss-as7-as2392/ws/testsuite/integration/smoke/target/workdir/target/test.log] and search for deployment-app.ear.

{code}
03:19:18,396 INFO  [org.jboss.as.ee.deployment.spi] (Thread-179) JBAS016101: End deploy: [target=http://org.jboss.as.ee.deployment/jsr88?targetType=as7,parent=null,type=ear,id=file:/C:/DOCUME~1/hudson/LOCALS~1/Temp/deployment-app.ear]
03:19:18,397 WARN  [org.jboss.as.ee.deployment.spi] (Thread-179) JBAS016103: Cannot delete deployment file C:\DOCUME~1\hudson\LOCALS~1\Temp\deployment-app.ear, will be deleted on exit
{code}

This particular test fails because it tries to deploy the same EAR twice, but cannot use the same tmp file name. In branch [as2392|https://github.com/tdiesler/jboss-as/tree/as2392] I implemented a workaround that assigns a different tmp file name when the tmp file already exists and cannot be deleted.

The underlying issue IMHO is however in the AS7 deployment layer and its handling of input streams associated with user provided URLs. This should be a general issue for all management clients running on w2k8
                  
> EnterpriseDeploymentTestCase fails consistently on windows
> ----------------------------------------------------------
>
>                 Key: AS7-2392
>                 URL: https://issues.jboss.org/browse/AS7-2392
>             Project: Application Server 7
>          Issue Type: Task
>          Components: Domain Management, JSR88
>         Environment: win7
>            Reporter: Dimitris Andreadis
>            Assignee: Brian Stansberry
>            Priority: Critical
>             Fix For: 7.1.0.Final
>
>         Attachments: TEST-org.jboss.as.test.smoke.embedded.deployment.EnterpriseDeploymentTestCase.xml
>
>
> I get there consistent test failures on win7 in the integration testsuite:
> {code}
> Failed tests:   testDistributeEjbApp(org.jboss.as.test.smoke.embedded.deployment.EnterpriseDeploymentTestCase): expected:<Completed> but was:<Failed>
>   testDistributeEARApp(org.jboss.as.test.smoke.embedded.deployment.EnterpriseDeploymentTestCase): expected:<Completed> but was:<Failed>
>   testListAvailableModules(org.jboss.as.test.smoke.embedded.deployment.EnterpriseDeploymentTestCase)
> By looking in the logs, I think the problem is traced back to this deployment problem that affects all failures:
> Caused by: java.lang.RuntimeException: Could not create timer file store directory X:\src\jboss-as\testsuite\integration\target\smoke\standalone\data\timer-service-data\file:\C:\Users\dimitris\AppData\Local\Temp\deployment-ejb.jar
> 	at org.jboss.as.ejb3.timerservice.mk2.persistence.filestore.FileTimerPersistence.start(FileTimerPersistence.java:101)
> 	at org.jboss.as.ejb3.timerservice.TimerServiceFactoryService.start(TimerServiceFactoryService.java:77)
> 	at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1824) [jboss-msc-1.0.1.GA.jar:1.0.1.GA]
> 	at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1759) [jboss-msc-1.0.1.GA.jar:1.0.1.GA]
> 	... 3 more
> {code}
> It concatenates the testsuite target dir with the user's temp dir.?
> Looking quickly I couldn't find where the path to this file is created. Maybe it's a ShrinkWrap issue?

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.jboss.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        


More information about the jboss-jira mailing list