Die Entwicklung von Lucene und Solr haben sich zusammengeschlossen

Die Lucene-Gemeinschaft hat kürzlich beschlossen, die Entwicklung von zwei ihrer Unterprojekte – Lucene->Java und Lucene->Solr – zusammenzulegen. Beide Codebasen befinden…

Die Lucene-Gemeinschaft hat kürzlich beschlossen, die Entwicklung von zwei ihrer Unterprojekte – Lucene->Java und Lucene->Solr – zusammenzulegen. Beide Codebasen befinden sich jetzt unter demselben Stamm in svn und Solr läuft eigentlich immer direkt auf dem neuesten Lucene-Code. Dies ist jedoch nur eine Zusammenführung der Entwicklung. Die Release-Artefakte bleiben separat: Lucene wird eine Java-Kernbibliothek für Suchmaschinen bleiben und Solr wird ein Suchserver bleiben, der auf Lucene aufbaut. Aus der Sicht des Benutzers wird alles so bleiben, wie es war – nur besser.

Was hat es mit der Zusammenlegung auf sich?

Aufgrund der Art und Weise, wie die Dinge in der Vergangenheit funktionierten, selbst mit vielen sich überschneidenden Committern, wurden viele Funktionen, die Lucene zugute kommen könnten, in Solr untergebracht. Sie „gehörten“ wohl zu Lucene, aber aufgrund von Entwicklungsproblemen war es für Solr von Vorteil, bestimmte Funktionen, die von Solr-Entwicklern beigesteuert wurden, unter der Kontrolle von Solr zu behalten. Die Verlagerung eines Teils dieses Codes zu Lucene würde bedeuten, dass einige Solr-Committer keinen Zugriff mehr darauf hätten – ein Solr-Committer, der den Code geschrieben und übertragen hat, könnte tatsächlich die Möglichkeit verlieren, ihn ohne die Unterstützung eines Lucene-Committers zu pflegen – und wenn Solr sichergehen wollte, dass es mit einer stabilen, freigegebenen Version von Lucene läuft, könnte die Veröffentlichung von Solr an die neueste Version von Lucene gebunden sein, wenn ein Teil dieses Codes aktualisiert werden muss. Da Solr plant, die Lucene-Bibliotheken seltener zu aktualisieren (aufgrund der Komplexität der Veröffentlichung mit einer Entwicklungsversion von Lucene), würde es lange Wartezeiten geben, bis Fehlerbehebungen im Solr-Stamm verfügbar sind.

Alles in allem gäbe es sowohl Vor- als auch Nachteile bei der Umstrukturierung von Solr-Code in Lucene ohne die Zusammenführung, aber die Mehrheit war der Meinung, dass die Nachteile die Vorteile überwiegen. Versuche dieser Art in der Vergangenheit sind gescheitert und haben zu divergierendem, ähnlichem Code in beiden Codebasen geführt. Da sich viele Committer in beiden Projekten überschneiden, war dies eine sehr merkwürdige Situation. Sie beheben einen Fehler an einer Stelle und suchen dann nach demselben Fehler in ähnlichem, aber anderem Code an einer anderen Stelle – und können vielleicht nur an einer der beiden Stellen einen Commit durchführen.

Mit merged dev gibt es jetzt eine einzige Gruppe von Committern für beide Projekte. Jeder in beiden Gemeinschaften kann nun die Veröffentlichung vorantreiben. Wenn Solr veröffentlicht wird, wird auch Lucene veröffentlicht, was die Bedenken bezüglich der Veröffentlichung von Solr auf einer Entwicklungsversion von Lucene verringert. Solr wird also immer auf der neuesten Stammversion von Lucene laufen und Code kann leicht zwischen den Projekten ausgetauscht werden. Lucene wird wahrscheinlich von Analyzers und QueryParsers profitieren, die in der Vergangenheit nur für Solr-Nutzer verfügbar waren. Lucene wird auch von einer größeren Testabdeckung profitieren, da Sie jetzt eine einzige Änderung in Lucene vornehmen und Tests für beide Projekte ausführen können. So erhalten Sie sofortiges Feedback zu der Änderung, indem Sie eine Anwendung testen, die die Lucene-Bibliotheken ausgiebig nutzt. Beide Projekte werden auch von einer größeren Entwicklergemeinschaft profitieren, da diese Änderung die gegenseitige Befruchtung zwischen Lucene- und Solr-Entwicklern (jetzt nur noch Lucene/Solr-Entwicklern) fördert.

Alles in allem denke ich, dass diese Zusammenführung ein großer Segen für beide Projekte sein wird. Es wurde bereits eine Menge Arbeit geleistet, damit Solr mit den neuesten Lucene-APIs zusammenarbeitet und eine nahtlose Entwicklungserfahrung mit Lucene/Solr als einer einzigen Codebasis ermöglicht wird (auch die Lucene/Solr-Tests sind lächerlich schneller als zuvor!). Freuen Sie sich auf einige wirklich fantastische Veröffentlichungen von Lucene/Solr in der Zukunft.

You Might Also Like

KI-Agenten dominieren den Einkauf. Ist Ihre Website auf die KI-gestützte Suche vorbereitet?

Generative KI-Agenten wie ChatGPT definieren die Produktsuche neu. Erfahren Sie, wie Sie...

Read More

Vom Suchunternehmen zum praktischen KI-Pionier: Unsere Vision für 2025 und darüber hinaus

CEO Mike Sinoway gibt Einblicke in die Zukunft der KI und stellt...

Read More

Wenn KI schief geht: Fehlschläge in der realen Welt und wie man sie vermeidet

Lassen Sie nicht zu, dass Ihr KI-Chatbot einen 50.000 Dollar teuren Tahoe...

Read More

Quick Links