On 2015-01-20 16:33, Christopher Schultz wrote:
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

Théo,

On 1/19/15 3:59 PM, Théo Chamley wrote:

On 19 Jan 2015, at 20:16, Christopher Schultz
<ch...@christopherschultz.net
<mailto:ch...@christopherschultz.net>> wrote:

Signed PGP part Théo,

On 1/19/15 6:11 AM, Théo Chamley wrote:
On 2015-01-16 19:33, Christopher Schultz wrote: Théo,

On 1/13/15 1:38 PM, Théo Chamley wrote:
I have setup a Tomcat cluster and I am now trying to get
the FarmWarDeployer to work. However, it seems that the
Deployer never checks my watchDir and therefore never
finds my new wars to deploy.

When starting Tomcat, the logs indicate that the Deployer
is started: 13-Jan-2015 19:21:43.942 INFO
[Catalina-startStop-1]
org.apache.catalina.ha.deploy.FarmWarDeployer.start
Cluster deployment is watching [/my/watch/dir/] for
changes. 13-Jan-2015 19:21:43.942 INFO
[Catalina-startStop-1]
org.apache.catalina.ha.deploy.FarmWarDeployer.start
Cluster FarmWarDeployer started.

But nothing more, even for extended periods of time
after putting my ROOT.war inside my watchDir.

I checked the source code

(https://github.com/apache/tomcat80/blob/trunk/java/org/apache/catalina/ha/deploy/FarmWarDeployer.java),







and it seems that the check must be done once every two
"backgroundProcess" calls, but I don't understand when
this function is supposed to be called or if there is a
way to force the check.

Can you enable DEBUG logging for
org.apache.catalina.ha.deploy.WarWatcher?

The backgroundProcess method will be called by the background
thread that is launched for the server. It's not something you
will generally have to manage yourself.

-chris

---------------------------------------------------------------------




To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
<mailto:users-unsubscr...@tomcat.apache.org>
For additional commands, e-mail:
users-h...@tomcat.apache.org
<mailto:users-h...@tomcat.apache.org>

Hello,

Thank you for your answer. The logs now show that the listen
dir is checked, but nothing more, even if I repeatedly "touch"
the ROOT.war file. And from the source code, I won't have more
information from the logs… Could the mount options of the file
system influence the result? My partition is mounted with
rw,nosuid,nodev,noexec,noatime,nodiratime,data=ordered.

19-Jan-2015 12:04:27.956 FINE
[ContainerBackgroundProcessor[StandardEngine[Catalina]]]
org.apache.catalina.ha.deploy.WarWatcher.check check cluster
wars at /my/watch/dir 19-Jan-2015 12:04:47.962 FINE
[ContainerBackgroundProcessor[StandardEngine[Catalina]]]
org.apache.catalina.ha.deploy.WarWatcher.check check cluster
wars at /my/watch/dir 19-Jan-2015 12:05:07.967 FINE
[ContainerBackgroundProcessor[StandardEngine[Catalina]]]
org.apache.catalina.ha.deploy.WarWatcher.check check cluster
wars at /my/watch/dir

It looks like WarWatcher looks for WAR files that end in ".war"
specifically: it must be all lower-case.

Would you be willing to build your own Tomcat from source if I
send you a source patch? I could add some logging and you can get
more information.

-chris



---------------------------------------------------------------------


To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
<mailto:users-unsubscr...@tomcat.apache.org> For additional
commands, e-mail: users-h...@tomcat.apache.org
<mailto:users-h...@tomcat.apache.org>


Hello,

Yes, absolutely. Also, I just verified: the name of my file is
exactly “ROOT.war”, with this case.

http://people.apache.org/~schultz/patches/WarWatcher.log.patch

Kick-up the log level for the WarWatcher class to TRACE and re-try.

- -chris
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1
Comment: GPGTools - http://gpgtools.org

iQIcBAEBCAAGBQJUvnVLAAoJEBzwKT+lPKRYSEkP/jXmu1J8CEpnSNtDvdZjsKvc
eUvNlEO8ul6cAbEH2FnEpN26CmXLwGNdCmN17THElUI+O/j2nH/HMqEtD3wSRsdj
bp9Vy4bKAhAu9rsOwNIlW8aY3mcDTQp+sKF55RzpXqxP4aO7UyxXgHwlZavJvNB6
ockn7NV/qPafhJRTBiahdB9pHAB6yXAToaUn1GlITDtTLHYY4BG3a3084mh6I406
70vOMYOM4E9vDRcEreI7gANg6Zbc299UrHPG/9Q+YnHtogw1hd7YheraMF7iyzFj
WYcmEZjjZfOWRT8MtRokBaj3WgugHHIJZ6rYW4Snb6O9Lp6Gox4LBoro41++RJsm
oRLnyYe8fW81OjivEgjiyxHD49yFrPcEhOnAVguCBD/wVeBUafcbvGgnCHbY44ma
rPtkrKF25JuELmb2jcYO0Q1/C2edG/G7SzCYTAUquNlFrepCwjfecyXqA7iJncte
8hBMO0D3ukJOZsXtlwGS4O2v+ulXH3e/7KUIN45XDy0RTzDPlnEndC6/1D0Oxcgc
muPiFg/EzI6jNi2hSFOJSluJ5RaK6brifOHki8NK7obBMcj4CWs1Rs03Av9oA6BD
wtldS6S6ZesQCyY73d4gHqdJHYMv0j+jvG0sn3eKDULrdnXgYqDjkVmYDWSlkpqB
v4reNZCAQ7K6157+eVIr
=FGW0
-----END PGP SIGNATURE-----

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
For additional commands, e-mail: users-h...@tomcat.apache.org

Thanks, found my problem by adding even more debugging than you.
So, it came down to my watchDir being in 644 and not 755.

Because of this, the "war.exists()" in the modified() function of the WarInfo class returned false. What was misleading is that the watchDir.listFiles(new WarFilter()) function (line 71 of WarWatcher.java)
was able to list the content of the directory…

Thank you again for your help,

Théo

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
For additional commands, e-mail: users-h...@tomcat.apache.org

Reply via email to