[jbosstools-issues] [JBoss JIRA] (JBIDE-9630) If deployment fails, you get 'Already publishing' error if you try to remove a deployment

Rob Stryker (Commented) (JIRA) jira-events at lists.jboss.org
Tue Nov 8 23:12:45 EST 2011


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

Rob Stryker commented on JBIDE-9630:
------------------------------------

I spent about 40 minutes tracing through this, and no real luck at all.  The flow of execution I see is as follows:
1) Full Publish sets some module state, then launches a publish server job
2) The publish server job does no action except launch another publish job. Sometimes you may see two jobs in the progress view, but this seems unrelated
3) The second job does the business of calling publish
4) It makes its way into DeployableServerBehaviour.publishStart(etc), and creates the proper publish method
5) It does the business of publishing. Even if there's an exception during the publish, it heads to ServerBehaviourDelegate line 974, which is a finally clause, to do cleanup
6) PublishFinish for as7 goes to DelegatingJBoss7ServerBehaviour.publishFinish, which tries to set the marker files, then calls super.publishFinish
7) DelegatingServerBehaviour.publishFinish gets the delegate.publishFinish(etc), which, in non-as7, will try to resume the scanner, if possible. This is in LocalJBoss7BehaviourDelegate.publishFinish(etc), however this should be a no-op since as7 has no way to resume or suspend the scanner. 
8) Heads to DeployableServerBehaviour.publishFinish, which clears the publish method. 

So... I am unable to get two differnet publish actions to get into publishStart before a publishFinish is called, and even if an exception in the publish is thrown, it should still go into publishFinish to cleanup anyway. The only way I can see an error here is if there's an exception thrown in publishFinish, which prevents the super.super.publishFinish from being reached. 

I can add protections to these two sections just to ensure that the final cleanup *always* occurs no matter what. I will do that. 
                
> If deployment fails, you get 'Already publishing' error if you try to remove a deployment
> -----------------------------------------------------------------------------------------
>
>                 Key: JBIDE-9630
>                 URL: https://issues.jboss.org/browse/JBIDE-9630
>             Project: Tools (JBoss Tools)
>          Issue Type: Bug
>          Components: JBossAS/Servers
>    Affects Versions: 3.3.0.M3
>            Reporter: Libor Zoubek
>            Assignee: Rob Stryker
>             Fix For: 3.3.0.Beta1
>
>
> I' facing 'Already publishing' error dialog when working on web apps using AS7. I still did not found exact steps to reproduce. Right now I've once reproduced doing following:
> ASSERT: Have started AS7.0.1
> ASSERT: Have deployed web app (which currenly caused deployment error on AS)
> EXEC: Import jboss-as demos (5 projects) using 'Import Existing maven projects'
> Result:
> right after that, I get 'Already publishing'
> Another thing I've noticed is that the deployed project is in state : 'Started, Republish' is this state correct? What does it mean?

--
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 jbosstools-issues mailing list