Closed bobbeck55 closed 1 year ago
Exception is not a bug, it is a way to manipulate the flow of the application. Exception is being converted into a valid non-200 response from the API that UI interprets and processes depending on the response code and message. It is a "WARN" long. An absolutely legit race condition, or "optimistic locking" scenario, when 2 people are updating 1 entity at the same time and we do not want lost updates from the first one.
Good work
On Tue, Feb 28, 2023 at 8:43 AM Azee @.***> wrote:
Exception is not a bug, it is a way to manipulate the flow of the application. Exception is being converted into a valid non-200 response from the API that UI interprets and processes depending on the response code and message. It is a "WARN" long. An absolutely legit race condition, or "optimistic locking" scenario, when 2 people are updating 1 entity at the same time and we do not want lost updates from the first one.
— Reply to this email directly, view it on GitHub https://github.com/greatbit/quack/issues/247#issuecomment-1448202772, or unsubscribe https://github.com/notifications/unsubscribe-auth/AZWTTVST6FQ5KNDA6WLY43LWZX6JDANCNFSM6AAAAAAVKXMZOA . You are receiving this because you authored the thread.Message ID: @.***>
2 browser test scenario browser 1 - edit test case x and edit attribute y browser 2 - edit test case x and edit attribute y browser 1 - delete 1 value from attribute y browser 2 - attempt to save attribute y with change - error on browser and exception in log. Error on console makes sense. Why exception in log? Is this a problem? Here are config files and log.
version: '2'
volumes: data: external: true
services: quack: image: greatbit/quack ports:
/home/bob/quack_db:/etc/quack
mongod: container_name: "mongod" image: mongo:4.2 expose:
"27017:27017" volumes:
Database
mongo.replicaSet=mongod:27017 mongo.dbname=test mongo.username= mongo.password= mongo.uri=
Authentication
"Couldn't save project for created user, works for root", auth works
test 1
whoru.auth.provider=com.testquack.api.security.DbAuthProvider whoru.session.provider=ru.greatbit.whoru.auth.providers.InmemSessionProvider auth.domain=192.168.56.102
test 2
auth combo works - creates user, logout/login works, create project works for root,
not for created user
whoru.auth.provider=com.testquack.api.security.DbAuthProvider
whoru.session.provider=ru.greatbit.whoru.auth.providers.HazelcastSessionProvider
auth.domain=192.168.56.102
combo1 works
whoru.auth.provider=ru.greatbit.whoru.auth.providers.StubAuthProvider
whoru.session.provider=ru.greatbit.whoru.auth.providers.InmemSessionProvider
auth.domain=localhost:80
combo2 works
whoru.session.provider=ru.greatbit.whoru.auth.providers.HazelcastSessionProvider
auth.domain=localhost:80
doesn't work
whoru.auth.provider=ru.greatbit.whoru.auth.providers.StubAuthProvider
auth.domain=192.168.56.102:80
doesn't work
whoru.auth.provider=ru.greatbit.whoru.auth.providers.InmemSessionProvider
auth.domain=192.168.56.102:80
doesn't work
whoru.auth.provider=com.testquack.api.security.DbAuthProvider
auth.domain=192.168.56.102:80
doesn't work
whoru.session.provider=ru.greatbit.whoru.auth.providers.HazelcastSessionProvider
auth.domain=192.168.56.102:80
stub.login=someuser stub.password=somepassword
auth.domain=localhost:80
auth.session.ttl=6000000 auth.admin.login=root auth.admin.password=rootpass auth.admin.token=abc auth.admin.logins=azee,zyxel560k@mail.ru
Hazelcast
entity.lock.ttl.min=5 hazelcast.group.name=dev hazelcast.group.password=dev-pass hazelcast.ttl.sec=1209600 hazelcast.port=5903 hazelcast.port.rest=5904 hazelcast.port.auto.increment=true hazelcast.members=127.0.0.1 hazelcast.interface=127.0.0.1 hazelcast.backup.count=1 hazelcast.prefer.ipv4.stack=true hazelcast.aws.enabled=false hazelcast.tcpip.enabled=true storage.provider=com.testquack.storage.MongoStorage quack.tracker=com.testquack.tracker.DummyTracker aws.cognito.access.key=CHANGEME aws.cognito.secret.key=CHANGEME aws.cognito.region=us-east-1 aws.cognito.oauth.endpoint= aws.cognito.client.id=CHANGEME aws.cognito.redirect.url= cognito-auth-provider= cognito.login.url=
2023-02-28 13:11:44,754 [main ] INFO ContextLoader - Root WebApplicationContext: initialization started 2023-02-28 13:11:45,319 [main ] INFO epositoryConfigurationDelegate - Bootstrapping Spring Data MongoDB repositories in DEFAULT mode. 2023-02-28 13:11:45,480 [main ] INFO epositoryConfigurationDelegate - Finished Spring Data repository scanning in 130 ms. Found 12 MongoDB repository interfaces. 2023-02-28 13:11:46,059 [main ] INFO egate$BeanPostProcessorChecker - Bean 'pluginsContainer' of type [ru.greatbit.plow.PluginsContainer] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying) 2023-02-28 13:11:48,573 [main ] INFO cluster - Cluster created with settings {hosts=[mongod:27017], mode=SINGLE, requiredClusterType=UNKNOWN, serverSelectionTimeout='30000 ms'} 2023-02-28 13:11:48,866 [scription='null'}-mongod:27017] INFO connection - Opened connection [connectionId{localValue:1, serverValue:2}] to mongod:27017 2023-02-28 13:11:48,867 [scription='null'}-mongod:27017] INFO connection - Opened connection [connectionId{localValue:2, serverValue:1}] to mongod:27017 2023-02-28 13:11:48,869 [scription='null'}-mongod:27017] INFO cluster - Monitor thread successfully connected to server with description ServerDescription{address=mongod:27017, type=STANDALONE, state=CONNECTED, ok=true, minWireVersion=0, maxWireVersion=8, maxDocumentSize=16777216, logicalSessionTimeoutMinutes=30, roundTripTimeNanos=159727940} 2023-02-28 13:11:49,394 [main ] WARN CustomConversions - Registering converter from class java.time.LocalDateTime to class org.joda.time.LocalDateTime as reading converter although it doesn't convert from a store-supported type! You might want to check your annotation setup at the converter implementation. 2023-02-28 13:11:55,719 [main ] INFO Version - HV000001: Hibernate Validator 5.2.4.Final 2023-02-28 13:11:55,794 [main ] WARN CustomConversions - Registering converter from class java.time.LocalDateTime to class org.joda.time.LocalDateTime as reading converter although it doesn't convert from a store-supported type! You might want to check your annotation setup at the converter implementation. 2023-02-28 13:11:55,833 [main ] INFO ContextLoader - Root WebApplicationContext initialized in 11077 ms 2023-02-28 13:11:56,218 [main ] INFO Reflections - Reflections took 33 ms to scan 1 urls, producing 43 keys and 77 values 2023-02-28 13:14:01,574 [qtp815033865-11 ] INFO ExceptionHandler - User session not found and will be prompt to authorize 2023-02-28 13:14:02,247 [qtp815033865-14 ] INFO ExceptionHandler - User session not found and will be prompt to authorize 2023-02-28 13:14:02,706 [qtp815033865-14 ] INFO ExceptionHandler - User session not found and will be prompt to authorize 2023-02-28 13:14:06,141 [qtp815033865-15 ] INFO connection - Opened connection [connectionId{localValue:4, serverValue:3}] to mongod:27017 2023-02-28 13:14:06,141 [qtp815033865-69 ] INFO connection - Opened connection [connectionId{localValue:3, serverValue:4}] to mongod:27017 2023-02-28 13:14:25,984 [qtp815033865-16 ] INFO ExceptionHandler - User session not found and will be prompt to authorize 2023-02-28 13:14:26,063 [qtp815033865-14 ] INFO ExceptionHandler - User session not found and will be prompt to authorize 2023-02-28 13:14:26,115 [qtp815033865-16 ] INFO ExceptionHandler - User session not found and will be prompt to authorize 2023-02-28 13:14:34,796 [qtp815033865-70 ] INFO DbAuthProvider - No session found. Auth by login/password ip=127.0.0.1 2023-02-28 13:14:41,262 [qtp815033865-16 ] INFO connection - Opened connection [connectionId{localValue:5, serverValue:5}] to mongod:27017 2023-02-28 13:15:07,261 [qtp815033865-69 ] INFO connection - Opened connection [connectionId{localValue:6, serverValue:6}] to mongod:27017 2023-02-28 13:15:47,178 [qtp815033865-16 ] WARN ExceptionHandler - Exception has occurred for user bob : Entity has been changed previously. Changes will cause lost updates. com.testquack.services.errors.EntityValidationException: Entity has been changed previously. Changes will cause lost updates. at com.testquack.services.BaseService.update(BaseService.java:237)[services-1.21.jar:] at com.testquack.services.BaseService.save(BaseService.java:93)[services-1.21.jar:] at com.testquack.api.resources.BaseCrudResource.update(BaseCrudResource.java:66)[file:/tmp/jetty-0_0_0_0-8080-quackwar--any-5808289650076523002/webapp/WEB-INF/classes/:] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)[:1.8.0_212] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)[:1.8.0_212] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)[:1.8.0_212] at java.lang.reflect.Method.invoke(Method.java:498)[:1.8.0_212] at org.glassfish.jersey.server.model.internal.ResourceMethodInvocationHandlerFactory$1.invoke(ResourceMethodInvocationHandlerFactory.java:81)[jersey-server-2.25.1.jar:] at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher$1.run(AbstractJavaResourceMethodDispatcher.java:144)[jersey-server-2.25.1.jar:] at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.invoke(AbstractJavaResourceMethodDispatcher.java:161)[jersey-server-2.25.1.jar:] at org.glassfish.jersey.server.model.internal.JavaResourceMethodDispatcherProvider$TypeOutInvoker.doDispatch(JavaResourceMethodDispatcherProvider.java:205)[jersey-server-2.25.1.jar:] at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.dispatch(AbstractJavaResourceMethodDispatcher.java:99)[jersey-server-2.25.1.jar:] at org.glassfish.jersey.server.model.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:389)[jersey-server-2.25.1.jar:] at org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:347)[jersey-server-2.25.1.jar:] at org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:102)[jersey-server-2.25.1.jar:] at org.glassfish.jersey.server.ServerRuntime$2.run(ServerRuntime.java:326)[jersey-server-2.25.1.jar:] at org.glassfish.jersey.internal.Errors$1.call(Errors.java:271)[jersey-common-2.25.1.jar:] at org.glassfish.jersey.internal.Errors$1.call(Errors.java:267)[jersey-common-2.25.1.jar:] at org.glassfish.jersey.internal.Errors.process(Errors.java:315)[jersey-common-2.25.1.jar:] at org.glassfish.jersey.internal.Errors.process(Errors.java:297)[jersey-common-2.25.1.jar:] at org.glassfish.jersey.internal.Errors.process(Errors.java:267)[jersey-common-2.25.1.jar:] at org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:317)[jersey-common-2.25.1.jar:] at org.glassfish.jersey.server.ServerRuntime.process(ServerRuntime.java:305)[jersey-server-2.25.1.jar:] at org.glassfish.jersey.server.ApplicationHandler.handle(ApplicationHandler.java:1154)[jersey-server-2.25.1.jar:] at org.glassfish.jersey.servlet.WebComponent.serviceImpl(WebComponent.java:473)[jersey-container-servlet-core-2.25.1.jar:] at org.glassfish.jersey.servlet.WebComponent.service(WebComponent.java:427)[jersey-container-servlet-core-2.25.1.jar:] at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:388)[jersey-container-servlet-core-2.25.1.jar:] at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:341)[jersey-container-servlet-core-2.25.1.jar:] at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:228)[jersey-container-servlet-core-2.25.1.jar:] at org.eclipse.jetty.servlet.ServletHolder$NotAsync.service(ServletHolder.java:1443) at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:791) at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:550) at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143) at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:602) at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127) at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:235) at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1624) at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:233) at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1435) at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:188) at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:501) at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1594) at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:186) at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1350) at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141) at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:191) at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:146) at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127) at org.eclipse.jetty.server.Server.handle(Server.java:516) at org.eclipse.jetty.server.HttpChannel.lambda$handle$1(HttpChannel.java:388) at org.eclipse.jetty.server.HttpChannel.dispatch(HttpChannel.java:633) at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:380) at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:273) at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:311) at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:105) at org.eclipse.jetty.io.ChannelEndPoint$1.run(ChannelEndPoint.java:104) at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.runTask(EatWhatYouKill.java:336) at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:313) at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.tryProduce(EatWhatYouKill.java:171) at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.run(EatWhatYouKill.java:129) at org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:375) at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:773) at org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:905) at java.lang.Thread.run(Thread.java:748)[:1.8.0_212] 2023-02-28 13:18:02,666 [qtp815033865-70 ] WARN ExceptionHandler - Exception has occurred for user bob : Entity has been changed previously. Changes will cause lost updates. com.testquack.services.errors.EntityValidationException: Entity has been changed previously. Changes will cause lost updates. at com.testquack.services.BaseService.update(BaseService.java:237)[services-1.21.jar:] at com.testquack.services.BaseService.save(BaseService.java:93)[services-1.21.jar:] at com.testquack.api.resources.BaseCrudResource.update(BaseCrudResource.java:66)[file:/tmp/jetty-0_0_0_0-8080-quackwar--any-5808289650076523002/webapp/WEB-INF/classes/:] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)[:1.8.0_212] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)[:1.8.0_212] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)[:1.8.0_212] at java.lang.reflect.Method.invoke(Method.java:498)[:1.8.0_212] at org.glassfish.jersey.server.model.internal.ResourceMethodInvocationHandlerFactory$1.invoke(ResourceMethodInvocationHandlerFactory.java:81)[jersey-server-2.25.1.jar:] at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher$1.run(AbstractJavaResourceMethodDispatcher.java:144)[jersey-server-2.25.1.jar:] at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.invoke(AbstractJavaResourceMethodDispatcher.java:161)[jersey-server-2.25.1.jar:] at org.glassfish.jersey.server.model.internal.JavaResourceMethodDispatcherProvider$TypeOutInvoker.doDispatch(JavaResourceMethodDispatcherProvider.java:205)[jersey-server-2.25.1.jar:] at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.dispatch(AbstractJavaResourceMethodDispatcher.java:99)[jersey-server-2.25.1.jar:] at org.glassfish.jersey.server.model.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:389)[jersey-server-2.25.1.jar:] at org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:347)[jersey-server-2.25.1.jar:] at org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:102)[jersey-server-2.25.1.jar:] at org.glassfish.jersey.server.ServerRuntime$2.run(ServerRuntime.java:326)[jersey-server-2.25.1.jar:] at org.glassfish.jersey.internal.Errors$1.call(Errors.java:271)[jersey-common-2.25.1.jar:] at org.glassfish.jersey.internal.Errors$1.call(Errors.java:267)[jersey-common-2.25.1.jar:] at org.glassfish.jersey.internal.Errors.process(Errors.java:315)[jersey-common-2.25.1.jar:] at org.glassfish.jersey.internal.Errors.process(Errors.java:297)[jersey-common-2.25.1.jar:] at org.glassfish.jersey.internal.Errors.process(Errors.java:267)[jersey-common-2.25.1.jar:] at org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:317)[jersey-common-2.25.1.jar:] at org.glassfish.jersey.server.ServerRuntime.process(ServerRuntime.java:305)[jersey-server-2.25.1.jar:] at org.glassfish.jersey.server.ApplicationHandler.handle(ApplicationHandler.java:1154)[jersey-server-2.25.1.jar:] at org.glassfish.jersey.servlet.WebComponent.serviceImpl(WebComponent.java:473)[jersey-container-servlet-core-2.25.1.jar:] at org.glassfish.jersey.servlet.WebComponent.service(WebComponent.java:427)[jersey-container-servlet-core-2.25.1.jar:] at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:388)[jersey-container-servlet-core-2.25.1.jar:] at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:341)[jersey-container-servlet-core-2.25.1.jar:] at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:228)[jersey-container-servlet-core-2.25.1.jar:] at org.eclipse.jetty.servlet.ServletHolder$NotAsync.service(ServletHolder.java:1443) at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:791) at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:550) at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143) at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:602) at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127) at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:235) at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1624) at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:233) at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1435) at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:188) at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:501) at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1594) at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:186) at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1350) at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141) at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:191) at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:146) at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127) at org.eclipse.jetty.server.Server.handle(Server.java:516) at org.eclipse.jetty.server.HttpChannel.lambda$handle$1(HttpChannel.java:388) at org.eclipse.jetty.server.HttpChannel.dispatch(HttpChannel.java:633) at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:380) at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:273) at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:311) at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:105) at org.eclipse.jetty.io.ChannelEndPoint$1.run(ChannelEndPoint.java:104) at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:773) at org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:905) at java.lang.Thread.run(Thread.java:748)[:1.8.0_212] 2023-02-28 13:18:24,524 [qtp815033865-14 ] WARN ExceptionHandler - Exception has occurred for user bob : Entity has been changed previously. Changes will cause lost updates. com.testquack.services.errors.EntityValidationException: Entity has been changed previously. Changes will cause lost updates. at com.testquack.services.BaseService.update(BaseService.java:237)[services-1.21.jar:] at com.testquack.services.BaseService.save(BaseService.java:93)[services-1.21.jar:] at com.testquack.api.resources.BaseCrudResource.update(BaseCrudResource.java:66)[file:/tmp/jetty-0_0_0_0-8080-quackwar--any-5808289650076523002/webapp/WEB-INF/classes/:] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)[:1.8.0_212] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)[:1.8.0_212] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)[:1.8.0_212] at java.lang.reflect.Method.invoke(Method.java:498)[:1.8.0_212] at org.glassfish.jersey.server.model.internal.ResourceMethodInvocationHandlerFactory$1.invoke(ResourceMethodInvocationHandlerFactory.java:81)[jersey-server-2.25.1.jar:] at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher$1.run(AbstractJavaResourceMethodDispatcher.java:144)[jersey-server-2.25.1.jar:] at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.invoke(AbstractJavaResourceMethodDispatcher.java:161)[jersey-server-2.25.1.jar:] at org.glassfish.jersey.server.model.internal.JavaResourceMethodDispatcherProvider$TypeOutInvoker.doDispatch(JavaResourceMethodDispatcherProvider.java:205)[jersey-server-2.25.1.jar:] at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.dispatch(AbstractJavaResourceMethodDispatcher.java:99)[jersey-server-2.25.1.jar:] at org.glassfish.jersey.server.model.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:389)[jersey-server-2.25.1.jar:] at org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:347)[jersey-server-2.25.1.jar:] at org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:102)[jersey-server-2.25.1.jar:] at org.glassfish.jersey.server.ServerRuntime$2.run(ServerRuntime.java:326)[jersey-server-2.25.1.jar:] at org.glassfish.jersey.internal.Errors$1.call(Errors.java:271)[jersey-common-2.25.1.jar:] at org.glassfish.jersey.internal.Errors$1.call(Errors.java:267)[jersey-common-2.25.1.jar:] at org.glassfish.jersey.internal.Errors.process(Errors.java:315)[jersey-common-2.25.1.jar:] at org.glassfish.jersey.internal.Errors.process(Errors.java:297)[jersey-common-2.25.1.jar:] at org.glassfish.jersey.internal.Errors.process(Errors.java:267)[jersey-common-2.25.1.jar:] at org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:317)[jersey-common-2.25.1.jar:] at org.glassfish.jersey.server.ServerRuntime.process(ServerRuntime.java:305)[jersey-server-2.25.1.jar:] at org.glassfish.jersey.server.ApplicationHandler.handle(ApplicationHandler.java:1154)[jersey-server-2.25.1.jar:] at org.glassfish.jersey.servlet.WebComponent.serviceImpl(WebComponent.java:473)[jersey-container-servlet-core-2.25.1.jar:] at org.glassfish.jersey.servlet.WebComponent.service(WebComponent.java:427)[jersey-container-servlet-core-2.25.1.jar:] at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:388)[jersey-container-servlet-core-2.25.1.jar:] at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:341)[jersey-container-servlet-core-2.25.1.jar:] at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:228)[jersey-container-servlet-core-2.25.1.jar:] at org.eclipse.jetty.servlet.ServletHolder$NotAsync.service(ServletHolder.java:1443) at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:791) at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:550) at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143) at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:602) at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127) at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:235) at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1624) at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:233) at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1435) at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:188) at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:501) at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1594) at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:186) at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1350) at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141) at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:191) at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:146) at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127) at org.eclipse.jetty.server.Server.handle(Server.java:516) at org.eclipse.jetty.server.HttpChannel.lambda$handle$1(HttpChannel.java:388) at org.eclipse.jetty.server.HttpChannel.dispatch(HttpChannel.java:633) at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:380) at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:273) at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:311) at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:105) at org.eclipse.jetty.io.ChannelEndPoint$1.run(ChannelEndPoint.java:104) at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.runTask(EatWhatYouKill.java:336) at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:313) at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.tryProduce(EatWhatYouKill.java:171) at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.run(EatWhatYouKill.java:129) at org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:375) at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:773) at org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:905) at java.lang.Thread.run(Thread.java:748)[:1.8.0_212] 2023-02-28 13:19:56,954 [qtp815033865-69 ] INFO connection - Opened connection [connectionId{localValue:7, serverValue:7}] to mongod:27017 2023-02-28 13:20:31,060 [qtp815033865-75 ] WARN ExceptionHandler - Exception has occurred for user root : Entity has been changed previously. Changes will cause lost updates. com.testquack.services.errors.EntityValidationException: Entity has been changed previously. Changes will cause lost updates. at com.testquack.services.BaseService.update(BaseService.java:237)[services-1.21.jar:] at com.testquack.services.BaseService.save(BaseService.java:93)[services-1.21.jar:] at com.testquack.api.resources.BaseCrudResource.update(BaseCrudResource.java:66)[file:/tmp/jetty-0_0_0_0-8080-quackwar--any-5808289650076523002/webapp/WEB-INF/classes/:] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)[:1.8.0_212] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)[:1.8.0_212] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)[:1.8.0_212] at java.lang.reflect.Method.invoke(Method.java:498)[:1.8.0_212] at org.glassfish.jersey.server.model.internal.ResourceMethodInvocationHandlerFactory$1.invoke(ResourceMethodInvocationHandlerFactory.java:81)[jersey-server-2.25.1.jar:] at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher$1.run(AbstractJavaResourceMethodDispatcher.java:144)[jersey-server-2.25.1.jar:] at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.invoke(AbstractJavaResourceMethodDispatcher.java:161)[jersey-server-2.25.1.jar:] at org.glassfish.jersey.server.model.internal.JavaResourceMethodDispatcherProvider$TypeOutInvoker.doDispatch(JavaResourceMethodDispatcherProvider.java:205)[jersey-server-2.25.1.jar:] at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.dispatch(AbstractJavaResourceMethodDispatcher.java:99)[jersey-server-2.25.1.jar:] at org.glassfish.jersey.server.model.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:389)[jersey-server-2.25.1.jar:] at org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:347)[jersey-server-2.25.1.jar:] at org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:102)[jersey-server-2.25.1.jar:] at org.glassfish.jersey.server.ServerRuntime$2.run(ServerRuntime.java:326)[jersey-server-2.25.1.jar:] at org.glassfish.jersey.internal.Errors$1.call(Errors.java:271)[jersey-common-2.25.1.jar:] at org.glassfish.jersey.internal.Errors$1.call(Errors.java:267)[jersey-common-2.25.1.jar:] at org.glassfish.jersey.internal.Errors.process(Errors.java:315)[jersey-common-2.25.1.jar:] at org.glassfish.jersey.internal.Errors.process(Errors.java:297)[jersey-common-2.25.1.jar:] at org.glassfish.jersey.internal.Errors.process(Errors.java:267)[jersey-common-2.25.1.jar:] at org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:317)[jersey-common-2.25.1.jar:] at org.glassfish.jersey.server.ServerRuntime.process(ServerRuntime.java:305)[jersey-server-2.25.1.jar:] at org.glassfish.jersey.server.ApplicationHandler.handle(ApplicationHandler.java:1154)[jersey-server-2.25.1.jar:] at org.glassfish.jersey.servlet.WebComponent.serviceImpl(WebComponent.java:473)[jersey-container-servlet-core-2.25.1.jar:] at org.glassfish.jersey.servlet.WebComponent.service(WebComponent.java:427)[jersey-container-servlet-core-2.25.1.jar:] at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:388)[jersey-container-servlet-core-2.25.1.jar:] at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:341)[jersey-container-servlet-core-2.25.1.jar:] at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:228)[jersey-container-servlet-core-2.25.1.jar:] at org.eclipse.jetty.servlet.ServletHolder$NotAsync.service(ServletHolder.java:1443) at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:791) at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:550) at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143) at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:602) at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127) at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:235) at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1624) at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:233) at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1435) at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:188) at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:501) at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1594) at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:186) at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1350) at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141) at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:191) at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:146) at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127) at org.eclipse.jetty.server.Server.handle(Server.java:516) at org.eclipse.jetty.server.HttpChannel.lambda$handle$1(HttpChannel.java:388) at org.eclipse.jetty.server.HttpChannel.dispatch(HttpChannel.java:633) at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:380) at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:273) at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:311) at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:105) at org.eclipse.jetty.io.ChannelEndPoint$1.run(ChannelEndPoint.java:104) at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.runTask(EatWhatYouKill.java:336) at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:313) at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.tryProduce(EatWhatYouKill.java:171) at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.run(EatWhatYouKill.java:129) at org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:375) at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:773) at org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:905) at java.lang.Thread.run(Thread.java:748)[:1.8.0_212] 2023-02-28 13:21:56,782 [qtp815033865-70 ] WARN ExceptionHandler - Exception has occurred for user bob : Entity has been changed previously. Changes will cause lost updates. com.testquack.services.errors.EntityValidationException: Entity has been changed previously. Changes will cause lost updates. at com.testquack.services.BaseService.update(BaseService.java:237)[services-1.21.jar:] at com.testquack.services.BaseService.save(BaseService.java:93)[services-1.21.jar:] at com.testquack.api.resources.BaseCrudResource.update(BaseCrudResource.java:66)[file:/tmp/jetty-0_0_0_0-8080-quackwar--any-5808289650076523002/webapp/WEB-INF/classes/:] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)[:1.8.0_212] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)[:1.8.0_212] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)[:1.8.0_212] at java.lang.reflect.Method.invoke(Method.java:498)[:1.8.0_212] at org.glassfish.jersey.server.model.internal.ResourceMethodInvocationHandlerFactory$1.invoke(ResourceMethodInvocationHandlerFactory.java:81)[jersey-server-2.25.1.jar:] at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher$1.run(AbstractJavaResourceMethodDispatcher.java:144)[jersey-server-2.25.1.jar:] at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.invoke(AbstractJavaResourceMethodDispatcher.java:161)[jersey-server-2.25.1.jar:] at org.glassfish.jersey.server.model.internal.JavaResourceMethodDispatcherProvider$TypeOutInvoker.doDispatch(JavaResourceMethodDispatcherProvider.java:205)[jersey-server-2.25.1.jar:] at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.dispatch(AbstractJavaResourceMethodDispatcher.java:99)[jersey-server-2.25.1.jar:] at org.glassfish.jersey.server.model.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:389)[jersey-server-2.25.1.jar:] at org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:347)[jersey-server-2.25.1.jar:] at org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:102)[jersey-server-2.25.1.jar:] at org.glassfish.jersey.server.ServerRuntime$2.run(ServerRuntime.java:326)[jersey-server-2.25.1.jar:] at org.glassfish.jersey.internal.Errors$1.call(Errors.java:271)[jersey-common-2.25.1.jar:] at org.glassfish.jersey.internal.Errors$1.call(Errors.java:267)[jersey-common-2.25.1.jar:] at org.glassfish.jersey.internal.Errors.process(Errors.java:315)[jersey-common-2.25.1.jar:] at org.glassfish.jersey.internal.Errors.process(Errors.java:297)[jersey-common-2.25.1.jar:] at org.glassfish.jersey.internal.Errors.process(Errors.java:267)[jersey-common-2.25.1.jar:] at org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:317)[jersey-common-2.25.1.jar:] at org.glassfish.jersey.server.ServerRuntime.process(ServerRuntime.java:305)[jersey-server-2.25.1.jar:] at org.glassfish.jersey.server.ApplicationHandler.handle(ApplicationHandler.java:1154)[jersey-server-2.25.1.jar:] at org.glassfish.jersey.servlet.WebComponent.serviceImpl(WebComponent.java:473)[jersey-container-servlet-core-2.25.1.jar:] at org.glassfish.jersey.servlet.WebComponent.service(WebComponent.java:427)[jersey-container-servlet-core-2.25.1.jar:] at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:388)[jersey-container-servlet-core-2.25.1.jar:] at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:341)[jersey-container-servlet-core-2.25.1.jar:] at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:228)[jersey-container-servlet-core-2.25.1.jar:] at org.eclipse.jetty.servlet.ServletHolder$NotAsync.service(ServletHolder.java:1443) at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:791) at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:550) at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143) at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:602) at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127) at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:235) at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1624) at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:233) at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1435) at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:188) at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:501) at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1594) at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:186) at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1350) at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141) at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:191) at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:146) at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127) at org.eclipse.jetty.server.Server.handle(Server.java:516) at org.eclipse.jetty.server.HttpChannel.lambda$handle$1(HttpChannel.java:388) at org.eclipse.jetty.server.HttpChannel.dispatch(HttpChannel.java:633) at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:380) at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:273) at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:311) at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:105) at org.eclipse.jetty.io.ChannelEndPoint$1.run(ChannelEndPoint.java:104) at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.runTask(EatWhatYouKill.java:336) at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:313) at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.tryProduce(EatWhatYouKill.java:171) at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.run(EatWhatYouKill.java:129) at org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:375) at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:773) at org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:905) at java.lang.Thread.run(Thread.java:748)[:1.8.0_212] 2023-02-28 13:22:17,943 [qtp815033865-75 ] WARN ExceptionHandler - Exception has occurred for user bob : Entity has been changed previously. Changes will cause lost updates. com.testquack.services.errors.EntityValidationException: Entity has been changed previously. Changes will cause lost updates. at com.testquack.services.BaseService.update(BaseService.java:237)[services-1.21.jar:] at com.testquack.services.BaseService.save(BaseService.java:93)[services-1.21.jar:] at com.testquack.api.resources.BaseCrudResource.update(BaseCrudResource.java:66)[file:/tmp/jetty-0_0_0_0-8080-quackwar--any-5808289650076523002/webapp/WEB-INF/classes/:] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)[:1.8.0_212] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)[:1.8.0_212] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)[:1.8.0_212] at java.lang.reflect.Method.invoke(Method.java:498)[:1.8.0_212] at org.glassfish.jersey.server.model.internal.ResourceMethodInvocationHandlerFactory$1.invoke(ResourceMethodInvocationHandlerFactory.java:81)[jersey-server-2.25.1.jar:] at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher$1.run(AbstractJavaResourceMethodDispatcher.java:144)[jersey-server-2.25.1.jar:] at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.invoke(AbstractJavaResourceMethodDispatcher.java:161)[jersey-server-2.25.1.jar:] at org.glassfish.jersey.server.model.internal.JavaResourceMethodDispatcherProvider$TypeOutInvoker.doDispatch(JavaResourceMethodDispatcherProvider.java:205)[jersey-server-2.25.1.jar:] at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.dispatch(AbstractJavaResourceMethodDispatcher.java:99)[jersey-server-2.25.1.jar:] at org.glassfish.jersey.server.model.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:389)[jersey-server-2.25.1.jar:] at org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:347)[jersey-server-2.25.1.jar:] at org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:102)[jersey-server-2.25.1.jar:] at org.glassfish.jersey.server.ServerRuntime$2.run(ServerRuntime.java:326)[jersey-server-2.25.1.jar:] at org.glassfish.jersey.internal.Errors$1.call(Errors.java:271)[jersey-common-2.25.1.jar:] at org.glassfish.jersey.internal.Errors$1.call(Errors.java:267)[jersey-common-2.25.1.jar:] at org.glassfish.jersey.internal.Errors.process(Errors.java:315)[jersey-common-2.25.1.jar:] at org.glassfish.jersey.internal.Errors.process(Errors.java:297)[jersey-common-2.25.1.jar:] at org.glassfish.jersey.internal.Errors.process(Errors.java:267)[jersey-common-2.25.1.jar:] at org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:317)[jersey-common-2.25.1.jar:] at org.glassfish.jersey.server.ServerRuntime.process(ServerRuntime.java:305)[jersey-server-2.25.1.jar:] at org.glassfish.jersey.server.ApplicationHandler.handle(ApplicationHandler.java:1154)[jersey-server-2.25.1.jar:] at org.glassfish.jersey.servlet.WebComponent.serviceImpl(WebComponent.java:473)[jersey-container-servlet-core-2.25.1.jar:] at org.glassfish.jersey.servlet.WebComponent.service(WebComponent.java:427)[jersey-container-servlet-core-2.25.1.jar:] at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:388)[jersey-container-servlet-core-2.25.1.jar:] at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:341)[jersey-container-servlet-core-2.25.1.jar:] at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:228)[jersey-container-servlet-core-2.25.1.jar:] at org.eclipse.jetty.servlet.ServletHolder$NotAsync.service(ServletHolder.java:1443) at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:791) at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:550) at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143) at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:602) at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127) at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:235) at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1624) at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:233) at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1435) at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:188) at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:501) at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1594) at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:186) at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1350) at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141) at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:191) at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:146) at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127) at org.eclipse.jetty.server.Server.handle(Server.java:516) at org.eclipse.jetty.server.HttpChannel.lambda$handle$1(HttpChannel.java:388) at org.eclipse.jetty.server.HttpChannel.dispatch(HttpChannel.java:633) at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:380) at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:273) at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:311) at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:105) at org.eclipse.jetty.io.ChannelEndPoint$1.run(ChannelEndPoint.java:104) at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.runTask(EatWhatYouKill.java:336) at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:313) at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.tryProduce(EatWhatYouKill.java:171) at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.run(EatWhatYouKill.java:129) at org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:375) at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:773) at org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:905) at java.lang.Thread.run(Thread.java:748)[:1.8.0_212] 2023-02-28 13:22:28,208 [qtp815033865-70 ] WARN ExceptionHandler - Exception has occurred for user bob : Entity has been changed previously. Changes will cause lost updates. com.testquack.services.errors.EntityValidationException: Entity has been changed previously. Changes will cause lost updates. at com.testquack.services.BaseService.update(BaseService.java:237)[services-1.21.jar:] at com.testquack.services.BaseService.save(BaseService.java:93)[services-1.21.jar:] at com.testquack.api.resources.BaseCrudResource.update(BaseCrudResource.java:66)[file:/tmp/jetty-0_0_0_0-8080-quackwar--any-5808289650076523002/webapp/WEB-INF/classes/:] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)[:1.8.0_212] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)[:1.8.0_212] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)[:1.8.0_212] at java.lang.reflect.Method.invoke(Method.java:498)[:1.8.0_212] at org.glassfish.jersey.server.model.internal.ResourceMethodInvocationHandlerFactory$1.invoke(ResourceMethodInvocationHandlerFactory.java:81)[jersey-server-2.25.1.jar:] at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher$1.run(AbstractJavaResourceMethodDispatcher.java:144)[jersey-server-2.25.1.jar:] at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.invoke(AbstractJavaResourceMethodDispatcher.java:161)[jersey-server-2.25.1.jar:] at org.glassfish.jersey.server.model.internal.JavaResourceMethodDispatcherProvider$TypeOutInvoker.doDispatch(JavaResourceMethodDispatcherProvider.java:205)[jersey-server-2.25.1.jar:] at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.dispatch(AbstractJavaResourceMethodDispatcher.java:99)[jersey-server-2.25.1.jar:] at org.glassfish.jersey.server.model.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:389)[jersey-server-2.25.1.jar:] at org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:347)[jersey-server-2.25.1.jar:] at org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:102)[jersey-server-2.25.1.jar:] at org.glassfish.jersey.server.ServerRuntime$2.run(ServerRuntime.java:326)[jersey-server-2.25.1.jar:] at org.glassfish.jersey.internal.Errors$1.call(Errors.java:271)[jersey-common-2.25.1.jar:] at org.glassfish.jersey.internal.Errors$1.call(Errors.java:267)[jersey-common-2.25.1.jar:] at org.glassfish.jersey.internal.Errors.process(Errors.java:315)[jersey-common-2.25.1.jar:] at org.glassfish.jersey.internal.Errors.process(Errors.java:297)[jersey-common-2.25.1.jar:] at org.glassfish.jersey.internal.Errors.process(Errors.java:267)[jersey-common-2.25.1.jar:] at org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:317)[jersey-common-2.25.1.jar:] at org.glassfish.jersey.server.ServerRuntime.process(ServerRuntime.java:305)[jersey-server-2.25.1.jar:] at org.glassfish.jersey.server.ApplicationHandler.handle(ApplicationHandler.java:1154)[jersey-server-2.25.1.jar:] at org.glassfish.jersey.servlet.WebComponent.serviceImpl(WebComponent.java:473)[jersey-container-servlet-core-2.25.1.jar:] at org.glassfish.jersey.servlet.WebComponent.service(WebComponent.java:427)[jersey-container-servlet-core-2.25.1.jar:] at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:388)[jersey-container-servlet-core-2.25.1.jar:] at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:341)[jersey-container-servlet-core-2.25.1.jar:] at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:228)[jersey-container-servlet-core-2.25.1.jar:] at org.eclipse.jetty.servlet.ServletHolder$NotAsync.service(ServletHolder.java:1443) at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:791) at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:550) at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143) at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:602) at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127) at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:235) at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1624) at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:233) at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1435) at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:188) at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:501) at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1594) at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:186) at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1350) at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141) at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:191) at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:146) at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127) at org.eclipse.jetty.server.Server.handle(Server.java:516) at org.eclipse.jetty.server.HttpChannel.lambda$handle$1(HttpChannel.java:388) at org.eclipse.jetty.server.HttpChannel.dispatch(HttpChannel.java:633) at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:380) at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:273) at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:311) at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:105) at org.eclipse.jetty.io.ChannelEndPoint$1.run(ChannelEndPoint.java:104) at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.runTask(EatWhatYouKill.java:336) at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:313) at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.tryProduce(EatWhatYouKill.java:171) at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.run(EatWhatYouKill.java:129) at org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:375) at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:773) at org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:905) at java.lang.Thread.run(Thread.java:748)[:1.8.0_212]