These are chat archives for atomix/atomix

27th
Jun 2018
Alexis Hernandez
@AlexITC
Jun 27 2018 21:22
I don't understand why we need two addresses for creating a NettyBroadcastService, shouldn't the group address be optional? I'm not using group partitions
Johno Crawford
@johnou
Jun 27 2018 21:23
it's for multicast
and the merge request broke NettyBroadcastServiceTest, looking into that atm
Alexis Hernandez
@AlexITC
Jun 27 2018 21:25
oh, sorry for that
as the test suite was failing before I didn't looked into that
I don't really get what I'm supposed to put there, I get this exception:
java.util.concurrent.CompletionException: java.lang.IllegalArgumentException: Group not a multicast address
    at java.util.concurrent.CompletableFuture.encodeRelay(CompletableFuture.java:326)
    at java.util.concurrent.CompletableFuture.completeRelay(CompletableFuture.java:338)
    at java.util.concurrent.CompletableFuture.uniRelay(CompletableFuture.java:911)
    at java.util.concurrent.CompletableFuture$UniRelay.tryFire(CompletableFuture.java:899)
    at java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:474)
    at java.util.concurrent.CompletableFuture.completeExceptionally(CompletableFuture.java:1977)
    at io.atomix.cluster.messaging.impl.NettyBroadcastService.lambda$null$3(NettyBroadcastService.java:208)
    at io.netty.util.concurrent.DefaultPromise.notifyListener0(DefaultPromise.java:511)
    at io.netty.util.concurrent.DefaultPromise.notifyListenersNow(DefaultPromise.java:485)
    at io.netty.util.concurrent.DefaultPromise.notifyListeners(DefaultPromise.java:424)
    at io.netty.util.concurrent.DefaultPromise.addListener(DefaultPromise.java:162)
    at io.netty.channel.DefaultChannelPromise.addListener(DefaultChannelPromise.java:95)
    at io.netty.channel.DefaultChannelPromise.addListener(DefaultChannelPromise.java:30)
    at io.atomix.cluster.messaging.impl.NettyBroadcastService.lambda$bootstrapClient$4(NettyBroadcastService.java:202)
    at io.netty.util.concurrent.DefaultPromise.notifyListener0(DefaultPromise.java:511)
    at io.netty.util.concurrent.DefaultPromise.notifyListenersNow(DefaultPromise.java:485)
    at io.netty.util.concurrent.DefaultPromise.notifyListeners(DefaultPromise.java:424)
    at io.netty.util.concurrent.DefaultPromise.trySuccess(DefaultPromise.java:103)
    at io.netty.channel.DefaultChannelPromise.trySuccess(DefaultChannelPromise.java:84)
    at io.netty.channel.AbstractChannel$AbstractUnsafe.safeSetSuccess(AbstractChannel.java:978)
    at io.netty.channel.AbstractChannel$AbstractUnsafe.bind(AbstractChannel.java:574)
    at io.netty.channel.DefaultChannelPipeline$HeadContext.bind(DefaultChannelPipeline.java:1358)
    at io.netty.channel.AbstractChannelHandlerContext.invokeBind(AbstractChannelHandlerContext.java:501)
    at io.netty.channel.AbstractChannelHandlerContext.bind(AbstractChannelHandlerContext.java:486)
    at io.netty.channel.DefaultChannelPipeline.bind(DefaultChannelPipeline.java:1019)
    at io.netty.channel.AbstractChannel.bind(AbstractChannel.java:254)
    at io.netty.bootstrap.AbstractBootstrap$2.run(AbstractBootstrap.java:366)
    at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:163)
    at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:404)
    at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:463)
    at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:884)
    at java.lang.Thread.run(Thread.java:748)
Caused by: java.lang.IllegalArgumentException: Group not a multicast address
    at sun.nio.ch.DatagramChannelImpl.innerJoin(DatagramChannelImpl.java:803)
    at sun.nio.ch.DatagramChannelImpl.join(DatagramChannelImpl.java:894)
    at io.netty.channel.socket.nio.NioDatagramChannel.joinGroup(NioDatagramChannel.java:416)
    at io.netty.channel.socket.nio.NioDatagramChannel.joinGroup(NioDatagramChannel.java:389)
    at io.netty.channel.socket.nio.NioDatagramChannel.joinGroup(NioDatagramChannel.java:382)
    ... 19 common frames omitted
in the previous version I wasn't required to set a group address
Johno Crawford
@johnou
Jun 27 2018 21:31
i think it's actually suppose to be the group port
Alexis Hernandez
@AlexITC
Jun 27 2018 21:32
really? that's confusing
Johno Crawford
@johnou
Jun 27 2018 21:34
well that's how multicast works
Alexis Hernandez
@AlexITC
Jun 27 2018 21:36
sadly, I don't remember how exactly how multicast works, based on the names I assumed it was a bug
is there a way to start the cluster without a multicast group?
Alexis Hernandez
@AlexITC
Jun 27 2018 21:47
using another address seems to work
Johno Crawford
@johnou
Jun 27 2018 21:49
ah
well NettyBroadcastService is multicast specific
it's not going to do anything unless multicast is enabled and configured
Alexis Hernandez
@AlexITC
Jun 27 2018 21:51
as I see, there is no alternative
the problem is that if multicast is disabled, I still need that address
probably I'm missing something but I feel it should be optional unless multicast is enabled, as you said
Johno Crawford
@johnou
Jun 27 2018 21:53
are you playing with atomix/atomix#662 or just using what's in master?
Alexis Hernandez
@AlexITC
Jun 27 2018 23:07
using what is in master, it seems that i have completed the migration, tomorrow I'l play with that pull request