Hacktoberfest 2026: die Issues, die Maintainer für den Oktober markiert haben – offen und einsteigerfreundlich. Hacktoberfest-Issues durchsuchen

Bug: Metrics constructor mutates the Configuration object passed to it

Offen
#292 0 Kommentare 1 Reaktion 0 zugewiesene Personen Auf GitHub ansehen

Maintainer antworten meist innerhalb von 1 Tag

Dieses Issue hat noch niemand übernommen.

Bewertung

Schwierigkeit
3/5
Geschätzter Aufwand
1-2 Tage
Anfängerfreundlichkeit
45/100
Issue-Typ
Bug
Klarheit
Größtenteils klar
Aktivitätsstatus
Veraltet
Tech-Stack
java
Bereich
observability

Rechercherichtung

Beginne mit dem Lesen von src/main/java/dev/openfga/sdk/telemetry/Metrics.java:30-32 und untersuche, wie Configuration und TelemetryConfiguration erstellt werden. Bestätige, dass der gewählte Fix verhindert, dass Metrics die Configuration des Aufrufers verändert, während eine null-Telemetrie-Konfiguration sicher behandelt wird, und berücksichtige, dass die Telemetrieinstanz den Kontext aus PR #290 teilt.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

bug

Summary

In src/main/java/dev/openfga/sdk/telemetry/Metrics.java:30-32, the Metrics constructor silently mutates the caller's Configuration:

if (this.configuration.getTelemetryConfiguration() == null) {
    this.configuration.telemetryConfiguration(new TelemetryConfiguration());
}

Impact

  • Side effect in constructor — Constructors should not modify their inputs.
  • Shared Configuration objects are unsafe — If a Configuration is shared across contexts, one path creating Metrics will silently add a TelemetryConfiguration that affects all other users of that object.

Proposed Fix

Instead of mutating the configuration, handle the null case defensively in the methods that read telemetry config. Alternatively, ensure a non-null default TelemetryConfiguration is set during Configuration construction so the null check is never needed.

Related

  • PR #290 (telemetry instance sharing fix)
Vorherrschende Sprache
Java
Sterne
54
Forks
26
Ø Merge
2 T. 10 Std.
Gemergte PRs (30 T.)
10

Entwicklungsumgebung

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus openfga/java-sdk

Alle Issues in openfga/java-sdk

Ähnliche Issues

Weitere Issues zu Java

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.