AwsProductSenderTest

24

tests

0

failures

0

ignored

4.905s

duration

100%

successful

Tests

Test Duration Result
test503SlowDownExceptionGetsRetried 1.161s passed
testCheckProductJsonSize 0.022s passed
testCheckProductJsonSizeThrowsException 0.018s passed
testHttpExceptionGetsRetriedException 0.008s passed
testHttpExceptionInGetUploadUrlsThrowsException 1.666s passed
testHttpExceptionInSendProductThrowsException 1.701s passed
testIOExceptionThrownFromHttpClient 0.006s passed
testInvalidGetUploadUrlsPathConfiguration 0.007s passed
testInvalidSendProductPathConfiguration 0.004s passed
testInvalidUrlConfiguration 0.012s passed
testPayloadConfiguration 0.018s passed
testPayloadConfigurationException 0.004s passed
testProductAlreadyExistsDoesNotThrow 0.008s passed
testSendProductUrlConfigured 0.019s passed
testSendProductUrlConfiguredWithExtraPaths 0.008s passed
testSendProductUrlConfiguredWithExtraSlash 0.009s passed
testSendProductUrlConfiguredWithUrnReplacement 0.009s passed
testSendProductUrlWithDefaultPath 0.005s passed
testSendUploadUrlsConfigured 0.014s passed
testSendUploadUrlsConfiguredWithUrnReplacement 0.019s passed
testSendUploadUrlsWithDefaultPath 0.014s passed
testSignatureHistoryDoesNotIncludeOriginalSignature 0.130s passed
testSignatureHistoryDoesNotIncludeOriginalSignatureVersion 0.017s passed
testSignatureHistoryOnSign 0.026s passed

Standard error

