ObjectLockTest

3

tests

0

failures

0

ignored

10.221s

duration

100%

successful

Tests

Test Duration Result
readLockBlocksUntilWriteLockIsReleased 9.828s passed
testWithLocks 0.285s passed
testWithoutLocks 0.108s passed

Standard output

The below numbers should be strictly increasing, but need not be sequential. However the displayed logic statements should (at least periodically) evaluate to false.
1 == 4
5 == 7
8 == 10
The below numbers should be strictly increasing, but need not be sequential. However the displayed logic statements should always evaluate to true.
1 == 1
2 == 2
3 == 3
4 == 4
5 == 5
7 == 7
8 == 8
9 == 9

Standard error

Starting threads
thread 1606 acquiring read lock
thread 1606 acquired read lock
thread 1608 acquiring write lock
thread 1607 acquiring read lock
thread 1609 acquiring write lock
thread 1606 releasing read lock
thread 1606 released read lock
thread 1606 acquiring read lock
thread 1608 acquired write lock
thread 1608 releasing write lock
thread 1608 released write lock
thread 1608 acquiring write lock
thread 1607 acquired read lock
thread 1607 releasing read lock
thread 1607 released read lock
thread 1607 acquiring read lock
thread 1609 acquired write lock
thread 1609 releasing write lock
thread 1609 released write lock
thread 1609 acquiring write lock
thread 1606 acquired read lock
thread 1606 releasing read lock
thread 1606 released read lock
thread 1606 acquiring read lock
thread 1608 acquired write lock
WARNING	thread=165	[null] exception running event archive policy (testPolicy) 
java.lang.NullPointerException: Cannot invoke "java.sql.Connection.prepareStatement(String)" because the return value of "gov.usgs.earthquake.indexer.JDBCProductIndex.getConnection()" is null
	at gov.usgs.earthquake.indexer.JDBCProductIndex.getEvents(JDBCProductIndex.java:232)
	at gov.usgs.earthquake.indexer.Indexer.purgeExpiredProducts(Indexer.java:1838)
	at gov.usgs.earthquake.indexer.Indexer$1.run(Indexer.java:1785)
	at java.base/java.util.TimerThread.mainLoop(Timer.java:566)
	at java.base/java.util.TimerThread.run(Timer.java:516)
INFO	thread=165	[null] purged 0 expired events and 0 expired unassociated products.
thread 1608 releasing write lock
thread 1608 released write lock
thread 1608 acquiring write lock
thread 1607 acquired read lock
thread 1607 releasing read lock
thread 1607 released read lock
thread 1607 acquiring read lock
thread 1609 acquired write lock
thread 1609 releasing write lock
thread 1609 released write lock
thread 1609 acquiring write lock
thread 1606 acquired read lock
thread 1606 releasing read lock
thread 1606 released read lock
thread 1606 acquiring read lock
thread 1608 acquired write lock
thread 1608 releasing write lock
thread 1608 released write lock
thread 1608 acquiring write lock
thread 1607 acquired read lock
thread 1607 releasing read lock
thread 1607 released read lock
thread 1607 acquiring read lock
thread 1609 acquired write lock
thread 1609 releasing write lock
thread 1609 released write lock
thread 1609 acquiring write lock
thread 1606 acquired read lock
thread 1606 releasing read lock
thread 1606 released read lock
thread 1606 acquiring read lock
thread 1608 acquired write lock
thread 1608 releasing write lock
thread 1608 released write lock
thread 1608 acquiring write lock
thread 1607 acquired read lock
thread 1607 releasing read lock
thread 1607 released read lock
thread 1607 acquiring read lock
thread 1609 acquired write lock
WARNING	thread=165	[null] exception running event archive policy (testPolicy) 
java.lang.NullPointerException: Cannot invoke "java.sql.Connection.prepareStatement(String)" because the return value of "gov.usgs.earthquake.indexer.JDBCProductIndex.getConnection()" is null
	at gov.usgs.earthquake.indexer.JDBCProductIndex.getEvents(JDBCProductIndex.java:232)
	at gov.usgs.earthquake.indexer.Indexer.purgeExpiredProducts(Indexer.java:1838)
	at gov.usgs.earthquake.indexer.Indexer$1.run(Indexer.java:1785)
	at java.base/java.util.TimerThread.mainLoop(Timer.java:566)
	at java.base/java.util.TimerThread.run(Timer.java:516)
