felix-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "J.W. Janssen (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (FELIX-4385) NPE in Configuration Admin Service when deleting configuration
Date Fri, 31 Jan 2014 14:46:15 GMT

    [ https://issues.apache.org/jira/browse/FELIX-4385?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13887803#comment-13887803

J.W. Janssen commented on FELIX-4385:

Patch looks sound to me. 

The only things I saw in your itest was that the {{parallelism}} variable will always least
10? I'd suspect it would be at least all of the available processors?

> NPE in Configuration Admin Service when deleting configuration
> --------------------------------------------------------------
>                 Key: FELIX-4385
>                 URL: https://issues.apache.org/jira/browse/FELIX-4385
>             Project: Felix
>          Issue Type: Bug
>          Components: Configuration Admin
>    Affects Versions: configadmin-1.8.2
>            Reporter: Pierre De Rop
>         Attachments: FELIX-4385-integrationtest.tgz, FELIX-4385.patch
> While writing a test for Apache Felix DependencyManager, I came across the following
exception from ConfigAdmin 1.8.0 (under high load):
> {code}
> ERROR - CM Configuration Updater (Delete: pid=Aspect2.pid23) : Unexpected problem providing
configuration Aspect2.pid23 to service [org.osgi.service.cm.ManagedService, id=117, bundle=26/local]
- java.lang.NullPointerException
>         at java.lang.StringBuffer.<init>(StringBuffer.java:120)
>         at org.apache.felix.cm.impl.ConfigurationManager.getTargetedConfiguration(ConfigurationManager.java:523)
>         at org.apache.felix.cm.impl.ConfigurationManager$ConfigurationProvider.provideReplacement(ConfigurationManager.java:1666)
>         at org.apache.felix.cm.impl.ConfigurationManager$DeleteConfiguration.run(ConfigurationManager.java:1816)
>         at org.apache.felix.cm.impl.UpdateThread.run(UpdateThread.java:103)
>         at java.lang.Thread.run(Thread.java:722)
> {code}
> I suspect that this NPE occurs in the following scenario:
> 1- one ManagedService listening to a given configuration pid is being unregistered (from
one thread)
> 2- concurrently, another thread is deleting the Configuration for the same PID the ManagedService
was registered for.
> I never wrote some test cases for configuration admin sub-project but I will try to write
one in order to reproduce the issue.
> For now, I'm using the attached patch, which seems to fix the problem.

This message was sent by Atlassian JIRA

View raw message