cloudfoundry / cloudfoundry/cf-java-client
`ApplicationManifestUtilsV3#write` is not threadsafe
Nessuno ha ancora preso questa issue.
- Lingua principale
- Java
- Stelle
- 334
- Fork
- 319
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Descrizione
The method ApplicationManifestUtilsV3#write uses a static snakeyaml Yaml dumper to write all manifests into a byte array. This operation is inheritly not threadsafe, as the deserializer is not.
This in itself may not a be problem. However, when using Applications#pushManifestv3 to push multiple Apps in parallel this can cause issues that manifest in the form of
Bad request: Manifest does not support Anchors and Aliasesorjava.lang.NullPointerException: Nodes must be provided.
Guida per i contributori
Nessuna guida per i contributori indicizzata per questo repository
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.
Direzione di ricerca
Inizia con ApplicationManifestUtilsV3#write e con l’uso di Snakeyaml descritto nell’issue, quindi traccia le chiamate da Applications#pushManifestv3. Riproduci push paralleli dei manifest e osserva gli errori di anchor/alias o di puntatore nullo segnalati. Il lavoro è completato quando i push concorrenti terminano senza questi errori e il comportamento è coperto da un test appropriato.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- java
- Ambito
- api
- Tipo di issue
- Bug
- Difficoltà
- 3/5
- Tempo stimato
- 1-2 giorni
- Stato di attività
- Ferma
- Chiarezza
- Abbastanza chiara
- Idoneità per principianti
- 35/100