INFO	thread=165	[null] purged 0 expired events and 0 expired unassociated products.
thread 1609 releasing write lock
thread 1609 released write lock
thread 1609 acquiring write lock
thread 1606 acquired read lock
thread 1606 releasing read lock
thread 1606 released read lock
thread 1606 acquiring read lock
thread 1608 acquired write lock
thread 1608 releasing write lock
thread 1608 released write lock
thread 1608 acquiring write lock
thread 1607 acquired read lock
thread 1607 releasing read lock
thread 1607 released read lock
thread 1607 acquiring read lock
thread 1609 acquired write lock
thread 1609 releasing write lock
thread 1609 released write lock
thread 1609 acquiring write lock
thread 1606 acquired read lock
thread 1606 releasing read lock
thread 1606 released read lock
thread 1606 acquiring read lock
thread 1608 acquired write lock
thread 1608 releasing write lock
thread 1608 released write lock
thread 1608 acquiring write lock
thread 1607 acquired read lock
thread 1607 releasing read lock
thread 1607 released read lock
thread 1607 acquiring read lock
thread 1609 acquired write lock
thread 1609 releasing write lock
thread 1609 released write lock
thread 1609 acquiring write lock
thread 1606 acquired read lock
thread 1606 releasing read lock
thread 1606 released read lock
thread 1606 acquiring read lock
thread 1608 acquired write lock
Tue Jan 13 21:37:38 UTC 2026
WARNING	thread=165	[null] exception running event archive policy (testPolicy) 
java.lang.NullPointerException: Cannot invoke "java.sql.Connection.prepareStatement(String)" because the return value of "gov.usgs.earthquake.indexer.JDBCProductIndex.getConnection()" is null
	at gov.usgs.earthquake.indexer.JDBCProductIndex.getEvents(JDBCProductIndex.java:232)
	at gov.usgs.earthquake.indexer.Indexer.purgeExpiredProducts(Indexer.java:1838)
	at gov.usgs.earthquake.indexer.Indexer$1.run(Indexer.java:1785)
	at java.base/java.util.TimerThread.mainLoop(Timer.java:566)
	at java.base/java.util.TimerThread.run(Timer.java:516)
INFO	thread=165	[null] purged 0 expired events and 0 expired unassociated products.
thread 1608 releasing write lock
thread 1608 released write lock
thread 1608 acquiring write lock
thread 1607 acquired read lock
thread 1607 releasing read lock
thread 1607 released read lock
thread 1607 acquiring read lock
thread 1609 acquired write lock
thread 1609 releasing write lock
thread 1609 released write lock
thread 1609 acquiring write lock
thread 1606 acquired read lock
thread 1606 releasing read lock
thread 1606 released read lock
thread 1606 acquiring read lock
thread 1608 acquired write lock
thread 1608 releasing write lock
thread 1608 released write lock
thread 1608 acquiring write lock
thread 1607 acquired read lock
thread 1607 releasing read lock
thread 1607 released read lock
thread 1607 acquiring read lock
thread 1609 acquired write lock
thread 1609 releasing write lock
thread 1609 released write lock
thread 1609 acquiring write lock
thread 1606 acquired read lock
thread 1606 releasing read lock
thread 1606 released read lock
thread 1606 acquiring read lock
thread 1608 acquired write lock
thread 1608 releasing write lock
thread 1608 released write lock
thread 1608 acquiring write lock
thread 1607 acquired read lock
thread 1607 releasing read lock
thread 1607 released read lock
thread 1607 acquiring read lock
thread 1609 acquired write lock
thread 1609 releasing write lock
thread 1609 released write lock
thread 1609 acquiring write lock
thread 1606 acquired read lock
thread 1606 releasing read lock
thread 1606 released read lock
thread 1606 acquiring read lock
thread 1608 acquired write lock
thread 1608 releasing write lock
thread 1608 released write lock
thread 1608 acquiring write lock
thread 1607 acquired read lock
thread 1607 releasing read lock
thread 1607 released read lock
thread 1607 acquiring read lock
thread 1609 acquired write lock
WARNING	thread=165	[null] exception running event archive policy (testPolicy) 
java.lang.NullPointerException: Cannot invoke "java.sql.Connection.prepareStatement(String)" because the return value of "gov.usgs.earthquake.indexer.JDBCProductIndex.getConnection()" is null
	at gov.usgs.earthquake.indexer.JDBCProductIndex.getEvents(JDBCProductIndex.java:232)
	at gov.usgs.earthquake.indexer.Indexer.purgeExpiredProducts(Indexer.java:1838)
	at gov.usgs.earthquake.indexer.Indexer$1.run(Indexer.java:1785)
	at java.base/java.util.TimerThread.mainLoop(Timer.java:566)
	at java.base/java.util.TimerThread.run(Timer.java:516)
INFO	thread=165	[null] purged 0 expired events and 0 expired unassociated products.
thread 1609 releasing write lock
thread 1609 released write lock
thread 1609 acquiring write lock
thread 1606 acquired read lock
thread 1606 releasing read lock
thread 1606 released read lock
thread 1606 acquiring read lock
thread 1608 acquired write lock
thread 1608 releasing write lock
thread 1608 released write lock
thread 1608 acquiring write lock
thread 1607 acquired read lock
thread 1607 releasing read lock
thread 1607 released read lock
thread 1607 acquiring read lock
thread 1609 acquired write lock
thread 1609 releasing write lock
thread 1609 released write lock
thread 1609 acquiring write lock
thread 1606 acquired read lock
thread 1606 releasing read lock
thread 1606 released read lock
thread 1606 acquiring read lock
thread 1608 acquired write lock
thread 1608 releasing write lock
thread 1608 released write lock
thread 1608 acquiring write lock
thread 1607 acquired read lock
thread 1607 releasing read lock
thread 1607 released read lock
thread 1607 acquiring read lock
thread 1609 acquired write lock
Tue Jan 13 21:37:39 UTC 2026
WARNING	thread=165	[null] exception running event archive policy (testPolicy) 
java.lang.NullPointerException: Cannot invoke "java.sql.Connection.prepareStatement(String)" because the return value of "gov.usgs.earthquake.indexer.JDBCProductIndex.getConnection()" is null
	at gov.usgs.earthquake.indexer.JDBCProductIndex.getEvents(JDBCProductIndex.java:232)
	at gov.usgs.earthquake.indexer.Indexer.purgeExpiredProducts(Indexer.java:1838)
	at gov.usgs.earthquake.indexer.Indexer$1.run(Indexer.java:1785)
	at java.base/java.util.TimerThread.mainLoop(Timer.java:566)
	at java.base/java.util.TimerThread.run(Timer.java:516)
