aries-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "ASF subversion and git services (Jira)" <j...@apache.org>
Subject [jira] [Commented] (ARIES-1943) TopologyManagerImport assumes all referenced ImportRegistrations are not closed
Date Wed, 13 Nov 2019 14:05:00 GMT

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

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)

Mime
View raw message