This page describes a proposed Solr Improvement Proposal (SIP) process for proposing a major change to Solr.
To create your own SIP, click on "Create" on the header and choose "SIP-Template", or click here.
Purpose
The purpose of SIPs is to have a central place to collect and document planned major enhancements to Apache Solr. While JIRA is still the tool to track tasks, bugs, and progress, the SIPs give an accessible high level overview of the result of design discussions and proposals. Think of SIPs as collections of major design documents for user-relevant changes.
We want to make Solr well architected with consistent public APIs. We will also support plugins/packages, which requires a commitment to a high level of compatibility between releases — core architectural elements can't break compatibility or shift functionality from release to release. As a result each new major feature or public API has to be done in a way that we can stick with it going forward.
This means when making this kind of change we need to think through what we are doing as best we can prior to release. And as we go forward we need to stick to our decisions as much as possible. All technical decisions have pros and cons so it is important we capture the thought process that lead to a decision or design to avoid SIP-flopping needlessly.
Hopefully we can make these proportional in effort to their magnitude — small changes should just need a couple brief paragraphs, whereas large changes need detailed design discussions.
This process also isn't meant to discourage incompatible changes — proposing an incompatible change is totally legitimate. Sometimes we will have made a mistake and the best path forward is a clean break that cleans things up and gives us a good foundation going forward. Rather this is intended to avoid accidentally introducing half thought-out interfaces and protocols that cause needless heartburn when changed. Likewise the definition of "compatible" is itself squishy: small details like which errors are thrown when are clearly part of the contract but may need to change in some circumstances, likewise performance isn't part of the public contract but dramatic changes may break use cases. So we just need to use good judgement about how big the impact of an incompatibility will be and how big the payoff is.
Please expand and read the section below for more details about the SIP process.
SIP round-up
Next SIP Number: 22
Use this number as the identifier for your SIP and increment this value.
SIPs under discussion
SIP | State | Link to JIRA | Link to dev@ Discussion Thread |
---|---|---|---|
SIP-1: Streamline Config/Schema APIs | Discuss | ||
SIP-2 Support safe index transformations without reindexing | Discuss | ||
SIP-3 Solr-specific log and thread indexing and UI | Discuss | ||
SIP-4 Resource management framework | Discuss | ||
SIP-5 Coordination Module + Apache Curator | Discuss | ||
SIP-6 Solr should own the bootstrap process | Discuss | Mail thread | |
SIP-7 Updated Solr Admin UI | Discuss | Mail thread | |
SIP-9 Advanced Query Parser | Discuss | Mail thread | |
SIP-11 Uniform cluster-level configuration API | Discuss | Slack thread | |
SIP-14 Embedded Zookeeper | Discuss | Mail thread | |
SIP-16 Polish and Prepare v2 APIs for v1 deprecation | Discuss | SOLR-15734 | |
SIP-19 Adopt JSR-330 dependency injection | Discuss | ||
SIP-20: Separation of Compute and Storage in SolrCloud | Discuss | TBD |
Adopted/Accepted but unreleased SIPs
SIP | Target Release | Link to JIRA | Link to dev@ Discussion Thread |
---|---|---|---|
SIP-13: Cross Data Center Replication | TBD | Mail thread | |
SIP-18: A Solr Kubernetes Module for native integration | |||
SIP-21: Standardize system property naming | TBD |
Implemented and Released SIPs
SIP | First Release Version | Link to JIRA | Link to dev@ Discussion Thread |
---|---|---|---|
SIP-8 Autoscaling policy engine V2 | Discuss | Slack thread | |
SIP-15 Node roles | 9.0 | ||
SIP-12 Incremental Backup and Restore | 8.9 | Mail thread | |
SIP-17: Node Autoscaling via Kubernetes | Solr 9.3 Solr Operator v0.8.0 |
-
SOLR-16727Getting issue details...
STATUS
| Mail thread |
Discarded SIPs
SIP | Comment |
---|---|