Skip to content

Switch Solr from Cloud mode to standalone mode for self-contained backups#249

Draft
gaurav wants to merge 1 commit intomasterfrom
improve-solr-database-backup
Draft

Switch Solr from Cloud mode to standalone mode for self-contained backups#249
gaurav wants to merge 1 commit intomasterfrom
improve-solr-database-backup

Conversation

@gaurav
Copy link
Copy Markdown
Collaborator

@gaurav gaurav commented Feb 23, 2026

Closes #238. Everything else is currently written by Claude:

Remove ZooKeeper/cloud mode (-DzkRun) so the schema lives alongside the Lucene index in the core directory, making the backup tarball fully self-contained. Restore is now: extract tarball + docker compose up.

Key changes:

  • docker-compose.yml: remove command: ['-DzkRun'] (standalone by default)
  • data-loading/setup_solr.sh: replace Collections API with Core Admin API (configSet=_default); fix JSON syntax error (missing comma in types field)
  • data-loading/Makefile: remove -cloud flag; replace replication backup (start-solr-backup / check-solr-backup) with filesystem tar of name_lookup/ core directory (solr-data.tar.gz), with read-only solrconfig installed first
  • data-loading/Dockerfile: remove -cloud flag; COPY conf/ for read-only config
  • data-loading/conf/solrconfig.xml: new — NoOpUpdateHandler (read-only) + ManagedIndexSchemaFactory; installed into core before tarring
  • data-loading/conf/managed-schema.xml: new — reference schema documentation
  • solr-restore/: deleted — no longer needed; tarball is self-contained
  • documentation/Deployment.md: updated storage estimate, extraction step, removed restore script steps
  • data-loading/README.md: updated Makefile section and step-by-step instructions

…kups

Remove ZooKeeper/cloud mode (-DzkRun) so the schema lives alongside the
Lucene index in the core directory, making the backup tarball fully
self-contained. Restore is now: extract tarball + docker compose up.

Key changes:
- docker-compose.yml: remove `command: ['-DzkRun']` (standalone by default)
- data-loading/setup_solr.sh: replace Collections API with Core Admin API
  (configSet=_default); fix JSON syntax error (missing comma in types field)
- data-loading/Makefile: remove -cloud flag; replace replication backup
  (start-solr-backup / check-solr-backup) with filesystem tar of name_lookup/
  core directory (solr-data.tar.gz), with read-only solrconfig installed first
- data-loading/Dockerfile: remove -cloud flag; COPY conf/ for read-only config
- data-loading/conf/solrconfig.xml: new — NoOpUpdateHandler (read-only) +
  ManagedIndexSchemaFactory; installed into core before tarring
- data-loading/conf/managed-schema.xml: new — reference schema documentation
- solr-restore/: deleted — no longer needed; tarball is self-contained
- documentation/Deployment.md: updated storage estimate, extraction step,
  removed restore script steps
- data-loading/README.md: updated Makefile section and step-by-step instructions

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@gaurav gaurav moved this from Backlog to In progress in NameRes sprints Mar 28, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: In progress

Development

Successfully merging this pull request may close these issues.

Solr complete backup that included indexes would simplify deployment

1 participant