Return-Path: X-Original-To: archive-asf-public-internal@cust-asf2.ponee.io Delivered-To: archive-asf-public-internal@cust-asf2.ponee.io Received: from cust-asf.ponee.io (cust-asf.ponee.io [163.172.22.183]) by cust-asf2.ponee.io (Postfix) with ESMTP id C47E6200ACA for ; Thu, 9 Jun 2016 19:52:22 +0200 (CEST) Received: by cust-asf.ponee.io (Postfix) id C337D160A5C; Thu, 9 Jun 2016 17:52:22 +0000 (UTC) Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by cust-asf.ponee.io (Postfix) with SMTP id 16EF6160A29 for ; Thu, 9 Jun 2016 19:52:21 +0200 (CEST) Received: (qmail 14978 invoked by uid 500); 9 Jun 2016 17:52:21 -0000 Mailing-List: contact dev-help@felix.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@felix.apache.org Delivered-To: mailing list dev@felix.apache.org Received: (qmail 14943 invoked by uid 99); 9 Jun 2016 17:52:21 -0000 Received: from arcas.apache.org (HELO arcas) (140.211.11.28) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 09 Jun 2016 17:52:21 +0000 Received: from arcas.apache.org (localhost [127.0.0.1]) by arcas (Postfix) with ESMTP id 0EC7E2C14F8 for ; Thu, 9 Jun 2016 17:52:21 +0000 (UTC) Date: Thu, 9 Jun 2016 17:52:21 +0000 (UTC) From: "David Jencks (JIRA)" To: dev@felix.apache.org Message-ID: In-Reply-To: References: Subject: [jira] [Commented] (FELIX-5270) [DS] Config race between update and delete MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 archived-at: Thu, 09 Jun 2016 17:52:23 -0000 [ https://issues.apache.org/jira/browse/FELIX-5270?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15322977#comment-15322977 ] David Jencks commented on FELIX-5270: ------------------------------------- After discussion with the osgi cpeg expert group (cf https://osgi.org/members/bugzilla/show_bug.cgi?id=2909) we decided the spec will indicate that it takes no position on whether DS should set the bundle location. Therefore the solution here is for felix ds not to ever set the bundle location, but continue to check that any existing bundle location is compatible with any component we consider supplying with the configuration. > [DS] Config race between update and delete > ------------------------------------------ > > Key: FELIX-5270 > URL: https://issues.apache.org/jira/browse/FELIX-5270 > Project: Felix > Issue Type: Bug > Components: Declarative Services (SCR) > Affects Versions: scr-2.0.2 > Reporter: David Jencks > Assignee: David Jencks > Fix For: scr-2.0.4 > > > Thanks to Fabian Lange for reporting this problem and providing logging that shows what is going on. > The first getConfiguration when the location is not set generates a LocationChanged event. When we get such an event, we get the configuration to see what happened. > DS: (either from query or initial CM_UPDATED event) calls getConfiguration, setting the bundle location and generating a CM_LOCATION_CHANGED event. > User: delete configuration, setting the properties to null > DS: receive CM_LOCATION_CHANGED, call getConfiguration (incidentally recreating the configuration) and get configuration with null properties and a location. We then throw: > if (configInfo.getProps() == null) > { > throw new IllegalStateException("Existing Configuration with pid " + pid + > " has had its properties set to null and location changed. We expected a delete event first."); > } -- This message was sent by Atlassian JIRA (v6.3.4#6332)