INFO	thread=165	[null] purged 0 expired events and 0 expired unassociated products.
thread 1609 releasing write lock
thread 1609 released write lock
thread 1609 acquiring write lock
thread 1606 acquired read lock
thread 1606 releasing read lock
thread 1606 released read lock
thread 1606 acquiring read lock
thread 1608 acquired write lock
thread 1608 releasing write lock
thread 1608 released write lock
thread 1608 acquiring write lock
thread 1607 acquired read lock
thread 1607 releasing read lock
thread 1607 released read lock
thread 1607 acquiring read lock
thread 1609 acquired write lock
thread 1609 releasing write lock
thread 1609 released write lock
thread 1609 acquiring write lock
thread 1606 acquired read lock
thread 1606 releasing read lock
thread 1606 released read lock
thread 1606 acquiring read lock
thread 1608 acquired write lock
thread 1608 releasing write lock
thread 1608 released write lock
thread 1608 acquiring write lock
thread 1607 acquired read lock
thread 1607 releasing read lock
thread 1607 released read lock
thread 1607 acquiring read lock
thread 1609 acquired write lock
thread 1609 releasing write lock
thread 1609 released write lock
thread 1609 acquiring write lock
thread 1606 acquired read lock
thread 1606 releasing read lock
thread 1606 released read lock
thread 1606 acquiring read lock
thread 1608 acquired write lock
thread 1608 releasing write lock
thread 1608 released write lock
thread 1608 acquiring write lock
thread 1607 acquired read lock
thread 1607 releasing read lock
thread 1607 released read lock
thread 1607 acquiring read lock
thread 1609 acquired write lock
thread 1609 releasing write lock
thread 1609 released write lock
thread 1609 acquiring write lock
thread 1606 acquired read lock
WARNING	thread=165	[null] exception running event archive policy (testPolicy) 
java.lang.NullPointerException: Cannot invoke "java.sql.Connection.prepareStatement(String)" because the return value of "gov.usgs.earthquake.indexer.JDBCProductIndex.getConnection()" is null
	at gov.usgs.earthquake.indexer.JDBCProductIndex.getEvents(JDBCProductIndex.java:232)
	at gov.usgs.earthquake.indexer.Indexer.purgeExpiredProducts(Indexer.java:1838)
	at gov.usgs.earthquake.indexer.Indexer$1.run(Indexer.java:1785)
	at java.base/java.util.TimerThread.mainLoop(Timer.java:566)
	at java.base/java.util.TimerThread.run(Timer.java:516)
INFO	thread=165	[null] purged 0 expired events and 0 expired unassociated products.
thread 1606 releasing read lock
thread 1606 released read lock
thread 1606 acquiring read lock
thread 1608 acquired write lock
thread 1608 releasing write lock
thread 1608 released write lock
thread 1608 acquiring write lock
thread 1607 acquired read lock
thread 1607 releasing read lock
thread 1607 released read lock
thread 1607 acquiring read lock
thread 1609 acquired write lock
thread 1609 releasing write lock
thread 1609 released write lock
thread 1609 acquiring write lock
thread 1606 acquired read lock
thread 1606 releasing read lock
thread 1606 released read lock
thread 1606 acquiring read lock
thread 1608 acquired write lock
thread 1608 releasing write lock
thread 1608 released write lock
thread 1608 acquiring write lock
thread 1607 acquired read lock
thread 1607 releasing read lock
thread 1607 released read lock
thread 1607 acquiring read lock
thread 1609 acquired write lock
thread 1609 releasing write lock
thread 1609 released write lock
thread 1609 acquiring write lock
thread 1606 acquired read lock
thread 1606 releasing read lock
thread 1606 released read lock
thread 1606 acquiring read lock
thread 1608 acquired write lock
thread 1608 releasing write lock
thread 1608 released write lock
thread 1608 acquiring write lock
thread 1607 acquired read lock
Tue Jan 13 21:37:40 UTC 2026
WARNING	thread=165	[null] exception running event archive policy (testPolicy) 
java.lang.NullPointerException: Cannot invoke "java.sql.Connection.prepareStatement(String)" because the return value of "gov.usgs.earthquake.indexer.JDBCProductIndex.getConnection()" is null
	at gov.usgs.earthquake.indexer.JDBCProductIndex.getEvents(JDBCProductIndex.java:232)
	at gov.usgs.earthquake.indexer.Indexer.purgeExpiredProducts(Indexer.java:1838)
	at gov.usgs.earthquake.indexer.Indexer$1.run(Indexer.java:1785)
	at java.base/java.util.TimerThread.mainLoop(Timer.java:566)
	at java.base/java.util.TimerThread.run(Timer.java:516)
