Checkout Tools
  • last updated 8 hours ago
Constraints: committers
Constraints: files
Constraints: dates

Changeset 1546540 is being indexed.

FELIX-4334: When a dependency is modified, the component "change" callback must be invoked

if the dependency service "isInstantiated()" method is true. Indeed, changed callbacks

shall be invoked even if the component is in the "waiting for required (instantiated)" state.

FELIX-3910: Renamed some methods/class attributes starting with an underscore.

Rewrote the debug logging methods from single method with m_debug check to m_debug check at all places where debug logging is done. The single method caused a performance hit.
FELIX-4285: Remove abstract modifier from DependencyActivatorBase.destroy()

FELIX-3910: Moved inherited m_serviceInstance attribute to this class. Made protected the getService method.

FELIX-3910: Refactored public methods with the BlockingSerialExecutor class. Made protected the getService method.

Moved all public methods at the top of the class.

FELIX-3910: Made final or volatile some class attributes, which are set from synchronized setters,

but possibly read from unsynchronized getters.

FELIX-3910: Added new SerialExecutor, which blocks other invokers while a leader is executing a task.

The executor is reentrant: when one leader executing thread reschedule some runnables, the tasks are executed directly

in the leader caller thread.

    • ?
Removed unused import.
Modified ServiceDependencyImpl debug logging to also include the debugKey in the actual log messages.
Changed map of tracked items to a LinkedHashMap to make the ServiceTracker behavior on close more deterministic.
Aligned singleContextLog system property with naming convention of all other dm system properties.
ServiceTracker did note take the trackAllAspects setting into account in the setInitial method causing the ServiceDependencyImpl to remove rather than swap services in some occasions.
Removed unused import.
Small performance improvement in SerialExecutor trough preventing exceptions.
FELIX-4186: Fixed NPE in dependency manager Logger.

Improved the logging option allowing to log bad performing service lookups (filters possible eligible for indexing).
FELIX-4226 Add option to have the dependency manager log against a single BundleContext's LogService.
Added a null check since the current version fails on Java 1.7 which does not allow null additions on a TreeSet.
removed use of AtomicLong in BundleContextInterceptor since it's a 1.5+ feature.
Resolved FELIX-4014 (possible deadlock on ServiceDependencyImpl.handleAspectAwareRemoved), FELIX-4097 (debug logging in ServiceDependency), FELIX-4098 (wrong swap order with multiple threads), FELIX-4099 (support for negate in multi property filter index).

  1. ./apache/felix/dm/impl/index/multiproperty
    • ?
Fixed a race condition which allowed two threads to start taking items from the serial queue.
Added several bits of javadoc to the public API methods.
FELIX-3402 Applied a slightly modified version of the patch.
Missing license header and some whitespace fixes.
FELIX-3828 Fixed both the Adapter and the Aspect filter index.
Several small performance enhancements.
FELIX-3592 Also copy the name of the swapped callback in the constructor of ServiceDependencyImpl.
FELIX-3564: Fixed memory leak in ServiceRegistryCache
A couple of fixes to prevent deadlocks where we were calling out to the framework whilst holding a lock. This seems to fix some issues in FELIX-3337 (which was failing on trunk, even though it had been resolved before) and hopefully prevents some deadlocks for which we currently have no tests.