FINE	thread=1	Using digest version v2, algorithm=SHA-256
FINE	thread=1	Digest='JIQVHbN3dpFgawRTx6DvFeUE66MJlFdspZRpbzKRDBk=' , 3ms
FINEST	thread=1	Signature is already in history.
FINE	thread=1	[Test worker] [30s 222ms] HttpClientImpl(28) proxySelector is sun.net.spi.DefaultProxySelector@6eb58fdd (user-supplied=false)
CONFIG	thread=1	[null] url=https://test
CONFIG	thread=1	[null] sign products=false
CONFIG	thread=1	[null] contentFormat = MAP
CONFIG	thread=1	[null] sendProductPath=/pdl/east/products/{urn}
CONFIG	thread=1	[null] uploadUrlsPath=/pdl/east/products/{urn}/uploads
FINE	thread=1	[Test worker] [30s 228ms] HttpClientImpl(29) proxySelector is sun.net.spi.DefaultProxySelector@6eb58fdd (user-supplied=false)
FINE	thread=421	[HttpClient-28-SelectorManager] [30s 229ms] HttpClientImpl(28) next timeout: 0
FINE	thread=421	[HttpClient-28-SelectorManager] [30s 229ms] HttpClientImpl(28) next expired: 0
FINE	thread=421	[HttpClient-28-SelectorManager] [30s 229ms] HttpClientImpl(28) Next deadline is 3000
FINE	thread=1	Using digest version v2, algorithm=SHA-256
FINE	thread=1	Digest='dzsMpjBikcnCIScx6wQwr582pDyC4SkyZULszqvZWfg=' , 3ms
FINE	thread=422	[HttpClient-29-SelectorManager] [30s 239ms] HttpClientImpl(29) next timeout: 0
FINE	thread=422	[HttpClient-29-SelectorManager] [30s 240ms] HttpClientImpl(29) next expired: 0
FINE	thread=422	[HttpClient-29-SelectorManager] [30s 240ms] HttpClientImpl(29) Next deadline is 3000
FINEST	thread=1	Signature is already in history.
FINE	thread=1	[Test worker] [30s 241ms] HttpClientImpl(30) proxySelector is sun.net.spi.DefaultProxySelector@6eb58fdd (user-supplied=false)
CONFIG	thread=1	[null] url=https://test.com
CONFIG	thread=1	[null] sign products=false
CONFIG	thread=1	[null] contentFormat = MAP
CONFIG	thread=1	[null] sendProductPath=/pdl/east/products/{urn}
CONFIG	thread=1	[null] uploadUrlsPath=/new/path/to/hit
FINE	thread=1	[Test worker] [30s 243ms] HttpClientImpl(31) proxySelector is sun.net.spi.DefaultProxySelector@6eb58fdd (user-supplied=false)
FINE	thread=423	[HttpClient-30-SelectorManager] [30s 244ms] HttpClientImpl(30) next timeout: 0
FINE	thread=423	[HttpClient-30-SelectorManager] [30s 244ms] HttpClientImpl(30) next expired: 0
FINE	thread=423	[HttpClient-30-SelectorManager] [30s 244ms] HttpClientImpl(30) Next deadline is 3000
FINE	thread=424	[HttpClient-31-SelectorManager] [30s 247ms] HttpClientImpl(31) next timeout: 0
FINE	thread=424	[HttpClient-31-SelectorManager] [30s 248ms] HttpClientImpl(31) next expired: 0
FINE	thread=424	[HttpClient-31-SelectorManager] [30s 248ms] HttpClientImpl(31) Next deadline is 3000
FINE	thread=164	[null] running event archive policy (testPolicy)
WARNING	thread=164	[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=164	[null] purged 0 expired events and 0 expired unassociated products.
FINE	thread=1	Using digest version v2, algorithm=SHA-256
FINE	thread=1	Digest='WIiL/k08ItrzesMNqNDk76P/753w6T9d5rTFca+ylHY=' , 4ms
FINEST	thread=1	Signature is already in history.
FINE	thread=1	[Test worker] [30s 258ms] HttpClientImpl(32) proxySelector is sun.net.spi.DefaultProxySelector@6eb58fdd (user-supplied=false)
FINE	thread=425	[HttpClient-32-SelectorManager] [30s 265ms] HttpClientImpl(32) next timeout: 0
FINE	thread=425	[HttpClient-32-SelectorManager] [30s 268ms] HttpClientImpl(32) next expired: 0
FINE	thread=425	[HttpClient-32-SelectorManager] [30s 268ms] HttpClientImpl(32) Next deadline is 3000
FINEST	thread=1	Signature is already in history.
FINE	thread=1	Using digest version v2, algorithm=SHA-256
FINE	thread=1	Digest='JInOyrdvpVRuB4Hfaae1vxmo4+Uw81m3awaTfHgljQc=' , 1ms
FINE	thread=1	[null] Resigned product from original-signature null to new signature MC0CFQCM9hQOjGm1MCOcVPtughyFtf8FGwIUWpBQGCd8Yru0rCPS5VAr9RfXfcg=
FINEST	thread=1	Signature is already in history.
FINE	thread=1	Getting upload urls for {"contents":{"":{"length":33,"modified":"2025-09-25T16:32:34.000Z","path":"","sha256":"0y4HP6Ia60hnSCVWzz5FruqIJePtdy1rw8NzV2EQSy0=","type":"text/html","url":"data:text/html;base64,SSBhbSA8ZW0+aW5saW5lPC9lbT4gaHRtbCBjb250ZW50"},"test.txt":{"length":90,"modified":"2025-09-25T16:32:34.000Z","path":"test.txt","sha256":"f66uqrN9uuqSR0QxztWM0ZxCNzY+WozRW0BEGb4vmUk=","type":"text/plain","url":null},"jar/EIDSInstaller.jar":{"length":35415,"modified":"2025-09-24T14:47:09.000Z","path":"jar/EIDSInstaller.jar","sha256":"3aZqtykthIrmZEyU8L90+kZKsOT/qY8objYL5KzodKM=","type":"application/octet-stream","url":null}},"geometry":null,"id":{"code":"abcd1234","source":"us","type":"shakemap","updateTime":"2025-09-25T16:32:34.455Z"},"links":[{"relation":"testrelation","uri":"http://google.com/"}],"properties":{"testprop":"testvalue","original-signature-version":"v1"},"signature":"MC0CFQCM9hQOjGm1MCOcVPtughyFtf8FGwIUWpBQGCd8Yru0rCPS5VAr9RfXfcg=","signatureVersion":"v2","signatureHistory":[{"signature":"MC0CFQCM9hQOjGm1MCOcVPtughyFtf8FGwIUWpBQGCd8Yru0rCPS5VAr9RfXfcg=","signatureVersion":"v2"},{"signature":"MCwCFGNzR6cqYcCnNygHzGvWGoV6H4UcAhRAp+630MBO4ypgZRl02gZeqKITpQ==","signatureVersion":"v2"}],"status":"UPDATE","type":"Feature"}
FINE	thread=1	[null] get upload urls urn:usgs-product:us:shakemap:abcd1234:1758817954455 (2 ms) 
FINE	thread=1	[null] upload contents urn:usgs-product:us:shakemap:abcd1234:1758817954455 (0 ms) 
FINE	thread=1	[null] send product urn:usgs-product:us:shakemap:abcd1234:1758817954455 (0 ms) 
INFO	thread=1	[null] send product total urn:usgs-product:us:shakemap:abcd1234:1758817954455 (3 ms) 
FINE	thread=1	Using digest version v2, algorithm=SHA-256
FINE	thread=1	Digest='JPz2mrmIjkVaN9YuD7tTbdsQKNpKLwcbE+xH1fqscxw=' , 3ms
FINEST	thread=1	Signature is already in history.
FINE	thread=1	[Test worker] [30s 387ms] HttpClientImpl(33) proxySelector is sun.net.spi.DefaultProxySelector@6eb58fdd (user-supplied=false)
CONFIG	thread=1	[null] url=https://test.com
CONFIG	thread=1	[null] sign products=false
CONFIG	thread=1	[null] contentFormat = MAP
CONFIG	thread=1	[null] sendProductPath=/pdl/east/products/{urn}
CONFIG	thread=1	[null] uploadUrlsPath=/new/path/to/hit/with/replacement/{urn}
FINE	thread=1	[Test worker] [30s 393ms] HttpClientImpl(34) proxySelector is sun.net.spi.DefaultProxySelector@6eb58fdd (user-supplied=false)
FINE	thread=426	[HttpClient-33-SelectorManager] [30s 394ms] HttpClientImpl(33) next timeout: 0
FINE	thread=426	[HttpClient-33-SelectorManager] [30s 394ms] HttpClientImpl(33) next expired: 0
FINE	thread=426	[HttpClient-33-SelectorManager] [30s 394ms] HttpClientImpl(33) Next deadline is 3000
FINE	thread=427	[HttpClient-34-SelectorManager] [30s 400ms] HttpClientImpl(34) next timeout: 0
FINE	thread=427	[HttpClient-34-SelectorManager] [30s 401ms] HttpClientImpl(34) next expired: 0
FINE	thread=1	Using digest version v2, algorithm=SHA-256
FINE	thread=427	[HttpClient-34-SelectorManager] [30s 401ms] HttpClientImpl(34) Next deadline is 3000
FINE	thread=1	Digest='ysDsU3mnfIpU6RsUD/kIa6PpvX03aGU3DAoHR+/uFO8=' , 3ms
FINEST	thread=1	Signature is already in history.
FINE	thread=1	[Test worker] [30s 407ms] HttpClientImpl(35) proxySelector is sun.net.spi.DefaultProxySelector@6eb58fdd (user-supplied=false)
FINE	thread=1	Using digest version v2, algorithm=SHA-256
FINE	thread=1	Digest='WV44smrrcg1V4jQiaTSKrFP0ZufrEu84Y+0IOjpvO4M=' , 6ms
FINEST	thread=1	Signature is already in history.
FINE	thread=1	[Test worker] [30s 422ms] HttpClientImpl(36) proxySelector is sun.net.spi.DefaultProxySelector@6eb58fdd (user-supplied=false)
FINE	thread=428	[HttpClient-35-SelectorManager] [30s 422ms] HttpClientImpl(35) next timeout: 0
FINE	thread=428	[HttpClient-35-SelectorManager] [30s 422ms] HttpClientImpl(35) next expired: 0
FINE	thread=428	[HttpClient-35-SelectorManager] [30s 422ms] HttpClientImpl(35) Next deadline is 3000
CONFIG	thread=1	[null] url=https://test
CONFIG	thread=1	[null] sign products=false
CONFIG	thread=1	[null] contentFormat = MAP
CONFIG	thread=1	[null] sendProductPath=/pdl/east/products/{urn}
CONFIG	thread=1	[null] uploadUrlsPath=/pdl/east/products/{urn}/uploads
FINE	thread=1	[Test worker] [30s 428ms] HttpClientImpl(37) proxySelector is sun.net.spi.DefaultProxySelector@6eb58fdd (user-supplied=false)
FINE	thread=429	[HttpClient-36-SelectorManager] [30s 429ms] HttpClientImpl(36) next timeout: 0
FINE	thread=429	[HttpClient-36-SelectorManager] [30s 429ms] HttpClientImpl(36) next expired: 0
FINE	thread=429	[HttpClient-36-SelectorManager] [30s 429ms] HttpClientImpl(36) Next deadline is 3000
FINE	thread=1	Using digest version v2, algorithm=SHA-256
FINE	thread=1	Digest='g+S2hvupdeJe+LzlNmX+07Fzt1VPs7EyWncZIitJUAI=' , 2ms
FINEST	thread=1	Signature is already in history.
FINE	thread=1	[Test worker] [30s 443ms] HttpClientImpl(38) proxySelector is sun.net.spi.DefaultProxySelector@6eb58fdd (user-supplied=false)
FINE	thread=430	[HttpClient-37-SelectorManager] [30s 444ms] HttpClientImpl(37) next timeout: 0
FINE	thread=430	[HttpClient-37-SelectorManager] [30s 444ms] HttpClientImpl(37) next expired: 0
FINE	thread=430	[HttpClient-37-SelectorManager] [30s 444ms] HttpClientImpl(37) Next deadline is 3000
FINE	thread=1	Getting upload urls for {"contents":{"":{"length":33,"modified":"2025-09-25T16:32:34.000Z","path":"","sha256":"0y4HP6Ia60hnSCVWzz5FruqIJePtdy1rw8NzV2EQSy0=","type":"text/html","url":"data:text/html;base64,SSBhbSA8ZW0+aW5saW5lPC9lbT4gaHRtbCBjb250ZW50"},"test.txt":{"length":90,"modified":"2025-09-25T16:32:34.000Z","path":"test.txt","sha256":"f66uqrN9uuqSR0QxztWM0ZxCNzY+WozRW0BEGb4vmUk=","type":"text/plain","url":null},"jar/EIDSInstaller.jar":{"length":35415,"modified":"2025-09-24T14:47:09.000Z","path":"jar/EIDSInstaller.jar","sha256":"3aZqtykthIrmZEyU8L90+kZKsOT/qY8objYL5KzodKM=","type":"application/octet-stream","url":null}},"geometry":null,"id":{"code":"abcd1234","source":"us","type":"shakemap","updateTime":"2025-09-25T16:32:34.637Z"},"links":[{"relation":"testrelation","uri":"http://google.com/"}],"properties":{"testprop":"testvalue","original-signature-version":"v1","original-signature":"test1234"},"signature":"MCwCFCuZ4EbRrYeLVn3xqV4uL9q9TMaNAhQ4DoiRgTDB9GSq9z97rhprXpg5kw==","signatureVersion":"v2","signatureHistory":[{"signature":"MCwCFCuZ4EbRrYeLVn3xqV4uL9q9TMaNAhQ4DoiRgTDB9GSq9z97rhprXpg5kw==","signatureVersion":"v2"}],"status":"UPDATE","type":"Feature"}
FINE	thread=431	[HttpClient-38-SelectorManager] [30s 452ms] HttpClientImpl(38) next timeout: 0
FINE	thread=431	[HttpClient-38-SelectorManager] [30s 452ms] HttpClientImpl(38) next expired: 0
FINE	thread=431	[HttpClient-38-SelectorManager] [30s 452ms] HttpClientImpl(38) Next deadline is 3000
FINE	thread=1	[null] get upload urls urn:usgs-product:us:shakemap:abcd1234:1758817954637 (2 ms) 
FINE	thread=1	[null] upload contents urn:usgs-product:us:shakemap:abcd1234:1758817954637 (0 ms) 
FINE	thread=1	[null] send product exception, trying again
gov.usgs.earthquake.aws.HttpException: Error [500] sending product
	at gov.usgs.earthquake.aws.AwsProductSender.sendProduct(AwsProductSender.java:461)
	at gov.usgs.earthquake.aws.AwsProductSender.sendProduct(AwsProductSender.java:447)
	at gov.usgs.earthquake.aws.AwsProductSender.sendProduct(AwsProductSender.java:352)
	at gov.usgs.earthquake.aws.AwsProductSender.sendProduct(AwsProductSender.java:260)
	at gov.usgs.earthquake.aws.AwsProductSenderTest.lambda$testHttpExceptionInSendProductThrowsException$13(AwsProductSenderTest.java:583)
	at org.junit.Assert.assertThrows(Assert.java:1001)
	at org.junit.Assert.assertThrows(Assert.java:981)
	at gov.usgs.earthquake.aws.AwsProductSenderTest.testHttpExceptionInSendProductThrowsException(AwsProductSenderTest.java:582)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.base/java.lang.reflect.Method.invoke(Method.java:569)
	at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:59)
	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
	at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:56)
	at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
	at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
	at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
	at org.junit.runners.BlockJUnit4ClassRunner$1.evaluate(BlockJUnit4ClassRunner.java:100)
	at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:366)
	at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:103)
	at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:63)
	at org.junit.runners.ParentRunner$4.run(ParentRunner.java:331)
	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:79)
	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:329)
	at org.junit.runners.ParentRunner.access$100(ParentRunner.java:66)
	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:293)
	at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
	at org.junit.runners.ParentRunner.run(ParentRunner.java:413)
	at org.junit.runner.JUnitCore.run(JUnitCore.java:137)
	at org.junit.runner.JUnitCore.run(JUnitCore.java:115)
	at org.junit.vintage.engine.execution.RunnerExecutor.execute(RunnerExecutor.java:42)
	at org.junit.vintage.engine.VintageTestEngine.executeAllChildren(VintageTestEngine.java:80)
	at org.junit.vintage.engine.VintageTestEngine.execute(VintageTestEngine.java:72)
	at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:107)
	at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:88)
	at org.junit.platform.launcher.core.EngineExecutionOrchestrator.lambda$execute$0(EngineExecutionOrchestrator.java:54)
	at org.junit.platform.launcher.core.EngineExecutionOrchestrator.withInterceptedStreams(EngineExecutionOrchestrator.java:67)
	at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:52)
	at org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:114)
	at org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:86)
	at org.junit.platform.launcher.core.DefaultLauncherSession$DelegatingLauncher.execute(DefaultLauncherSession.java:86)
	at org.gradle.api.internal.tasks.testing.junitplatform.JUnitPlatformTestClassProcessor$CollectAllTestClassesExecutor.processAllTestClasses(JUnitPlatformTestClassProcessor.java:119)
	at org.gradle.api.internal.tasks.testing.junitplatform.JUnitPlatformTestClassProcessor$CollectAllTestClassesExecutor.access$000(JUnitPlatformTestClassProcessor.java:94)
	at org.gradle.api.internal.tasks.testing.junitplatform.JUnitPlatformTestClassProcessor.stop(JUnitPlatformTestClassProcessor.java:89)
	at org.gradle.api.internal.tasks.testing.SuiteTestClassProcessor.stop(SuiteTestClassProcessor.java:62)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.base/java.lang.reflect.Method.invoke(Method.java:569)
	at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:36)
	at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24)
	at org.gradle.internal.dispatch.ContextClassLoaderDispatch.dispatch(ContextClassLoaderDispatch.java:33)
	at org.gradle.internal.dispatch.ProxyDispatchAdapter$DispatchingInvocationHandler.invoke(ProxyDispatchAdapter.java:94)
	at jdk.proxy2/jdk.proxy2.$Proxy5.stop(Unknown Source)
	at org.gradle.api.internal.tasks.testing.worker.TestWorker$3.run(TestWorker.java:193)
	at org.gradle.api.internal.tasks.testing.worker.TestWorker.executeAndMaintainThreadName(TestWorker.java:129)
	at org.gradle.api.internal.tasks.testing.worker.TestWorker.execute(TestWorker.java:100)
	at org.gradle.api.internal.tasks.testing.worker.TestWorker.execute(TestWorker.java:60)
	at org.gradle.process.internal.worker.child.ActionExecutionWorker.execute(ActionExecutionWorker.java:56)
	at org.gradle.process.internal.worker.child.SystemApplicationClassLoaderWorker.call(SystemApplicationClassLoaderWorker.java:113)
	at org.gradle.process.internal.worker.child.SystemApplicationClassLoaderWorker.call(SystemApplicationClassLoaderWorker.java:65)
	at worker.org.gradle.process.internal.worker.GradleWorkerMain.run(GradleWorkerMain.java:69)
	at worker.org.gradle.process.internal.worker.GradleWorkerMain.main(GradleWorkerMain.java:74)