INFO	thread=165	[null] purged 0 expired events and 0 expired unassociated products.
thread 1607 releasing read lock
thread 1607 released read lock
thread 1607 acquiring read lock
thread 1609 acquired write lock
thread 1609 releasing write lock
thread 1609 released write lock
thread 1609 acquiring write lock
thread 1606 acquired read lock
thread 1606 releasing read lock
thread 1606 released read lock
thread 1606 acquiring read lock
thread 1608 acquired write lock
thread 1608 releasing write lock
thread 1608 released write lock
thread 1608 acquiring write lock
thread 1607 acquired read lock
thread 1607 releasing read lock
thread 1607 released read lock
thread 1607 acquiring read lock
thread 1609 acquired write lock
thread 1609 releasing write lock
thread 1609 released write lock
thread 1609 acquiring write lock
thread 1606 acquired read lock
thread 1606 releasing read lock
thread 1606 released read lock
thread 1606 acquiring read lock
thread 1608 acquired write lock
thread 1608 releasing write lock
thread 1608 released write lock
thread 1608 acquiring write lock
thread 1607 acquired read lock
thread 1607 releasing read lock
thread 1607 released read lock
thread 1607 acquiring read lock
thread 1609 acquired write lock
WARNING	thread=165	[null] exception running event archive policy (testPolicy) 
java.lang.NullPointerException: Cannot invoke "java.sql.Connection.prepareStatement(String)" because the return value of "gov.usgs.earthquake.indexer.JDBCProductIndex.getConnection()" is null
	at gov.usgs.earthquake.indexer.JDBCProductIndex.getEvents(JDBCProductIndex.java:232)
	at gov.usgs.earthquake.indexer.Indexer.purgeExpiredProducts(Indexer.java:1838)
	at gov.usgs.earthquake.indexer.Indexer$1.run(Indexer.java:1785)
	at java.base/java.util.TimerThread.mainLoop(Timer.java:566)
	at java.base/java.util.TimerThread.run(Timer.java:516)
INFO	thread=165	[null] purged 0 expired events and 0 expired unassociated products.
thread 1609 releasing write lock
thread 1609 released write lock
thread 1609 acquiring write lock
thread 1606 acquired read lock
thread 1606 releasing read lock
thread 1606 released read lock
thread 1606 acquiring read lock
thread 1608 acquired write lock
thread 1608 releasing write lock
thread 1608 released write lock
thread 1608 acquiring write lock
thread 1607 acquired read lock
thread 1607 releasing read lock
thread 1607 released read lock
thread 1607 acquiring read lock
thread 1609 acquired write lock
thread 1609 releasing write lock
thread 1609 released write lock
thread 1609 acquiring write lock
thread 1606 acquired read lock
thread 1606 releasing read lock
thread 1606 released read lock
thread 1606 acquiring read lock
thread 1608 acquired write lock
Tue Jan 13 21:37:41 UTC 2026
WARNING	thread=165	[null] exception running event archive policy (testPolicy) 
java.lang.NullPointerException: Cannot invoke "java.sql.Connection.prepareStatement(String)" because the return value of "gov.usgs.earthquake.indexer.JDBCProductIndex.getConnection()" is null
	at gov.usgs.earthquake.indexer.JDBCProductIndex.getEvents(JDBCProductIndex.java:232)
	at gov.usgs.earthquake.indexer.Indexer.purgeExpiredProducts(Indexer.java:1838)
	at gov.usgs.earthquake.indexer.Indexer$1.run(Indexer.java:1785)
	at java.base/java.util.TimerThread.mainLoop(Timer.java:566)
	at java.base/java.util.TimerThread.run(Timer.java:516)
INFO	thread=165	[null] purged 0 expired events and 0 expired unassociated products.
thread 1608 releasing write lock
thread 1608 released write lock
thread 1608 acquiring write lock
thread 1607 acquired read lock
thread 1607 releasing read lock
thread 1607 released read lock
thread 1607 acquiring read lock
thread 1609 acquired write lock
thread 1609 releasing write lock
thread 1609 released write lock
thread 1609 acquiring write lock
thread 1606 acquired read lock
thread 1606 releasing read lock
thread 1606 released read lock
thread 1606 acquiring read lock
thread 1608 acquired write lock
thread 1608 releasing write lock
thread 1608 released write lock
thread 1608 acquiring write lock
thread 1607 acquired read lock
thread 1607 releasing read lock
thread 1607 released read lock
thread 1607 acquiring read lock
thread 1609 acquired write lock
thread 1609 releasing write lock
thread 1609 released write lock
thread 1609 acquiring write lock
thread 1606 acquired read lock
thread 1606 releasing read lock
thread 1606 released read lock
thread 1606 acquiring read lock
thread 1608 acquired write lock
thread 1608 releasing write lock
thread 1608 released write lock
thread 1608 acquiring write lock
thread 1607 acquired read lock
thread 1607 releasing read lock
thread 1607 released read lock
thread 1607 acquiring read lock
thread 1609 acquired write lock
thread 1609 releasing write lock
thread 1609 released write lock
thread 1609 acquiring write lock
thread 1606 acquired read lock
WARNING	thread=165	[null] exception running event archive policy (testPolicy) 
java.lang.NullPointerException: Cannot invoke "java.sql.Connection.prepareStatement(String)" because the return value of "gov.usgs.earthquake.indexer.JDBCProductIndex.getConnection()" is null
	at gov.usgs.earthquake.indexer.JDBCProductIndex.getEvents(JDBCProductIndex.java:232)
	at gov.usgs.earthquake.indexer.Indexer.purgeExpiredProducts(Indexer.java:1838)
	at gov.usgs.earthquake.indexer.Indexer$1.run(Indexer.java:1785)
	at java.base/java.util.TimerThread.mainLoop(Timer.java:566)
	at java.base/java.util.TimerThread.run(Timer.java:516)
