hazelcast / hazelcast-eureka

Hazelcast Discovery SPI Plugin for Netflix' Eureka Service Discovery V1
Other
30 stars 27 forks source link

Netflix Eureka 2.0 compatibility #204

Open tvarga81-cxn opened 1 year ago

tvarga81-cxn commented 1 year ago

Hello,

The Netflix Eureka client 2.0.0 was released in December 2022: https://github.com/Netflix/eureka/releases/tag/v2.0.0 It seems to be incompatible with the Hazelcast Eureka discovery. Will it be fixed soon?

The constructor of the DiscoveryClient changed: "The DiscoveryClient constructors have been updated to have a new required TransportClientFactories parameter." The EurekaOneDiscoveryStrategy class calls the old constructor with two parameters, which was removed, so the call fails.

Here is our stack trace:

2023-02-13T15:22:45.947Z ERROR 1 --- [ main] com.hazelcast.instance.impl.Node : [10.0.1.19]:5701 [dev] [5.2.1] Node creation failed java.lang.NoSuchMethodError: 'void com.netflix.discovery.DiscoveryClient.<init>(com.netflix.appinfo.ApplicationInfoManager, com.netflix.discovery.EurekaClientConfig)' at com.hazelcast.eureka.one.EurekaOneDiscoveryStrategy.<init>(EurekaOneDiscoveryStrategy.java:182) ~[hazelcast-eureka-one-2.0.1.jar:na] at com.hazelcast.eureka.one.EurekaOneDiscoveryStrategy.<init>(EurekaOneDiscoveryStrategy.java:64) ~[hazelcast-eureka-one-2.0.1.jar:na] at com.hazelcast.eureka.one.EurekaOneDiscoveryStrategy$EurekaOneDiscoveryStrategyBuilder.build(EurekaOneDiscoveryStrategy.java:126) ~[hazelcast-eureka-one-2.0.1.jar:na] at com.hazelcast.eureka.one.EurekaOneDiscoveryStrategyFactory.newDiscoveryStrategy(EurekaOneDiscoveryStrategyFactory.java:56) ~[hazelcast-eureka-one-2.0.1.jar:na] at com.hazelcast.spi.discovery.impl.DefaultDiscoveryService.buildDiscoveryStrategy(DefaultDiscoveryService.java:195) ~[hazelcast-5.2.1.jar:5.2.1] at com.hazelcast.spi.discovery.impl.DefaultDiscoveryService.loadDiscoveryStrategies(DefaultDiscoveryService.java:141) ~[hazelcast-5.2.1.jar:5.2.1] at com.hazelcast.spi.discovery.impl.DefaultDiscoveryService.<init>(DefaultDiscoveryService.java:58) ~[hazelcast-5.2.1.jar:5.2.1] at com.hazelcast.spi.discovery.impl.DefaultDiscoveryServiceProvider.newDiscoveryService(DefaultDiscoveryServiceProvider.java:29) ~[hazelcast-5.2.1.jar:5.2.1] at com.hazelcast.instance.impl.Node.createDiscoveryService(Node.java:360) ~[hazelcast-5.2.1.jar:5.2.1] at com.hazelcast.instance.impl.Node.<init>(Node.java:281) ~[hazelcast-5.2.1.jar:5.2.1] at com.hazelcast.instance.impl.HazelcastInstanceImpl.createNode(HazelcastInstanceImpl.java:149) ~[hazelcast-5.2.1.jar:5.2.1] at com.hazelcast.instance.impl.HazelcastInstanceImpl.<init>(HazelcastInstanceImpl.java:118) ~[hazelcast-5.2.1.jar:5.2.1] at com.hazelcast.instance.impl.HazelcastInstanceFactory.constructHazelcastInstance(HazelcastInstanceFactory.java:217) ~[hazelcast-5.2.1.jar:5.2.1] at com.hazelcast.instance.impl.HazelcastInstanceFactory.getOrCreateHazelcastInstance(HazelcastInstanceFactory.java:114) ~[hazelcast-5.2.1.jar:5.2.1] at com.hazelcast.core.Hazelcast.getOrCreateHazelcastInstance(Hazelcast.java:169) ~[hazelcast-5.2.1.jar:5.2.1]

Thanks

rjunqueira commented 1 year ago

Hello,

Here i have pushed my updated version : https://github.com/rjunqueira/hazelcast-eureka

Feel free to make returns (i have updated to jdk17 too)

tvarga81-cxn commented 1 year ago

Hello,

Thank you for the quick fix! We see that the change is waiting to be merged. Do you have any information when it will be released?

Thank you

rjunqueira commented 1 year ago

Hello,

No info.

We have to wait for Hazelcast maintainers

Regards

hasancelik commented 1 year ago

Hi @rjunqueira,

Thanks for the PR.

We do not have any item on our roadmap for 2.0 support. Currently, we are evaluating this option with the team. I will make sure to keep you posted.

cc: @tvarga81