FINE	thread=164	[null] running event archive policy (testPolicy)
WARNING	thread=164	[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=164	[null] purged 0 expired events and 0 expired unassociated products.
Thu Sep 25 16:32:35 UTC 2025
FINER	thread=111	[null] running listener cleanup
FINE	thread=164	[null] running event archive policy (testPolicy)
WARNING	thread=164	[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=164	[null] purged 0 expired events and 0 expired unassociated products.
FINE	thread=164	[null] running event archive policy (testPolicy)
WARNING	thread=164	[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=164	[null] purged 0 expired events and 0 expired unassociated products.
Thu Sep 25 16:32:36 UTC 2025
FINER	thread=111	[null] running listener cleanup
WARNING	thread=1	Exception sending product urn:usgs-product:us:shakemap:abcd1234:1758817954637
gov.usgs.earthquake.aws.HttpException: Error [500] sending product
	at gov.usgs.earthquake.aws.AwsProductSender.sendProduct(AwsProductSender.java:461)
	at gov.usgs.earthquake.aws.AwsProductSender.sendProduct(AwsProductSender.java:447)
	at gov.usgs.earthquake.aws.AwsProductSender.sendProduct(AwsProductSender.java:359)
	at gov.usgs.earthquake.aws.AwsProductSender.sendProduct(AwsProductSender.java:260)
	at gov.usgs.earthquake.aws.AwsProductSenderTest.lambda$testHttpExceptionInSendProductThrowsException$13(AwsProductSenderTest.java:583)
	at org.junit.Assert.assertThrows(Assert.java:1001)
	at org.junit.Assert.assertThrows(Assert.java:981)
	at gov.usgs.earthquake.aws.AwsProductSenderTest.testHttpExceptionInSendProductThrowsException(AwsProductSenderTest.java:582)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.base/java.lang.reflect.Method.invoke(Method.java:569)
	at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:59)
	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
	at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:56)
	at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
	at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
	at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
	at org.junit.runners.BlockJUnit4ClassRunner$1.evaluate(BlockJUnit4ClassRunner.java:100)
	at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:366)
	at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:103)
	at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:63)
	at org.junit.runners.ParentRunner$4.run(ParentRunner.java:331)
	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:79)
	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:329)
	at org.junit.runners.ParentRunner.access$100(ParentRunner.java:66)
	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:293)
	at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
	at org.junit.runners.ParentRunner.run(ParentRunner.java:413)
	at org.junit.runner.JUnitCore.run(JUnitCore.java:137)
	at org.junit.runner.JUnitCore.run(JUnitCore.java:115)
	at org.junit.vintage.engine.execution.RunnerExecutor.execute(RunnerExecutor.java:42)
	at org.junit.vintage.engine.VintageTestEngine.executeAllChildren(VintageTestEngine.java:80)
	at org.junit.vintage.engine.VintageTestEngine.execute(VintageTestEngine.java:72)
	at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:107)
	at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:88)
	at org.junit.platform.launcher.core.EngineExecutionOrchestrator.lambda$execute$0(EngineExecutionOrchestrator.java:54)
	at org.junit.platform.launcher.core.EngineExecutionOrchestrator.withInterceptedStreams(EngineExecutionOrchestrator.java:67)
	at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:52)
	at org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:114)
	at org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:86)
	at org.junit.platform.launcher.core.DefaultLauncherSession$DelegatingLauncher.execute(DefaultLauncherSession.java:86)
	at org.gradle.api.internal.tasks.testing.junitplatform.JUnitPlatformTestClassProcessor$CollectAllTestClassesExecutor.processAllTestClasses(JUnitPlatformTestClassProcessor.java:119)
	at org.gradle.api.internal.tasks.testing.junitplatform.JUnitPlatformTestClassProcessor$CollectAllTestClassesExecutor.access$000(JUnitPlatformTestClassProcessor.java:94)
	at org.gradle.api.internal.tasks.testing.junitplatform.JUnitPlatformTestClassProcessor.stop(JUnitPlatformTestClassProcessor.java:89)
	at org.gradle.api.internal.tasks.testing.SuiteTestClassProcessor.stop(SuiteTestClassProcessor.java:62)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.base/java.lang.reflect.Method.invoke(Method.java:569)
	at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:36)
	at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24)
	at org.gradle.internal.dispatch.ContextClassLoaderDispatch.dispatch(ContextClassLoaderDispatch.java:33)
	at org.gradle.internal.dispatch.ProxyDispatchAdapter$DispatchingInvocationHandler.invoke(ProxyDispatchAdapter.java:94)
	at jdk.proxy2/jdk.proxy2.$Proxy5.stop(Unknown Source)
	at org.gradle.api.internal.tasks.testing.worker.TestWorker$3.run(TestWorker.java:193)
	at org.gradle.api.internal.tasks.testing.worker.TestWorker.executeAndMaintainThreadName(TestWorker.java:129)
	at org.gradle.api.internal.tasks.testing.worker.TestWorker.execute(TestWorker.java:100)
	at org.gradle.api.internal.tasks.testing.worker.TestWorker.execute(TestWorker.java:60)
	at org.gradle.process.internal.worker.child.ActionExecutionWorker.execute(ActionExecutionWorker.java:56)
	at org.gradle.process.internal.worker.child.SystemApplicationClassLoaderWorker.call(SystemApplicationClassLoaderWorker.java:113)
	at org.gradle.process.internal.worker.child.SystemApplicationClassLoaderWorker.call(SystemApplicationClassLoaderWorker.java:65)
	at worker.org.gradle.process.internal.worker.GradleWorkerMain.run(GradleWorkerMain.java:69)
	at worker.org.gradle.process.internal.worker.GradleWorkerMain.main(GradleWorkerMain.java:74)
