[ 
https://issues.apache.org/jira/browse/ARIES-1943?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16973363#comment-16973363
 ] 

ASF subversion and git services commented on ARIES-1943:
--------------------------------------------------------

Commit 0f48071f60263d35e55dcf7f510f06dd75018da5 in aries-rsa's branch 
refs/heads/master from Arnoud Glimmerveen
[ https://gitbox.apache.org/repos/asf?p=aries-rsa.git;h=0f48071 ]

ARIES-1943 Changed TopologyManager importer logic to not assume all referenced 
ImportRegistrations are 'open'. (#36)

* ARIES-1943 Changed TopologyManager importer logic to not assume all 
referenced ImportRegistrations are 'open'.

In addition assigned functional thread names to the ExecutorServices used by 
Importer and Exporter logic.

* Based threadName pattern on using class.

* Changed approach to naming threads, as discussed in the comments of PR #36.


> TopologyManagerImport assumes all referenced ImportRegistrations are not 
> closed
> -------------------------------------------------------------------------------
>
>                 Key: ARIES-1943
>                 URL: https://issues.apache.org/jira/browse/ARIES-1943
>             Project: Aries
>          Issue Type: Bug
>          Components: Remote Service Admin
>    Affects Versions: rsa-1.14.0
>            Reporter: Arnoud Glimmerveen
>            Priority: Major
>          Time Spent: 20m
>  Remaining Estimate: 0h
>
> When an ImportRegistration is closed, all other methods must return null. 
> Obtaining for instance the ImportReference after close is therefor not 
> possible and the associated getter is expected to return null.
> The current importer logic appears to assume that at least the 
> ImportReference can always be obtained. This holds true when assuming that 
> only a single thread performs the import task, however de current 
> implementation uses up to 10 Threads. In that case whilst one Thread is busy 
> closing an ImportRegistration, another may already have the reference to it 
> and without the check for null will run into a NPE.
> Note that apparently the Apache Aries RSA implementation does not have 
> ImportRegistration.getImportReference() return null after close, which is I 
> guess the reason why this has gone unnoticed. Looking at the 
> [spec|https://osgi.org/specification/osgi.cmpn/7.0.0/service.remoteserviceadmin.html#org.osgi.service.remoteserviceadmin.ImportRegistration]
>  this in itself should also be considered a bug.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to