Details
-
Bug
-
Status: Closed (View Workflow)
-
P2
-
Resolution: Done
-
None
-
EPAM-Veg Sprint 100, EPAM-Veg Sprint 101, EPAM-Veg Sprint 102
-
2
-
Vega
-
Q3 2020 Bug Fix
-
Chalmers
Description
Overview:
Observed Chalmers Patron Action Session timer task cannot expire a Session due to Session's associated loan referencing a non-existing item
Steps to Reproduce:
- Log into FOLIO environment
- Check in an item but do not click End Session
- Observed item was damaged, go to Inventory and delete the item
Expected Results:
Patron Action Session Can be expired by timer task
Actual Results:
Patron Action Session cannot be expired and NPE is observed in mod-circulation logs
Additional Information:
1600401473299,03:57:53 WARN ProxyService POST request for mod-circulation-18.0.9 /circulation/notice-session-expiration-by-timeout failed with 500: java.lang.NullPointerException 1600401473299,java.lang.NullPointerException 1600401473299, at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193) 1600401473299, at java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1380) 1600401473299, at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:481) 1600401473299, at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:471) 1600401473299, at java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:708) 1600401473299, at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) 1600401473299, at java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:499) 1600401473299, at org.folio.circulation.domain.LocationRepository.getCampuses(LocationRepository.java:151) 1600401473299, at org.folio.circulation.domain.notice.session.PatronActionSessionRepository.fetchCampusesForLoanItems(PatronActionSessionRepository.java:175) 1600401473299, at org.folio.circulation.support.Result.after(Result.java:313) 1600401473299, at org.folio.circulation.domain.notice.session.PatronActionSessionRepository.lambda$fetchLoans$11(PatronActionSessionRepository.java:163) 1600401473299, at java.util.concurrent.CompletableFuture.uniCompose(CompletableFuture.java:952) 1600401473299, at java.util.concurrent.CompletableFuture$UniCompose.tryFire(CompletableFuture.java:926) 1600401473299, at java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:474) 1600401473299, at java.util.concurrent.CompletableFuture.complete(CompletableFuture.java:1962) 1600401473299, at io.vertx.ext.web.client.impl.HttpContext.handleDispatchResponse(HttpContext.java:308) 1600401473299, at io.vertx.ext.web.client.impl.HttpContext.execute(HttpContext.java:295) 1600401473299, at io.vertx.ext.web.client.impl.HttpContext.next(HttpContext.java:270) 1600401473299, at io.vertx.ext.web.client.impl.predicate.PredicateInterceptor.handle(PredicateInterceptor.java:69) 1600401473299, at io.vertx.ext.web.client.impl.predicate.PredicateInterceptor.handle(PredicateInterceptor.java:32) 1600401473299, at io.vertx.ext.web.client.impl.HttpContext.next(HttpContext.java:267) 1600401473299, at io.vertx.ext.web.client.impl.HttpContext.fire(HttpContext.java:277) 1600401473299, at io.vertx.ext.web.client.impl.HttpContext.dispatchResponse(HttpContext.java:238) 1600401473299, at io.vertx.ext.web.client.impl.HttpContext.lambda$null$2(HttpContext.java:367) 1600401473299, at io.vertx.core.impl.ContextImpl.executeTask(ContextImpl.java:369) 1600401473299, at io.vertx.core.impl.WorkerContext.lambda$wrapTask$0(WorkerContext.java:35) 1600401473299, at io.vertx.core.impl.TaskQueue.run(TaskQueue.java:76) 1600401473299, at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) 1600401473299, at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) 1600401473299, at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) 1600401473299, at java.lang.Thread.run(Thread.java:748)
URL:
Interested parties:
lisams