INFO	thread=1	[null] send product total urn:usgs-product:us:shakemap:abcd1234:1758817954637 (1679 ms) 
FINE	thread=1	Using digest version v2, algorithm=SHA-256
FINE	thread=1	Digest='tf/nyXSxKiViTUoxe8D+UatGiRgn4cr4u2kMsQlXsSU=' , 3ms
FINEST	thread=1	Signature is already in history.
FINE	thread=1	[Test worker] [32s 137ms] HttpClientImpl(39) proxySelector is sun.net.spi.DefaultProxySelector@6eb58fdd (user-supplied=false)
CONFIG	thread=1	[null] url=https://test.com
CONFIG	thread=1	[null] sign products=false
CONFIG	thread=1	[null] contentFormat = MAP
CONFIG	thread=1	[null] sendProductPath=/new/path/to/hit/with
CONFIG	thread=1	[null] uploadUrlsPath=/pdl/east/products/{urn}/uploads
FINE	thread=1	[Test worker] [32s 138ms] HttpClientImpl(40) proxySelector is sun.net.spi.DefaultProxySelector@6eb58fdd (user-supplied=false)
FINE	thread=432	[HttpClient-39-SelectorManager] [32s 139ms] HttpClientImpl(39) next timeout: 0
FINE	thread=432	[HttpClient-39-SelectorManager] [32s 139ms] HttpClientImpl(39) next expired: 0
FINE	thread=432	[HttpClient-39-SelectorManager] [32s 139ms] HttpClientImpl(39) Next deadline is 3000
FINE	thread=1	Using digest version v2, algorithm=SHA-256
FINE	thread=1	Digest='LXPlEyQajQjKy07WSQgmwbjWn+CcORuqDngmIGdzXno=' , 1ms
FINEST	thread=1	Signature is already in history.
FINE	thread=1	[Test worker] [32s 142ms] HttpClientImpl(41) proxySelector is sun.net.spi.DefaultProxySelector@6eb58fdd (user-supplied=false)
FINE	thread=433	[HttpClient-40-SelectorManager] [32s 146ms] HttpClientImpl(40) next timeout: 0
FINE	thread=433	[HttpClient-40-SelectorManager] [32s 147ms] HttpClientImpl(40) next expired: 0
FINE	thread=433	[HttpClient-40-SelectorManager] [32s 147ms] HttpClientImpl(40) Next deadline is 3000
CONFIG	thread=1	[null] url=https://test.com
CONFIG	thread=1	[null] sign products=false
CONFIG	thread=1	[null] contentFormat = MAP
CONFIG	thread=1	[null] sendProductPath=/new/path/to/hit/with/replacement/{urn}
CONFIG	thread=1	[null] uploadUrlsPath=/pdl/east/products/{urn}/uploads
FINE	thread=1	[Test worker] [32s 147ms] HttpClientImpl(42) proxySelector is sun.net.spi.DefaultProxySelector@6eb58fdd (user-supplied=false)
FINE	thread=434	[HttpClient-41-SelectorManager] [32s 148ms] HttpClientImpl(41) next timeout: 0
FINE	thread=434	[HttpClient-41-SelectorManager] [32s 148ms] HttpClientImpl(41) next expired: 0
FINE	thread=434	[HttpClient-41-SelectorManager] [32s 148ms] HttpClientImpl(41) Next deadline is 3000
FINE	thread=1	Using digest version v2, algorithm=SHA-256
FINE	thread=1	Digest='GJHireRpBcYGuu7d1qJVvwij9Fm8x9FLM/UPFXEZUJ8=' , 3ms
FINEST	thread=1	Signature is already in history.
FINE	thread=1	[Test worker] [32s 153ms] HttpClientImpl(43) proxySelector is sun.net.spi.DefaultProxySelector@6eb58fdd (user-supplied=false)
FINE	thread=435	[HttpClient-42-SelectorManager] [32s 153ms] HttpClientImpl(42) next timeout: 0
FINE	thread=435	[HttpClient-42-SelectorManager] [32s 154ms] HttpClientImpl(42) next expired: 0
FINE	thread=435	[HttpClient-42-SelectorManager] [32s 154ms] HttpClientImpl(42) Next deadline is 3000
FINEST	thread=1	Signature is already in history.
FINE	thread=1	Using digest version v2, algorithm=SHA-256
FINE	thread=1	Digest='e1CvGpbOQtY35WuP0ar+JvQ+DIcj6q6h6m6RO0/6cgE=' , 0ms
FINE	thread=1	[null] Resigned product from original-signature test1234 to new signature MCwCFH6tXwPnbiuVhtHXqZ601DfLZPOgAhR7NK/90UwBO07WqUfKoZKKsDnSXA==
FINEST	thread=1	Signature is already in history.
FINE	thread=1	Getting upload urls for {"contents":{"":{"length":33,"modified":"2025-09-25T16:32:36.000Z","path":"","sha256":"0y4HP6Ia60hnSCVWzz5FruqIJePtdy1rw8NzV2EQSy0=","type":"text/html","url":"data:text/html;base64,SSBhbSA8ZW0+aW5saW5lPC9lbT4gaHRtbCBjb250ZW50"},"test.txt":{"length":90,"modified":"2025-09-25T16:32:36.000Z","path":"test.txt","sha256":"f66uqrN9uuqSR0QxztWM0ZxCNzY+WozRW0BEGb4vmUk=","type":"text/plain","url":null},"jar/EIDSInstaller.jar":{"length":35415,"modified":"2025-09-24T14:47:09.000Z","path":"jar/EIDSInstaller.jar","sha256":"3aZqtykthIrmZEyU8L90+kZKsOT/qY8objYL5KzodKM=","type":"application/octet-stream","url":null}},"geometry":null,"id":{"code":"abcd1234","source":"us","type":"shakemap","updateTime":"2025-09-25T16:32:36.355Z"},"links":[{"relation":"testrelation","uri":"http://google.com/"}],"properties":{"testprop":"testvalue","original-signature":"test1234"},"signature":"MCwCFH6tXwPnbiuVhtHXqZ601DfLZPOgAhR7NK/90UwBO07WqUfKoZKKsDnSXA==","signatureVersion":"v2","signatureHistory":[{"signature":"MCwCFH6tXwPnbiuVhtHXqZ601DfLZPOgAhR7NK/90UwBO07WqUfKoZKKsDnSXA==","signatureVersion":"v2"},{"signature":"MCwCFHX7SaVL/NEidM9RCZoGnhptTSblAhRzvOBk5ew8yLwRmkvu9edeLaACBQ==","signatureVersion":"v2"}],"status":"UPDATE","type":"Feature"}
FINE	thread=1	[null] get upload urls urn:usgs-product:us:shakemap:abcd1234:1758817956355 (1 ms) 
FINE	thread=436	[HttpClient-43-SelectorManager] [32s 161ms] HttpClientImpl(43) next timeout: 0
FINE	thread=436	[HttpClient-43-SelectorManager] [32s 161ms] HttpClientImpl(43) next expired: 0
FINE	thread=436	[HttpClient-43-SelectorManager] [32s 161ms] HttpClientImpl(43) Next deadline is 3000
FINE	thread=1	[null] upload contents urn:usgs-product:us:shakemap:abcd1234:1758817956355 (0 ms) 
FINE	thread=1	[null] send product urn:usgs-product:us:shakemap:abcd1234:1758817956355 (1 ms) 
INFO	thread=1	[null] send product total urn:usgs-product:us:shakemap:abcd1234:1758817956355 (6 ms) 
FINE	thread=1	Using digest version v2, algorithm=SHA-256
FINE	thread=1	Digest='ldHGk7gUQgA78Vac61g3EbKWqZT5lTp39svuXE9rVRM=' , 1ms
FINEST	thread=1	Signature is already in history.
FINE	thread=1	[Test worker] [32s 169ms] HttpClientImpl(44) proxySelector is sun.net.spi.DefaultProxySelector@6eb58fdd (user-supplied=false)
FINE	thread=437	[HttpClient-44-SelectorManager] [32s 171ms] HttpClientImpl(44) next timeout: 0
FINE	thread=437	[HttpClient-44-SelectorManager] [32s 171ms] HttpClientImpl(44) next expired: 0
FINE	thread=437	[HttpClient-44-SelectorManager] [32s 171ms] HttpClientImpl(44) Next deadline is 3000
FINE	thread=1	Getting upload urls for {"contents":{"":{"length":33,"modified":"2025-09-25T16:32:36.000Z","path":"","sha256":"0y4HP6Ia60hnSCVWzz5FruqIJePtdy1rw8NzV2EQSy0=","type":"text/html","url":"data:text/html;base64,SSBhbSA8ZW0+aW5saW5lPC9lbT4gaHRtbCBjb250ZW50"},"test.txt":{"length":90,"modified":"2025-09-25T16:32:36.000Z","path":"test.txt","sha256":"f66uqrN9uuqSR0QxztWM0ZxCNzY+WozRW0BEGb4vmUk=","type":"text/plain","url":null},"jar/EIDSInstaller.jar":{"length":35415,"modified":"2025-09-24T14:47:09.000Z","path":"jar/EIDSInstaller.jar","sha256":"3aZqtykthIrmZEyU8L90+kZKsOT/qY8objYL5KzodKM=","type":"application/octet-stream","url":null}},"geometry":null,"id":{"code":"abcd1234","source":"us","type":"shakemap","updateTime":"2025-09-25T16:32:36.373Z"},"links":[{"relation":"testrelation","uri":"http://google.com/"}],"properties":{"testprop":"testvalue","original-signature-version":"v1","original-signature":"test1234"},"signature":"MCwCFGSrjmRRLoghYSaDiA8sYn7Z0MNMAhRzGczmzDtwphq9ZuCyKiulOCH7qw==","signatureVersion":"v2","signatureHistory":[{"signature":"MCwCFGSrjmRRLoghYSaDiA8sYn7Z0MNMAhRzGczmzDtwphq9ZuCyKiulOCH7qw==","signatureVersion":"v2"}],"status":"UPDATE","type":"Feature"}
FINE	thread=1	[null] get upload urls urn:usgs-product:us:shakemap:abcd1234:1758817956373 (0 ms) 
FINE	thread=1	[null] upload contents urn:usgs-product:us:shakemap:abcd1234:1758817956373 (0 ms) 
INFO	thread=1	[null] hub already has product
INFO	thread=1	[null] send product total urn:usgs-product:us:shakemap:abcd1234:1758817956373 (2 ms) 
FINE	thread=1	Using digest version v2, algorithm=SHA-256
FINE	thread=1	Digest='78Fh60pKUAJb9TvzyyeTTRCaTj0ueoGNlEDGyQ+rAnk=' , 2ms
FINEST	thread=1	Signature is already in history.
FINE	thread=1	[Test worker] [32s 179ms] HttpClientImpl(45) proxySelector is sun.net.spi.DefaultProxySelector@6eb58fdd (user-supplied=false)
FINE	thread=1	[null] notification id test urn:usgs-product:source:type:code:1758817956386
FINE	thread=1	[null] send product urn:usgs-product:source:type:code:1758817956386 (2 ms) 
INFO	thread=1	[null] send product total urn:usgs-product:source:type:code:1758817956386 (2 ms) 
FINE	thread=1	Using digest version v2, algorithm=SHA-256
FINE	thread=1	Digest='80Osv5zW+xGpa0ZO/7+i7iBqqNfjtOgg+HUfD2DBHFA=' , 1ms
FINE	thread=438	[HttpClient-45-SelectorManager] [32s 186ms] HttpClientImpl(45) next timeout: 0
FINE	thread=438	[HttpClient-45-SelectorManager] [32s 186ms] HttpClientImpl(45) next expired: 0
FINE	thread=438	[HttpClient-45-SelectorManager] [32s 186ms] HttpClientImpl(45) Next deadline is 3000
FINEST	thread=1	Signature is already in history.
FINE	thread=1	[Test worker] [32s 187ms] HttpClientImpl(46) proxySelector is sun.net.spi.DefaultProxySelector@6eb58fdd (user-supplied=false)
CONFIG	thread=1	[null] url=https://test
CONFIG	thread=1	[null] sign products=false
CONFIG	thread=1	[null] contentFormat = MAP
FINE	thread=1	Using digest version v2, algorithm=SHA-256
FINE	thread=1	Digest='RJTuVoKfdYrPRO0isx2/MgwX5/RT1lmMDtLAAiAwaG4=' , 1ms
FINEST	thread=1	Signature is already in history.
FINE	thread=1	[Test worker] [32s 191ms] HttpClientImpl(47) proxySelector is sun.net.spi.DefaultProxySelector@6eb58fdd (user-supplied=false)
FINE	thread=439	[HttpClient-46-SelectorManager] [32s 191ms] HttpClientImpl(46) next timeout: 0
FINE	thread=439	[HttpClient-46-SelectorManager] [32s 191ms] HttpClientImpl(46) next expired: 0
FINE	thread=439	[HttpClient-46-SelectorManager] [32s 191ms] HttpClientImpl(46) Next deadline is 3000
FINE	thread=440	[HttpClient-47-SelectorManager] [32s 198ms] HttpClientImpl(47) next timeout: 0
FINE	thread=440	[HttpClient-47-SelectorManager] [32s 199ms] HttpClientImpl(47) next expired: 0
FINE	thread=440	[HttpClient-47-SelectorManager] [32s 199ms] HttpClientImpl(47) Next deadline is 3000
FINE	thread=164	[null] running event archive policy (testPolicy)
WARNING	thread=164	[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=164	[null] purged 0 expired events and 0 expired unassociated products.
FINE	thread=1	Getting upload urls for {"contents":{"test.txt":{"length":13,"modified":"2025-09-25T16:32:36.000Z","path":"test.txt","sha256":"lMQBjS3PMyciMVllntC0vBRGHPOU/h4YDitdZjk4dD0=","type":"text/plain","url":"data:text/plain;base64,dGVzdCBjb250ZW50cw=="}},"geometry":null,"id":{"code":"code","source":"source","type":"type","updateTime":"2025-09-25T16:32:36.398Z"},"links":[],"properties":{},"signature":null,"signatureVersion":"v1","signatureHistory":[],"status":"UPDATE","type":"Feature"}
FINE	thread=1	[null] get upload urls urn:usgs-product:source:type:code:1758817956398 (1 ms) 
FINE	thread=1	[null] 503 slow down exception when uploading contents for urn:usgs-product:source:type:code:1758817956398, trying again
FINE	thread=164	[null] running event archive policy (testPolicy)
WARNING	thread=164	[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=164	[null] purged 0 expired events and 0 expired unassociated products.
Thu Sep 25 16:32:37 UTC 2025
FINER	thread=111	[null] running listener cleanup
FINE	thread=421	[HttpClient-28-SelectorManager] [33s 233ms] HttpClientImpl(28) next timeout: 0
FINE	thread=421	[HttpClient-28-SelectorManager] [33s 233ms] HttpClientImpl(28) next expired: 0
FINE	thread=421	[HttpClient-28-SelectorManager] [33s 233ms] HttpClientImpl(28) Next deadline is 3000
FINE	thread=422	[HttpClient-29-SelectorManager] [33s 243ms] HttpClientImpl(29) next timeout: 0
FINE	thread=422	[HttpClient-29-SelectorManager] [33s 243ms] HttpClientImpl(29) next expired: 0
FINE	thread=422	[HttpClient-29-SelectorManager] [33s 243ms] HttpClientImpl(29) Next deadline is 3000
FINE	thread=423	[HttpClient-30-SelectorManager] [33s 247ms] HttpClientImpl(30) next timeout: 0
FINE	thread=423	[HttpClient-30-SelectorManager] [33s 247ms] HttpClientImpl(30) next expired: 0
FINE	thread=423	[HttpClient-30-SelectorManager] [33s 247ms] HttpClientImpl(30) Next deadline is 3000
FINE	thread=424	[HttpClient-31-SelectorManager] [33s 248ms] HttpClientImpl(31) next timeout: 0
FINE	thread=424	[HttpClient-31-SelectorManager] [33s 248ms] HttpClientImpl(31) next expired: 0
FINE	thread=424	[HttpClient-31-SelectorManager] [33s 248ms] HttpClientImpl(31) Next deadline is 3000
FINE	thread=164	[null] running event archive policy (testPolicy)
WARNING	thread=164	[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=164	[null] purged 0 expired events and 0 expired unassociated products.
FINE	thread=425	[HttpClient-32-SelectorManager] [33s 270ms] HttpClientImpl(32) next timeout: 0
FINE	thread=425	[HttpClient-32-SelectorManager] [33s 270ms] HttpClientImpl(32) next expired: 0
FINE	thread=425	[HttpClient-32-SelectorManager] [33s 270ms] HttpClientImpl(32) Next deadline is 3000
FINE	thread=1	[null] upload contents urn:usgs-product:source:type:code:1758817956398 (1075 ms) 
FINE	thread=1	[null] notification id test urn:usgs-product:source:type:code:1758817956398
FINE	thread=1	[null] send product urn:usgs-product:source:type:code:1758817956398 (2 ms) 
INFO	thread=1	[null] send product total urn:usgs-product:source:type:code:1758817956398 (1078 ms) 
FINE	thread=1	Using digest version v2, algorithm=SHA-256
FINE	thread=1	Digest='Sm8MZO1KSg+QcM8waUWDE4X7a+OPVyWj6QAt6bXBImY=' , 1ms
FINEST	thread=1	Signature is already in history.
FINE	thread=1	[Test worker] [33s 353ms] HttpClientImpl(48) proxySelector is sun.net.spi.DefaultProxySelector@6eb58fdd (user-supplied=false)
CONFIG	thread=1	[null] url=https://earthquake.usgs.gov
CONFIG	thread=1	[null] sign products=false
CONFIG	thread=1	[null] contentFormat = MAP
FINE	thread=1	Using digest version v2, algorithm=SHA-256
FINE	thread=1	Digest='VJBfk8zXz6jdnKtzu15bG97ztWtSLVMYzTav/cRz+pY=' , 1ms
FINEST	thread=1	Signature is already in history.
FINE	thread=1	[Test worker] [33s 357ms] HttpClientImpl(49) proxySelector is sun.net.spi.DefaultProxySelector@6eb58fdd (user-supplied=false)
FINE	thread=441	[HttpClient-48-SelectorManager] [33s 358ms] HttpClientImpl(48) next timeout: 0
FINE	thread=441	[HttpClient-48-SelectorManager] [33s 358ms] HttpClientImpl(48) next expired: 0
FINE	thread=441	[HttpClient-48-SelectorManager] [33s 358ms] HttpClientImpl(48) Next deadline is 3000
CONFIG	thread=1	[null] url=https://test.com
CONFIG	thread=1	[null] sign products=false
CONFIG	thread=1	[null] contentFormat = MAP
CONFIG	thread=1	[null] sendProductPath=/pdl/east/products/{urn}
CONFIG	thread=1	[null] uploadUrlsPath=/pdl/east/products/{urn}/uploads
FINE	thread=1	[Test worker] [33s 358ms] HttpClientImpl(50) proxySelector is sun.net.spi.DefaultProxySelector@6eb58fdd (user-supplied=false)
FINE	thread=442	[HttpClient-49-SelectorManager] [33s 359ms] HttpClientImpl(49) next timeout: 0
FINE	thread=442	[HttpClient-49-SelectorManager] [33s 359ms] HttpClientImpl(49) next expired: 0
FINE	thread=443	[HttpClient-50-SelectorManager] [33s 360ms] HttpClientImpl(50) next timeout: 0
FINE	thread=1	Using digest version v2, algorithm=SHA-256
FINE	thread=1	Digest='3CzUklK1WVUoXkFRxd3RyyKcdBvyn0e4WQcPWz5sRyk=' , 2ms
FINEST	thread=1	Signature is already in history.
FINE	thread=1	[Test worker] [33s 362ms] HttpClientImpl(51) proxySelector is sun.net.spi.DefaultProxySelector@6eb58fdd (user-supplied=false)
FINE	thread=442	[HttpClient-49-SelectorManager] [33s 363ms] HttpClientImpl(49) Next deadline is 3000
FINE	thread=443	[HttpClient-50-SelectorManager] [33s 363ms] HttpClientImpl(50) next expired: 0
FINE	thread=443	[HttpClient-50-SelectorManager] [33s 363ms] HttpClientImpl(50) Next deadline is 3000
CONFIG	thread=1	[null] url=https://test.com
CONFIG	thread=1	[null] sign products=false
CONFIG	thread=1	[null] contentFormat = MAP
CONFIG	thread=1	[null] sendProductPath=/new/path/to/hit/with/replacement/{urn}
CONFIG	thread=1	[null] uploadUrlsPath=/pdl/east/products/{urn}/uploads
FINE	thread=1	[Test worker] [33s 365ms] HttpClientImpl(52) proxySelector is sun.net.spi.DefaultProxySelector@6eb58fdd (user-supplied=false)
FINE	thread=444	[HttpClient-51-SelectorManager] [33s 366ms] HttpClientImpl(51) next timeout: 0
FINE	thread=444	[HttpClient-51-SelectorManager] [33s 366ms] HttpClientImpl(51) next expired: 0
FINE	thread=444	[HttpClient-51-SelectorManager] [33s 366ms] HttpClientImpl(51) Next deadline is 3000
FINE	thread=1	Using digest version v2, algorithm=SHA-256
FINE	thread=1	Digest='f/CicNE/Z3V7NSm0czViD6HDYAZJALz+Ra3BiXV4F0Y=' , 2ms
FINEST	thread=1	Signature is already in history.
FINE	thread=1	[Test worker] [33s 373ms] HttpClientImpl(53) proxySelector is sun.net.spi.DefaultProxySelector@6eb58fdd (user-supplied=false)
FINE	thread=445	[HttpClient-52-SelectorManager] [33s 373ms] HttpClientImpl(52) next timeout: 0
FINE	thread=445	[HttpClient-52-SelectorManager] [33s 373ms] HttpClientImpl(52) next expired: 0
FINE	thread=445	[HttpClient-52-SelectorManager] [33s 373ms] HttpClientImpl(52) Next deadline is 3000
FINE	thread=1	Getting upload urls for {"contents":{"":{"length":33,"modified":"2025-09-25T16:32:37.000Z","path":"","sha256":"0y4HP6Ia60hnSCVWzz5FruqIJePtdy1rw8NzV2EQSy0=","type":"text/html","url":"data:text/html;base64,SSBhbSA8ZW0+aW5saW5lPC9lbT4gaHRtbCBjb250ZW50"},"test.txt":{"length":90,"modified":"2025-09-25T16:32:37.000Z","path":"test.txt","sha256":"f66uqrN9uuqSR0QxztWM0ZxCNzY+WozRW0BEGb4vmUk=","type":"text/plain","url":null},"jar/EIDSInstaller.jar":{"length":35415,"modified":"2025-09-24T14:47:09.000Z","path":"jar/EIDSInstaller.jar","sha256":"3aZqtykthIrmZEyU8L90+kZKsOT/qY8objYL5KzodKM=","type":"application/octet-stream","url":null}},"geometry":null,"id":{"code":"abcd1234","source":"us","type":"shakemap","updateTime":"2025-09-25T16:32:37.576Z"},"links":[{"relation":"testrelation","uri":"http://google.com/"}],"properties":{"testprop":"testvalue","original-signature-version":"v1","original-signature":"test1234"},"signature":"MC0CFGSIalvaxw/eamtDuFt9mdt16rBTAhUAi2rwiqmVIsVLDV8WJ/NVKfKuwCo=","signatureVersion":"v2","signatureHistory":[{"signature":"MC0CFGSIalvaxw/eamtDuFt9mdt16rBTAhUAi2rwiqmVIsVLDV8WJ/NVKfKuwCo=","signatureVersion":"v2"}],"status":"UPDATE","type":"Feature"}
WARNING	thread=1	Exception sending product urn:usgs-product:us:shakemap:abcd1234:1758817957576
java.io.IOException
INFO	thread=1	[null] send product total urn:usgs-product:us:shakemap:abcd1234:1758817957576 (1 ms) 
FINE	thread=1	Using digest version v2, algorithm=SHA-256
FINE	thread=1	Digest='EVeDdf4FXk5cSt+3dDccoZhH3XY1XV8sfNzWIMwV4WA=' , 4ms
FINEST	thread=1	Signature is already in history.
FINE	thread=1	[Test worker] [33s 381ms] HttpClientImpl(54) proxySelector is sun.net.spi.DefaultProxySelector@6eb58fdd (user-supplied=false)
FINE	thread=446	[HttpClient-53-SelectorManager] [33s 383ms] HttpClientImpl(53) next timeout: 0
FINE	thread=446	[HttpClient-53-SelectorManager] [33s 383ms] HttpClientImpl(53) next expired: 0
FINE	thread=446	[HttpClient-53-SelectorManager] [33s 383ms] HttpClientImpl(53) Next deadline is 3000
CONFIG	thread=1	[null] url=https://earthquake.usgs.gov
CONFIG	thread=1	[null] sign products=false
CONFIG	thread=1	[null] contentFormat = MAP
CONFIG	thread=1	[null] sendProductPath=/pdl/east/products/{urn}
FINE	thread=1	Using digest version v2, algorithm=SHA-256
FINE	thread=447	[HttpClient-54-SelectorManager] [33s 386ms] HttpClientImpl(54) next timeout: 0
FINE	thread=447	[HttpClient-54-SelectorManager] [33s 386ms] HttpClientImpl(54) next expired: 0
FINE	thread=447	[HttpClient-54-SelectorManager] [33s 386ms] HttpClientImpl(54) Next deadline is 3000
FINE	thread=1	Digest='menYFbb+L0NuIE5Al4Nv0Hi1eFfLC3qPeWuTWsejxBc=' , 4ms
FINEST	thread=1	Signature is already in history.
FINE	thread=1	[Test worker] [33s 392ms] HttpClientImpl(55) proxySelector is sun.net.spi.DefaultProxySelector@6eb58fdd (user-supplied=false)
CONFIG	thread=1	[null] url=https://test.com
CONFIG	thread=1	[null] sign products=false
CONFIG	thread=1	[null] contentFormat = MAP
CONFIG	thread=1	[null] sendProductPath=/pdl/east/products/{urn}
CONFIG	thread=1	[null] uploadUrlsPath=/pdl/east/products/{urn}/uploads
FINE	thread=1	[Test worker] [33s 393ms] HttpClientImpl(56) proxySelector is sun.net.spi.DefaultProxySelector@6eb58fdd (user-supplied=false)
FINE	thread=448	[HttpClient-55-SelectorManager] [33s 394ms] HttpClientImpl(55) next timeout: 0
FINE	thread=448	[HttpClient-55-SelectorManager] [33s 394ms] HttpClientImpl(55) next expired: 0
FINE	thread=448	[HttpClient-55-SelectorManager] [33s 394ms] HttpClientImpl(55) Next deadline is 3000
FINE	thread=426	[HttpClient-33-SelectorManager] [33s 396ms] HttpClientImpl(33) next timeout: 0
FINE	thread=426	[HttpClient-33-SelectorManager] [33s 396ms] HttpClientImpl(33) next expired: 0
FINE	thread=426	[HttpClient-33-SelectorManager] [33s 396ms] HttpClientImpl(33) Next deadline is 3000
FINE	thread=1	Using digest version v2, algorithm=SHA-256
FINE	thread=1	Digest='YVZtlLBf8+YMSolTgsxUZ+1Q07OPpdLeP9kUEzDbRYI=' , 2ms
FINEST	thread=1	Signature is already in history.
FINE	thread=1	[Test worker] [33s 404ms] HttpClientImpl(57) proxySelector is sun.net.spi.DefaultProxySelector@6eb58fdd (user-supplied=false)
FINE	thread=449	[HttpClient-56-SelectorManager] [33s 405ms] HttpClientImpl(56) next timeout: 0
FINE	thread=449	[HttpClient-56-SelectorManager] [33s 405ms] HttpClientImpl(56) next expired: 0
FINE	thread=449	[HttpClient-56-SelectorManager] [33s 405ms] HttpClientImpl(56) Next deadline is 3000
FINE	thread=427	[HttpClient-34-SelectorManager] [33s 407ms] HttpClientImpl(34) next timeout: 0
FINE	thread=427	[HttpClient-34-SelectorManager] [33s 407ms] HttpClientImpl(34) next expired: 0
FINE	thread=427	[HttpClient-34-SelectorManager] [33s 407ms] HttpClientImpl(34) Next deadline is 3000
CONFIG	thread=1	[null] url=https://test
CONFIG	thread=1	[null] sign products=false
CONFIG	thread=1	[null] contentFormat = MAP
CONFIG	thread=1	[null] sendProductPath=/pdl/east/products/{urn}
CONFIG	thread=1	[null] uploadUrlsPath=/pdl/east/products/{urn}/uploads
FINE	thread=1	[Test worker] [33s 412ms] HttpClientImpl(58) proxySelector is sun.net.spi.DefaultProxySelector@6eb58fdd (user-supplied=false)
FINE	thread=450	[HttpClient-57-SelectorManager] [33s 413ms] HttpClientImpl(57) next timeout: 0
FINE	thread=450	[HttpClient-57-SelectorManager] [33s 413ms] HttpClientImpl(57) next expired: 0
FINE	thread=450	[HttpClient-57-SelectorManager] [33s 413ms] HttpClientImpl(57) Next deadline is 3000
FINE	thread=1	Using digest version v2, algorithm=SHA-256
FINE	thread=428	[HttpClient-35-SelectorManager] [33s 423ms] HttpClientImpl(35) next timeout: 0
FINE	thread=428	[HttpClient-35-SelectorManager] [33s 424ms] HttpClientImpl(35) next expired: 0
FINE	thread=428	[HttpClient-35-SelectorManager] [33s 424ms] HttpClientImpl(35) Next deadline is 3000
FINE	thread=1	Digest='X/j+NrOFgna4FaYUXN8TASsU4/uXeIhzmeI2VfLiQv8=' , 4ms
FINEST	thread=1	Signature is already in history.
FINE	thread=1	[Test worker] [33s 428ms] HttpClientImpl(59) proxySelector is sun.net.spi.DefaultProxySelector@6eb58fdd (user-supplied=false)
FINE	thread=451	[HttpClient-58-SelectorManager] [33s 427ms] HttpClientImpl(58) next timeout: 0
FINE	thread=451	[HttpClient-58-SelectorManager] [33s 429ms] HttpClientImpl(58) next expired: 0
FINE	thread=451	[HttpClient-58-SelectorManager] [33s 429ms] HttpClientImpl(58) Next deadline is 3000
FINE	thread=429	[HttpClient-36-SelectorManager] [33s 430ms] HttpClientImpl(36) next timeout: 0
FINE	thread=429	[HttpClient-36-SelectorManager] [33s 430ms] HttpClientImpl(36) next expired: 0
FINE	thread=429	[HttpClient-36-SelectorManager] [33s 430ms] HttpClientImpl(36) Next deadline is 3000
CONFIG	thread=1	[null] url=https://test.com
CONFIG	thread=1	[null] sign products=false
CONFIG	thread=1	[null] contentFormat = MAP
CONFIG	thread=1	[null] sendProductPath=/new/path/to/hit
CONFIG	thread=1	[null] uploadUrlsPath=/pdl/east/products/{urn}/uploads
FINE	thread=1	[Test worker] [33s 435ms] HttpClientImpl(60) proxySelector is sun.net.spi.DefaultProxySelector@6eb58fdd (user-supplied=false)
FINE	thread=452	[HttpClient-59-SelectorManager] [33s 436ms] HttpClientImpl(59) next timeout: 0
FINE	thread=452	[HttpClient-59-SelectorManager] [33s 436ms] HttpClientImpl(59) next expired: 0
FINE	thread=452	[HttpClient-59-SelectorManager] [33s 436ms] HttpClientImpl(59) Next deadline is 3000
FINE	thread=1	Using digest version v2, algorithm=SHA-256
FINE	thread=1	Digest='GyYSaIW/eCIBuyIk2F3VeUT3sLUUqEpBchV7WB6O6eY=' , 2ms
FINEST	thread=1	Signature is already in history.
FINE	thread=1	[Test worker] [33s 445ms] HttpClientImpl(61) proxySelector is sun.net.spi.DefaultProxySelector@6eb58fdd (user-supplied=false)
FINE	thread=430	[HttpClient-37-SelectorManager] [33s 446ms] HttpClientImpl(37) next timeout: 0
FINE	thread=430	[HttpClient-37-SelectorManager] [33s 446ms] HttpClientImpl(37) next expired: 0
FINE	thread=430	[HttpClient-37-SelectorManager] [33s 446ms] HttpClientImpl(37) Next deadline is 3000
FINE	thread=453	[HttpClient-60-SelectorManager] [33s 446ms] HttpClientImpl(60) next timeout: 0
FINE	thread=453	[HttpClient-60-SelectorManager] [33s 446ms] HttpClientImpl(60) next expired: 0
FINE	thread=453	[HttpClient-60-SelectorManager] [33s 446ms] HttpClientImpl(60) Next deadline is 3000
FINE	thread=431	[HttpClient-38-SelectorManager] [33s 454ms] HttpClientImpl(38) next timeout: 0
FINE	thread=431	[HttpClient-38-SelectorManager] [33s 454ms] HttpClientImpl(38) next expired: 0
FINE	thread=431	[HttpClient-38-SelectorManager] [33s 454ms] HttpClientImpl(38) Next deadline is 3000
FINEST	thread=1	Signature is already in history.
FINE	thread=1	Using digest version v2, algorithm=SHA-256
FINE	thread=1	Digest='GyYSaIW/eCIBuyIk2F3VeUT3sLUUqEpBchV7WB6O6eY=' , 1ms
FINE	thread=1	[null] Resigned product from original-signature test1234 to new signature MC4CFQCEP1lkmritQOrM0jlwi2mcmv4dngIVAIOc6iPiyuUrBphUvy3nvFFPl0Pr
FINE	thread=454	[HttpClient-61-SelectorManager] [33s 458ms] HttpClientImpl(61) next timeout: 0
FINE	thread=454	[HttpClient-61-SelectorManager] [33s 458ms] HttpClientImpl(61) next expired: 0
FINE	thread=454	[HttpClient-61-SelectorManager] [33s 458ms] HttpClientImpl(61) Next deadline is 3000
FINEST	thread=1	Signature is already in history.
FINE	thread=1	Getting upload urls for {"contents":{"":{"length":33,"modified":"2025-09-25T16:32:37.000Z","path":"","sha256":"0y4HP6Ia60hnSCVWzz5FruqIJePtdy1rw8NzV2EQSy0=","type":"text/html","url":"data:text/html;base64,SSBhbSA8ZW0+aW5saW5lPC9lbT4gaHRtbCBjb250ZW50"},"test.txt":{"length":90,"modified":"2025-09-25T16:32:37.000Z","path":"test.txt","sha256":"f66uqrN9uuqSR0QxztWM0ZxCNzY+WozRW0BEGb4vmUk=","type":"text/plain","url":null},"jar/EIDSInstaller.jar":{"length":35415,"modified":"2025-09-24T14:47:09.000Z","path":"jar/EIDSInstaller.jar","sha256":"3aZqtykthIrmZEyU8L90+kZKsOT/qY8objYL5KzodKM=","type":"application/octet-stream","url":null}},"geometry":null,"id":{"code":"abcd1234","source":"us","type":"shakemap","updateTime":"2025-09-25T16:32:37.648Z"},"links":[{"relation":"testrelation","uri":"http://google.com/"}],"properties":{"testprop":"testvalue","original-signature-version":"v1","original-signature":"test1234"},"signature":"MC4CFQCEP1lkmritQOrM0jlwi2mcmv4dngIVAIOc6iPiyuUrBphUvy3nvFFPl0Pr","signatureVersion":"v2","signatureHistory":[{"signature":"MC4CFQCEP1lkmritQOrM0jlwi2mcmv4dngIVAIOc6iPiyuUrBphUvy3nvFFPl0Pr","signatureVersion":"v2"},{"signature":"test1234","signatureVersion":"v1"},{"signature":"MC0CFDehfhyU8qAx2VUrZP26Mtz0/BxJAhUAiqbYCmemmUTFkK2+rOSstOe5ynY=","signatureVersion":"v2"}],"status":"UPDATE","type":"Feature"}
FINE	thread=1	[null] get upload urls urn:usgs-product:us:shakemap:abcd1234:1758817957648 (5 ms) 
FINE	thread=1	[null] upload contents urn:usgs-product:us:shakemap:abcd1234:1758817957648 (1 ms) 
FINE	thread=1	[null] send product urn:usgs-product:us:shakemap:abcd1234:1758817957648 (0 ms) 
INFO	thread=1	[null] send product total urn:usgs-product:us:shakemap:abcd1234:1758817957648 (6 ms) 
FINE	thread=1	Using digest version v2, algorithm=SHA-256
FINE	thread=1	Digest='jmiNbWkOywdRrCjupnYjfUNFCfRpSXzhqt/X0N5955Y=' , 4ms
FINEST	thread=1	Signature is already in history.
FINE	thread=1	[Test worker] [33s 481ms] HttpClientImpl(62) proxySelector is sun.net.spi.DefaultProxySelector@6eb58fdd (user-supplied=false)
FINE	thread=455	[HttpClient-62-SelectorManager] [33s 488ms] HttpClientImpl(62) next timeout: 0
FINE	thread=455	[HttpClient-62-SelectorManager] [33s 488ms] HttpClientImpl(62) next expired: 0
FINE	thread=455	[HttpClient-62-SelectorManager] [33s 488ms] HttpClientImpl(62) Next deadline is 3000
FINE	thread=1	Getting upload urls for {"contents":{"":{"length":33,"modified":"2025-09-25T16:32:37.000Z","path":"","sha256":"0y4HP6Ia60hnSCVWzz5FruqIJePtdy1rw8NzV2EQSy0=","type":"text/html","url":"data:text/html;base64,SSBhbSA8ZW0+aW5saW5lPC9lbT4gaHRtbCBjb250ZW50"},"test.txt":{"length":90,"modified":"2025-09-25T16:32:37.000Z","path":"test.txt","sha256":"f66uqrN9uuqSR0QxztWM0ZxCNzY+WozRW0BEGb4vmUk=","type":"text/plain","url":null},"jar/EIDSInstaller.jar":{"length":35415,"modified":"2025-09-24T14:47:09.000Z","path":"jar/EIDSInstaller.jar","sha256":"3aZqtykthIrmZEyU8L90+kZKsOT/qY8objYL5KzodKM=","type":"application/octet-stream","url":null}},"geometry":null,"id":{"code":"abcd1234","source":"us","type":"shakemap","updateTime":"2025-09-25T16:32:37.678Z"},"links":[{"relation":"testrelation","uri":"http://google.com/"}],"properties":{"testprop":"testvalue","original-signature-version":"v1","original-signature":"test1234"},"signature":"MC0CFFvJNeoBogkD0C1bBa7xqgT/jELqAhUAjFljgPDjW6pbxyojGY7R1xdMqhI=","signatureVersion":"v2","signatureHistory":[{"signature":"MC0CFFvJNeoBogkD0C1bBa7xqgT/jELqAhUAjFljgPDjW6pbxyojGY7R1xdMqhI=","signatureVersion":"v2"}],"status":"UPDATE","type":"Feature"}
FINE	thread=1	[null] get upload urls exception, trying again
gov.usgs.earthquake.aws.HttpException: Error [500] getting upload urls
	at gov.usgs.earthquake.aws.AwsProductSender.getUploadUrls(AwsProductSender.java:400)
	at gov.usgs.earthquake.aws.AwsProductSender.getUploadUrls(AwsProductSender.java:389)
	at gov.usgs.earthquake.aws.AwsProductSender.sendProduct(AwsProductSender.java:305)
	at gov.usgs.earthquake.aws.AwsProductSender.sendProduct(AwsProductSender.java:260)
	at gov.usgs.earthquake.aws.AwsProductSenderTest.lambda$testHttpExceptionInGetUploadUrlsThrowsException$14(AwsProductSenderTest.java:606)
	at org.junit.Assert.assertThrows(Assert.java:1001)
	at org.junit.Assert.assertThrows(Assert.java:981)
	at gov.usgs.earthquake.aws.AwsProductSenderTest.testHttpExceptionInGetUploadUrlsThrowsException(AwsProductSenderTest.java:605)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.base/java.lang.reflect.Method.invoke(Method.java:569)
	at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:59)
	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
	at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:56)
	at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
	at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
	at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
	at org.junit.runners.BlockJUnit4ClassRunner$1.evaluate(BlockJUnit4ClassRunner.java:100)
	at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:366)
	at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:103)
	at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:63)
	at org.junit.runners.ParentRunner$4.run(ParentRunner.java:331)
	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:79)
	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:329)
	at org.junit.runners.ParentRunner.access$100(ParentRunner.java:66)
	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:293)
	at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
	at org.junit.runners.ParentRunner.run(ParentRunner.java:413)
	at org.junit.runner.JUnitCore.run(JUnitCore.java:137)
	at org.junit.runner.JUnitCore.run(JUnitCore.java:115)
	at org.junit.vintage.engine.execution.RunnerExecutor.execute(RunnerExecutor.java:42)
	at org.junit.vintage.engine.VintageTestEngine.executeAllChildren(VintageTestEngine.java:80)
	at org.junit.vintage.engine.VintageTestEngine.execute(VintageTestEngine.java:72)
	at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:107)
	at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:88)
	at org.junit.platform.launcher.core.EngineExecutionOrchestrator.lambda$execute$0(EngineExecutionOrchestrator.java:54)
	at org.junit.platform.launcher.core.EngineExecutionOrchestrator.withInterceptedStreams(EngineExecutionOrchestrator.java:67)
	at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:52)
	at org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:114)
	at org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:86)
	at org.junit.platform.launcher.core.DefaultLauncherSession$DelegatingLauncher.execute(DefaultLauncherSession.java:86)
	at org.gradle.api.internal.tasks.testing.junitplatform.JUnitPlatformTestClassProcessor$CollectAllTestClassesExecutor.processAllTestClasses(JUnitPlatformTestClassProcessor.java:119)
	at org.gradle.api.internal.tasks.testing.junitplatform.JUnitPlatformTestClassProcessor$CollectAllTestClassesExecutor.access$000(JUnitPlatformTestClassProcessor.java:94)
	at org.gradle.api.internal.tasks.testing.junitplatform.JUnitPlatformTestClassProcessor.stop(JUnitPlatformTestClassProcessor.java:89)
	at org.gradle.api.internal.tasks.testing.SuiteTestClassProcessor.stop(SuiteTestClassProcessor.java:62)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.base/java.lang.reflect.Method.invoke(Method.java:569)
	at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:36)
	at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24)
	at org.gradle.internal.dispatch.ContextClassLoaderDispatch.dispatch(ContextClassLoaderDispatch.java:33)
	at org.gradle.internal.dispatch.ProxyDispatchAdapter$DispatchingInvocationHandler.invoke(ProxyDispatchAdapter.java:94)
	at jdk.proxy2/jdk.proxy2.$Proxy5.stop(Unknown Source)
	at org.gradle.api.internal.tasks.testing.worker.TestWorker$3.run(TestWorker.java:193)
	at org.gradle.api.internal.tasks.testing.worker.TestWorker.executeAndMaintainThreadName(TestWorker.java:129)
	at org.gradle.api.internal.tasks.testing.worker.TestWorker.execute(TestWorker.java:100)
	at org.gradle.api.internal.tasks.testing.worker.TestWorker.execute(TestWorker.java:60)
	at org.gradle.process.internal.worker.child.ActionExecutionWorker.execute(ActionExecutionWorker.java:56)
	at org.gradle.process.internal.worker.child.SystemApplicationClassLoaderWorker.call(SystemApplicationClassLoaderWorker.java:113)
	at org.gradle.process.internal.worker.child.SystemApplicationClassLoaderWorker.call(SystemApplicationClassLoaderWorker.java:65)
	at worker.org.gradle.process.internal.worker.GradleWorkerMain.run(GradleWorkerMain.java:69)
	at worker.org.gradle.process.internal.worker.GradleWorkerMain.main(GradleWorkerMain.java:74)
