Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Elenco delle patch per Amazon Corretto 8
Questa sezione contiene un elenco di tutte le patch applicate a OpenJDK per Amazon Corretto 8. Vengono anche forniti link ai problemi nel progetto OpenJDK.
- [C8-1] Impedisci OutOfMemoryException prematura quando l'invocazione G1 GC viene sospesa da una chiamata nativa di lunga durata.
-
Nei programmi che utilizzano G1 GC si possono verificare eccezioni di memoria esaurita spurie anche quando l'heap Java è tutt'altro che pieno. Questo si verifica quando un loop di spin in attesa di chiamate native di lunga durata viene interrotto dopo solo due esecuzioni. Questa patch di piccole dimensioni fa si che il loop rimanga in attesa per tutto il tempo necessario. In genere è sufficiente qualche esecuzione in più. Nel peggiore dei casi, si verifica un GC completo (grazie a JDK-8137099) e il problema è comunque risolto. La patch include una unit test che determina la necessità di più di due esecuzioni e ha esito positivo solo se la patch è installata. Consulta JDK-8137099
per la discussione. - [C8-2] Backport da OpenJDK 10, correzioneJDK-8177809
: «File.lastModified () sta perdendo millisecondi (sempre finisce in 000)». -
La patch rimuove incoerenze nel modo in cui viene segnalato l'ultimo timestamp modificato. Permette di standardizzare il comportamento tra piattaforme di compilazione e metodi Java, in modo che l'utente riceva precisione di secondo livello. Consulta JDK-8177809
. - [C8-3] Backport da OpenJDK9,che fissa JDK-8150013, «ParNew: Elenco scavengable dei metodi di prugna».
-
Questa patch riduce le latenze di pausa per Parallel e il garbage collector CMS. GC “root scanning” viene velocizzata di un massimo di tre ordini di grandezza riducendo le ispezioni di codice ridondanti.
- [C8-4] Backport da OpenJDK 9, che corregge JDK-8047338
: "javac is not correctly filtering non-members methods to obtain the function descriptor". -
Questa patch risolve un bug del compilatore che causava errori in fase di compilazione quando un'interfaccia funzionale generava un'eccezione che estendeva l'eccezione .
- [C8-5] Backport da OpenJDK 10, che corregge JDK-8144185
: "javac produces incorrect RuntimeInvisibleTypeAnnotations length attribute". -
Questo problema non consentiva l'esecuzione di Findbugs, JaCoCo e Checker Framework su alcuni programmi di input ben formati.
- [C8-6] Pulizia della tabella delle stringhe di trigger in G1 in base alla crescita della tabella di stringhe.
-
Questa patch attiva raccolte G1 “miste” necessaire per pulire le voci della tabella di stringhe basate su crescita della tabella di stringe, non solo l'uso dell'heap Java. Quest'ultima è una misurazione indipendente e può attivarsi troppo raramente o addirittura mai, in alcune applicazioni. Quindi la tabella di stringhe può crescere senza limiti, che è effettivamente una perdita di memoria nativa. Consulta JDK-8213198
. - [C8-7] Backport da OpenJDK 9, correzioneJDK-8149442
: «MonitorInUseLists dovrebbe essere attivo per impostazione predefinita, sgonfiare i monitor inattivi richiedendo troppo tempo». -
Questa patch rende la rimozione di un collo di bottiglia delle prestazioni per applicazioni a elevato utilizzo di thread l'impostazione predefinita. L'abilitazione di MonitorInUseLists consente una più efficiente deflazione di monitor potenzialmente in uso, anziché dell'intera popolazione di monitor.
- [C8-8] Porta posteriore da OpenJDK 11, correzioneJDK-8198794
: «Hotspot crash all'avvio di Cassandra 3.11.1 con libnuma 2.0.3». -
Questa patch impedisce l'arresto anomalo di Cassandra 3.11.1 all'avvio.
- [C8-9] Porta posteriore da OpenJDK 11, correzioneJDK-8195115
: «G1 Old Gen MemoryPool CollectionUsage.used value non riflette misti GC results». -
Senza questa patch, è impossibile determinare il livello di riempimento mediante JMX quando si usa G1 GC.
- [C8-10] Velocizza Class.getSimpleName() e Class.getCanonicalName().
-
La memorizzazione velocizza notevolmente queste funzioni. Questa patch include unit test di correttezza. Consulta JDK-8187123
. - [C8-11] Backport di JDK-8068736 da OpenJDK9, che corregge “Avoid synchronization on Executable/Field.declaredAnnotations”.
-
Migliora le prestazioni di Executable/Field.declaredAnnotations() della cache dei risultati che evita la sincronizzazione dei thread.
- [C8-12] Backport da OpenJDK 9, che correggeJDK-8077605
: «L'inizializzazione dei campi statici causa una ricorsione senza limiti in javac». - [C8-13] Corretto JDK-8130493: “javac silently ignores malformed classes in the annotation processor”.
-
javac ha silenziosamente ingerito file di classe difettosi in un processore di annotazione e restituito il codice di uscita 0. Con questa patch, javac segnala un messaggio di errore e restituisce un codice di uscita non zero.
- [C8-14] Messaggio di errore migliorato per lo strumento jmap.
-
Messaggi di errore aggiornati per suggerire approcci aggiuntivi quando il processo di destinazione non risponde. Consulta JDK-8213443
. - [C8-15] Risolto JDK-8185005: «Migliora le prestazioni di ThreadMXBean.getThreadInfo (long ids [], int maxDepth)».
-
Questa patch migliora le prestazioni di una funzione interna a JVM che ricerca un'istanza del thread Java da un'ID thread del sistema operativo. Questo va a vantaggio di diverse chiamate ThreadMXBean come getThreadInfo(), getThreadCpuTime() e getThreadUserTime(). Il miglioramento delle prestazioni relative aumenta con il numero di thread nella JVM, poiché la ricerca lineare viene sostituita da una tabella di ricerca hash.
- [C8-16] Porta posteriore da OpenJDK 12, correzioneJDK-8206075
: «Su x86, assert on unbound assembler Labels used as branch target». -
Istanze di classe etichetta (utilizzate per definire codice pseudo-assembly) possono essere utilizzate non correttamente in C1 e Interpreter. L'errore più comune per un'etichetta è essere "ramificata" ma mai definita come un percorso nel codice tramite bind(). Un assert è stato aggiunto per il rilevamento e quindi ha attivato errori di test 106 jtreg/hotspot e 17 jtreg/jdk. Abbiamo quindi stabilito che il backedge_counter_overflow etichetta non era vincolato quando UseLoopCounter era True, ma UseOnStackReplacement era False. Questo è ora corretto e protetto dai test precedenti.
- [C8-17] Migliora portabilità del codice sorgente JVM durante l'uso di gcc7.
-
Questa patch colloca dichiarazioni aggiornate ovunque lo switch gcc "-Wno-deprecato-dichiarazioni" segnala problemi. Consente inoltre allo switch di acquisire problemi correlati futuri. In questo modo il codice sorgente viene compilato su tutte le versioni di Amazon Linux presenti. Questa è una combinazione di JDK-8152856
, JDK-8184309 , JDK-8185826 , JDK-8185900 , JDK-8187676 , JDK-8196909 , JDK-8196985 , JDK-8199685 , JDK-8200052 , JDK-8200110 , JDK-8209786 , JDK-8210836 , JDK-8211146 , JDK-8211370 , JDK-8211929 , JDK-8213414 e JDK-8213575 . - [C8-18] Backport da JDK 10, che correggeJDK-8195848
: «Il test JTREG per StartManagementAgent fallisce». -
Per ulteriori dettagli, consulta http://serviceability-dev.openjdk.java.narkive.com/cDFwZce9
. - [C8-19] Riabilita una suite cipher legacy/disabilitata per passare due test TCK che altrimenti non riescono.
- Tre backport da OpenJDK9 per supportare l'utilizzo di librerie preinstallate.
-
Articoli portati in backport: JDK-8043805 per libjpeg
,JDK-8035341 per lib.png , eJDK-8042159 per lcms2 . - Integrazione del supporto aarch64 da IcedTea 3.8.
- Aggiornamenti ai metadati correlati al fornitore.
-
Identifica Amazon come fornitore di questa distribuzione OpenJDK e aggiunge i collegamenti ipertestuali per la segnalazione dei problemi.
- Porta posteriore da OpenJDK 9, fissaggioJDK-8048782
: «OpenJDK: PiscesCache: xmax/ymax rounding up can cause RasterFormatException». -
Il bug è correlato al costruttore sun.java2d.pisces.PiscesCache che accetta gli argomenti "(int minx,int miny,int maxx,int maxy)": gli interni "bboxX1" e "bboxY1" sono impostati su valori maggiori di un determinato numero massimo di valori X e Y.