testcontainers / testcontainers/testcontainers-java

Testcontainers build fails - MySQL, DB2, ... impacted by removal of TLS<1.2 in `adopt@1.11.0-11`

Aperta
#4,058 4 commenti 1 reazione 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

modules/jdbc type/test-improvement
Lingua principale
Java
Stelle
8.7k
Fork
1.9k
Merge medio
2g 17h
PR unite (30g)
9

Descrizione

It seems that some of our tests are now failing on CI, and I've correlated this to adopt@1.11.0-11 JDK. Note that this is not a problem when using adopt@1.11.0-10, so it seems that a deprecation might be triggering this

Caused by:
                javax.net.ssl.SSLHandshakeException: No appropriate protocol (protocol is disabled or cipher suites are inappropriate)
                    at java.base/sun.security.ssl.HandshakeContext.<init>(HandshakeContext.java:170)
                    at java.base/sun.security.ssl.ClientHandshakeContext.<init>(ClientHandshakeContext.java:98)
                    at java.base/sun.security.ssl.TransportContext.kickstart(TransportContext.java:221)
                    at java.base/sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:433)
                    at java.base/sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:411)
                    at com.mysql.cj.protocol.ExportControlled.performTlsHandshake(ExportControlled.java:317)
                    at com.mysql.cj.protocol.StandardSocketFactory.performTlsHandshake(StandardSocketFactory.java:188)
                    at com.mysql.cj.protocol.a.NativeSocketConnection.performTlsHandshake(NativeSocketConnection.java:97)
                    at com.mysql.cj.protocol.a.NativeProtocol.negotiateSSLConnection(NativeProtocol.java:331)
                    ... 19 more

To reproduce, change JDK versions as above and run:

./gradlew clean mysql:test --tests org.testcontainers.junit.mysql.SimpleMySQLTest --no-build-cache

Guida per i contributori

Apri la guida per i contributori

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Direzione di ricerca

Riproduci il fallimento con ./gradlew clean mysql:test --tests org.testcontainers.junit.mysql.SimpleMySQLTest --no-build-cache, confrontando adopt@1.11.0-10 e adopt@1.11.0-11. Parti da org.testcontainers.junit.mysql.SimpleMySQLTest e dallo stack trace TLS segnalato del connettore MySQL; il lavoro è completato quando il test passa con il JDK più recente senza introdurre regressioni nel risultato con il JDK più vecchio.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
java, mysql
Ambito
databases, testing
Tipo di issue
Bug
Difficoltà
4/5
Tempo stimato
3-5 giorni
Stato di attività
Ferma
Chiarezza
Abbastanza chiara
Idoneità per principianti
35/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.