felix-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Renat Sabitov (JIRA)" <j...@apache.org>
Subject [jira] [Created] (FELIX-5485) ServiceReference#getUsingBundles() returns usages with 0 count
Date Tue, 10 Jan 2017 06:07:58 GMT
Renat Sabitov created FELIX-5485:

             Summary: ServiceReference#getUsingBundles() returns usages with 0 count
                 Key: FELIX-5485
                 URL: https://issues.apache.org/jira/browse/FELIX-5485
             Project: Felix
          Issue Type: Bug
          Components: Framework
    Affects Versions: framework-5.6.0
            Reporter: Renat Sabitov

Javadoc for ServiceReference#getUsingBundles() states 

Specifically, this method returns the bundles whose usage count for that service is greater
than zero.

However, the implementation uses ServiceRegistry#getUsingBundles(ServiceReference<?>
ref), which returns usages even if usage count is 0. 

The usage count is 0, because ServiceRegistry#ungetService doesn't call ServiceRegistry#flushUsageCount
for non-prototype services:

                // If the registration is invalid or the usage count for a prototype
                // reached zero, then flush it. Non-prototype services are not flushed
                // on ungetService() when they reach 0 as this introduces a race
                // condition of concurrently the same service is obtained via getService()


ServiceReference#getUsingBundles() doesn't return usages with 0 count

This message was sent by Atlassian JIRA

View raw message