INFO	thread=165	[null] purged 0 expired events and 0 expired unassociated products.
thread 1606 releasing read lock
thread 1606 released read lock
thread 1606 acquiring read lock
thread 1608 acquired write lock
thread 1608 releasing write lock
thread 1608 released write lock
thread 1608 acquiring write lock
thread 1607 acquired read lock
thread 1607 releasing read lock
thread 1607 released read lock
thread 1607 acquiring read lock
thread 1609 acquired write lock
thread 1609 releasing write lock
thread 1609 released write lock
thread 1609 acquiring write lock
thread 1606 acquired read lock
thread 1606 releasing read lock
thread 1606 released read lock
thread 1606 acquiring read lock
thread 1608 acquired write lock
thread 1608 releasing write lock
thread 1608 released write lock
thread 1608 acquiring write lock
thread 1607 acquired read lock
thread 1607 releasing read lock
thread 1607 released read lock
thread 1607 acquiring read lock
thread 1609 acquired write lock
thread 1609 releasing write lock
thread 1609 released write lock
thread 1609 acquiring write lock
thread 1606 acquired read lock
thread 1606 releasing read lock
thread 1606 released read lock
thread 1606 acquiring read lock
thread 1608 acquired write lock
thread 1608 releasing write lock
thread 1608 released write lock
thread 1608 acquiring write lock
thread 1607 acquired read lock
Tue Jan 13 21:37:42 UTC 2026
WARNING	thread=165	[null] exception running event archive policy (testPolicy) 
java.lang.NullPointerException: Cannot invoke "java.sql.Connection.prepareStatement(String)" because the return value of "gov.usgs.earthquake.indexer.JDBCProductIndex.getConnection()" is null
	at gov.usgs.earthquake.indexer.JDBCProductIndex.getEvents(JDBCProductIndex.java:232)
	at gov.usgs.earthquake.indexer.Indexer.purgeExpiredProducts(Indexer.java:1838)
	at gov.usgs.earthquake.indexer.Indexer$1.run(Indexer.java:1785)
	at java.base/java.util.TimerThread.mainLoop(Timer.java:566)
	at java.base/java.util.TimerThread.run(Timer.java:516)
INFO	thread=165	[null] purged 0 expired events and 0 expired unassociated products.
thread 1607 releasing read lock
thread 1607 released read lock
thread 1607 acquiring read lock
thread 1609 acquired write lock
thread 1609 releasing write lock
thread 1609 released write lock
thread 1609 acquiring write lock
thread 1606 acquired read lock
thread 1606 releasing read lock
thread 1606 released read lock
thread 1606 acquiring read lock
thread 1608 acquired write lock
thread 1608 releasing write lock
thread 1608 released write lock
thread 1608 acquiring write lock
thread 1607 acquired read lock
thread 1607 releasing read lock
thread 1607 released read lock
thread 1607 acquiring read lock
thread 1609 acquired write lock
thread 1609 releasing write lock
thread 1609 released write lock
thread 1609 acquiring write lock
thread 1606 acquired read lock
thread 1606 releasing read lock
thread 1606 released read lock
thread 1606 acquiring read lock
thread 1608 acquired write lock
thread 1608 releasing write lock
thread 1608 released write lock
thread 1608 acquiring write lock
thread 1607 acquired read lock
thread 1607 releasing read lock
thread 1607 released read lock
thread 1607 acquiring read lock
thread 1609 acquired write lock
thread 1609 releasing write lock
thread 1609 released write lock
thread 1609 acquiring write lock
thread 1606 acquired read lock
thread 1606 releasing read lock
thread 1606 released read lock
thread 1606 acquiring read lock
thread 1608 acquired write lock
thread 1608 releasing write lock
thread 1608 released write lock
thread 1608 acquiring write lock
thread 1607 acquired read lock
WARNING	thread=165	[null] exception running event archive policy (testPolicy) 
java.lang.NullPointerException: Cannot invoke "java.sql.Connection.prepareStatement(String)" because the return value of "gov.usgs.earthquake.indexer.JDBCProductIndex.getConnection()" is null
	at gov.usgs.earthquake.indexer.JDBCProductIndex.getEvents(JDBCProductIndex.java:232)
	at gov.usgs.earthquake.indexer.Indexer.purgeExpiredProducts(Indexer.java:1838)
	at gov.usgs.earthquake.indexer.Indexer$1.run(Indexer.java:1785)
	at java.base/java.util.TimerThread.mainLoop(Timer.java:566)
	at java.base/java.util.TimerThread.run(Timer.java:516)
