Get app list return error:Connection closed prematurely (part 2)
See original GitHub issueAs apparently nobody is looking at the advertised re-opening at #833, I want to create an own new issue for it, providing the following further details:
Promregator is an application that uses the cf-java-client. @dschroe reported an issue at Promregator, which I believe is very similar to #833. He is capable of reproducing it quite regularly; I was able to reproduce it having debugging mode enabled once by chance. I am attaching the log file, which I could get hold of. The coding which is executed can mainly be reviewed at https://github.com/promregator/promregator/blob/c7f1613d9f332cb2ce1a1c562c18328e03aec2f5/src/main/java/org/cloudfoundry/promregator/cfaccessor/ReactiveCFAccessorImpl.java:
- The setup procedure of the connection can be found at https://github.com/promregator/promregator/blob/c7f1613d9f332cb2ce1a1c562c18328e03aec2f5/src/main/java/org/cloudfoundry/promregator/cfaccessor/ReactiveCFAccessorImpl.java#L175
- The issue happens already with the first business call, which is triggered by https://github.com/promregator/promregator/blob/c7f1613d9f332cb2ce1a1c562c18328e03aec2f5/src/main/java/org/cloudfoundry/promregator/cfaccessor/ReactiveCFAccessorImpl.java#L231. The latter mainly consists of
ListOrganizationsRequest orgsRequest = ListOrganizationsRequest.builder().name(orgName).build(); this.cloudFoundryClient.organizations().list(orgsRequest);
- Based on the result returned, further operations would be requested (based the that Mono) afterwards. In sum, we can expect that roughly 12 operations will be triggered.
- The
IOException
is raised on the response ofthis.cloudFoundryClient.organizations().list(or)
. You can verify this due to the error messageRetrieval of retrieveOrgId with key ibm@schmoigl-online.de raised a reactor error
which you find in the log, which is triggered by https://github.com/promregator/promregator/blob/c7f1613d9f332cb2ce1a1c562c18328e03aec2f5/src/main/java/org/cloudfoundry/promregator/cfaccessor/ReactiveCFAccessorImpl.java#L212
I tried to understand what is happening based on the verbose logs attached. What makes me wondering are the log messages at 2018-05-26 16:44:38.566 and later, which read: egistering close event to pool release:
Acquired [id: 0x691802ab, L:/192.168.1.130:58972 - R:api.eu-gb.bluemix.net/2.23.183.41:443], now 15 active connections
[...]
Acquired [id: 0x3a462b0e, L:/192.168.1.130:58973 - R:api.eu-gb.bluemix.net/2.23.183.41:443], now 16 active connections
[...]
Released [id: 0xdc193d2b, L:/192.168.1.130:58958 ! R:api.eu-gb.bluemix.net/2.23.183.41:443], now 15 active connections
Released [id: 0x2afce4a0, L:/192.168.1.130:58960 ! R:api.eu-gb.bluemix.net/2.23.183.41:443], now 14 active connections
Released [id: 0x2ae976b1, L:/192.168.1.130:58961 ! R:api.eu-gb.bluemix.net/2.23.183.41:443], now 13 active connections
This makes me puzzled, because we even did not receive an answer from this.cloudFoundryClient.organizations().list(or);
yet - even worse, we even did not send the request, yet! The only request which was sent, was the API standard request, which reads GET / HTTP/1.1
.
Oh, before I forget: Version of cloudfoundry-client
in use is 3.3.0.RELEASE.
Could you please assist in looking at the logs and help understanding what is going wrong here?
Thanks!
Issue Analytics
- State:
- Created 5 years ago
- Comments:8 (2 by maintainers)
I’ve just published v3.11.0.RELEASE, which should be making its way to a repo near you shortly. I think the first thing to do is update to that version, as there have been a few changes in reactor that might address your problem. And if not at least I can’t use an outdated version as an excuse!
@dschroe: Could you reproduce this issue in the meantime somehow? Or was that fixed together with https://github.com/promregator/promregator/issues/59#issuecomment-399710269?