Verwenden Sie Java 7 nicht, egal für was

Java 7 GA wurde heute veröffentlicht, aber wie Uwe Schindler bemerkt hat, gibt es einige sehr beängstigende Fehler in den HotSpot Loop-Optimierungen, die standardmäßig aktiviert sind. Im besten Fall führen diese Fehler zu einem Absturz der JVM. Im schlimmsten Fall führen sie zu einer fehlerhaften Ausführung von Schleifen.

Unterm Strich: Verwenden Sie Java 7 nicht für irgendetwas (es sei denn, Sie wissen, dass Sie keine Schleifen in Ihrem Java-Code haben)

UPDATE 28. OKTOBER 2011: Wie in Uwes Blog erwähnt, enthält Java 7u1 nachweislich die Patches zur Behebung dieser Probleme.


Von: Uwe Schindler
Datum: Thu, 28 Jul 2011 23:13:36 +0200
Betreff: [WARNING] Indexbeschädigung und Abstürze in Apache Lucene Core / Apache Solr mit Java 7

Hallo Apache Lucene & Apache Solr Benutzer,
Hallo Benutzer anderer Java-basierter Apache-Projekte,

Oracle hat heute Java 7 veröffentlicht. Leider enthält es Hotspot-Compiler
Optimierungen, die einige Schleifen falsch kompilieren. Dies kann sich auf den Code mehrerer
Apache-Projekte auswirken. Manchmal stürzen JVMs nur ab, aber in mehreren Fällen können die berechneten Ergebnisse
falsch sein, was zu Fehlern in Anwendungen führt (siehe Hotspot
bugs 7070134 [1], 7044738 [2], 7068051 [3]).

Apache Lucene Core und Apache Solr sind zwei Apache-Projekte, die
von diesen Fehlern betroffen sind, und zwar alle bis heute veröffentlichten Versionen. Solr-Benutzer
mit der Standardkonfiguration werden Java mit SIGSEGV zum Absturz bringen, sobald sie
beginnen, Dokumente zu indizieren, da ein betroffener Teil der bekannte
Porter Stemmer ist (siehe LUCENE-3335 [4]). Auch andere Schleifen in Lucene
können falsch kompiliert sein, was zu einer Beschädigung des Index führt (insbesondere auf Lucene trunk
mit pulsierendem Codec; andere Schleifen können ebenfalls betroffen sein – LUCENE-3346 [5]).

Diese Probleme wurden nur 5 Tage vor der offiziellen Veröffentlichung von Java 7 entdeckt,
so dass Oracle keine Zeit hatte, diese Fehler zu beheben, von denen auch viele weitere
Anwendungen betroffen sind. Als Antwort auf unsere Fragen schlug Oracle vor, die
Fehlerbehebungen in das Service-Release u2 (eventuell auch in das Service-Release u1, siehe [6]) aufzunehmen.
Das bedeutet, dass Sie Apache Lucene/Solr nicht mit Java 7 Versionen vor
Update 2 verwenden können! Wenn Sie es doch tun, öffnen Sie bitte keine Fehlerberichte, es ist nicht die Schuld der
Committer! Deaktivieren Sie zumindest die Schleifenoptimierung mit der JVM-Option
-XX:-UseLoopPredicate, um keine Indexbeschädigungen zu riskieren.

Bitte beachten Sie: Auch Java 6-Benutzer sind betroffen, wenn sie eine der folgenden JVM
Optionen verwenden, die standardmäßig nicht aktiviert sind: -XX:+OptimizeStringConcat oder
-XX:+AggressiveOpts

Es wird dringend empfohlen, keine Hotspot-Optimierungsschalter in
irgendeiner Java-Version ohne ausführliche Tests zu verwenden!

Falls Sie auf Java 7 aktualisieren, denken Sie daran, dass Sie möglicherweise neu indizieren müssen, da sich die mit Java 7 ausgelieferte
unicode Version geändert hat und sich die Tokenisierung
anders verhält (z.B. Kleinschreibung). Weitere Informationen finden Sie unter
JRE_VERSION_MIGRATION.txt in Ihrem Distributionspaket!

Im Namen des Lucene-Projekts,
Uwe

[1] http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=7070134
[2] http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=7044738
[3] http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=7068051
[4] https://issues.apache.org/jira/browse/LUCENE-3335
[5] https://issues.apache.org/jira/browse/LUCENE-3346
[6] http://s.apache.org/StQ

You Might Also Like

Wie Lenovo die Suche zu einem strategischen Wachstumstreiber in der KI-Ära machte

Erfahren Sie, wie Lenovo mit Lucidworks die Suche in einen strategischen Wachstumstreiber...

Read More

Der Stand der generativen KI 2025: 3 Fragen, um Ihre Bereitschaft für agenturische KI zu verstehen

Wie gut sind Unternehmen auf agentenbasierte KI vorbereitet? Die Daten von Lucidworks...

Read More

Wir geben unsere Gewinner des Superstars of Search Award 2025 bekannt: Mouser, TE, und Coppel

Wir feiern 3 unglaubliche Lucidworks-Kunden, die ihre Sucherfahrung verändert und hervorragende Geschäftsergebnisse...

Read More

Quick Links