INFO	thread=165	[null] purged 0 expired events and 0 expired unassociated products.
thread 1607 releasing read lock
thread 1607 released read lock
thread 1607 acquiring read lock
thread 1609 acquired write lock
thread 1609 releasing write lock
thread 1609 released write lock
thread 1609 acquiring write lock
thread 1606 acquired read lock
thread 1606 releasing read lock
thread 1606 released read lock
thread 1606 acquiring read lock
thread 1608 acquired write lock
thread 1608 releasing write lock
thread 1608 released write lock
thread 1608 acquiring write lock
thread 1607 acquired read lock
thread 1607 releasing read lock
thread 1607 released read lock
thread 1607 acquiring read lock
thread 1609 acquired write lock
thread 1609 releasing write lock
thread 1609 released write lock
thread 1609 acquiring write lock
thread 1606 acquired read lock
thread 1606 releasing read lock
thread 1606 released read lock
thread 1606 acquiring read lock
thread 1608 acquired write lock
thread 1608 releasing write lock
thread 1608 released write lock
thread 1608 acquiring write lock
thread 1607 acquired read lock
thread 1607 releasing read lock
thread 1607 released read lock
thread 1607 acquiring read lock
thread 1609 acquired write lock
thread 1609 releasing write lock
thread 1609 released write lock
thread 1609 acquiring write lock
thread 1606 acquired read lock
thread 1606 releasing read lock
thread 1606 released read lock
thread 1606 acquiring read lock
thread 1608 acquired write lock
thread 1608 releasing write lock
thread 1608 released write lock
thread 1608 acquiring write lock
thread 1607 acquired read lock
thread 1607 releasing read lock
thread 1607 released read lock
thread 1607 acquiring read lock
thread 1609 acquired write lock
thread 1609 releasing write lock
thread 1609 released write lock
thread 1609 acquiring write lock
thread 1606 acquired read lock
thread 1606 releasing read lock
thread 1606 released read lock
thread 1606 acquiring read lock
thread 1608 acquired write lock
Tue Jan 13 21:37:43 UTC 2026
WARNING	thread=165	[null] exception running event archive policy (testPolicy) 
java.lang.NullPointerException: Cannot invoke "java.sql.Connection.prepareStatement(String)" because the return value of "gov.usgs.earthquake.indexer.JDBCProductIndex.getConnection()" is null
	at gov.usgs.earthquake.indexer.JDBCProductIndex.getEvents(JDBCProductIndex.java:232)
	at gov.usgs.earthquake.indexer.Indexer.purgeExpiredProducts(Indexer.java:1838)
	at gov.usgs.earthquake.indexer.Indexer$1.run(Indexer.java:1785)
	at java.base/java.util.TimerThread.mainLoop(Timer.java:566)
	at java.base/java.util.TimerThread.run(Timer.java:516)
INFO	thread=165	[null] purged 0 expired events and 0 expired unassociated products.
thread 1608 releasing write lock
thread 1608 released write lock
thread 1608 acquiring write lock
thread 1607 acquired read lock
thread 1607 releasing read lock
thread 1607 released read lock
thread 1607 acquiring read lock
thread 1609 acquired write lock
thread 1609 releasing write lock
thread 1609 released write lock
thread 1609 acquiring write lock
thread 1606 acquired read lock
thread 1606 releasing read lock
thread 1606 released read lock
thread 1606 acquiring read lock
thread 1608 acquired write lock
thread 1608 releasing write lock
thread 1608 released write lock
thread 1608 acquiring write lock
thread 1607 acquired read lock
thread 1607 releasing read lock
thread 1607 released read lock
thread 1607 acquiring read lock
thread 1609 acquired write lock
thread 1609 releasing write lock
thread 1609 released write lock
thread 1609 acquiring write lock
thread 1606 acquired read lock
thread 1606 releasing read lock
thread 1606 released read lock
thread 1606 acquiring read lock
thread 1608 acquired write lock
thread 1608 releasing write lock
thread 1608 released write lock
thread 1608 acquiring write lock
thread 1607 acquired read lock
WARNING	thread=165	[null] exception running event archive policy (testPolicy) 
java.lang.NullPointerException: Cannot invoke "java.sql.Connection.prepareStatement(String)" because the return value of "gov.usgs.earthquake.indexer.JDBCProductIndex.getConnection()" is null
	at gov.usgs.earthquake.indexer.JDBCProductIndex.getEvents(JDBCProductIndex.java:232)
	at gov.usgs.earthquake.indexer.Indexer.purgeExpiredProducts(Indexer.java:1838)
	at gov.usgs.earthquake.indexer.Indexer$1.run(Indexer.java:1785)
	at java.base/java.util.TimerThread.mainLoop(Timer.java:566)
	at java.base/java.util.TimerThread.run(Timer.java:516)
INFO	thread=165	[null] purged 0 expired events and 0 expired unassociated products.
thread 1607 releasing read lock
thread 1607 released read lock
thread 1607 acquiring read lock
thread 1609 acquired write lock
thread 1609 releasing write lock
thread 1609 released write lock
thread 1609 acquiring write lock
thread 1606 acquired read lock
thread 1606 releasing read lock
thread 1606 released read lock
thread 1606 acquiring read lock
thread 1608 acquired write lock
thread 1608 releasing write lock
thread 1608 released write lock
thread 1608 acquiring write lock
thread 1607 acquired read lock
thread 1607 releasing read lock
thread 1607 released read lock
thread 1607 acquiring read lock
thread 1609 acquired write lock
thread 1609 releasing write lock
thread 1609 released write lock
thread 1609 acquiring write lock
thread 1606 acquired read lock
thread 1606 releasing read lock
thread 1606 released read lock
thread 1606 acquiring read lock
thread 1608 acquired write lock
thread 1608 releasing write lock
thread 1608 released write lock
thread 1608 acquiring write lock
thread 1607 acquired read lock
Tue Jan 13 21:37:44 UTC 2026
WARNING	thread=165	[null] exception running event archive policy (testPolicy) 
java.lang.NullPointerException: Cannot invoke "java.sql.Connection.prepareStatement(String)" because the return value of "gov.usgs.earthquake.indexer.JDBCProductIndex.getConnection()" is null
	at gov.usgs.earthquake.indexer.JDBCProductIndex.getEvents(JDBCProductIndex.java:232)
	at gov.usgs.earthquake.indexer.Indexer.purgeExpiredProducts(Indexer.java:1838)
	at gov.usgs.earthquake.indexer.Indexer$1.run(Indexer.java:1785)
	at java.base/java.util.TimerThread.mainLoop(Timer.java:566)
	at java.base/java.util.TimerThread.run(Timer.java:516)
