It appears I am getting an OverlappingFileLockException on line 80 in the 
org.geoserver.platform.resource.FileLockProvider class

               while (currLock == null && count < maxLockAttempts) {
                    // the file output stream can also fail to be acquired due 
to the
                    // other nodes deleting the file
                    currFos = new FileOutputStream(file);
                    try {
                        currLock = currFos.getChannel().lock();
                    } catch (OverlappingFileLockException | IOException e) {
                        IOUtils.closeQuietly(currFos);
                        try {
                            Thread.sleep(20);
                        } catch (InterruptedException ie) {
                            // ok, moving on
                        }
                    } // this one is also thrown with a message "avoided fs 
deadlock"

                    count++;
                }

The file that is locked is the filelock/#####.lock file in the data directory.  
Do you know what may be causing this?


Dominique Bessette

From: Bessette-Halsema, Dominique E via Geoserver-users 
<geoserver-users@lists.sourceforge.net>
Sent: Wednesday, July 10, 2024 12:28 PM
To: 'GeoServer Users' <geoserver-users@lists.sourceforge.net>
Subject: [Geoserver-users] url checks timing out system

Hello I have using GeoServer 2. 24. 4 on Windows with Java 11. When I make a 
WMS getCapabilities request for a workspace that only contains postgis layers 
it eventually times out. I would like to note we are having no issues on linux, 
this only
ZjQcmQRYFpfptBannerStart
This Message Is From an External Sender
Please use caution with links, attachments, and any requests for credentials.
ZjQcmQRYFpfptBannerEnd
Hello

I have using GeoServer 2.24.4 on Windows with Java 11.  When I make a WMS 
getCapabilities request for a workspace that only contains postgis layers it 
eventually times out.  I would like to note we are having no issues on linux, 
this only seems to be a windows problem and I have no issues making a WFS or 
WCS getCapabilities call.  I have also tried disabling URL checks and enabling 
URL checks to allow all strings, but neither have made a difference.


I attached the full error but here is a snippet

10 Jul 17:57:34 DEBUG  [resource.FileLockProvider] - Lock 
security/urlchecks.xml mapped onto 
F:\mysystem\gis\geoserver\external\filelocks\01708370114427b013e293238f5a0daff5937969.lock
 released by thread 786
10 Jul 17:57:34 DEBUG  [resource.MemoryLockProvider] - Released lock key 
security/urlchecks.xml mapped to index 300
10 Jul 17:57:34 WARN   [wms.capabilities] - Error getting LegendURL dimensions 
from sample
java.lang.RuntimeException: Error while checking URL 
file:///F:/mysystem/gis/geoserver/external/styles/icons/legend/text/text.png
        at 
deployment.geoserver.war//org.geoserver.security.urlchecks.GeoServerURLChecker.confirm(GeoServerURLChecker.java:65)
        at 
deployment.geoserver.war//org.geotools.data.ows.URLCheckers.confirm(URLCheckers.java:208)
        at 
deployment.geoserver.war//org.geotools.data.ows.URLCheckers.confirm(URLCheckers.java:112)
        at 
deployment.geoserver.war//org.geotools.renderer.lite.StyledShapePainter.paint(StyledShapePainter.java:419)
…..

Caused by: java.lang.IllegalStateException: Failed to get a lock on key 
security/urlchecks.xml after 6000 attempts
        at 
deployment.geoserver.war//org.geoserver.platform.resource.FileLockProvider.acquire(FileLockProvider.java:95)
        at 
deployment.geoserver.war//org.geoserver.platform.resource.GlobalLockProvider.acquire(GlobalLockProvider.java:47)
        at 
deployment.geoserver.war//org.geoserver.platform.resource.FileSystemResourceStore$FileSystemResource.lock(FileSystemResourceStore.java:189)
        at 
deployment.geoserver.war//org.geoserver.platform.resource.FileSystemResourceStore$FileSystemResource.in(FileSystemResourceStore.java:209)
        at 
deployment.geoserver.war//org.geoserver.platform.FileWatcher.read(FileWatcher.java:59)
        at 
deployment.geoserver.war//org.geoserver.security.urlchecks.URLCheckDAO.lambda$getConfiguration$4(URLCheckDAO.java:117)
        at 
deployment.geoserver.war//org.geoserver.security.urlchecks.URLCheckDAO.configurationAction(URLCheckDAO.java:70)
        at 
deployment.geoserver.war//org.geoserver.security.urlchecks.URLCheckDAO.getConfiguration(URLCheckDAO.java:114)
        at 
deployment.geoserver.war//org.geoserver.security.urlchecks.URLCheckDAO.isEnabled(URLCheckDAO.java:198)
        at 
deployment.geoserver.war//org.geoserver.security.urlchecks.GeoServerURLChecker.confirm(GeoServerURLChecker.java:46)

Dominique Bessette
Senior Software Engineer

T   619.881.2748
dominique.besse...@gdit.com<mailto:dominique.besse...@gdit.com>
1615 Murray Canyon Rd. #600
San Diego, CA 92108
www.gdit.com<http://www.gdit.com>

_______________________________________________
Geoserver-users mailing list

Please make sure you read the following two resources before posting to this 
list:
- Earning your support instead of buying it, but Ian Turton: 
http://www.ianturton.com/talks/foss4g.html#/
- The GeoServer user list posting guidelines: 
http://geoserver.org/comm/userlist-guidelines.html

If you want to request a feature or an improvement, also see this: 
https://github.com/geoserver/geoserver/wiki/Successfully-requesting-and-integrating-new-features-and-improvements-in-GeoServer


Geoserver-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geoserver-users
  • [Geoserver-users] url ch... Bessette-Halsema, Dominique E via Geoserver-users
    • Re: [Geoserver-user... Bessette-Halsema, Dominique E via Geoserver-users

Reply via email to