- } catch (Exception e) {
- LOG.warn("Karaf featuresService.listInstalledFeatures() has thrown an exception, retry {}", retries, e);
+ // TODO This catch of ConcurrentModificationException may be able to simply be removed after
+ // we're fully on Karaf 4 only, as a comment in BUG-6787 indicates that (in Karaf 4) :
+ // "the 'installed' Map of FeaturesServiceImpl .. appears to be correctly synchronized/thread-safe".
+ // (Or, if it's still NOK, then it could be fixed properly upstream in Karaf once we're on recent.)
+ } catch (ConcurrentModificationException e) {
+ // BUG-6787 experience shows that a LOG.warn (or info) here is very confusing to end-users;
+ // as we have a retry loop anyway, there is no point informing (and confusing) users of this
+ // intermediate state of, so ... NOOP, do not log here.
+ lastException = e;