Removing old server.log_* files doesn't free up resources

Experts,

Our production applications sometimes dump a huge load of log records on system.out and system.err, so we have a lot of rotated server.log files (e.g., server.log_2007*). We can live with that, as we have a cron script which removes the old files from time to time.

The problem is:removing the old files doesn't free up the disk space. Ok, I understand that the appserver keeps the server.log file open for further writes, but what about the old ones? Are they still held by the appserver?

It seems that the appserver holds the inodes of those old log files, thus not freeing up the resources. After I remove 2 gigs of old logs (and the appserver is still running), I get:

# df -lh /var/

Filesystem sizeused avail capacity Mounted on

/dev/md/dsk/d1505.6G5.2G315M95%/var

# du -sh /var/

3.3G/var

Once I restart the appserver, df -lh reports the correct amount of used space (3.3G).

Has anyone had similiar issue?

Thanks a lot,

Jo鉶.

[1029 byte] By [Joao.Guilherme.Del.Vallea] at [2007-11-27 1:20:37]
# 1
Appserver version is 8.1, Solaris 10 on SPARC. Any ideas?Thanks!
Joao.Guilherme.Del.Vallea at 2007-7-11 23:57:47 > top of Java-index,Application & Integration Servers,Application Servers...