Java SDK CIs Improvement Tracking Ticket
I maintainer di solito rispondono entro 1 giorno
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Idoneità per principianti
- 25/100
- Tipo di issue
- Refactoring
- Chiarezza
- Da chiarire
- Stato di attività
- Tranquilla
- Stack tecnologico
- github-actions, java
- Ambito
- build-system, ci-cd, testing-qa
Direzione di ricerca
Inizia con l’esecuzione collegata di GitHub Actions ed esamina i job GAPIC unit-test, GraalVM, Enforcer e Fmt, inclusi i target GraalVM a cui si fa riferimento. Determina quali suite di test e passaggi di build sono responsabili dei tempi di esecuzione e della flakiness; il lavoro è completato quando è stato implementato un approccio CI concordato e i job interessati sono misurabilmente più veloci e affidabili.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Problems:
- GAPIC Unit Tests Long Duration
On changes that impact all of google-cloud-java, all the GAPIC unit tests are run. These test jobs take well over 30+ min (https://github.com/googleapis/google-cloud-java/actions/runs/26462248492/job/77913201176?pr=13222). One latest log results timed this to be ~38 min.
These GAPIC unit tests are autogenerated within each module and do not vary too much. These look to test happy and sad paths for each RPC method, but generally are the same tests with different inputs and outputs. We have dedicated showcase tests that can test these RPCs functionality once and ensure that the common variations are tested properly.
Question(s):
- Can we stop autogenerating these unit tests and instead rely on showcase unit tests for complete coverage? Additionally, we can rely one showcase ITs to ensure that the functionality is able to work E2E
- GraalVM Tests Duration
The GraalVM jobs (A,B,C) run through test cases (units and ITs) in each module twice (once to investigate all the possible code paths and a second time to run through the tests). This doubles the amount of time needed to ensure GraalVM compatibility. One of the latest runs for GraalVM ran for ~90 min (https://btx.cloud.google.com/invocations/a827908d-a2fb-49f2-8c39-01b51e4baad8/targets).
Is there a way that we can streamline the tests to run faster?
- Remove the GAPIC unit tests so that they do not need to run? Instead, we rely on showcase unit tests and integration tests
- Only run the required tests once?
- Use GraalVM fast build mode?
2.1 GraalVM Tests Flakiness
Additionally, the test suite is already quite flaky and this flakiness compounds into an even more expensive operation when there are long test times.
- Enforcer and Fmt Jobs Duration
Similar to issues above, running these jobs is expensive and take a long time if they require building and compiling all the GAPIC modules.
- Lingua principale
- Java
- Stelle
- 2.1k
- Fork
- 1.2k
- Merge medio
- 2g 14h
- PR unite (30g)
- 192
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Nessun modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di googleapis/google-cloud-java
-
[java-core] Timestamp.of(java.sql.Timestamp) is one second late for a time less than a second before the epochForse già presa @Vcode2407 l’ha presa 4 giorni fa. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
googleapis/google-cloud-java#14636 ·
I maintainer di solito rispondono entro 1 giorno
-
[java-firestore] UserDataConverter encodes a pre-epoch Date with negative nanos, so the write is refusedForse già presa @wu-hui l’ha presa 23 giorni fa. Apertapriority: p2 type: bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
googleapis/google-cloud-java#14635 · 1 assegnatario ·
I maintainer di solito rispondono entro 1 giorno
-
[java-firestore] UserDataConverter throws IndexOutOfBoundsException on an empty __binary__ valueForse già presa @wu-hui l’ha presa 23 giorni fa. Apertapriority: p2 type: bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 74/100
googleapis/google-cloud-java#14634 · 1 commento · 1 assegnatario ·
I maintainer di solito rispondono entro 1 giorno
-
[java-firestore] CustomClassMapper.convertBigDecimal calls .abs() on Double, unintentionally flipping negative values to positiveForse di nuovo libera @wu-hui l’ha presa 45 giorni fa e non c’è nessuna pull request aperta. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 85/100
googleapis/google-cloud-java#14533 · 1 assegnatario ·
I maintainer di solito rispondono entro 1 giorno
-
Github CI failing when trying to install xmllintForse già presa @blakeli0 l’ha presa 81 giorni fa. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 65/100
googleapis/google-cloud-java#14132 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di googleapis/google-cloud-java
Issue simili
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 88/100
-
Difficoltà 2/5 Meno di un'ora Idoneità per principianti 84/100
cpp-best-practices/project_validator#251 ·
I maintainer di solito rispondono entro 1 giorno
-
backend enhancement
Difficoltà 2/5 Mezza giornata Idoneità per principianti 70/100
damodharg6/payledger#16 ·
-
[Bug]: An initiative list with no current entry logs an error on every changeForse già presa @dwizard0 l’ha presa oggi. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 85/100
I maintainer di solito rispondono entro 1 giorno