INFO	thread=165	[null] purged 0 expired events and 0 expired unassociated products.
thread 1607 releasing read lock
thread 1607 released read lock
thread 1607 acquiring read lock
thread 1609 acquired write lock
thread 1609 releasing write lock
thread 1609 released write lock
thread 1609 acquiring write lock
thread 1606 acquired read lock
thread 1606 releasing read lock
thread 1606 released read lock
thread 1606 acquiring read lock
thread 1608 acquired write lock
thread 1608 releasing write lock
thread 1608 released write lock
thread 1608 acquiring write lock
thread 1607 acquired read lock
thread 1607 releasing read lock
thread 1607 released read lock
thread 1607 acquiring read lock
thread 1609 acquired write lock
thread 1609 releasing write lock
thread 1609 released write lock
thread 1609 acquiring write lock
thread 1606 acquired read lock
thread 1606 releasing read lock
thread 1606 released read lock
thread 1606 acquiring read lock
thread 1608 acquired write lock
thread 1608 releasing write lock
thread 1608 released write lock
thread 1608 acquiring write lock
thread 1607 acquired read lock
WARNING	thread=165	[null] exception running event archive policy (testPolicy) 
java.lang.NullPointerException: Cannot invoke "java.sql.Connection.prepareStatement(String)" because the return value of "gov.usgs.earthquake.indexer.JDBCProductIndex.getConnection()" is null
	at gov.usgs.earthquake.indexer.JDBCProductIndex.getEvents(JDBCProductIndex.java:232)
	at gov.usgs.earthquake.indexer.Indexer.purgeExpiredProducts(Indexer.java:1838)
	at gov.usgs.earthquake.indexer.Indexer$1.run(Indexer.java:1785)
	at java.base/java.util.TimerThread.mainLoop(Timer.java:566)
	at java.base/java.util.TimerThread.run(Timer.java:516)
INFO	thread=165	[null] purged 0 expired events and 0 expired unassociated products.
thread 1607 releasing read lock
thread 1607 released read lock
thread 1607 acquiring read lock
thread 1609 acquired write lock
thread 1609 releasing write lock
thread 1609 released write lock
thread 1609 acquiring write lock
thread 1606 acquired read lock
thread 1606 releasing read lock
thread 1606 released read lock
thread 1606 acquiring read lock
thread 1608 acquired write lock
thread 1608 releasing write lock
thread 1608 released write lock
thread 1608 acquiring write lock
thread 1607 acquired read lock
thread 1607 releasing read lock
thread 1607 released read lock
thread 1607 acquiring read lock
thread 1609 acquired write lock
thread 1609 releasing write lock
thread 1609 released write lock
thread 1609 acquiring write lock
thread 1606 acquired read lock
thread 1606 releasing read lock
thread 1606 released read lock
thread 1606 acquiring read lock
thread 1608 acquired write lock
thread 1608 releasing write lock
thread 1608 released write lock
thread 1608 acquiring write lock
thread 1607 acquired read lock
thread 1607 releasing read lock
thread 1607 released read lock
thread 1607 acquiring read lock
thread 1609 acquired write lock
thread 1609 releasing write lock
thread 1609 released write lock
thread 1609 acquiring write lock
thread 1606 acquired read lock
thread 1606 releasing read lock
thread 1606 released read lock
thread 1606 acquiring read lock
thread 1608 acquired write lock
thread 1608 releasing write lock
thread 1608 released write lock
thread 1608 acquiring write lock
thread 1607 acquired read lock
Tue Jan 13 21:37:45 UTC 2026
WARNING	thread=165	[null] exception running event archive policy (testPolicy) 
java.lang.NullPointerException: Cannot invoke "java.sql.Connection.prepareStatement(String)" because the return value of "gov.usgs.earthquake.indexer.JDBCProductIndex.getConnection()" is null
	at gov.usgs.earthquake.indexer.JDBCProductIndex.getEvents(JDBCProductIndex.java:232)
	at gov.usgs.earthquake.indexer.Indexer.purgeExpiredProducts(Indexer.java:1838)
	at gov.usgs.earthquake.indexer.Indexer$1.run(Indexer.java:1785)
	at java.base/java.util.TimerThread.mainLoop(Timer.java:566)
	at java.base/java.util.TimerThread.run(Timer.java:516)
