Rails apps with puma on cluster mode not catching up flag changes when local evaluation is enabled
@zachaysan arbeitet bereits daran.
Seit 18.6.2024.
Bewertung
Dieses Issue wurde noch nicht bewertet.
Beschreibung
Context
When the following conditions are met, the local environment of the rails server does not refresh the flag states...the environment document request actually happens, tough.
- rails app
- puma (on cluster mode - even with 1 worker 1 thread)
- local evaluation enabled
- booting with
rails scommand
Steps to reproduce
- Create a new rails app
- Configure puma with cluster mode (set a value above zero for
workersonconfig/puma.rb) - Create an initializer, defining the global variable, just like the documentation shows. Local evaluation must be enabled
- boot the server with
rails s - check if the flagsmith client is responding to flag state changes on the flagsmith dashboard between every environment document request
Useful info
- Works normally with puma on single mode
- Puma worker and thread count does not matter to the issue
- On puma cluster mode, it seems like there is something wrong with the puma boot using the
bundle exec rails scommand, since runningbundle exec puma -t 1:1 -w 1:1looks fine - Worth mentioning that the local evaluation on the
rails cconsole, the normal behavior occurs - Tested on macOs Ventura 13.6.7 (M1 chip) and Ubuntu 22 (x64)
Example project
https://github.com/Guilherme2112/flagsmith-rails-example
(basic instructions at README)
- Vorherrschende Sprache
- Ruby
- Sterne
- 12
- Forks
- 7
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Entwicklungsumgebung
Dieses Projekt bietet weder Dev-Container noch Dockerfile noch Beitragsleitfaden – die Einrichtung liegt bei Ihnen. Beginnen Sie mit der README; die allgemeinen Schritte stehen in unserem Leitfaden für den ersten Beitrag.
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus Flagsmith/flagsmith-ruby-client
-
Local evaluation buckets percentage splits with the server key, so results differ from FlagsmithOffen
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 75/100
-
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 55/100
-
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 48/100
-
Dependency DashboardOffen
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 15/100
-
Local evaluation silently drops identity overrides on large environmentsEvtl. vergeben @marc-merino hat das vor 7 Tagen übernommen. Offen
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 55/100
Alle Issues in Flagsmith/flagsmith-ruby-client
Ähnliche Issues
-
agent:triaged bug bughunt pm:bundler priority:p1
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 70/100
SocketDev/socket-patch#1573 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
-
bug chat verified
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
Maintainer antworten meist innerhalb von 6 Tagen
-
🐞 bug pending triage
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
CircuitVerse/CircuitVerse#8031 · 2 Kommentare ·
Maintainer antworten meist innerhalb von 1 Tag
-
BazaRb::Fake#enter rejects dotted badges accepted by BazaRb#enterEvtl. vergeben Ein verknüpfter Pull Request ist offen oder bereits gemergt. Offen
Schwierigkeit 1/5 1-3 Stunden Anfängerfreundlichkeit 84/100
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 70/100
riscv/riscv-unified-db#2740 ·
Maintainer antworten meist innerhalb von 1 Tag