• Icon: Bug Bug
    • Resolution: Fixed
    • Icon: Low Low
    • 2.9.1
    • 2.9.1
    • None
    • None

      Since CWD-4463, RestExecutor actually creates two connection managers, one for itself and another one to construct the HttpClient. This is a bug. Only one is correctly configured and only one is shutdown when required.

          Form Name

            [CWD-4486] RestExecutor creates two connection managers

            The solution for the actual bug is to ensure that only one instance of the connection manager is created, and its lifecycle is managed by the RestExecutor (or more precisely, by its subclasses). This instance never leaks outside the RestExecutor.

            At the same time, we noticed that the class ShutdownIgnoringHttpClientConnectionManager class (introduced in 6477c079dad0931129f892a327defd3f403ddcea because of https://ecosystem.atlassian.net/browse/FISH-411) is no longer necessary since CWD-2942 upgraded to HttpComponents/Client 4.x, which does not have the problematic static method shutdownAll().

            Diego Berrueta added a comment - The solution for the actual bug is to ensure that only one instance of the connection manager is created, and its lifecycle is managed by the RestExecutor (or more precisely, by its subclasses). This instance never leaks outside the RestExecutor. At the same time, we noticed that the class ShutdownIgnoringHttpClientConnectionManager class (introduced in 6477c079dad0931129f892a327defd3f403ddcea because of https://ecosystem.atlassian.net/browse/FISH-411 ) is no longer necessary since CWD-2942 upgraded to HttpComponents/Client 4.x, which does not have the problematic static method shutdownAll() .

              dberrueta Diego Berrueta
              dberrueta Diego Berrueta
              Affected customers:
              0 This affects my team
              Watchers:
              2 Start watching this issue

                Created:
                Updated:
                Resolved: