There are two hosts in our server cluster. On each host we run two Tomcats. But 
the app that uses Wicket only runs on one Tomcat. 

-----Original Message-----
From: Martin Grigorov [mailto:mgrigo...@apache.org] 
Sent: Thursday, December 01, 2011 1:49 PM
To: users@wicket.apache.org
Subject: Re: WicketFilter-filestore overflow

Is there a cluster of Tomcat instances ?
Maybe the sessionExpired notification has ran on just one of the instances and 
all other leak these folders.

On Thu, Dec 1, 2011 at 10:37 PM, Fang Lin <fang...@u.washington.edu> wrote:
> All the session folders are cleaned up during the test on the development 
> server. Nothing left.
> Could it be possible that the issue only occur when multiple concurrent 
> sessions exist?
>
> I am going to set up a cronjob to clean up the folders daily as a work around.
> Thanks!
>
> -----Original Message-----
> From: Martin Grigorov [mailto:mgrigo...@apache.org]
> Sent: Thursday, December 01, 2011 12:03 PM
> To: users@wicket.apache.org
> Subject: Re: WicketFilter-filestore overflow
>
> Set the session timeout to 1, log in and wait 1 minute with the 
> debugger at that method and follow the execution
>
> On Thu, Dec 1, 2011 at 8:59 PM, Fang Lin <fang...@u.washington.edu> wrote:
>> It did clean up some folders, but not all of them.
>>
>> -----Original Message-----
>> From: Martin Grigorov [mailto:mgrigo...@apache.org]
>> Sent: Thursday, December 01, 2011 11:52 AM
>> To: users@wicket.apache.org
>> Subject: Re: WicketFilter-filestore overflow
>>
>> On Thu, Dec 1, 2011 at 8:31 PM, Fang Lin <fang...@u.washington.edu> wrote:
>>> It looks like a bug as the behavior is not consistent across all servers.
>>> Would anything setting in Tomcat affect how Wicket clean up the folders?
>>
>> Did you debug it ?
>>
>>> -Fang
>>>
>>> -----Original Message-----
>>> From: Fang Lin
>>> Sent: Thursday, December 01, 2011 11:26 AM
>>> To: users@wicket.apache.org
>>> Subject: RE: WicketFilter-filestore overflow
>>>
>>> Thanks for checking into this quickly!
>>> We don’t  use Jetty. We use Apache Tomcat/6.0.29.
>>> On the server that had the overflow, there were  3,111 directories created 
>>> yesterday still there now.
>>>
>>> -Fang
>>>
>>> -----Original Message-----
>>> From: Martin Grigorov [mailto:mgrigo...@apache.org]
>>> Sent: Thursday, December 01, 2011 10:59 AM
>>> To: users@wicket.apache.org
>>> Subject: Re: WicketFilter-filestore overflow
>>>
>>> Everything seems to be OK.
>>> I just tested it with Jetty 7.5
>>>
>>> When a session expires this call is executed:
>>> Daemon Thread [HashSessionScavenger-0] (Suspended (breakpoint at 
>>> line
>>> 454 in DiskDataStore$SessionEntry))
>>>        DiskDataStore$SessionEntry.unbind() line: 454
>>>        DiskDataStore.removeData(String) line: 166
>>>        AsynchronousDataStore.removeData(String) line: 209
>>>        DefaultPageStore.removePageData(String) line: 109
>>>        DefaultPageStore.unbind(String) line: 161
>>>        PageStoreManager.sessionExpired(String) line: 413
>>>        WicketApplication(Application).sessionUnbound(String) line:
>>> 478
>>>        WicketApplication(WebApplication).sessionUnbound(String) line:
>>> 509
>>>
>>> HttpSessionStore$SessionBindingListener.valueUnbound(HttpSessionBind
>>> i
>>> n
>>> gEvent)
>>> line: 430
>>>
>>> HashSessionManager$HashedSession(AbstractSessionManager$Session).unb
>>> i
>>> n
>>> dValue(String,
>>> Object) line: 1246
>>>
>>> HashSessionManager$HashedSession(AbstractSessionManager$Session).doI
>>> n
>>> v
>>> alidate()
>>> line: 1080
>>>
>>> HashSessionManager$HashedSession(AbstractSessionManager$Session).tim
>>> e
>>> o
>>> ut()
>>> line: 1037
>>>        HashSessionManager.scavenge() line: 318
>>>        HashSessionManager$2.run() line: 273
>>>        TimerThread.mainLoop() line: 512
>>>        TimerThread.run() line: 462
>>>
>>> and it deletes the folder with the session data.
>>> You may try it with your application server
>>>
>>> On Thu, Dec 1, 2011 at 7:25 PM, Martin Grigorov <mgrigo...@apache.org> 
>>> wrote:
>>>> Hm,
>>>>
>>>> Maybe there is a bug. That's easy to check.
>>>> I will let you know soon.
>>>>
>>>> On Thu, Dec 1, 2011 at 6:56 PM, Fang Lin <fang...@u.washington.edu> wrote:
>>>>> About two weeks after we deployed Wicket 1.5.3, we ran into a file system 
>>>>> issue on one of our server.
>>>>>
>>>>> The following appeared in the application log on each page load:
>>>>>
>>>>> ERROR 29 08:01:57.665 Failed to create directory:
>>>>> /usr/local/tomcat/work/Catalina/localhost/_/WicketFilter-filestore
>>>>> /
>>>>> 0
>>>>> A
>>>>> 91844EB9E584DD7CA8C48AD558AB2D.myuw11 [o.a.w.u.f.Files] ERROR 29
>>>>> 08:01:57.666
>>>>> /usr/local/tomcat/work/Catalina/localhost/_/WicketFilter-filestore
>>>>> /
>>>>> 0 A 91844EB9E584DD7CA8C48AD558AB2D.myuw11/data (No such file or
>>>>> directory) [o.a.w.p.DiskDataStore] java.io.FileNotFoundException:
>>>>> /usr/local/tomcat/work/Catalina/localhost/_/WicketFilter-filestore
>>>>> /
>>>>> 0 A 91844EB9E584DD7CA8C48AD558AB2D.myuw11/data (No such file or
>>>>> directory)
>>>>>        at java.io.RandomAccessFile.open(Native Method)
>>>>>        at
>>>>> java.io.RandomAccessFile.<init>(RandomAccessFile.java:212)
>>>>>        at
>>>>> org.apache.wicket.pageStore.DiskDataStore$SessionEntry.getFileChan
>>>>> n
>>>>> e
>>>>> l
>>>>> (DiskDataStore.java:410)
>>>>>        at
>>>>> org.apache.wicket.pageStore.DiskDataStore$SessionEntry.savePage(Di
>>>>> s
>>>>> k
>>>>> D
>>>>> ataStore.java:328)
>>>>>        at
>>>>> org.apache.wicket.pageStore.DiskDataStore.storeData(DiskDataStore.
>>>>> j
>>>>> a
>>>>> v
>>>>> a:176)
>>>>>        at
>>>>> org.apache.wicket.pageStore.AsynchronousDataStore$PageSavingRunnable.
>>>>> run(AsynchronousDataStore.java:356)
>>>>>        at java.lang.Thread.run(Thread.java:662)
>>>>> WARN 29 08:01:57.666 Cannot save page with id '0' because the data 
>>>>> file cannot be opened.[o.a.w.p.DiskDataStore]
>>>>>
>>>>> There were total 129,852 sub-directories under 
>>>>> /data/logs/tomcat/work/Catalina/localhost/_/WicketFilter-filestore/, 
>>>>> named by session ID and host name.
>>>>> Removed all the sub-directories, cleared the problem.  What concerns me 
>>>>> now is that the ones created on previous days were not removed 
>>>>> completely. Therefore the number of sub-directories is increasing every 
>>>>> day.
>>>>>
>>>>> Our session-timeout is 60 minutes.
>>>>>
>>>>> Thanks,
>>>>> Fang
>>>>>
>>>>>
>>>>>
>>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> Martin Grigorov
>>>> jWeekend
>>>> Training, Consulting, Development
>>>> http://jWeekend.com
>>>>
>>>
>>>
>>>
>>> --
>>> Martin Grigorov
>>> jWeekend
>>> Training, Consulting, Development
>>> http://jWeekend.com
>>>
>>> --------------------------------------------------------------------
>>> - To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
>>> For additional commands, e-mail: users-h...@wicket.apache.org
>>>
>>>
>>
>>
>>
>> --
>> Martin Grigorov
>> jWeekend
>> Training, Consulting, Development
>> http://jWeekend.com
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
>> For additional commands, e-mail: users-h...@wicket.apache.org
>>
>>
>
>
>
> --
> Martin Grigorov
> jWeekend
> Training, Consulting, Development
> http://jWeekend.com
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
> For additional commands, e-mail: users-h...@wicket.apache.org
>
>



--
Martin Grigorov
jWeekend
Training, Consulting, Development
http://jWeekend.com

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

Reply via email to