To be Reviewed By: February 22nd,  2022

Authors: Mario Kevo

Status: Draft | Discussion | Active | Dropped | Superseded

Superseded by: N/A

Related: N/A

Problem

Geode has an attribute named VisibleNodes which is described like:

  /**
   * The current number of nodes in this distributed system visible to this member.
   */
  int getVisibleNodes();

This is wrong as it represents it like it is described in DistributionStats :

final String nodesDesc = "The current number of nodes in this distributed system.";

For some users, it has “wrong” values, as it reflects the current number of nodes in the distributed member(including this member). The user wants to see a new metric that will count all members(both locators and servers) in the system visible to one of the members.

The geode ticket is GEODE-9101. There is already the PR with the solution, but the suggestion is to add a new attribute.

Anti-Goals

What is outside the scope of what the proposal is trying to solve?

Solution

Adding a new attribute to the MemberMXBean that will return a count of other members(both locators and servers) in the cluster.

Changes and Additions to Public Interfaces

None

Performance Impact

None

Backwards Compatibility and Upgrade Path

No upgrade or backwards compatibility issues.

Prior Art

What would be the alternatives to the proposed solution? What would happen if we don’t solve the problem? Why should this proposal be preferred?

FAQ

Answers to questions you’ve commonly been asked after requesting comments for this proposal.

Errata

What are minor adjustments that had to be made to the proposal since it was approved?


  • No labels

3 Comments

  1. I am for fixing the bug (GEODE-9101) instead of adding a new attribute.

    1. I agree with you.

      There is already PR #6225 with that solution. Please add your review on that.

      BR,

      Mario

  2. Please see GEODE-10358 and the test I wrote in PR #7765 to understand why removing:

    if (theId.getVmKind() != ClusterDistributionManager.LOCATOR_DM_TYPE) { 

    will result in redefining the DistributionStats nodes stat which is incorrect.

    I'm going to -1 this PR and the RFC. Thank you, Kirk