You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
If Quarkus application invokes a PUT request on the down Infinispan server, the request appears later when the server is running again.
The behavior is unexpected because the cache changes (or the request is processed) even after the client closed the connection, mainly it is a problem when running in OpenShift environment, where the request times out after 30 seconds (default setting openshift-router), and yet there this request remains and is processed after the Datagrid is connected (which may be beyond the control of the application administrator, eg. in case of disconnecting the node).
Steps to reproduce the behavior:
The first scenario
1.
$ git clone https://github.com/mirostary/simple-infinispan.git
$ cd simple-infinispan
$ docker run --rm -it --name simple-infinispan -e USER="test" -e PASS="test" -p 11222:11222 infinispan/server:latest
$ mvn clean install quarkus:dev
$ curl -X PUT http://localhost:8080/counter/increment-counters
$ curl -X GET http://localhost:8080/counter/get-client // 1
$ curl -X GET http://localhost:8080/counter/get-cache // 1
$ docker pause simple-infinispan
$ curl -X PUT http://localhost:8080/counter/increment-counters
It will get stuck but the "get-client" counter will be "2"
The gist of it is you're suspending the Infinispan server container, but the connection you're interrupting is from curl to the simple-infinispan application, and the interruption doesn't stop the application from doing whatever it started to do with the server.
@danberindei Thank you for the explanation, We've configured a hotrod client. Since this an expected behavior, It may be good to add more about this to the documentation Quarkus - Infinispan Client. It could prevent some problems, for example in OpenShift, there are the request times in default out after 30 seconds.
If Quarkus application invokes a PUT request on the down Infinispan server, the request appears later when the server is running again.
The behavior is unexpected because the cache changes (or the request is processed) even after the client closed the connection, mainly it is a problem when running in OpenShift environment, where the request times out after 30 seconds (default setting openshift-router), and yet there this request remains and is processed after the Datagrid is connected (which may be beyond the control of the application administrator, eg. in case of disconnecting the node).
Steps to reproduce the behavior:
The first scenario
1.
The second scenario
The same steps 1, 2, 3, and then
the "get-cache" is 1
$ curl -X GET http://localhost:8080/counter/get-cache // 2
but when I call it again (without anything else) it is 2
The text was updated successfully, but these errors were encountered: