[jboss-jira] [JBoss JIRA] (JGRP-2332) Port of JGroups to Quarkus
Bela Ban (Jira)
issues at jboss.org
Tue Mar 19 10:09:00 EDT 2019
[ https://issues.jboss.org/browse/JGRP-2332?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13710303#comment-13710303 ]
Bela Ban commented on JGRP-2332:
--------------------------------
The tasks that were identified this morning are:
* TP.timer needs to be created in TP.start(), _not_ TP.init(). The issue is that other protocols fetch a ref to timer in their init()/start() methods and throw an exception if null
* The MulticastSocket() constructor throw an exception on setOption(REUSE_ADDRESS) [IIRC!]. This is probably a GraalVM issue, but we're using TCP for now. Alternatively find a Multicast constructor which doesn't call setOption() on the socket
* Diagnostics needs to be disable as it's also using a MulticastSocket
* Protocol.setValue()/getValue() uses reflection: either provide setters/getters or list these 2 methods in a reflection JSON file, to be used with {{native-image}}.
* JMX needs to be disabled. This was not an issue in the port, as the demo doesn't enable JMX. Probably split the impl out into interfaces and provide a real- and a mock-implementation.
* ClassConfigurator.init() loads all classes defined in protocol-ids.xml and magic-map.xml. This is not a showstopper, but increases the size of the executable.
* Look into logging (use the JDK logger?)
* Next step: port back as many changes as possible and port UPerf as well: measure perf run in native versus Java mode
> Port of JGroups to Quarkus
> --------------------------
>
> Key: JGRP-2332
> URL: https://issues.jboss.org/browse/JGRP-2332
> Project: JGroups
> Issue Type: Task
> Reporter: Bela Ban
> Assignee: Bela Ban
> Priority: Major
> Fix For: 4.0.20
>
>
> Port JGroups to Quarkus [1].
> This is a quick and dirty port, to see what needs to be done.
> The goal is to identify changes which can be ported back to JGroups proper to make this port as easy as possible.
> Example: since JMX is not supported, separate JMX into a set of interfaces and 2 implementations: the default impl which is used when JGroups runs on a regular JVM, and another one used when run on GraalVM.
> This is currently scheduled for 4.x, but may as well end up being done in 5.x
> [1] https://quarkus.io
--
This message was sent by Atlassian Jira
(v7.12.1#712002)
More information about the jboss-jira
mailing list