NPE in pageSourcePool.clearUnused()

Description

In a running Preside application, I am repeatedly seeing NPEs coming from the controller thread. Here is the error from the output logs:

"ERROR","Thread-132","06/30/2023","11:53:08","controler","Cannot invoke ""lucee.runtime.PageSource.getLastAccessTime()"" because ""ps"" is null;java.lang.NullPointerException: Cannot invoke ""lucee.runtime.PageSource.getLastAccessTime()"" because ""ps"" is null at lucee.runtime.PageSourcePool.clearUnused(PageSourcePool.java:167) at lucee.runtime.MappingImpl.clearUnused(MappingImpl.java:304) at lucee.runtime.functions.system.PagePoolClear.clear(PagePoolClear.java:102) at lucee.runtime.functions.system.PagePoolClear.clear(PagePoolClear.java:94) at lucee.runtime.functions.system.PagePoolClear.clear(PagePoolClear.java:74) at lucee.runtime.engine.Controler.doClearPagePools(Controler.java:499) at lucee.runtime.engine.Controler.control(Controler.java:401) at lucee.runtime.engine.Controler.control(Controler.java:258) at lucee.runtime.engine.Controler.access$000(Controler.java:62) at lucee.runtime.engine.Controler$ControlerThread.run(Controler.java:117)

Environment

Linux (Docker). Java 15.

duplicates

Activity

Show:

Michael Offner 7 July 2023 at 09:27

problem is that between getting the keys and then get the pagesource the underlaying request is gone. no real concern, we can simply ignore it, no harm done.

Zac Spitzer 3 July 2023 at 17:05

I wonder if this is happening due to overlapping controller threads? this runs every minute

Fixed

Details

Assignee

Reporter

Priority

Fix versions

New Issue warning screen

Before you create a new Issue, please post to the mailing list first https://dev.lucee.org

Once the issue has been verified, one of the Lucee team will ask you to file an issue

Sprint

Affects versions

Created 30 June 2023 at 10:55
Updated 29 November 2023 at 14:13
Resolved 11 July 2023 at 16:53