INFO	thread=165	[null] purged 0 expired events and 0 expired unassociated products.
thread 1607 releasing read lock
thread 1607 released read lock
thread 1607 acquiring read lock
thread 1609 acquired write lock
thread 1609 releasing write lock
thread 1609 released write lock
thread 1609 acquiring write lock
thread 1606 acquired read lock
thread 1606 releasing read lock
thread 1606 released read lock
thread 1606 acquiring read lock
thread 1608 acquired write lock
thread 1608 releasing write lock
thread 1608 released write lock
thread 1608 acquiring write lock
thread 1607 acquired read lock
thread 1607 releasing read lock
thread 1607 released read lock
thread 1607 acquiring read lock
thread 1609 acquired write lock
thread 1609 releasing write lock
thread 1609 released write lock
thread 1609 acquiring write lock
thread 1606 acquired read lock
thread 1606 releasing read lock
thread 1606 released read lock
thread 1606 acquiring read lock
thread 1608 acquired write lock
thread 1608 releasing write lock
thread 1608 released write lock
thread 1608 acquiring write lock
thread 1607 acquired read lock
WARNING	thread=165	[null] exception running event archive policy (testPolicy) 
java.lang.NullPointerException: Cannot invoke "java.sql.Connection.prepareStatement(String)" because the return value of "gov.usgs.earthquake.indexer.JDBCProductIndex.getConnection()" is null
	at gov.usgs.earthquake.indexer.JDBCProductIndex.getEvents(JDBCProductIndex.java:232)
	at gov.usgs.earthquake.indexer.Indexer.purgeExpiredProducts(Indexer.java:1838)
	at gov.usgs.earthquake.indexer.Indexer$1.run(Indexer.java:1785)
	at java.base/java.util.TimerThread.mainLoop(Timer.java:566)
	at java.base/java.util.TimerThread.run(Timer.java:516)
Tue Jan 13 21:37:46 UTC 2026
INFO	thread=165	[null] purged 0 expired events and 0 expired unassociated products.
thread 1607 releasing read lock
thread 1607 released read lock
thread 1607 acquiring read lock
thread 1609 acquired write lock
thread 1609 releasing write lock
thread 1609 released write lock
thread 1609 acquiring write lock
thread 1606 acquired read lock
thread 1606 releasing read lock
thread 1606 released read lock
thread 1606 acquiring read lock
thread 1608 acquired write lock
thread 1608 releasing write lock
thread 1608 released write lock
thread 1608 acquiring write lock
thread 1607 acquired read lock
thread 1607 releasing read lock
thread 1607 released read lock
thread 1607 acquiring read lock
thread 1609 acquired write lock
thread 1609 releasing write lock
thread 1609 released write lock
thread 1609 acquiring write lock
thread 1606 acquired read lock
thread 1606 releasing read lock
thread 1606 released read lock
thread 1606 acquiring read lock
thread 1608 acquired write lock
thread 1608 releasing write lock
thread 1608 released write lock
thread 1608 acquiring write lock
thread 1607 acquired read lock
thread 1607 releasing read lock
thread 1607 released read lock
thread 1607 acquiring read lock
thread 1609 acquired write lock
WARNING	thread=165	[null] exception running event archive policy (testPolicy) 
java.lang.NullPointerException: Cannot invoke "java.sql.Connection.prepareStatement(String)" because the return value of "gov.usgs.earthquake.indexer.JDBCProductIndex.getConnection()" is null
	at gov.usgs.earthquake.indexer.JDBCProductIndex.getEvents(JDBCProductIndex.java:232)
	at gov.usgs.earthquake.indexer.Indexer.purgeExpiredProducts(Indexer.java:1838)
	at gov.usgs.earthquake.indexer.Indexer$1.run(Indexer.java:1785)
	at java.base/java.util.TimerThread.mainLoop(Timer.java:566)
	at java.base/java.util.TimerThread.run(Timer.java:516)
INFO	thread=165	[null] purged 0 expired events and 0 expired unassociated products.
thread 1609 releasing write lock
thread 1609 released write lock
thread 1609 acquiring write lock
thread 1606 acquired read lock
thread 1606 releasing read lock
thread 1606 released read lock
thread 1606 acquiring read lock
thread 1608 acquired write lock
thread 1608 releasing write lock
thread 1608 released write lock
thread 1608 acquiring write lock
thread 1607 acquired read lock
thread 1607 releasing read lock
thread 1607 released read lock
thread 1607 acquiring read lock
thread 1609 acquired write lock
thread 1609 releasing write lock
thread 1609 released write lock
thread 1609 acquiring write lock
thread 1606 acquired read lock
thread 1606 releasing read lock
thread 1606 released read lock
thread 1606 acquiring read lock
thread 1608 acquired write lock
thread 1608 releasing write lock
thread 1608 released write lock
thread 1608 acquiring write lock
thread 1607 acquired read lock
thread 1607 releasing read lock
thread 1607 released read lock
thread 1607 acquiring read lock
thread 1609 acquired write lock
thread 1609 releasing write lock
thread 1609 released write lock
thread 1609 acquiring write lock
thread 1606 acquired read lock
thread 1606 releasing read lock
thread 1606 released read lock
thread 1608 acquired write lock
Tue Jan 13 21:37:47 UTC 2026
WARNING	thread=165	[null] exception running event archive policy (testPolicy) 
java.lang.NullPointerException: Cannot invoke "java.sql.Connection.prepareStatement(String)" because the return value of "gov.usgs.earthquake.indexer.JDBCProductIndex.getConnection()" is null
	at gov.usgs.earthquake.indexer.JDBCProductIndex.getEvents(JDBCProductIndex.java:232)
	at gov.usgs.earthquake.indexer.Indexer.purgeExpiredProducts(Indexer.java:1838)
	at gov.usgs.earthquake.indexer.Indexer$1.run(Indexer.java:1785)
	at java.base/java.util.TimerThread.mainLoop(Timer.java:566)
	at java.base/java.util.TimerThread.run(Timer.java:516)
INFO	thread=165	[null] purged 0 expired events and 0 expired unassociated products.
thread 1608 releasing write lock
thread 1608 released write lock
thread 1607 acquired read lock
thread 1607 releasing read lock
thread 1607 released read lock
thread 1609 acquired write lock
thread 1609 releasing write lock
thread 1609 released write lock