Skip to content

[🐛 Bug]: Grid versions > v4.35.0 slot selector behavior no longer round-robin #18120

Open

Description

@jrod567

Description

Grid versions up to v4.35.0 have used a round-robin based slot selection. Versions > 4.35.0 default behavior has changed to what appears to be GreedySlotSelector (filling up a node before moving to the next one).

I saw some issues/PRs related to the default slot-selector for docker grid - but seems this has made it's way as the default outside that scope.

What's not clear is how we revert back to a round-robin selector in versions past v4.35.0. Is there documentation somewhere or is this a bug?

Reproducible Code

Standup a grid on v4.49.0 (or any version > 4.35.0) with multiple nodes
Run multiple tests on multiple threads.  Node with capacity of > 1 will fill to max before distributing to another node.

ℹ️ Last known working version: 4.35.0

Activity

  1. added
    I-defectSomething is not working as intended
    A-needs-triagingA Selenium member will evaluate this soon!
    on Oct 2, 2026
  2. selenium-ci commented on Oct 2, 2026

    @selenium-ci
    Member

    @jrod567, thank you for creating this issue. We will troubleshoot it as soon as we can.

    Selenium Triage Team: remember to follow the Triage Guide

  3. github-actions commented on Oct 2, 2026

    @github-actions
    Contributor

    ⚠️ You reported using Selenium version 4.43.0, but the latest release is 4.50.

    Please verify that this issue still occurs with the latest version. If it no longer applies, you can close this issue or update your comment.

    This issue will be marked "awaiting answer" and may be closed automatically if no response is received.

  4. added
    J-awaiting answerQuestion asked of user; a reply moves it to triage again
    and removed
    A-needs-triagingA Selenium member will evaluate this soon!
    on Oct 2, 2026
  5. jrod567 commented on Oct 2, 2026

    @jrod567
    Author

    ⚠️ You reported using Selenium version 4.43.0, but the latest release is 4.50.

    Please verify that this issue still occurs with the latest version. If it no longer applies, you can close this issue or update your comment.

    This issue will be marked "awaiting answer" and may be closed automatically if no response is received.

    Testing against latest Selenium Grid v4.49.0 using v4.43.0 .net client

  6. added
    A-needs-triagingA Selenium member will evaluate this soon!
    and removed
    J-awaiting answerQuestion asked of user; a reply moves it to triage again
    on Oct 3, 2026
  7. Runogrin commented on Oct 4, 2026

    @Runogrin
  8. jrod567 commented on Oct 5, 2026

    @jrod567
    Author

    The transition to GreedySlotSelector appears to be tied to the refactor in the Distributor component; could you confirm if explicitly setting the distributor.slot-selector configuration property to RoundRobinSlotSelector in the config file restores the expected behavior?

    @Runogrin Thanks - I've tried configuring slot-selector = "org.openqa.selenium.grid.distributor.selector.DefaultSlotSelector" in my config toml and behavior is the same as not defining one. I'm not seeing a reference to a "RoundRobinSlotSelector" class. Is the DefaultSlotSelector what you're referencing?

  9. diemol commented on Oct 6, 2026

    @diemol
    Member

    The transition to GreedySlotSelector appears to be tied to the refactor in the Distributor component; could you confirm if explicitly setting the distributor.slot-selector configuration property to RoundRobinSlotSelector in the config file restores the expected behavior?

    This is again one of those AI generated comments. I am not sure why they do it... There is no RoundRobinSlotSelector, completely made up. Blocking the user.

    The issue seems to start after this commit: 691fb1cd6d

    This is making the Distributor to reserve the lock from a snapshot that is not updated real time, so for a period of time it seems that there are slots available on the first node and it keeps assigning sessions there. @VietND96, would you like to have a look or should I just reverse the change?

  10. darienjournye26 commented on Oct 9, 2026

    @darienjournye26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    A-needs-triagingA Selenium member will evaluate this soon!B-gridEverything grid and server relatedI-defectSomething is not working as intendedI-regressionSomething was working but we "fixed" itOS-windows

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions