Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Speed up leader search #320

Merged
merged 23 commits into from
Oct 18, 2024
Merged

Commits on Sep 24, 2024

  1. Remember the address of the last known leader

    Signed-off-by: Cole Miller <cole.miller@canonical.com>
    cole-miller committed Sep 24, 2024
    Configuration menu
    Copy the full SHA
    55d1495 View commit details
    Browse the repository at this point in the history
  2. Introduce a reusable leader connection

    Signed-off-by: Cole Miller <cole.miller@canonical.com>
    cole-miller committed Sep 24, 2024
    Configuration menu
    Copy the full SHA
    3bd3a69 View commit details
    Browse the repository at this point in the history

Commits on Sep 30, 2024

  1. Always try to connect at least once

    This makes it easier to inject and test connection attempt failures.
    
    Signed-off-by: Cole Miller <cole.miller@canonical.com>
    cole-miller committed Sep 30, 2024
    Configuration menu
    Copy the full SHA
    0aa753b View commit details
    Browse the repository at this point in the history
  2. Move leader tracking information to Protocol

    Signed-off-by: Cole Miller <cole.miller@canonical.com>
    cole-miller committed Sep 30, 2024
    Configuration menu
    Copy the full SHA
    9db8e48 View commit details
    Browse the repository at this point in the history
  3. Refactor generation of retry strategies

    Signed-off-by: Cole Miller <cole.miller@canonical.com>
    cole-miller committed Sep 30, 2024
    Configuration menu
    Copy the full SHA
    87297e8 View commit details
    Browse the repository at this point in the history
  4. More comprehensive/principled leader tracker testing

    Signed-off-by: Cole Miller <cole.miller@canonical.com>
    cole-miller committed Sep 30, 2024
    Configuration menu
    Copy the full SHA
    1b43389 View commit details
    Browse the repository at this point in the history
  5. Client-level test of connection reuse

    Signed-off-by: Cole Miller <cole.miller@canonical.com>
    cole-miller committed Sep 30, 2024
    Configuration menu
    Copy the full SHA
    33bf955 View commit details
    Browse the repository at this point in the history
  6. Names, docs

    Signed-off-by: Cole Miller <cole.miller@canonical.com>
    cole-miller committed Sep 30, 2024
    Configuration menu
    Copy the full SHA
    4d3510c View commit details
    Browse the repository at this point in the history
  7. Don't remain client field

    Signed-off-by: Cole Miller <cole.miller@canonical.com>
    cole-miller committed Sep 30, 2024
    Configuration menu
    Copy the full SHA
    021b0b1 View commit details
    Browse the repository at this point in the history
  8. Clean up change to dqlite-demo.go

    Signed-off-by: Cole Miller <cole.miller@canonical.com>
    cole-miller committed Sep 30, 2024
    Configuration menu
    Copy the full SHA
    69140bc View commit details
    Browse the repository at this point in the history
  9. Fixup

    Signed-off-by: Cole Miller <cole.miller@canonical.com>
    cole-miller committed Sep 30, 2024
    Configuration menu
    Copy the full SHA
    ca72e1a View commit details
    Browse the repository at this point in the history
  10. Fixup

    Signed-off-by: Cole Miller <cole.miller@canonical.com>
    cole-miller committed Sep 30, 2024
    Configuration menu
    Copy the full SHA
    cf404cc View commit details
    Browse the repository at this point in the history

Commits on Oct 1, 2024

  1. Clean up diff a bit more

    Signed-off-by: Cole Miller <cole.miller@canonical.com>
    cole-miller committed Oct 1, 2024
    Configuration menu
    Copy the full SHA
    a914e16 View commit details
    Browse the repository at this point in the history

Commits on Oct 10, 2024

  1. Move leader tracking to protocol.Connector

    Signed-off-by: Cole Miller <cole.miller@canonical.com>
    cole-miller committed Oct 10, 2024
    Configuration menu
    Copy the full SHA
    71628fa View commit details
    Browse the repository at this point in the history
  2. Fix up tests

    Signed-off-by: Cole Miller <cole.miller@canonical.com>
    cole-miller committed Oct 10, 2024
    Configuration menu
    Copy the full SHA
    ff43520 View commit details
    Browse the repository at this point in the history

Commits on Oct 11, 2024

  1. Take advantage of leader tracking for App

    Signed-off-by: Cole Miller <cole.miller@canonical.com>
    cole-miller committed Oct 11, 2024
    Configuration menu
    Copy the full SHA
    0da97bb View commit details
    Browse the repository at this point in the history
  2. Docs

    Signed-off-by: Cole Miller <cole.miller@canonical.com>
    cole-miller committed Oct 11, 2024
    Configuration menu
    Copy the full SHA
    30922ad View commit details
    Browse the repository at this point in the history
  3. Drop embedded LeaderTracker

    Signed-off-by: Cole Miller <cole.miller@canonical.com>
    cole-miller committed Oct 11, 2024
    Configuration menu
    Copy the full SHA
    b3c99ba View commit details
    Browse the repository at this point in the history
  4. Fixes

    First, avoid infinite recursion when logging in connectAttemptOne.
    
    Second, fix the tests by logging the error from Semaphore.Acquire. It
    seems that before we bumped the version of golang.org/x/sync/semaphore,
    this type didn't honor the context deadline, hence why the tests were
    fine for me locally without merging in the go.mod updates that are on
    master.
    
    Signed-off-by: Cole Miller <cole.miller@canonical.com>
    cole-miller committed Oct 11, 2024
    Configuration menu
    Copy the full SHA
    42dfb37 View commit details
    Browse the repository at this point in the history

Commits on Oct 16, 2024

  1. Unified client connector

    Signed-off-by: Cole Miller <cole.miller@canonical.com>
    cole-miller committed Oct 16, 2024
    Configuration menu
    Copy the full SHA
    162c3e5 View commit details
    Browse the repository at this point in the history

Commits on Oct 18, 2024

  1. Don't expose shared leader connections for now

    Signed-off-by: Cole Miller <cole.miller@canonical.com>
    cole-miller committed Oct 18, 2024
    Configuration menu
    Copy the full SHA
    b09c87b View commit details
    Browse the repository at this point in the history
  2. Document client connector

    Signed-off-by: Cole Miller <cole.miller@canonical.com>
    cole-miller committed Oct 18, 2024
    Configuration menu
    Copy the full SHA
    58fc6e5 View commit details
    Browse the repository at this point in the history
  3. Some more docs

    Signed-off-by: Cole Miller <cole.miller@canonical.com>
    cole-miller committed Oct 18, 2024
    Configuration menu
    Copy the full SHA
    cf3c248 View commit details
    Browse the repository at this point in the history