FINE	thread=164	[null] running event archive policy (testPolicy)
WARNING	thread=164	[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=164	[null] purged 0 expired events and 0 expired unassociated products.
Thu Sep 25 16:32:38 UTC 2025
FINER	thread=111	[null] running listener cleanup
FINE	thread=164	[null] running event archive policy (testPolicy)
WARNING	thread=164	[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=164	[null] purged 0 expired events and 0 expired unassociated products.
FINE	thread=164	[null] running event archive policy (testPolicy)
WARNING	thread=164	[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=164	[null] purged 0 expired events and 0 expired unassociated products.
Thu Sep 25 16:32:39 UTC 2025
FINER	thread=111	[null] running listener cleanup
WARNING	thread=1	Exception sending product urn:usgs-product:us:shakemap:abcd1234:1758817957678
gov.usgs.earthquake.aws.HttpException: Error [500] getting upload urls
	at gov.usgs.earthquake.aws.AwsProductSender.getUploadUrls(AwsProductSender.java:400)
	at gov.usgs.earthquake.aws.AwsProductSender.getUploadUrls(AwsProductSender.java:389)
	at gov.usgs.earthquake.aws.AwsProductSender.sendProduct(AwsProductSender.java:314)
	at gov.usgs.earthquake.aws.AwsProductSender.sendProduct(AwsProductSender.java:260)
	at gov.usgs.earthquake.aws.AwsProductSenderTest.lambda$testHttpExceptionInGetUploadUrlsThrowsException$14(AwsProductSenderTest.java:606)
	at org.junit.Assert.assertThrows(Assert.java:1001)
	at org.junit.Assert.assertThrows(Assert.java:981)
	at gov.usgs.earthquake.aws.AwsProductSenderTest.testHttpExceptionInGetUploadUrlsThrowsException(AwsProductSenderTest.java:605)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.base/java.lang.reflect.Method.invoke(Method.java:569)
	at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:59)
	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
	at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:56)
	at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
	at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
	at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
	at org.junit.runners.BlockJUnit4ClassRunner$1.evaluate(BlockJUnit4ClassRunner.java:100)
	at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:366)
	at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:103)
	at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:63)
	at org.junit.runners.ParentRunner$4.run(ParentRunner.java:331)
	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:79)
	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:329)
	at org.junit.runners.ParentRunner.access$100(ParentRunner.java:66)
	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:293)
	at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
	at org.junit.runners.ParentRunner.run(ParentRunner.java:413)
	at org.junit.runner.JUnitCore.run(JUnitCore.java:137)
	at org.junit.runner.JUnitCore.run(JUnitCore.java:115)
	at org.junit.vintage.engine.execution.RunnerExecutor.execute(RunnerExecutor.java:42)
	at org.junit.vintage.engine.VintageTestEngine.executeAllChildren(VintageTestEngine.java:80)
	at org.junit.vintage.engine.VintageTestEngine.execute(VintageTestEngine.java:72)
	at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:107)
	at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:88)
	at org.junit.platform.launcher.core.EngineExecutionOrchestrator.lambda$execute$0(EngineExecutionOrchestrator.java:54)
	at org.junit.platform.launcher.core.EngineExecutionOrchestrator.withInterceptedStreams(EngineExecutionOrchestrator.java:67)
	at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:52)
	at org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:114)
	at org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:86)
	at org.junit.platform.launcher.core.DefaultLauncherSession$DelegatingLauncher.execute(DefaultLauncherSession.java:86)
	at org.gradle.api.internal.tasks.testing.junitplatform.JUnitPlatformTestClassProcessor$CollectAllTestClassesExecutor.processAllTestClasses(JUnitPlatformTestClassProcessor.java:119)
	at org.gradle.api.internal.tasks.testing.junitplatform.JUnitPlatformTestClassProcessor$CollectAllTestClassesExecutor.access$000(JUnitPlatformTestClassProcessor.java:94)
	at org.gradle.api.internal.tasks.testing.junitplatform.JUnitPlatformTestClassProcessor.stop(JUnitPlatformTestClassProcessor.java:89)
	at org.gradle.api.internal.tasks.testing.SuiteTestClassProcessor.stop(SuiteTestClassProcessor.java:62)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.base/java.lang.reflect.Method.invoke(Method.java:569)
	at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:36)
	at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24)
	at org.gradle.internal.dispatch.ContextClassLoaderDispatch.dispatch(ContextClassLoaderDispatch.java:33)
	at org.gradle.internal.dispatch.ProxyDispatchAdapter$DispatchingInvocationHandler.invoke(ProxyDispatchAdapter.java:94)
	at jdk.proxy2/jdk.proxy2.$Proxy5.stop(Unknown Source)
	at org.gradle.api.internal.tasks.testing.worker.TestWorker$3.run(TestWorker.java:193)
	at org.gradle.api.internal.tasks.testing.worker.TestWorker.executeAndMaintainThreadName(TestWorker.java:129)
	at org.gradle.api.internal.tasks.testing.worker.TestWorker.execute(TestWorker.java:100)
	at org.gradle.api.internal.tasks.testing.worker.TestWorker.execute(TestWorker.java:60)
	at org.gradle.process.internal.worker.child.ActionExecutionWorker.execute(ActionExecutionWorker.java:56)
	at org.gradle.process.internal.worker.child.SystemApplicationClassLoaderWorker.call(SystemApplicationClassLoaderWorker.java:113)
	at org.gradle.process.internal.worker.child.SystemApplicationClassLoaderWorker.call(SystemApplicationClassLoaderWorker.java:65)
	at worker.org.gradle.process.internal.worker.GradleWorkerMain.run(GradleWorkerMain.java:69)
	at worker.org.gradle.process.internal.worker.GradleWorkerMain.main(GradleWorkerMain.java:74)
INFO	thread=1	[null] send product total urn:usgs-product:us:shakemap:abcd1234:1758817957678 (1646 ms)