testcontainers / testcontainers/testcontainers-java

ContainerDatabaseDriver could use its own ClassLoader

Offen
#3,735 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Vorherrschende Sprache
Java
Sterne
8.7k
Forks
1.9k
Ø Merge
2 T. 17 Std.
Gemergte PRs (30 T.)
9

Beschreibung

Basic ServiceLoader#load() signature uses Thread#currentThread()#getContextClassLoader(), which doesn't account for situations where ContainerDatabaseDriver has been provided in a modular fashion. It seems reasonable to require that the various JdbcDatabaseContainerProvider implementations live in the same ClassLoader as the driver class itself.

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Finde ContainerDatabaseDriver und untersuche seinen Aufruf von ServiceLoader#load() sowie den Ladepfad von JdbcDatabaseContainerProvider. Prüfe, wie sich der Classloader des Treibers und der Thread-Context-Classloader in modularen Setups unterscheiden. Die Aufgabe ist abgeschlossen, wenn Provider aus dem Classloader des Treibers geladen werden und eine Regressionstestabdeckung dieses Verhalten verifiziert.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

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

Neue Issues direkt in Ihr Postfach

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