Skip to main content

Undeploy/Deploy Problem

2 replies [Last post]
sspyrison
Offline
Joined: 2011-02-21
Points: 0

I have a Spring app that I'm un-deploying, and then deploying again with the same name. For no good reason other than "clean slate" I am fully un-deploying the application like this:

asadmin --host dashost --port dasport undeploy --target clust-1 myapp

The undeploy results in the following log messages:

[#|2012-10-17T17:50:29.748-0500|WARNING|glassfish3.1.2|javax.enterprise.system.tools.deployment.com.sun.enterprise.deploy.shared|_ThreadID=189;_ThreadName=Thread-2;|DPL8031: Ignoring WEB-INF/ because the containing archive /opt/glassfish3/glassfish/nodes/node-1/inst-1/applications/myapp recorded it as a pre-existing stale file|#]

[#|2012-10-17T17:50:29.752-0500|WARNING|glassfish3.1.2|javax.enterprise.system.tools.deployment.com.sun.enterprise.deploy.shared|_ThreadID=189;_ThreadName=Thread-2;|DPL8031: Ignoring WEB-INF/ because the containing archive /opt/glassfish3/glassfish/nodes/node-1/inst-1/applications/myapp recorded it as a pre-existing stale file|#]

[#|2012-10-17T17:50:29.754-0500|WARNING|glassfish3.1.2|javax.enterprise.system.tools.deployment.com.sun.enterprise.deploy.shared|_ThreadID=189;_ThreadName=Thread-2;|DPL8031: Ignoring WEB-INF/ because the containing archive /opt/glassfish3/glassfish/nodes/node-1/inst-1/applications/myapp recorded it as a pre-existing stale file|#]

[#|2012-10-17T17:50:29.756-0500|WARNING|glassfish3.1.2|javax.enterprise.system.tools.deployment.com.sun.enterprise.deploy.shared|_ThreadID=189;_ThreadName=Thread-2;|DPL8031: Ignoring WEB-INF/ because the containing archive /opt/glassfish3/glassfish/nodes/node-1/inst-1/applications/myapp recorded it as a pre-existing stale file|#]

[#|2012-10-17T17:50:30.105-0500|INFO|glassfish3.1.2|javax.enterprise.system.container.web.com.sun.enterprise.web._vs.server|_ThreadID=189;_ThreadName=Thread-38;|PWC1412: WebModule[null] ServletContext.log():Destroying Spring FrameworkServlet 'myapp'|#]

[#|2012-10-17T17:50:30.191-0500|INFO|glassfish3.1.2|javax.enterprise.system.container.web.com.sun.enterprise.web._vs.server|_ThreadID=189;_ThreadName=Thread-38;|PWC1412: WebModule[null] ServletContext.log():Closing Spring root WebApplicationContext|#]

[#|2012-10-17T17:50:30.200-0500|INFO|glassfish3.1.2|javax.enterprise.system.std.com.sun.enterprise.server.logging|_ThreadID=189;_ThreadName=Thread-2;|[EL Config]: 2012-10-17 17:50:30.199--ServerSession(14609778)--Connection(25424446)--Thread(Thread[http-thread-pool-31048(3),5,grizzly-kernel])--disconnect|#]

[#|2012-10-17T17:50:30.202-0500|INFO|glassfish3.1.2|javax.enterprise.system.std.com.sun.enterprise.server.logging|_ThreadID=189;_ThreadName=Thread-2;|[EL Info]: 2012-10-17 17:50:30.201--ServerSession(14609778)--Thread(Thread[http-thread-pool-31048(3),5,grizzly-kernel])--file:/opt/glassfish3/glassfish/nodes/node-1/inst-1/applications/myapp/WEB-INF/classes/_enterprise logout successful|#]

[#|2012-10-17T17:50:36.410-0500|WARNING|glassfish3.1.2|javax.enterprise.system.tools.deployment.com.sun.enterprise.deploy.shared|_ThreadID=191;_ThreadName=Thread-2;|DPL8031: Ignoring WEB-INF/ because the containing archive /opt/glassfish3/glassfish/nodes/node-1/inst-1/applications/myapp recorded it as a pre-existing stale file|#]

[#|2012-10-17T17:50:36.414-0500|WARNING|glassfish3.1.2|javax.enterprise.system.tools.deployment.com.sun.enterprise.deploy.shared|_ThreadID=191;_ThreadName=Thread-2;|DPL8031: Ignoring WEB-INF/ because the containing archive /opt/glassfish3/glassfish/nodes/node-1/inst-1/applications/myapp recorded it as a pre-existing stale file|#]

[#|2012-10-17T17:50:36.416-0500|WARNING|glassfish3.1.2|javax.enterprise.system.tools.deployment.com.sun.enterprise.deploy.shared|_ThreadID=191;_ThreadName=Thread-2;|DPL8031: Ignoring WEB-INF/ because the containing archive /opt/glassfish3/glassfish/nodes/node-1/inst-1/applications/myapp recorded it as a pre-existing stale file|#]

[#|2012-10-17T17:50:36.418-0500|WARNING|glassfish3.1.2|javax.enterprise.system.tools.deployment.com.sun.enterprise.deploy.shared|_ThreadID=191;_ThreadName=Thread-2;|DPL8031: Ignoring WEB-INF/ because the containing archive /opt/glassfish3/glassfish/nodes/node-1/inst-1/applications/myapp recorded it as a pre-existing stale file|#]

[#|2012-10-17T17:51:19.818-0500|INFO|glassfish3.1.2|javax.enterprise.system.container.web.com.sun.enterprise.web._vs.server|_ThreadID=188;_ThreadName=Thread-38;|PWC1412: WebModule[null] ServletContext.log():Closing Spring root WebApplicationContext|#]

Then, I deploy the app again with the following:

asadmin --host dashost --port dasport deploy --force=true --availabilityenabled=true --name=myapp --target clust-1 myapp.war

This results in EclipseLink and other messages which seem normal, and ends up with:

[#|2012-10-17T18:10:04.111-0500|INFO|glassfish3.1.2|javax.enterprise.system.container.web.com.sun.enterprise.web|_ThreadID=190;_ThreadName=Thread-2;|WEB0671: Loading application [myapp] at [/myapp]|#]

[#|2012-10-17T18:10:04.410-0500|INFO|glassfish3.1.2|javax.enterprise.system.tools.admin.org.glassfish.deployment.admin|_ThreadID=190;_ThreadName=Thread-2;|myapp was successfully deployed in 86,259 milliseconds.|#]

Other info:

Version = GlassFish Server Open Source Edition 3.1.2 (build 23)
SunOS myhost 5.10 Generic_142900-03 sun4v sparc SUNW,T5140

Thank you for any thoughts or feedback you can provide. I have been doing undeploy/deploy combination, but is the redeploy command actually cleaner? Is the GUI cleaner? Or, is it irrelevant because they are all using the same GF calls in the end?

I read some JIRA issues that seemed to indicate undeploying and deploying an app with the same name could have problems when unpacking the ear or war file. Is there a temporary or hidden directory somewhere that GF uses to unpack files for deployment before moving them into place?

Many thanks,
Scott

Reply viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.
hzhang_jn
Offline
Joined: 2005-07-22
Points: 0

This seems to be a similar problem as reported here:

http://java.net/jira/browse/GLASSFISH-18376

This issue was fixed in GlassFish 4.0 now. Are you able to move to
GlassFish 4.0 to give a try there? Does this affect how the application
runs or the application still runs fine regardless of this?

No, redeploy is similar to undeploy/deploy, and CLI is similar to GUI,
they share similar code path in the backend..

- Hong

On 10/18/2012 8:59 AM, forums@java.net wrote:
> I have a Spring app that I'm un-deploying, and then deploying again
> with the
> same name. For no good reason other than "clean slate" I am fully
> un-deploying the application like this: asadmin --host dashost --port
> dasport
> undeploy --target clust-1 myapp The undeploy results in the following log
> messages:
> [#|2012-10-17T17:50:29.748-0500|WARNING|glassfish3.1.2|javax.enterprise.system.tools.deployment.com.sun.enterprise.deploy.shared|_ThreadID=189;_ThreadName=Thread-2;|DPL8031:
>
> Ignoring WEB-INF/ because the containing archive
> /opt/glassfish3/glassfish/nodes/node-1/inst-1/applications/myapp
> recorded it
> as a pre-existing stale file|#]
> [#|2012-10-17T17:50:29.752-0500|WARNING|glassfish3.1.2|javax.enterprise.system.tools.deployment.com.sun.enterprise.deploy.shared|_ThreadID=189;_ThreadName=Thread-2;|DPL8031:
>
> Ignoring WEB-INF/ because the containing archive
> /opt/glassfish3/glassfish/nodes/node-1/inst-1/applications/myapp
> recorded it
> as a pre-existing stale file|#]
> [#|2012-10-17T17:50:29.754-0500|WARNING|glassfish3.1.2|javax.enterprise.system.tools.deployment.com.sun.enterprise.deploy.shared|_ThreadID=189;_ThreadName=Thread-2;|DPL8031:
>
> Ignoring WEB-INF/ because the containing archive
> /opt/glassfish3/glassfish/nodes/node-1/inst-1/applications/myapp
> recorded it
> as a pre-existing stale file|#]
> [#|2012-10-17T17:50:29.756-0500|WARNING|glassfish3.1.2|javax.enterprise.system.tools.deployment.com.sun.enterprise.deploy.shared|_ThreadID=189;_ThreadName=Thread-2;|DPL8031:
>
> Ignoring WEB-INF/ because the containing archive
> /opt/glassfish3/glassfish/nodes/node-1/inst-1/applications/myapp
> recorded it
> as a pre-existing stale file|#]
> [#|2012-10-17T17:50:30.105-0500|INFO|glassfish3.1.2|javax.enterprise.system.container.web.com.sun.enterprise.web._vs.server|_ThreadID=189;_ThreadName=Thread-38;|PWC1412:
>
> WebModule[null] ServletContext.log():Destroying Spring FrameworkServlet
> 'myapp'|#]
> [#|2012-10-17T17:50:30.191-0500|INFO|glassfish3.1.2|javax.enterprise.system.container.web.com.sun.enterprise.web._vs.server|_ThreadID=189;_ThreadName=Thread-38;|PWC1412:
>
> WebModule[null] ServletContext.log():Closing Spring root
> WebApplicationContext|#]
> [#|2012-10-17T17:50:30.200-0500|INFO|glassfish3.1.2|javax.enterprise.system.std.com.sun.enterprise.server.logging|_ThreadID=189;_ThreadName=Thread-2;|[EL
>
> Config]: 2012-10-17
> 17:50:30.199--ServerSession(14609778)--Connection(25424446)--Thread(Thread[http-thread-pool-31048(3),5,grizzly-kernel])--disconnect|#]
>
> [#|2012-10-17T17:50:30.202-0500|INFO|glassfish3.1.2|javax.enterprise.system.std.com.sun.enterprise.server.logging|_ThreadID=189;_ThreadName=Thread-2;|[EL
>
> Info]: 2012-10-17
> 17:50:30.201--ServerSession(14609778)--Thread(Thread[http-thread-pool-31048(3),5,grizzly-kernel])--file:/opt/glassfish3/glassfish/nodes/node-1/inst-1/applications/myapp/WEB-INF/classes/_enterprise
>
> logout successful|#]
> [#|2012-10-17T17:50:36.410-0500|WARNING|glassfish3.1.2|javax.enterprise.system.tools.deployment.com.sun.enterprise.deploy.shared|_ThreadID=191;_ThreadName=Thread-2;|DPL8031:
>
> Ignoring WEB-INF/ because the containing archive
> /opt/glassfish3/glassfish/nodes/node-1/inst-1/applications/myapp
> recorded it
> as a pre-existing stale file|#]
> [#|2012-10-17T17:50:36.414-0500|WARNING|glassfish3.1.2|javax.enterprise.system.tools.deployment.com.sun.enterprise.deploy.shared|_ThreadID=191;_ThreadName=Thread-2;|DPL8031:
>
> Ignoring WEB-INF/ because the containing archive
> /opt/glassfish3/glassfish/nodes/node-1/inst-1/applications/myapp
> recorded it
> as a pre-existing stale file|#]
> [#|2012-10-17T17:50:36.416-0500|WARNING|glassfish3.1.2|javax.enterprise.system.tools.deployment.com.sun.enterprise.deploy.shared|_ThreadID=191;_ThreadName=Thread-2;|DPL8031:
>
> Ignoring WEB-INF/ because the containing archive
> /opt/glassfish3/glassfish/nodes/node-1/inst-1/applications/myapp
> recorded it
> as a pre-existing stale file|#]
> [#|2012-10-17T17:50:36.418-0500|WARNING|glassfish3.1.2|javax.enterprise.system.tools.deployment.com.sun.enterprise.deploy.shared|_ThreadID=191;_ThreadName=Thread-2;|DPL8031:
>
> Ignoring WEB-INF/ because the containing archive
> /opt/glassfish3/glassfish/nodes/node-1/inst-1/applications/myapp
> recorded it
> as a pre-existing stale file|#]
> [#|2012-10-17T17:51:19.818-0500|INFO|glassfish3.1.2|javax.enterprise.system.container.web.com.sun.enterprise.web._vs.server|_ThreadID=188;_ThreadName=Thread-38;|PWC1412:
>
> WebModule[null] ServletContext.log():Closing Spring root
> WebApplicationContext|#] Then, I deploy the app again with the following:
> asadmin --host dashost --port dasport deploy --force=true
> --availabilityenabled=true --name=myapp --target clust-1 myapp.war This
> results in EclipseLink and other messages which seem normal, and ends up
> with:
> [#|2012-10-17T18:10:04.111-0500|INFO|glassfish3.1.2|javax.enterprise.system.container.web.com.sun.enterprise.web|_ThreadID=190;_ThreadName=Thread-2;|WEB0671:
>
> Loading application [myapp] at [/myapp]|#]
> [#|2012-10-17T18:10:04.410-0500|INFO|glassfish3.1.2|javax.enterprise.system.tools.admin.org.glassfish.deployment.admin|_ThreadID=190;_ThreadName=Thread-2;|myapp
>
> was successfully deployed in 86,259 milliseconds.|#] Other info:
> Version =
> GlassFish Server Open Source Edition 3.1.2 (build 23) SunOS myhost 5.10
> Generic_142900-03 sun4v sparc SUNW,T5140 Thank you for any thoughts or
> feedback you can provide. I have been doing undeploy/deploy
> combination, but
> is the redeploy command actually cleaner? Is the GUI cleaner? Or, is it
> irrelevant because they are all using the same GF calls in the end? I
> read
> some JIRA issues that seemed to indicate undeploying and deploying an app
> with the same name could have problems when unpacking the ear or war
> file. Is
> there a temporary or hidden directory somewhere that GF uses to unpack
> files
> for deployment before moving them into place? Many thanks, Scott
>
> --
>
> [Message sent by forum member 'sspyrison']
>
> View Post: http://forums.java.net/node/891558
>
>

sspyrison
Offline
Joined: 2011-02-21
Points: 0

Thanks Hong... Not sure if I hit on that one in JIRA or not when I searched, appreciate the link.

I can't move to 4.0 because this is a production environment for us. When 4.0 hits stable release cycle I will definitely move.

We also have our domains on an NFS share for HA purposes, with a VIP failover between nodes when needed. I was concerned that NFS could be a problem given some of the exceptions, but I read some text in the Oracle docs indicating NFS was a viable option for DAS HA.

I do believe we had a past NFS issue, and that may have caused some stale file handles to be recorded in the domain directory. We are going to monitor for these types of files and exceptions going forward, because at this time I think those events may have been responsible for our odd deployment behavior.

hzhang_jn wrote:
This seems to be a similar problem as reported here:

http://java.net/jira/browse/GLASSFISH-18376

This issue was fixed in GlassFish 4.0 now. Are you able to move to
GlassFish 4.0 to give a try there? Does this affect how the application
runs or the application still runs fine regardless of this?

No, redeploy is similar to undeploy/deploy, and CLI is similar to GUI,
they share similar code path in the backend..

- Hong