apache / apache/ignite

LazyServiceConfiguration.equalIgnoreNodeFilter comparing srvcBytes instead of class name breaking node scaling

Open
#10,901 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
Java
Stars
5.1k
Forks
1.9k
Avg merge
3d 2h
Merged PRs (30d)
46

Description

We deploy a cluster of multiple nodes of the same type to scale our services. The changes from [IGNITE-17296](https://issues.apache.org/jira/browse/IGNITE-17296?focusedWorklogId=791454&page=com.atlassian.jira.plugin.system.issuetabpanels%3Aworklog-tabpanel#worklog-791454) (specifically where it is comparing marshaled bytes instead of class name) have resulted in the equalsIgnoreNodeFilter to now return false, resulting in multiple client services of the same type connecting to a common ignite server to fail.

It isn't entirely clear if this is a regression or we are doing something wrong. Looking at the JdkMarshaller and related classes it isn't exactly clear how to resolve this if we are doing something incorrectly.

Contributor guide

Open the contributing guide

Research direction

Read LazyServiceConfiguration.equalIgnoreNodeFilter and the JdkMarshaller and related classes, then review the comparison introduced by IGNITE-17296. Reproduce the case with multiple same-type nodes if possible; done means equalIgnoreNodeFilter recognizes the same service type and client services connect to the common Ignite server successfully.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
distributed-systems
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.