<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
<title>Opensolr</title>
<link>https://opensolr.com/</link>
<description>Opensolr changelog, guides and documentation: managed Solr hosting, AI hybrid search, web crawler and RAG API updates.</description>
<language>en</language>
<lastBuildDate>Sun, 11 Oct 2026 17:52:29 +0000</lastBuildDate>
<atom:link href="https://opensolr.com/feed.xml" rel="self" type="application/rss+xml" />
<item>
<title>Opensolr Photos 3.20: Erase People, Things and Text, Straighten, and Set as Wallpaper</title>
<link>https://opensolr.com/changelog/entry/opensolr-photos-3-20-erase-people-things-text-straighten-wallpaper</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/opensolr-photos-3-20-erase-people-things-text-straighten-wallpaper</guid>
<description>Opensolr Photos 3.20 erases people, things and text from your photos, on the phone: paint over what should go, or let the app find the text, and the spot is filled from what is around it. The editor also straightens a crooked photo half a degree at a time, a copy saved from the editor is dated now so it comes first in your list, and any photo can become your wallpaper. The photo editor.</description>
<category>Opensolr Photos</category>
<pubDate>Sun, 11 Oct 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Server Management: WireGuard Private Network, Your Laptop in It, and Pages Only You Can Open</title>
<link>https://opensolr.com/changelog/entry/server-management-wireguard-devices-and-protected-urls</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/server-management-wireguard-devices-and-protected-urls</guid>
<description>Server Management now has a Security section under System. Set up WireGuard on any of your servers with one click and link them into an encrypted private network. Add your laptop or phone to that network, from any network you connect from. And make any page of your sites answer 404 to everyone except the devices, servers and web crawlers you pick, with Protected URLs.</description>
<category>Server Management</category>
<pubDate>Sun, 11 Oct 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>A Chat Bot for Every Web Crawler Index: Embed It on Your Site or Show It on Your Search Page</title>
<link>https://opensolr.com/changelog/entry/hosted-chat-bot-for-every-web-crawler-index</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/hosted-chat-bot-for-every-web-crawler-index</guid>
<description>Every Opensolr Index on a Web Crawler server now comes with its own Hosted Chat Bot. It answers your visitors from the content of the index, with a link to every page, product and PDF page it mentions, in their own language. Open Chat Bot in the Control Panel of your index, right under WebCrawler: list the domains of your site and paste one line on your pages, or switch it on for the hosted search page of the index. The same section has your instructions, the look of the chat window, the limits,</description>
<category>Web Crawler</category>
<pubDate>Sun, 11 Oct 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>EzCMD: Email Validator and Domain Name Lookup, With REST APIs</title>
<link>https://opensolr.com/changelog/entry/ezcmd-email-validator-and-domain-name-lookup-apps</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/ezcmd-email-validator-and-domain-name-lookup-apps</guid>
<description>Two new apps on ezcmd.com, each with a web page and REST APIs. Email Validator checks an address without sending mail to it: syntax, mail servers, SPF, DMARC, disposable and free providers, role addresses and domain age, with a valid, risky or invalid verdict, one address or 50 per call. Domain Name Lookup tells whether a domain is taken in any TLD and gives the registrar, registration and expiry dates, status and name servers straight from the registry, one name or 20 per call. The ezcmd.com ho</description>
<category>EzCMD</category>
<pubDate>Sat, 10 Oct 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Photos 3.19: Scan Documents Into Your Photos, Then Into One PDF</title>
<link>https://opensolr.com/changelog/entry/opensolr-photos-3-19-document-scanner-and-pdf-in-tick-order</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/opensolr-photos-3-19-document-scanner-and-pdf-in-tick-order</guid>
<description>Opensolr Photos 3.19 scans documents: point the camera at a page, the outline follows its edges, adjust the four corners if needed, and the page is saved straightened as a photo in a folder you sync, found by its printed text. Tick pages in the order you want and save them as one PDF, at up to 300 dpi. Scanning documents.</description>
<category>Opensolr Photos</category>
<pubDate>Thu, 08 Oct 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Search for Drupal 5.4: Let Your Visitors Talk to Your Site</title>
<link>https://opensolr.com/changelog/entry/drupal-module-5-4-0-site-assistant-chatbot-commands-translate</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/drupal-module-5-4-0-site-assistant-chatbot-commands-translate</guid>
<description>Opensolr Search for Drupal 5.3 and 5.4: your visitors can talk to your site. A chatbot, Ask this site, answers from your Opensolr Index with links to your pages, products and PDF pages, written as it comes, and looks up times, exchange rates, VAT, distances and places. Commands answer at once (typing / lists them), /translate translates texts of up to 10,000 characters, and Arrow Up brings back earlier messages. One click on the new Assistant tab. How it works.</description>
<category>Drupal Module</category>
<pubDate>Wed, 07 Oct 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Search for Drupal 5.2.0: Drupal AI Search on Your Opensolr Index</title>
<link>https://opensolr.com/changelog/entry/drupal-module-5-2-0-drupal-ai-search-on-your-opensolr-index</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/drupal-module-5-2-0-drupal-ai-search-on-your-opensolr-index</guid>
<description>Opensolr Search for Drupal 5.2.0: your Opensolr Index becomes the search of Drupal AI Search, with words and meaning in one ranking, highlighted snippets and the matching pages of attached PDFs, set up in one click from the new AI Search tab and with nothing indexed twice. A new switch turns the search page at /opensolr-search off. How it works. Run drush updatedb after updating.</description>
<category>Drupal Module</category>
<pubDate>Wed, 07 Oct 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Mail Is Now on Google Play</title>
<link>https://opensolr.com/changelog/entry/opensolr-mail-now-on-google-play</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/opensolr-mail-now-on-google-play</guid>
<description>Opensolr Mail is now on Google Play. Install it from there and Google Play keeps it up to date, or keep downloading the APK from GitHub, where every new version lands first.</description>
<category>Opensolr Mail</category>
<pubDate>Wed, 07 Oct 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>The Opensolr App Is Now on Google Play</title>
<link>https://opensolr.com/changelog/entry/opensolr-app-now-on-google-play</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/opensolr-app-now-on-google-play</guid>
<description>The Opensolr app for Android is now on Google Play. Install it from there and Google Play keeps it up to date, or keep downloading the APK from the app page, where every new version lands first.</description>
<category>Opensolr App</category>
<pubDate>Wed, 07 Oct 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Photos 3.18: Edit Your Photos, With Shapes That Draw Themselves</title>
<link>https://opensolr.com/changelog/entry/opensolr-photos-3-18-photo-editor-crop-resize-rotate-draw-text-shapes</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/opensolr-photos-3-18-photo-editor-crop-resize-rotate-draw-text-shapes</guid>
<description>Opensolr Photos 3.18 edits photos on the phone: crop, resize with the file size shown before and after, rotate, draw and add text, with undo and redo. Hold the finger still at the end of a line and it becomes a perfect circle, oval, rectangle, triangle, line or arrow, even when left open. Texts and drawings move anywhere, and the photo is saved over the original or as a copy. Opensolr Photos documentation.</description>
<category>Opensolr Photos</category>
<pubDate>Sat, 03 Oct 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Photos 3.17: Save Selected Photos as One PDF</title>
<link>https://opensolr.com/changelog/entry/opensolr-photos-3-17-save-selected-photos-as-one-pdf</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/opensolr-photos-3-17-save-selected-photos-as-one-pdf</guid>
<description>Opensolr Photos 3.17 turns a selection into one PDF. Select the photos, tap PDF, name the file and pick where to save it: every photo becomes a page, upright and 1024 px on the long edge, clear enough to read and to OCR, small enough to send. Search and selection.</description>
<category>Opensolr Photos</category>
<pubDate>Sat, 03 Oct 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Search for WordPress 1.0.40: One Result per PDF, Suggestions From Any Word, and a Search Page That Stays in Place</title>
<link>https://opensolr.com/changelog/entry/wordpress-plugin-1-0-40-one-result-per-pdf-suggestions-any-word-sticky-search</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/wordpress-plugin-1-0-40-one-result-per-pdf-suggestions-any-word-sticky-search</guid>
<description>Opensolr Search for WordPress 1.0.40: the Documents tab shows each PDF once, with its best pages under it and Show more pages; search suggestions match the start of any word of a past search; the search box, the PDF group headers and, on desktop, the sort, Fresh and AI row and the facet sidebar now stay pinned while you scroll.</description>
<category>WordPress Plugin</category>
<pubDate>Sat, 03 Oct 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Search for Drupal 5.1.3: One Result per PDF, Suggestions From Any Word, and a Search Bar That Stays</title>
<link>https://opensolr.com/changelog/entry/drupal-module-5-1-3-one-result-per-pdf-suggestions-any-word-sticky-controls</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/drupal-module-5-1-3-one-result-per-pdf-suggestions-any-word-sticky-controls</guid>
<description>Opensolr Search for Drupal 5.1.3: the Documents tab shows each PDF once, with its best pages under it and Show more pages; search suggestions match the start of any word of a past search; on desktop the sort, Fresh and AI row and the facet sidebar stay pinned under the search box, and the sidebar scrolls on its own. Run drush updatedb after updating.</description>
<category>Drupal Module</category>
<pubDate>Sat, 03 Oct 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Search Suggestions Match Any Word, and Facets Stay on Screen</title>
<link>https://opensolr.com/changelog/entry/search-suggestions-match-any-word-facets-stay-on-screen</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/search-suggestions-match-any-word-facets-stay-on-screen</guid>
<description>On the hosted search page, suggestions from past searches now match the start of any word, not only the beginning of the search: typing curr offers measuring alternating current. On desktop the facet sidebar stays pinned under the search bar and scrolls on its own, so every filter is within reach, even with infinite scroll.</description>
<category>Search</category>
<pubDate>Sat, 03 Oct 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Mail 1.14: One Signature for Every Account, With Bold, Italic and Links</title>
<link>https://opensolr.com/changelog/entry/opensolr-mail-1-14-one-signature-for-every-account</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/opensolr-mail-1-14-one-signature-for-every-account</guid>
<description>Opensolr Mail 1.14 has one signature for the whole app. Write it once in Settings &amp;rarr; Preferences &amp;rarr; Signature, with bold, italic, underline and links, and it goes under every message you send from every Fastmail account, right after what you wrote and above the quoted message. Opensolr Mail documentation.</description>
<category>Opensolr Mail</category>
<pubDate>Sat, 03 Oct 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Solr 10 Is Now Available on Opensolr</title>
<link>https://opensolr.com/changelog/entry/solr-10-available-new-york-environment</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/solr-10-available-new-york-environment</guid>
<description>Apache Solr 10 is now available on Opensolr. Pick the new Solr 10 environment in New York (US-EAST) when you create an index: vector search and the Opensolr hybrid ranking work on it out of the box, the same as on Solr 9. What Solr 10 changes.</description>
<category>Platform</category>
<pubDate>Wed, 30 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Scanned PDFs and the Pictures Inside Them Are Now Searchable</title>
<link>https://opensolr.com/changelog/entry/scanned-pdfs-and-the-pictures-inside-them-now-searchable</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/scanned-pdfs-and-the-pictures-inside-them-now-searchable</guid>
<description>The Web Crawler and the Data Ingestion API now read the pictures inside every PDF: scanned pages, photographed labels, posters, old newspapers. Each page is read in its own language, more than 100 of them, and a picture with no words is found by what it shows. It works on every Opensolr Index, with nothing to switch on. Try it live.</description>
<category>Web Crawler</category>
<pubDate>Wed, 30 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr App 5.7: A New Package Name, Ready for Google Play</title>
<link>https://opensolr.com/changelog/entry/opensolr-app-5-7-new-package-name-ready-for-google-play</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/opensolr-app-5-7-new-package-name-ready-for-google-play</guid>
<description>The Opensolr app for Android is now published under a new package name, com.opensolr.main, the name it will carry on Google Play. It installs as a new app next to an older copy: install it, sign in once, and remove the old one. The account-wide thresholds now say they are set for every index on the account, the app is smaller and starts faster, and from 5.7.3 every section of Settings and Account folds and stays as you left it.</description>
<category>Opensolr App</category>
<pubDate>Mon, 28 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Photos 3.16: Lexical Matching, an Account Screen That Folds, and One Button to Your Index</title>
<link>https://opensolr.com/changelog/entry/opensolr-photos-3-16-lexical-matching-account-folds-button-to-index</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/opensolr-photos-3-16-lexical-matching-account-folds-button-to-index</guid>
<description>Also in Opensolr Photos 3.16: choose how strictly your words must match, with Lexical matching set to Flexible, Balanced or Strict; every section of the Account screen folds and stays the way you left it; and one button opens your index in the Opensolr app, or in your Opensolr account.</description>
<category>Opensolr Photos</category>
<pubDate>Mon, 28 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Every AI Answer Now Knows Today’s Date</title>
<link>https://opensolr.com/changelog/entry/ai-answers-know-todays-date</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/ai-answers-know-todays-date</guid>
<description>Every AI answer on the platform, on the search pages, from the AI Summary API and in the Opensolr apps, now knows today&amp;rsquo;s date, so &amp;ldquo;last month&amp;rdquo;, &amp;ldquo;this year&amp;rdquo; or &amp;ldquo;how long ago&amp;rdquo; in a question are answered against the real calendar, and every date is written the same way.</description>
<category>API</category>
<pubDate>Mon, 28 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Document to Text API: the Pictures Inside a PDF Are Read Too, Page by Page</title>
<link>https://opensolr.com/changelog/entry/doc-to-text-reads-the-pictures-inside-a-pdf-page-by-page</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/doc-to-text-reads-the-pictures-inside-a-pdf-page-by-page</guid>
<description>The Document to Text API (doc_to_text) now reads the pictures inside a PDF as well: a scanned page or a photographed receipt embedded in a document comes back as text, page by page, with no change to the request.</description>
<category>API</category>
<pubDate>Mon, 28 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Mail 1.13: Select Every Result, Move It Anywhere, Dates in Words, Attachments Read on the Server</title>
<link>https://opensolr.com/changelog/entry/opensolr-mail-1-13-select-every-result-dates-in-words-attachments-on-the-server</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/opensolr-mail-1-13-select-every-result-dates-in-words-attachments-on-the-server</guid>
<description>Opensolr Mail 1.13 lets you select every result a search found, thousands at once, and move them to any folder, to Trash or to Junk in one go, on Fastmail and in your index together. Search understands dates in words in seven languages, attachments are read on Opensolr&amp;rsquo;s servers instead of on your phone, the pictures inside a PDF included, and a new phone can pick up the index you already have. 1.13.1 makes sure a move made while the index is being written is never lost. Search documentati</description>
<category>Opensolr Mail</category>
<pubDate>Mon, 28 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Photos 3.16: People by Their Faces, and the Photos of the Same People</title>
<link>https://opensolr.com/changelog/entry/opensolr-photos-3-16-people-by-their-faces-and-the-photos-of-the-same-people</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/opensolr-photos-3-16-people-by-their-faces-and-the-photos-of-the-same-people</guid>
<description>Opensolr Photos 3.16 puts people on photos by their faces, found and compared on your phone alone: name a face once and the app finds that person across your library, with a review to confirm the rest. Similar photos now starts with the photos of the same people, and finds all of them.</description>
<category>Opensolr Photos</category>
<pubDate>Mon, 28 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Mail 1.11: No Opensolr Account Needed, Fastmail Search and Contacts</title>
<link>https://opensolr.com/changelog/entry/opensolr-mail-1-11-no-opensolr-account-needed-fastmail-search-contacts</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/opensolr-mail-1-11-no-opensolr-account-needed-fastmail-search-contacts</guid>
<description>Opensolr Mail 1.11 works without an Opensolr account for everything: the Fastmail client for Android gets Fastmail&amp;rsquo;s own search, chosen in Settings, with an automatic fallback from Opensolr search, and a new Contacts screen that merges your Fastmail address books, the phone&amp;rsquo;s contacts and, with Opensolr, everyone from your mail.</description>
<category>Opensolr Mail</category>
<pubDate>Fri, 25 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Mail 1.8: An AI Answer That Reads Whole Conversations, Search Operators and Best Matches</title>
<link>https://opensolr.com/changelog/entry/opensolr-mail-1-8-ai-answer-whole-conversations-search-operators</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/opensolr-mail-1-8-ai-answer-whole-conversations-search-operators</guid>
<description>Opensolr Mail 1.8 turns the AI answer of our Fastmail client for Android into something you can lean on: it reads whole conversations without the quoted history, follows your own instructions, and shows links, lists and tables properly. Search gains operators, Best matches and Also similar, and a list of fixes, flagging without a crash first among them.</description>
<category>Opensolr Mail</category>
<pubDate>Thu, 24 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Mail 1.5: A Stable, Open Source Unified Inbox for Fastmail</title>
<link>https://opensolr.com/changelog/entry/opensolr-mail-1-5-unified-fastmail-client-stable</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/opensolr-mail-1-5-unified-fastmail-client-stable</guid>
<description>Opensolr Mail 1.5 is the first stable release of our free, open source Fastmail client for Android: every Fastmail account in one inbox, instant push, and optional search by words and by meaning in your own Opensolr Index, with AI answers drawn only from your results.</description>
<category>Opensolr Mail</category>
<pubDate>Wed, 23 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Loghound Speaks Seven Languages: Romanian, French, German, Spanish, Chinese and Japanese</title>
<link>https://opensolr.com/changelog/entry/loghound-interface-in-seven-languages</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/loghound-interface-in-seven-languages</guid>
<description>Loghound now speaks seven languages: English, Romanian, French, German, Spanish, Simplified Chinese and Japanese. Pick one in Settings, Display, or while you install, and the whole panel switches at once. Any word can be reworded, and a new language added, on your own installation: see Languages.</description>
<category>Loghound</category>
<pubDate>Mon, 21 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Photos 3.5: Stats, Your Library in Numbers</title>
<link>https://opensolr.com/changelog/entry/opensolr-photos-3-5-stats-your-library-in-numbers</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/opensolr-photos-3-5-stats-your-library-in-numbers</guid>
<description>Opensolr Photos 3.5 adds Stats: your whole library in numbers, counted on the phone, with a chart and a table for every section and every line one tap away from its photos. Thumbnails now show who is in a photo, and the words photos are read into are cleaner.</description>
<category>Opensolr Photos</category>
<pubDate>Mon, 21 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Photos 3.4.2: The Scroll Bar Says What a Group Is Called</title>
<link>https://opensolr.com/changelog/entry/opensolr-photos-3-4-2-scroll-bar-says-what-a-group-is-called</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/opensolr-photos-3-4-2-scroll-bar-says-what-a-group-is-called</guid>
<description>Opensolr Photos 3.4.2 fixes the badge that follows your finger down the scroll bar: with the grid laid out by place, people, tags, folder or camera it was showing the name a group carries under the hood, such as folder:Pictures/2019, instead of what the group is called. Free and open source on GitHub.</description>
<category>Opensolr Photos</category>
<pubDate>Sun, 20 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Photos 3.4.1: A Scroll Bar That Holds Still</title>
<link>https://opensolr.com/changelog/entry/opensolr-photos-3-4-1-a-scroll-bar-that-holds-still</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/opensolr-photos-3-4-1-a-scroll-bar-that-holds-still</guid>
<description>Opensolr Photos 3.4.1 fixes the bar down the right edge: it no longer shivers, the thumb is where the grid really is, and it follows your finger inside a line instead of jumping a whole line at a time. On Android 14 and up, choosing Select photos&amp;hellip; instead of allowing everything is now an answer the app works with, and every language travels in the app whichever store it came from. Free and open source on GitHub.</description>
<category>Opensolr Photos</category>
<pubDate>Sun, 20 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Photos 3.4: Pick Photos by Dragging</title>
<link>https://opensolr.com/changelog/entry/opensolr-photos-3-4-pick-photos-by-dragging</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/opensolr-photos-3-4-pick-photos-by-dragging</guid>
<description>Opensolr Photos 3.4 picks photos the way your thumb expects: press and hold one, keep your finger down, and everything between it and the photo under your finger is ticked as you go. The bar down the right edge is now a map of how tall the grid really is rather than of how many rows it has, and searching for a place names the commune under the place. Free and open source on GitHub.</description>
<category>Opensolr Photos</category>
<pubDate>Sun, 20 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Photos 3.3: Your Folders as the Tree They Are</title>
<link>https://opensolr.com/changelog/entry/opensolr-photos-3-3-folders-as-the-tree-they-are</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/opensolr-photos-3-3-folders-as-the-tree-they-are</guid>
<description>Opensolr Photos 3.3 lays grouping by folder out as the tree your folders really are &amp;mdash; Pictures, then 2019, then 11 &amp;mdash; instead of a flat list of last names, which on a library kept by year and month read as a column of bare numbers. The similar photos slider glides as well, and leaves a stop only once your finger is most of the way to the next one. Free and open source on GitHub.</description>
<category>Opensolr Photos</category>
<pubDate>Sun, 20 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Photos 3.2.1: Similar Photos Stays Where You Left It</title>
<link>https://opensolr.com/changelog/entry/opensolr-photos-3-2-1-similar-photos-keeps-your-place</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/opensolr-photos-3-2-1-similar-photos-keeps-your-place</guid>
<description>Opensolr Photos 3.2.1 keeps your place in the similar photos view: deleting a photo, or a sync finishing after an edit, no longer sends the grid back to the top. Pull to refresh also gives a knock you can feel the moment the gesture takes. Free and open source on GitHub.</description>
<category>Opensolr Photos</category>
<pubDate>Sun, 20 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Photos 3.2: Lay the Grid Out by Folder or by Camera</title>
<link>https://opensolr.com/changelog/entry/opensolr-photos-3-2-grid-by-folder-or-camera</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/opensolr-photos-3-2-grid-by-folder-or-camera</guid>
<description>Opensolr Photos 3.2 adds two ways to lay the grid out &amp;mdash; by folder and by camera &amp;mdash; beside date, place, people and your own tags, neither of them costing a request of its own. Similar photos is tighter as well: the loosest setting is gone, the one that remains asks for the same camera too, and groups of more than five are left out. Free and open source on GitHub.</description>
<category>Opensolr Photos</category>
<pubDate>Sun, 20 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Photos 3.1: Similar Photos That Really Are Alike</title>
<link>https://opensolr.com/changelog/entry/opensolr-photos-3-1-similar-photos-that-really-are-alike</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/opensolr-photos-3-1-similar-photos-that-really-are-alike</guid>
<description>Opensolr Photos 3.1 rebuilds the view that finds photos that are alike: groups no longer run into one another, so a group is a handful of photos instead of half your library, the slider starts at the first 2 and first 3 words, and the whole view opens and pages in a single request. It is called similar photos throughout, because only the last stop can prove a duplicate. Free and open source on GitHub.</description>
<category>Opensolr Photos</category>
<pubDate>Sun, 20 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Photos 3.0: Buttons That Stay on the Screen, Places by Name, One Order Everywhere</title>
<link>https://opensolr.com/changelog/entry/opensolr-photos-3-0-buttons-places-and-one-order</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/opensolr-photos-3-0-buttons-places-and-one-order</guid>
<description>Opensolr Photos 3.0 is about the hands: the map&apos;s buttons stay on the screen on every phone, a place is found by typing its name, the same action sits in the same place whether you are holding one photo or forty, and every row of buttons now looks like buttons. Free and open source on GitHub.</description>
<category>Opensolr Photos</category>
<pubDate>Sun, 20 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Photos 2.9.2: The Place Search Answers the Way You Write</title>
<link>https://opensolr.com/changelog/entry/opensolr-photos-2-9-2-place-search-commas-and-progress</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/opensolr-photos-2-9-2-place-search-commas-and-progress</guid>
<description>Opensolr Photos 2.9.2 finishes the place search on the map: a place written with commas &amp;mdash; Fântâni, Dolj, Romania &amp;mdash; finds what the same words without them find, and the box shows that it is working while the answer is on its way. Free and open source on GitHub.</description>
<category>Opensolr Photos</category>
<pubDate>Sun, 20 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Photos 2.9.0: Find the Place by Name on the Map</title>
<link>https://opensolr.com/changelog/entry/opensolr-photos-2-9-0-find-the-place-by-name-on-the-map</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/opensolr-photos-2-9-0-find-the-place-by-name-on-the-map</guid>
<description>Opensolr Photos 2.9.0 lets you find a city or town by name when you put a photo on the map, instead of dragging the world to it. The map opens where the photo already is, the answers are held on your phone for as long as you chose, and the buttons under the map stay on the screen. Free and open source on GitHub.</description>
<category>Opensolr Photos</category>
<pubDate>Sun, 20 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Photos 2.8.0: Seven Languages, Places You Can Move, Results by Place, People or Date</title>
<link>https://opensolr.com/changelog/entry/opensolr-photos-2-8-0-seven-languages-places-grouping</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/opensolr-photos-2-8-0-seven-languages-places-grouping</guid>
<description>Opensolr Photos 2.8.0 speaks seven languages, lets you move a photo to the right place on a map, one photo or many at once, gives a place to photos from a camera without GPS, groups results by date, place, people or your tags, filters by folder and finds duplicates by any 2, 3 or 4 words in common. Free and open source on GitHub.</description>
<category>Opensolr Photos</category>
<pubDate>Sun, 20 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>AI Summary API: Answers Are No Longer Cut Short</title>
<link>https://opensolr.com/changelog/entry/ai-summary-api-answers-no-longer-cut-short-output-limit</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/ai-summary-api-answers-no-longer-cut-short-output-limit</guid>
<description>The ai_summary endpoint no longer cuts an answer short when the instruction itself is short. A free-form question used to stop after 256 tokens, often in the middle of a code block, with a full stop added at the end; now the model writes until it has finished, up to 8,192 tokens, and an answer that does reach the limit says so instead of pretending to be complete.</description>
<category>API</category>
<pubDate>Sun, 20 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Loghound 1.9: Leave Your Own Visits Out, and See Today, Yesterday or 2 Days Ago</title>
<link>https://opensolr.com/changelog/entry/loghound-1-9-exclude-your-own-visits-by-email-today-yesterday</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/loghound-1-9-exclude-your-own-visits-by-email-today-yesterday</guid>
<description>Loghound 1.9 can leave your own visits out of the numbers: add your address as a signed-in email in Settings, Exclusions, and every visit where your site passes that address to the beacon is excluded on both planes. The duration selector now starts with Today, Yesterday and 2 days ago, whole calendar days in the panel&amp;rsquo;s timezone, and Today is the default.</description>
<category>Loghound</category>
<pubDate>Sun, 20 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Photos 2.7.0: Edits Picked Up in Seconds, Your Place Kept, Searchable Filters</title>
<link>https://opensolr.com/changelog/entry/opensolr-photos-2-7-0-edits-picked-up-place-kept-searchable-filters</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/opensolr-photos-2-7-0-edits-picked-up-place-kept-searchable-filters</guid>
<description>Opensolr Photos 2.7.0 notices a photo edited in another app within seconds, keeps the grid exactly where you left it after a sync, dates every heading with its year and turns filters with more than 50 values into a small search field. It also fixes a crash on the fast scroll bar. Free and open source on GitHub.</description>
<category>Opensolr Photos</category>
<pubDate>Fri, 18 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Photos 2.6.2: Map Thumbnails No Longer Turn Dark</title>
<link>https://opensolr.com/changelog/entry/opensolr-photos-2-6-2-map-thumbnails-no-longer-turn-dark</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/opensolr-photos-2-6-2-map-thumbnails-no-longer-turn-dark</guid>
<description>Opensolr Photos 2.6.2 fixes the map: after zooming in and out, some photos turned into dark squares and only came back at another zoom level. Every thumbnail now loads again when it is needed. Free and open source on GitHub.</description>
<category>Opensolr Photos</category>
<pubDate>Fri, 18 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Photos 2.6.1: Every Filter Value, Documents by Whole Words, One-Tap End of Selection</title>
<link>https://opensolr.com/changelog/entry/opensolr-photos-2-6-1-every-filter-value-documents-selection</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/opensolr-photos-2-6-1-every-filter-value-documents-selection</guid>
<description>Opensolr Photos 2.6.1 lists every value in every filter again: Meaning, People, City, Camera model and the rest were cut off after the first letters of the alphabet. The Documents button picks your paperwork the way Opensolr does, by whole words only, and a tap on the tick count above your photos ends a selection at once. Free and open source on GitHub.</description>
<category>Opensolr Photos</category>
<pubDate>Fri, 18 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Loghound 1.8: a Search Box on the Session Explorer</title>
<link>https://opensolr.com/changelog/entry/loghound-1-8-session-explorer-search-box-on-desktop</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/loghound-1-8-session-explorer-search-box-on-desktop</guid>
<description>Loghound 1.8 adds a free-text search box to the session explorer, on a desktop. Type a path, a User-Agent, a network name, a reverse DNS name, a city or a country, and the visit list narrows to the sessions that match, with your duration and every applied filter carried along. On a phone or tablet the list keeps the whole screen. See the session explorer documentation.</description>
<category>Loghound</category>
<pubDate>Fri, 18 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Photos 2.5: Instant Tagging, Year by Year, and a Fraction of the Data</title>
<link>https://opensolr.com/changelog/entry/opensolr-photos-2-2-people-albums-cleaner-words</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/opensolr-photos-2-2-people-albums-cleaner-words</guid>
<description>Opensolr Photos 2.5 keeps a copy of your index on your phone, so browsing your library and syncing it ask Opensolr for nothing at all. Tagging is instant: what you write is saved on the spot and travels up on its own, fifty photos per call and without sending a single picture. Your photos are now grouped by year, then month, then day, with every group and its count there from the first moment. Filters fold away and remember how you left them, the map opens a place straight into its photos, and t</description>
<category>Opensolr Photos</category>
<pubDate>Fri, 18 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Photos 2.0: Your Photos, in Your Own App</title>
<link>https://opensolr.com/changelog/entry/opensolr-photos-2-0-viewer-people-dates-documents</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/opensolr-photos-2-0-viewer-people-dates-documents</guid>
<description>Opensolr Photos 2.0 is the big one: photos open full screen inside the app and a swipe walks the ones you actually searched for, with pinch and double-tap zoom. Photos are found by who is in them. Every month breaks into its days, with a scroll bar that crosses a year under your thumb. A date range, three new filters, a switch for search by meaning, a Stop button for a running sync, and a tap you can feel for all of it.</description>
<category>Opensolr Photos</category>
<pubDate>Wed, 16 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Read the Text Printed in a Picture: the New image_ocr Endpoint</title>
<link>https://opensolr.com/changelog/entry/image-ocr-read-printed-text-receipts-invoices-labels</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/image-ocr-read-printed-text-receipts-invoices-labels</guid>
<description>A new AI endpoint, image_ocr, reads the text printed in a picture &amp;mdash; a gas receipt, a supplier invoice, a shelf label, a screenshot, a business card &amp;mdash; up to five pictures in one call, so those documents become searchable by what is written on them. image_to_text now takes five pictures per call too.</description>
<category>API</category>
<pubDate>Wed, 16 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Photos 1.8 to 1.12: Albums, Duplicates, Bulk Tagging and the Text in Your Photos</title>
<link>https://opensolr.com/changelog/entry/opensolr-photos-1-8-albums-duplicates-tag-suggestions</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/opensolr-photos-1-8-albums-duplicates-tag-suggestions</guid>
<description>Opensolr Photos 1.8 to 1.12 turned the app into a library: albums, a duplicates finder down to the exact copy, photos like any photo, tagging many photos at once, folders you browse instead of scroll, and search inside the text printed in your photos. Free and open source on GitHub, with the full documentation on the platform.</description>
<category>Opensolr Photos</category>
<pubDate>Wed, 16 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Loghound 1.3: SEO Tools, Your Own Attack Patterns and a Chart Above Every Table</title>
<link>https://opensolr.com/changelog/entry/loghound-1-3-seo-tools-attack-patterns-charts</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/loghound-1-3-seo-tools-attack-patterns-charts</guid>
<description>Loghound 1.3 is out. A new SEO Tools section compares any two periods of traffic like for like, across nine pages with charts and CSV exports. You can now define your own attack patterns per host on top of 48 shipped defaults, software that does not identify itself as a browser is scored as a bot, every rule list imports and exports as CSV, and every ranked table has a chart above it. See 19 screenshots of it in action, or read the documentation.</description>
<category>Loghound</category>
<pubDate>Sun, 13 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Laravel Opensolr Search 1.0.0: an Open-Source Laravel 13 App on Packagist</title>
<link>https://opensolr.com/changelog/entry/laravel-opensolr-search-1-0-0-open-source-sample-app-packagist</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/laravel-opensolr-search-1-0-0-open-source-sample-app-packagist</guid>
<description>A complete, open-source Laravel 13 application built on the Laravel Scout driver is on Packagist as opensolr/laravel-opensolr-search. Hybrid semantic search over an Eloquent model and over a whole index, a grounded AI answer, a Vue 3 front end on Vite, and the security you would expect from production code. Start one with composer create-project opensolr/laravel-opensolr-search my-search; it runs on the public demo account out of the box. Source on GitHub, walkthrough in the sample application g</description>
<category>Laravel</category>
<pubDate>Sun, 13 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Loghound: an Open-Source Bot Detector and Traffic Analyser That Runs on Your Own Server</title>
<link>https://opensolr.com/changelog/entry/loghound-open-source-bot-detector-and-traffic-analyser</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/loghound-open-source-bot-detector-and-traffic-analyser</guid>
<description>We have released Loghound, a free and open-source traffic analyser that tells you which half of your traffic is not a person. It reads your webserver access log read-only on your own server, cross-checks three independent planes of evidence, and keeps what it learns in two Opensolr indexes it provisions for you during setup. No telemetry, and no copy of your logs anywhere but your account. MIT licensed, on GitHub, with the full documentation on the platform.</description>
<category>Loghound</category>
<pubDate>Fri, 11 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Search for WordPress 1.0.38: Search Operators Work With AI Search On</title>
<link>https://opensolr.com/changelog/entry/wordpress-plugin-1-0-38-search-operators-work-with-ai-search-on</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/wordpress-plugin-1-0-38-search-operators-work-with-ai-search-on</guid>
<description>Opensolr Search for WordPress 1.0.38 makes the +word, -word and exact-phrase search operators work with AI search switched on. They are keyword syntax, so they only ever bound the keyword half of a hybrid query, and the semantic half handed the excluded results straight back — while the minus sign, left inside the query text, actually pulled results towards what the visitor asked to remove. A prefixed term is now applied as a filter over the whole result set. Quoted phrases survive too, so +&quot;mac</description>
<category>WordPress Plugin</category>
<pubDate>Wed, 09 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Search for Drupal 5.0.4: Search Operators Work With AI Search On</title>
<link>https://opensolr.com/changelog/entry/drupal-module-5-0-4-search-operators-work-with-ai-search-on</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/drupal-module-5-0-4-search-operators-work-with-ai-search-on</guid>
<description>Opensolr Search for Drupal 5.0.4 makes the +word, -word and exact-phrase search operators work with AI search switched on. They are keyword syntax, so they only ever bound the keyword half of a hybrid query, and the semantic half handed the excluded results straight back — while the minus sign, left inside the query text, actually pulled results towards what the visitor asked to remove. A prefixed term is now applied as a filter over the whole result set. Quoted phrases survive too, so +&quot;machine</description>
<category>Drupal Module</category>
<pubDate>Wed, 09 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Per-URL Crawl Settings: HTTP Login, Do-Not-Index and Do-Not-Follow Rules</title>
<link>https://opensolr.com/changelog/entry/web-crawler-per-url-settings-http-login-noindex-nofollow-global-exclusions</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/web-crawler-per-url-settings-http-login-noindex-nofollow-global-exclusions</guid>
<description>The Web Crawler now takes per-URL settings. Each row in Crawl URLs has a cog holding an optional HTTP user name and password — so staging sites, intranets and members areas can finally be crawled — plus two lists of regular expressions: do not index (the page is still fetched and its links followed, but it never reaches your index) and do not follow (the link is never queued at all). The same two lists exist index-wide under Global Exclusions, and the two sets combine rather than override each o</description>
<category>Web Crawler</category>
<pubDate>Wed, 09 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Search Operators Now Hold With AI Search On: +word, -word and Exact Phrases</title>
<link>https://opensolr.com/changelog/entry/search-operators-plus-minus-exact-phrases-work-with-ai-hybrid-search</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/search-operators-plus-minus-exact-phrases-work-with-ai-hybrid-search</guid>
<description>The +word, -word and exact-phrase search operators now work with AI search switched on. They are keyword syntax, so they only ever bound the keyword half of a hybrid search — and in Union mode the semantic half handed the excluded results straight back. Exclusion failed twice over, because the minus sign means nothing to an AI model: left inside the query, -refurbished read as one more word and pulled results towards refurbished listings. A prefixed term is now applied as a filter over the whole</description>
<category>Search</category>
<pubDate>Wed, 09 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Is Now Free Forever — the Free Plan No Longer Expires</title>
<link>https://opensolr.com/changelog/entry/opensolr-free-forever-free-plan-no-longer-expires</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/opensolr-free-forever-free-plan-no-longer-expires</guid>
<description>The 15-day free trial is gone. Every registered Opensolr account is now on a free plan that never expires — no countdown, no end date, no credit card. Your Opensolr Index stays online for as long as you use it. Nothing is charged, and nothing switches off on a date. The one rule worth knowing is in section 9.2 of the Terms: an index left completely unused for 30 days may be removed, and we email you before that happens.</description>
<category>Account</category>
<pubDate>Tue, 08 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Search for WordPress 1.0.36: Search Suggestions Line Up Under the Box</title>
<link>https://opensolr.com/changelog/entry/wordpress-plugin-1-0-36-autocomplete-suggestions-aligned-under-search-box</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/wordpress-plugin-1-0-36-autocomplete-suggestions-aligned-under-search-box</guid>
<description>The Opensolr Search plugin for WordPress 1.0.36 is a small polish release. The search-as-you-type suggestions now line up directly under the search box, instead of starting under the camera (image-search) button on its left.</description>
<category>WordPress Plugin</category>
<pubDate>Mon, 07 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Search for Drupal 5.0.1: Facet “Show all” Fix, a Smarter AI Toggle, Aligned Autocomplete and a Collapsible Mobile Language Menu</title>
<link>https://opensolr.com/changelog/entry/drupal-module-5-0-1-facet-show-all-ai-toggle-autocomplete-mobile-language-menu</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/drupal-module-5-0-1-facet-show-all-ai-toggle-autocomplete-mobile-language-menu</guid>
<description>The Opensolr Search module for Drupal 5.0.1 is a polish release that fixes the search-page details you actually touch. The facet &amp;ldquo;Show all&amp;rdquo; dialog lists every value again instead of coming up empty. The AI (hybrid) search toggle appears only when it can be used &amp;mdash; when your plan includes vector search and you are under the monthly AI limit. Autocomplete suggestions line up directly under the search box. The language menu collapses again on phones &amp;mdash; grouped country variants</description>
<category>Drupal Module</category>
<pubDate>Mon, 07 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Search for WordPress 1.0.35: Search by Image, Result Lightbox, AI Toggle and Reuse an Existing Index</title>
<link>https://opensolr.com/changelog/entry/wordpress-plugin-1-0-35-search-by-image-lightbox-ai-toggle-reuse-index</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/wordpress-plugin-1-0-35-search-by-image-lightbox-ai-toggle-reuse-index</guid>
<description>The Opensolr Search plugin for WordPress 1.0.35 brings the same new search-page experience to WordPress. Search by image. A camera button turns a photo into a search (visual labels, OCR text or a barcode), keeps the thumbnail on screen, and offers a &quot;search by picture meaning&quot; alternative. Result thumbnails zoom on hover and open full size in a lightbox with the page title linked underneath. An AI (hybrid) search toggle on the results page, per search. A Duration facet (h:mm:ss min/max slider) f</description>
<category>WordPress Plugin</category>
<pubDate>Mon, 07 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Search for Drupal 5.0.0: Search by Image, Hover-Zoom Lightbox, AI Toggle and a Duration Facet</title>
<link>https://opensolr.com/changelog/entry/drupal-module-5-0-0-search-by-image-lightbox-ai-toggle-duration-facet</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/drupal-module-5-0-0-search-by-image-lightbox-ai-toggle-duration-facet</guid>
<description>The Opensolr Search module for Drupal 5.0.0 is here, with the biggest batch of search-page features yet. Search by image. A camera button on the search box turns a photo into a search: the picture is read as visual labels, text (OCR) or a barcode, the thumbnail stays on screen with the words it was read as, and an OCR read offers a &quot;search by picture meaning&quot; alternative. Result thumbnails zoom on hover and open full size in a lightbox, with the page title linked underneath. The searched image o</description>
<category>Drupal Module</category>
<pubDate>Mon, 07 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Facet Filter Box Now Searches Every Value, Not Only the Ones on Screen</title>
<link>https://opensolr.com/changelog/entry/facet-sidebar-filter-box-searches-all-values-not-only-visible-rows</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/facet-sidebar-filter-box-searches-all-values-not-only-visible-rows</guid>
<description>The small Filter... box above a long facet list on hosted search pages was only searching the handful of values already displayed, so a channel, brand or author further down the list came back as nothing, even though Show all found it. Typing in that box now searches every value of the facet and lists the matches sorted by count, with Show all still one click away.</description>
<category>Search</category>
<pubDate>Sun, 06 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>My Solr Indexes: Filter by Server, Version and Type, Correct Cluster Bandwidth, Readable on Phones</title>
<link>https://opensolr.com/changelog/entry/my-solr-indexes-facet-filters-cluster-bandwidth-mobile-cards</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/my-solr-indexes-facet-filters-cluster-bandwidth-mobile-cards</guid>
<description>The My Solr Indexes page (Solr menu) is now the same sortable table as the dashboard, with filters on the left: Indexes or Resilient Clusters, the server each index lives on, and the Solr version. Every filter shows how many indexes it would leave, options that would leave none are not shown, and the filters combine with the name search. Bandwidth for a Resilient Cluster now adds the master and all its replicas, the same figure as the cluster&amp;rsquo;s Control Panel, so clusters no longer look alm</description>
<category>Account</category>
<pubDate>Sat, 05 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Dashboard: One Sortable, Searchable Table for All Your Indexes</title>
<link>https://opensolr.com/changelog/entry/dashboard-indexes-table-sortable-searchable-disk-bandwidth-region</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/dashboard-indexes-table-sortable-searchable-disk-bandwidth-region</guid>
<description>The two lists on the dashboard, bandwidth and disk usage, are now one Indexes table: index name, region (flag, with the country, city and server on hover), Solr version, when it was created, disk used and bandwidth this month, plus a direct link to each index&amp;rsquo;s Control Panel. Search by name, sort on any column, and page through it at 25, 50 or 100 per page, so accounts with hundreds of indexes load as fast as accounts with five. The totals at the top still include bandwidth from indexes de</description>
<category>Account</category>
<pubDate>Sat, 05 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Facet Filter Mapping: Display Order No Longer Lost When Filtering the Field List</title>
<link>https://opensolr.com/changelog/entry/facet-filter-mapping-order-kept-when-filtering-fields</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/facet-filter-mapping-order-kept-when-filtering-fields</guid>
<description>In Facet Filter Mapping, searching the field list, ticking a field and clearing the search shuffled the enabled facets back into alphabetical order, and a field ticked while the list was filtered could jump ahead of the ones already ordered. The enabled group now keeps the order you set, and a newly ticked field always joins at the end of it.</description>
<category>Facet Mapping</category>
<pubDate>Sat, 05 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Search Page Password Protection: Passwords Are Accepted Again</title>
<link>https://opensolr.com/changelog/entry/search-page-password-protection-http-basic-auth-fix</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/search-page-password-protection-http-basic-auth-fix</guid>
<description>Password-protecting a hosted search page (Index Settings &amp;rarr; Search Page Password) was rejecting the correct username and password on search.opensolr.com: the credentials never reached the check, so every attempt was refused. Fixed. The option uses the index&amp;rsquo;s HTTP credentials, the ones under Security in the Control Panel, and now enforces them as intended.</description>
<category>Search</category>
<pubDate>Sat, 05 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Search by Image: “Picture Meaning” Link After OCR, and Full-Size Result Thumbnails</title>
<link>https://opensolr.com/changelog/entry/search-by-image-picture-meaning-link-result-thumbnail-lightbox</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/search-by-image-picture-meaning-link-result-thumbnail-lightbox</guid>
<description>Two additions to the hosted search page. When search by image reads text off your photo, the note under the search box now offers a picture meaning link: one click re-runs the search on what the picture shows rather than what was written on it, useful when the text on a label is not the thing you were looking for. And result thumbnails now grow on hover and open at full size on click, in the same viewer used for the searched picture, with the page title linked underneath.</description>
<category>Search</category>
<pubDate>Sat, 05 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Hierarchical Category Facets Now Show the Largest Categories First</title>
<link>https://opensolr.com/changelog/entry/hierarchical-facets-sorted-by-count-largest-categories-first</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/hierarchical-facets-sorted-by-count-largest-categories-first</guid>
<description>The hierarchical category facet on hosted search pages was listing its first fifty values alphabetically instead of by size. On a news site that meant fifty one-article headlines beginning with digits, each with a count of 1, while News, Sports and Weather, the categories with thousands of articles and real sub-categories underneath, never appeared. Every level of the hierarchy is now sorted by document count, so the drill-down starts with what matters. Language and locale facets keep their alph</description>
<category>Search</category>
<pubDate>Sat, 05 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Search by Image Now Reads Barcodes and QR Codes Too</title>
<link>https://opensolr.com/changelog/entry/search-by-image-barcode-qr-code-scanning</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/search-by-image-barcode-qr-code-scanning</guid>
<description>Search by image now also reads barcodes and QR codes: point it at a product barcode, a poster&apos;s QR code, or a shipping label, and it is decoded automatically, no separate scanner needed. Combined with the labels it already recognizes and the text it already reads off a picture, search by image now works in three layers: what the picture shows, what is printed on it, and any code on it. See it on the demo page.</description>
<category>Search</category>
<pubDate>Thu, 03 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Search by Image Now Reads Labels: Photograph a Shelf Tag, Get the Exact Product</title>
<link>https://opensolr.com/changelog/entry/search-by-image-reads-labels-ocr-shelf-tag-exact-product</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/search-by-image-reads-labels-ocr-shelf-tag-exact-product</guid>
<description>Search by image now reads a picture when it is mostly text: a shelf tag, a spec label, a receipt. The product name and the article number on it become the query, and the exact product comes back first. Pictures of things still work as before. Nothing to set up, nothing to re-index; the same is in the image_to_text API.</description>
<category>Search</category>
<pubDate>Thu, 03 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Search by Image: Upload a Photo, Search Your Index With It</title>
<link>https://opensolr.com/changelog/entry/search-by-image-upload-a-photo-image-to-text</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/search-by-image-upload-a-photo-image-to-text</guid>
<description>Every Opensolr hosted search page now takes a photo as the query: click the image icon next to the search box, pick a picture, and the search runs on what is in it. The same thing is available to your own code as the image_to_text API endpoint.</description>
<category>Search</category>
<pubDate>Tue, 01 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Query Analytics: International Characters Fixed, Popular Queries Shows Real Searches</title>
<link>https://opensolr.com/changelog/entry/query-analytics-utf8-fix-popular-queries-real-searches</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/query-analytics-utf8-fix-popular-queries-real-searches</guid>
<description>Two fixes to Query Analytics. Searches containing accented and international characters are now reported UTF-8 correctly instead of showing up garbled, and the Popular Queries chart now shows the searches your visitors actually typed — facet and filter clicks are no longer counted as queries, and real searches are no longer hidden by a popularity threshold.</description>
<category>Query Analytics</category>
<pubDate>Tue, 01 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Control Panel Dropdowns Now Size to Their Content</title>
<link>https://opensolr.com/changelog/entry/control-panel-dropdowns-size-to-content</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/control-panel-dropdowns-size-to-content</guid>
<description>Every dropdown in the Control Panel now sizes to its own content instead of taking half a screen. Filter bars on the log and analytics screens fit on one line again.</description>
<category>Control Panel</category>
<pubDate>Tue, 01 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Drupal Module 4.5.0 — Access-Restricted Content Excluded, Attached Documents Crawled Again</title>
<link>https://opensolr.com/changelog/entry/drupal-module-4-5-0-access-restricted-content-attached-documents</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/drupal-module-4-5-0-access-restricted-content-attached-documents</guid>
<description>Opensolr Search for Drupal 4.5.0 stops indexing content an anonymous visitor is not allowed to see, and fixes attached-document crawling, facet configuration saves, the embedded widget query and several search page errors.</description>
<category>Drupal Module</category>
<pubDate>Tue, 01 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>WordPress Plugin 1.0.34: Protected Content Kept Out of the Index, Live Price and Stock Sync</title>
<link>https://opensolr.com/changelog/entry/wordpress-plugin-1-0-34-protected-content-price-stock-sync</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/wordpress-plugin-1-0-34-protected-content-price-stock-sync</guid>
<description>Opensolr Search for WordPress 1.0.34 stops password-protected posts and hidden WooCommerce products from being indexed, and keeps price, sale price, stock and SKU changes in step with your index. Four settings that could never be saved now save.</description>
<category>WordPress Plugin</category>
<pubDate>Tue, 01 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>AI Search Toggle — Hybrid or Pure Keyword, the Visitor&apos;s Choice</title>
<link>https://opensolr.com/changelog/entry/ai-search-toggle-hybrid-vs-pure-keyword-hosted-search</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/ai-search-toggle-hybrid-vs-pure-keyword-hosted-search</guid>
<description>The hosted search page now carries an AI toggle next to the Fresh toggle on every vector-capable index, letting each visitor pick hybrid AI search or pure keyword search per search without changing the index settings.</description>
<category>Search</category>
<pubDate>Mon, 31 Aug 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>r/Opensolr Community Opens on Reddit, and the Pricing and Ordering Flow Is Reworked</title>
<link>https://opensolr.com/changelog/entry/opensolr-reddit-community-launch-r-opensolr</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/opensolr-reddit-community-launch-r-opensolr</guid>
<description>Opensolr now has an official Reddit community, r/Opensolr, for questions, benchmarks, horror stories and feature requests. The same release reworks interface details across the site, most visibly the pricing and ordering flow.</description>
<category>Platform</category>
<pubDate>Mon, 31 Aug 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>WordPress Plugin 1.0.33: Deleted Media Files No Longer Stay Searchable</title>
<link>https://opensolr.com/changelog/entry/wordpress-plugin-1-0-33-deleted-media-no-longer-searchable</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/wordpress-plugin-1-0-33-deleted-media-no-longer-searchable</guid>
<description>WordPress plugin 1.0.33 removes a document from the index when you delete it from the Media Library, stops a replaced file leaving its old version behind, and makes a newly uploaded PDF or Office document searchable straight away.</description>
<category>WordPress</category>
<pubDate>Mon, 31 Aug 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Drupal Module 4.4.0: PIN and EXCLUDE Buttons Work, EXCLUDE ALL Applies, Deleted Documents Leave the Index</title>
<link>https://opensolr.com/changelog/entry/drupal-module-4-4-0-pin-exclude-buttons-work</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/drupal-module-4-4-0-pin-exclude-buttons-work</guid>
<description>Drupal module 4.4.0. The PIN, EXCLUDE and EXCLUDE ALL buttons on the search results page now save rules instead of returning a permission error, EXCLUDE ALL rules are now read by the search itself, and deleted or replaced documents no longer stay searchable.</description>
<category>Drupal</category>
<pubDate>Mon, 31 Aug 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Office Document Extraction Fixed: ODT Text Loss, Empty ODS and ODP Documents, and Missing PPT and CSV Support</title>
<link>https://opensolr.com/changelog/entry/odt-extraction-text-after-bold-links-no-longer-lost</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/odt-extraction-text-after-bold-links-no-longer-lost</guid>
<description>Three extraction faults fixed in one pass: .odt files lost every word after their first bold or linked run, .ods and .odp files indexed as empty documents with no error, and legacy .ppt and CSV files were rejected as unsupported. All are now read correctly by both the Data Ingestion API and the Web Crawler.</description>
<category>Data Ingestion</category>
<pubDate>Mon, 31 Aug 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Integration Packages 0.3.0: A Live Test Suite, Three Fixes, and Demo Credentials in Every Quickstart</title>
<link>https://opensolr.com/changelog/entry/integration-packages-0-3-0-live-test-suite-fixes</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/integration-packages-0-3-0-live-test-suite-fixes</guid>
<description>The LangChain, LlamaIndex, Haystack, MCP and Laravel Scout packages are out at 0.3.0, covered end to end by a live test suite that found three bugs, and each one now ships with public demo credentials so the quickstart runs with nothing to sign up for.</description>
<category>API</category>
<pubDate>Sat, 29 Aug 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>WordPress Plugin 1.0.29 and 1.0.30: Fresh Ranking, the AI Hints Full-Content Fix, and a Clearer Fresh Switch</title>
<link>https://opensolr.com/changelog/entry/wordpress-plugin-1-0-29-fresh-toggle-ai-hints-fix</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/wordpress-plugin-1-0-29-fresh-toggle-ai-hints-fix</guid>
<description>Two WordPress plugin releases in one day: 1.0.29 adds a Fresh toggle that ranks recent content higher and fixes AI Hints so it reads the full pages behind your results, and 1.0.30 moves the Fresh control up beside AI Hints as an on/off switch.</description>
<category>WordPress</category>
<pubDate>Sat, 29 Aug 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Drupal Module 4.2.3 and 4.2.4: A Fresh Toggle on Your Search Page, and AI Hints That Read Your Full Content</title>
<link>https://opensolr.com/changelog/entry/drupal-module-4-2-3-fresh-toggle-ai-hints</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/drupal-module-4-2-3-fresh-toggle-ai-hints</guid>
<description>The Drupal module gains a Fresh control that lets visitors favour recent content, refined into a plain on/off switch in 4.2.4. AI Hints now reads the full text of the most relevant matches from your index instead of the teaser lines on screen.</description>
<category>Drupal</category>
<pubDate>Sat, 29 Aug 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Fresh Toggle, a Recency Weight Slider, and Much More Detailed AI Hints Answers</title>
<link>https://opensolr.com/changelog/entry/fresh-toggle-visitors-push-recent-results-up-ranking</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/fresh-toggle-visitors-push-recent-results-up-ranking</guid>
<description>A Fresh toggle lets whoever is searching push recent documents up the ranking, with a per-index weight slider deciding how hard it pushes. AI Hints answers are far more detailed, read the full text of every relevant match, and are now identical across the search page, the modules and all five packages.</description>
<category>Search</category>
<pubDate>Sat, 29 Aug 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Permanent Live RAG Demo: A Pre-Crawled News Index With Keyword, Vector and Hybrid Comparison</title>
<link>https://opensolr.com/changelog/entry/live-rag-demo-prebuilt-news-index-keyword-vector-hybrid</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/live-rag-demo-prebuilt-news-index-keyword-vector-hybrid</guid>
<description>A ready-made live RAG demo with nothing to set up: a permanent, already crawled and embedded index of tens of thousands of news articles, where you can stream a grounded answer or run the same query keyword-only, vector-only and hybrid, side by side.</description>
<category>Website</category>
<pubDate>Sat, 29 Aug 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Server Management: PHP-FPM Error Logs Now Readable in the Live Logs Panel</title>
<link>https://opensolr.com/changelog/entry/server-management-php-fpm-error-log-live-logs-panel</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/server-management-php-fpm-error-log-live-logs-panel</guid>
<description>The Live Logs panel on a project now has a third view, PHP-FPM Error, alongside Access and Error. Enabling a dedicated PHP-FPM pool gives that project its own PHP error log automatically, and the viewer reads the path straight from the pool configuration.</description>
<category>Server Management</category>
<pubDate>Sat, 29 Aug 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Server Management: Dedicated PHP-FPM Pool per Project With Live Worker Counters</title>
<link>https://opensolr.com/changelog/entry/server-management-dedicated-php-fpm-pool-per-project</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/server-management-dedicated-php-fpm-pool-per-project</guid>
<description>Each project on a managed server can now run on its own PHP-FPM pool, so one busy site cannot exhaust the workers of every other site on the box. Live worker counters and a pool file editor are included, and the change is strictly opt-in.</description>
<category>Control Panel</category>
<pubDate>Sat, 29 Aug 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Server Management: Apache VHost Rebuilds Now Require Explicit Confirmation</title>
<link>https://opensolr.com/changelog/entry/server-management-vhost-rebuild-explicit-confirmation</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/server-management-vhost-rebuild-explicit-confirmation</guid>
<description>Saving a project only rebuilds its Apache vhost when the hostname, aliases, type or path actually changed, and both that case and the &amp;ldquo;Create VHost&amp;rdquo; button now ask for confirmation first.</description>
<category>Control Panel</category>
<pubDate>Fri, 28 Aug 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Drupal and WordPress Live Demos Add One-Time reCAPTCHA Verification With 24-Hour Memory</title>
<link>https://opensolr.com/changelog/entry/drupal-wordpress-demos-recaptcha-verification-24-hours</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/drupal-wordpress-demos-recaptcha-verification-24-hours</guid>
<description>The Drupal and WordPress proof-of-concept demo sites now ask for a one-time human verification and remember you for 24 hours of activity, keeping automated traffic off the demos.</description>
<category>Website</category>
<pubDate>Fri, 28 Aug 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>The Whole REST API Documented: 14 New Endpoint Articles, a Rewritten Reference, Host Split and Three Fixes</title>
<link>https://opensolr.com/changelog/entry/rest-api-documented-14-endpoint-articles</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/rest-api-documented-14-endpoint-articles</guid>
<description>Every user-facing REST endpoint now has its own article with parameters, real responses and cURL, PHP and Python examples. The API Reference was rewritten around real error responses and the two hosts, api.opensolr.com now serves only AI and Data Ingestion, and three endpoint bugs were fixed.</description>
<category>API</category>
<pubDate>Fri, 28 Aug 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Search 1.0.27 for WordPress: Fuller, Properly Formatted AI Answers</title>
<link>https://opensolr.com/changelog/entry/opensolr-search-wordpress-1-0-27-fuller-formatted-ai-answers</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/opensolr-search-wordpress-1-0-27-fuller-formatted-ai-answers</guid>
<description>Opensolr Search 1.0.27 for WordPress brings the AI answer improvements to WordPress: fuller, properly formatted answers, restricted to what your indexed content states.</description>
<category>WordPress Plugin</category>
<pubDate>Wed, 26 Aug 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Search 4.2.1 for Drupal: Fuller, Properly Formatted AI Answers</title>
<link>https://opensolr.com/changelog/entry/opensolr-search-drupal-4-2-1-fuller-formatted-ai-answers</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/opensolr-search-drupal-4-2-1-fuller-formatted-ai-answers</guid>
<description>Opensolr Search 4.2.1 for Drupal brings the same AI answer improvements: fuller, properly formatted answers restricted to what your indexed content states. Drop-in upgrade, no database updates and no re-index.</description>
<category>Drupal Module</category>
<pubDate>Wed, 26 Aug 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Web Crawler Fix: Underscores in Product Codes No Longer Replaced With Spaces</title>
<link>https://opensolr.com/changelog/entry/web-crawler-underscores-product-codes-preserved</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/web-crawler-underscores-product-codes-preserved</guid>
<description>Underscores were being replaced with spaces across the whole text while converting emoji to words, so an identifier such as ABC_123_XL was indexed as ABC 123 XL. Emoji are still converted; everything else is now indexed exactly as written.</description>
<category>Web Crawler</category>
<pubDate>Wed, 26 Aug 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>ai_summary Goes Fully Deterministic: Your Instruction Is the Prompt, Byte for Byte</title>
<link>https://opensolr.com/changelog/entry/ai-summary-api-deterministic-instruction-is-the-prompt</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/ai-summary-api-deterministic-instruction-is-the-prompt</guid>
<description>Whatever you send in instruction is now exactly what the model reads, byte for byte — nothing reorders, relabels, appends to or shortens it. All AI integrations ship the new answer behaviour.</description>
<category>API</category>
<pubDate>Wed, 26 Aug 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Fuller AI Answers, and Queries That Keep Their Punctuation</title>
<link>https://opensolr.com/changelog/entry/ai-answers-fuller-detailed-bullet-lists-no-invented-content</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/ai-answers-fuller-detailed-bullet-lists-no-invented-content</guid>
<description>AI answers now cover every relevant point from the matched pages, in short paragraphs and bullet lists, and are restricted to what your indexed content actually says. Separately, characters such as [ ] { } ( ) ^ ~ ! are no longer stripped out of search queries.</description>
<category>Search</category>
<pubDate>Wed, 26 Aug 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Search 1.0.26 for WordPress: Direct AI Hints and a Full Document Reader</title>
<link>https://opensolr.com/changelog/entry/opensolr-search-wordpress-1-0-26-ai-hints-document-reader</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/opensolr-search-wordpress-1-0-26-ai-hints-document-reader</guid>
<description>Version 1.0.26 brings the platform AI answer improvements to WordPress: AI Hints answer directly instead of hedging, the Document Reader returns a full readable rendition of the page, and your question is no longer echoed above the answer.</description>
<category>WordPress Plugin</category>
<pubDate>Tue, 25 Aug 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>LangChain, LlamaIndex, Haystack, MCP and Laravel Scout Ship Grounded AI Answers by Default</title>
<link>https://opensolr.com/changelog/entry/langchain-llamaindex-haystack-mcp-laravel-scout-grounded-answers</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/langchain-llamaindex-haystack-mcp-laravel-scout-grounded-answers</guid>
<description>All five AI integrations now send a grounded answer instruction by default and drop weakly matching documents before generating, so RAG answers stay direct and on topic. Update with pip install -U or composer update.</description>
<category>API</category>
<pubDate>Tue, 25 Aug 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Search 4.2.0 for Drupal: Direct AI Hints, Full Document Reader, Drupal 12 Readiness</title>
<link>https://opensolr.com/changelog/entry/opensolr-search-drupal-4-2-0-ai-hints-document-reader-drupal-12</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/opensolr-search-drupal-4-2-0-ai-hints-document-reader-drupal-12</guid>
<description>Opensolr Search 4.2.0 for Drupal. AI Hints answer the question directly, the Document Reader returns a full readable rendition rather than a summary, the query is no longer echoed above the answer, and the module is Drupal 12 ready. A drop-in upgrade.</description>
<category>Drupal Module</category>
<pubDate>Tue, 25 Aug 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>AI Answers Stop Hedging and the Document Reader Shows the Full Text</title>
<link>https://opensolr.com/changelog/entry/ai-answers-stop-hedging-no-query-echo-weak-matches-dropped</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/ai-answers-stop-hedging-no-query-echo-weak-matches-dropped</guid>
<description>AI answers now open with the fact instead of a preamble, no longer echo your question back, and drop weakly matching results before generating. The Document Reader renders the full readable source text rather than a fixed-heading summary.</description>
<category>Search</category>
<pubDate>Tue, 25 Aug 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>RAG in 60 Seconds: A Live Sandbox That Builds a Real Solr Index With No Signup</title>
<link>https://opensolr.com/changelog/entry/rag-in-60-seconds-live-sandbox-no-signup</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/rag-in-60-seconds-live-sandbox-no-signup</guid>
<description>The new Try it live page builds a real Apache Solr index in one click, with no signup. Push your own JSON or a document URL, search it with hybrid search, and ask questions answered from your own content with sources cited.</description>
<category>Website</category>
<pubDate>Tue, 25 Aug 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Scoped API Keys: Restrict Keys per Endpoint and Index, Stop Sharing Your Master Key</title>
<link>https://opensolr.com/changelog/entry/scoped-api-keys-per-endpoint-index-restrictions</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/scoped-api-keys-per-endpoint-index-restrictions</guid>
<description>You can now create additional API keys restricted to chosen endpoints and, optionally, to a subset of your indexes, with an optional expiry date — so your root-level master key never has to leave your hands.</description>
<category>Security</category>
<pubDate>Tue, 25 Aug 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Search API Opensolr 2.3.0 and 2.4.0: Opensolr Takes Over Maintenance, Admin Fatal Error Fixed, New Four-Step Setup</title>
<link>https://opensolr.com/changelog/entry/search-api-opensolr-2-3-0-maintenance-admin-fatal-error-fix</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/search-api-opensolr-2-3-0-maintenance-admin-fatal-error-fix</guid>
<description>The Search API opensolr connector is now maintained by the Opensolr team. 2.3.0 fixes the admin fatal error, makes Key module integration opt-in and is ready for Drupal 12; 2.4.0 replaces the old registration wizard with a four-step guided setup page.</description>
<category>Drupal Module</category>
<pubDate>Tue, 18 Aug 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Hosted Search AI Answers Now Give Direct Grounded Answers, Not Just Summaries</title>
<link>https://opensolr.com/changelog/entry/hosted-search-ai-direct-grounded-answers-not-summaries</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/hosted-search-ai-direct-grounded-answers-not-summaries</guid>
<description>AI answers now answer the question rather than summarising around it. The same grounded answer mode powers ai_answer across the AI integrations, with configurable retrieval depth and an optional custom instruction.</description>
<category>Search</category>
<pubDate>Sat, 15 Aug 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Search Tuning Now Applies to Every API Call and Integration, and embed_and_search Matches Your Hosted Search Page Exactly</title>
<link>https://opensolr.com/changelog/entry/embed-and-search-api-identical-results-hosted-search-page</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/embed-and-search-api-identical-results-hosted-search-page</guid>
<description>Everything configured in Index Settings &amp;rarr; Search Tuning now applies automatically to the embed_and_search endpoint and to the LangChain, LlamaIndex, Haystack, Laravel Scout and MCP integrations. Every knob can also be overridden per call.</description>
<category>API</category>
<pubDate>Sat, 15 Aug 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Dedicated Pages, Docs and FAQs Launched for Every Opensolr AI Integration</title>
<link>https://opensolr.com/changelog/entry/dedicated-pages-docs-faqs-every-ai-integration</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/dedicated-pages-docs-faqs-every-ai-integration</guid>
<description>Every AI integration now has its own product page — LangChain, MCP, LlamaIndex, Haystack and Laravel Scout — alongside a new AI Integrations chapter in the platform documentation, five new FAQ guides, and a redesigned homepage overview of all six ways in.</description>
<category>Website</category>
<pubDate>Fri, 14 Aug 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Ships Native LangChain, LlamaIndex, Haystack, MCP and Laravel Scout Integrations, All at v0.2.0 With Grounded RAG Answers</title>
<link>https://opensolr.com/changelog/entry/opensolr-native-langchain-vector-store-gpu-embeddings</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/opensolr-native-langchain-vector-store-gpu-embeddings</guid>
<description>Opensolr is now a native vector store for LangChain, LlamaIndex and Haystack, a Laravel Scout driver, and a listed server in the official MCP Registry — all at v0.2.0, with Data Ingestion API writes, a lexical-only mode, a new vector_regions endpoint, and a one-call ai_answer.</description>
<category>API</category>
<pubDate>Fri, 14 Aug 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>WordPress Plugin 1.0.25: Search Page Now Lives Inside Your Own Theme</title>
<link>https://opensolr.com/changelog/entry/wordpress-plugin-1-0-25-search-page-inside-your-theme</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/wordpress-plugin-1-0-25-search-page-inside-your-theme</guid>
<description>Opensolr Search 1.0.25 turns /opensolr-search/ into an ordinary WordPress page wrapped by your own theme, fixes pagination and shortcode styling, and is verified against WordPress 7.1.</description>
<category>WordPress Plugin</category>
<pubDate>Thu, 13 Aug 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Service Availability: Signups and Payment Methods Restricted in certain Countries</title>
<link>https://opensolr.com/changelog/entry/service-availability-signups-payments-restricted-23-countries</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/service-availability-signups-payments-restricted-23-countries</guid>
<description>For security and compliance reasons, new Opensolr accounts and new payment methods can no longer be created from listed countries. Existing accounts are unaffected, and cases are still reviewed individually on request.</description>
<category>Security</category>
<pubDate>Thu, 13 Aug 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Drupal Module: Point Multiple Drupal Sites at One Shared Opensolr Index</title>
<link>https://opensolr.com/changelog/entry/drupal-module-multiple-sites-one-shared-index</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/drupal-module-multiple-sites-one-shared-index</guid>
<description>The Drupal module Settings page can now attach a site to an existing index from your Opensolr account instead of always creating a new one, so several Drupal instances can feed a single search experience.</description>
<category>Drupal Module</category>
<pubDate>Fri, 31 Jul 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Varnish Full-Page Cache Is Now Configurable From the Opensolr Control Panel</title>
<link>https://opensolr.com/changelog/entry/varnish-full-page-cache-configurable-control-panel</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/varnish-full-page-cache-configurable-control-panel</guid>
<description>The Varnish card in your server&amp;rsquo;s Services tab gains a Configure button: cache-exclusion rules with a URL tester and one-click purge, or the raw VCL. Every save is backed up, compile-tested and applied with zero downtime.</description>
<category>Server Management</category>
<pubDate>Fri, 31 Jul 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Hybrid Search Now Runs on the Proprietary Opensolr Hybrid Query Parser</title>
<link>https://opensolr.com/changelog/entry/hybrid-search-proprietary-opensolr-hybrid-query-parser</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/hybrid-search-proprietary-opensolr-hybrid-query-parser</guid>
<description>Every vector-enabled index now fuses keyword and semantic relevance through {!hybrid}, a proprietary Opensolr query parser that runs only on Opensolr clusters.</description>
<category>Search</category>
<pubDate>Fri, 24 Jul 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Live Varnish and Memcached Stats Buttons in Server Management Services Tab</title>
<link>https://opensolr.com/changelog/entry/live-varnish-memcached-stats-server-management</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/live-varnish-memcached-stats-server-management</guid>
<description>Every running Varnish or Memcached service in your server&amp;rsquo;s Services tab now has a Stats button that opens a live snapshot of cache performance — hit rate, cache versus backend requests, objects stored, memory used and evictions.</description>
<category>Server Management</category>
<pubDate>Wed, 22 Jul 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>New Security and Trust Center: SOC 2 and ISO 27001 Mapped Controls</title>
<link>https://opensolr.com/changelog/entry/security-trust-center-soc2-iso27001</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/security-trust-center-soc2-iso27001</guid>
<description>The new Security &amp;amp; Trust Center documents how Opensolr protects your data, with controls mapped to the SOC 2 Trust Services Criteria and ISO 27001 and a downloadable overview for vendor security reviews.</description>
<category>Security</category>
<pubDate>Tue, 21 Jul 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Turbo Indexer 2.5.2: Drush 13 Startup and Drupal 11 Compatibility</title>
<link>https://opensolr.com/changelog/entry/turbo-indexer-2-5-2-drush-13-drupal-11-compatibility</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/turbo-indexer-2-5-2-drush-13-drupal-11-compatibility</guid>
<description>Opensolr Turbo Indexer 2.5.2. Starts reliably on Drush 13, parallel background workers run under the correct PHP on every hosting setup, and the release is fully compatible with Drupal 11. Drop-in update, no re-index required.</description>
<category>Drupal Module</category>
<pubDate>Mon, 29 Jun 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Fleet-Wide Solr Security Hardening: Older Version Patch and Server-Side Request Controls</title>
<link>https://opensolr.com/changelog/entry/fleet-wide-solr-security-hardening-request-controls</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/fleet-wide-solr-security-hardening-request-controls</guid>
<description>We patched a potential security issue affecting older Apache Solr versions and strengthened server-side request controls across the entire Solr fleet. Rolled out automatically to every server; no customer action required and no effect on indexes or data.</description>
<category>Security</category>
<pubDate>Mon, 29 Jun 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Search Drupal Module 3.9.0 Adds Drupal 12 Compatibility</title>
<link>https://opensolr.com/changelog/entry/drupal-module-3-9-0-drupal-12-compatibility</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/drupal-module-3-9-0-drupal-12-compatibility</guid>
<description>Version 3.9.0 of the Opensolr Search Drupal module is compatible with Drupal 12, alongside Drupal 10.1 and 11. A drop-in upgrade: no configuration changes, no database updates, no re-index.</description>
<category>Drupal Module</category>
<pubDate>Thu, 18 Jun 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Drupal Module 3.8.5: Fatal Error Viewing Non-Translatable Entity References Fixed</title>
<link>https://opensolr.com/changelog/entry/drupal-module-3-8-5-non-translatable-entity-fatal-error-fix</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/drupal-module-3-8-5-non-translatable-entity-fatal-error-fix</guid>
<description>Version 3.8.5 of the Opensolr Search Drupal module fixes a fatal error triggered by viewing content that references a non-translatable entity. Released on drupal.org.</description>
<category>Drupal Module</category>
<pubDate>Fri, 05 Jun 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>One-Click Unsubscribe From Product and Campaign Emails on the Communications Page</title>
<link>https://opensolr.com/changelog/entry/one-click-unsubscribe-product-campaign-emails</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/one-click-unsubscribe-product-campaign-emails</guid>
<description>The Communications page now has a single toggle for product updates, feature announcements and marketing emails, so you can opt out from your admin panel instead of hunting for the link inside an email.</description>
<category>Account</category>
<pubDate>Tue, 02 Jun 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Payment Profile VAT Upgrades: Real-Time Validation, Auto-Normalisation, Stripe Sync</title>
<link>https://opensolr.com/changelog/entry/payment-profile-vat-validation-normalization-stripe-sync</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/payment-profile-vat-validation-normalization-stripe-sync</guid>
<description>VAT numbers in your Payment Profile are now validated as you type, normalised before they reach Stripe, and reconciled with tax IDs that already exist on your Stripe customer.</description>
<category>Billing</category>
<pubDate>Tue, 02 Jun 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Drupal Module 3.8.4: Ingestion Fatal Error With Config Entity References Fixed</title>
<link>https://opensolr.com/changelog/entry/drupal-module-3-8-4-config-entity-hastranslation-ingestion-fix</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/drupal-module-3-8-4-config-entity-hastranslation-ingestion-fix</guid>
<description>Opensolr Search for Drupal 3.8.4 fixes a fatal error during data ingestion when a content type has an entity_reference field pointing to a config entity, such as Domain.</description>
<category>Drupal Module</category>
<pubDate>Tue, 02 Jun 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>UK VAT Number Validation Fixed on the Opensolr Ezcmd Service</title>
<link>https://opensolr.com/changelog/entry/uk-vat-number-validation-fix-ezcmd</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/uk-vat-number-validation-fix-ezcmd</guid>
<description>VAT number validation for GB on the Opensolr ezcmd.com service was returning wrong results. UK VAT lookups now resolve correctly.</description>
<category>Billing</category>
<pubDate>Mon, 25 May 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Facet Mapping Overhaul: Type Auto-Detection, Every WordPress Source Mappable, Multi-Valued and Image Fixes</title>
<link>https://opensolr.com/changelog/entry/facet-mapping-auto-detects-solr-field-types</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/facet-mapping-auto-detects-solr-field-types</guid>
<description>Facet Mapping now auto-detects the Solr field type, exposes every indexable WordPress source including postmeta and WooCommerce taxonomies, emits multi-valued fields identically from crawler and ingestion, and resolves image fields to real URLs.</description>
<category>Facet Mapping</category>
<pubDate>Fri, 24 Apr 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Search Drupal Module 3.8.0: Thumbnails, Facet Mapping and Multi-Valued Fields</title>
<link>https://opensolr.com/changelog/entry/drupal-module-3-8-0-thumbnails-facet-mapping-multi-valued-fields</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/drupal-module-3-8-0-thumbnails-facet-mapping-multi-valued-fields</guid>
<description>Drupal module 3.8.0 is tagged on drupal.org — the first public release since 3.6.0. It adds a configurable result thumbnail field, an auto-suggesting Facet Mapping form that applies instantly without drush cr, and a full multi-valued field pipeline.</description>
<category>Drupal Module</category>
<pubDate>Fri, 24 Apr 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Search WordPress Plugin 1.0.19: Facet Mapping Overhaul and Stability Fixes</title>
<link>https://opensolr.com/changelog/entry/wordpress-plugin-1-0-19-facet-mapping-overhaul</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/wordpress-plugin-1-0-19-facet-mapping-overhaul</guid>
<description>WordPress plugin 1.0.19 is live on WordPress.org, with a Facet Mapping overhaul and a fix for a sanitize callback that was silently discarding saved facet mapping rows.</description>
<category>WordPress Plugin</category>
<pubDate>Fri, 24 Apr 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Admin Layout Tidy-Up: Search Mode Options on a Single Row and Crawler Controls in a Uniform Grid</title>
<link>https://opensolr.com/changelog/entry/index-settings-search-mode-radios-single-row</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/index-settings-search-mode-radios-single-row</guid>
<description>Two layout corrections in the admin panel: the five Search Mode radio buttons in Index Settings now fit on one row, and the Web Crawler control buttons are equal width in a two-column grid.</description>
<category>Admin</category>
<pubDate>Wed, 22 Apr 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Search for WordPress 1.0.7 Adds the Lexical Only Search Mode</title>
<link>https://opensolr.com/changelog/entry/wordpress-plugin-1-0-7-lexical-only-search-mode</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/wordpress-plugin-1-0-7-lexical-only-search-mode</guid>
<description>Opensolr Search for WordPress 1.0.7 adds the Lexical Only search mode, matching the Opensolr admin and the Drupal module: an explicit opt-out from vector search, with no embedding API call made.</description>
<category>WordPress</category>
<pubDate>Wed, 22 Apr 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Search for Drupal 3.5.0 Adds the Lexical Only Search Mode</title>
<link>https://opensolr.com/changelog/entry/drupal-module-3-5-0-lexical-only-search-mode</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/drupal-module-3-5-0-lexical-only-search-mode</guid>
<description>Opensolr Search for Drupal 3.5.0 adds the Lexical Only search mode, matching the option in the Opensolr admin. It skips the embedding request entirely and auto-zeroes the Minimum Relevance Score.</description>
<category>Drupal</category>
<pubDate>Wed, 22 Apr 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Lexical Only Search Mode, Readable Locale Facet, and Five Search Fixes</title>
<link>https://opensolr.com/changelog/entry/lexical-only-search-mode-search-tuning</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/lexical-only-search-mode-search-tuning</guid>
<description>A new Lexical Only search mode skips embeddings entirely for deterministic BM25 ranking. The Locale facet now shows flags and language names instead of raw codes, and five search bugs were fixed across Opensolr, the Drupal module and the WordPress plugin.</description>
<category>Search</category>
<pubDate>Wed, 22 Apr 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Search for WordPress 1.0.5 Adds the Minimum Relevance Score Slider</title>
<link>https://opensolr.com/changelog/entry/wordpress-plugin-1-0-5-minimum-relevance-score-slider</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/wordpress-plugin-1-0-5-minimum-relevance-score-slider</guid>
<description>Opensolr Search for WordPress 1.0.5 adds the Minimum Relevance Score slider to Search Tuning, dropping low-scoring hybrid hits from both results and facet counts. Steps of 0.1, default 0.3.</description>
<category>WordPress</category>
<pubDate>Tue, 21 Apr 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Search for Drupal 3.4.0 Adds the Minimum Relevance Score Slider</title>
<link>https://opensolr.com/changelog/entry/drupal-module-3-4-0-minimum-relevance-score-slider</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/drupal-module-3-4-0-minimum-relevance-score-slider</guid>
<description>Version 3.4.0 brings the Minimum Relevance Score slider to Search Tuning, dropping low-scoring hybrid hits from both results and facet counts.</description>
<category>Drupal</category>
<pubDate>Tue, 21 Apr 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Search Tuning: Minimum Relevance Score Slider, a Search Operators Help Panel, Cleaner Pagination and a Minimum Match Save Fix</title>
<link>https://opensolr.com/changelog/entry/minimum-relevance-score-slider-search-tuning</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/minimum-relevance-score-slider-search-tuning</guid>
<description>A new Minimum Relevance Score slider drops low-scoring hybrid hits, a Search Operators help panel explains phrase, required and excluded terms, search pagination moves into the results column, and custom Minimum Match values now save correctly.</description>
<category>Search</category>
<pubDate>Tue, 21 Apr 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Query Analytics: Faster Dashboards, a 30-Day Default Window, and CSV Export on Every Table</title>
<link>https://opensolr.com/changelog/entry/query-analytics-30-minute-cache-30-day-window</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/query-analytics-30-minute-cache-30-day-window</guid>
<description>Query Analytics loads noticeably faster, defaults to a 30-day window instead of 10 days, and every dashboard table now has an Export CSV button.</description>
<category>Analytics</category>
<pubDate>Tue, 21 Apr 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>WordPress Plugin: Sitemap Registration Fix, Setup Progress Modal and WooCommerce Meta Tags</title>
<link>https://opensolr.com/changelog/entry/wordpress-plugin-sitemap-fix-setup-modal-woocommerce-meta</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/wordpress-plugin-sitemap-fix-setup-modal-woocommerce-meta</guid>
<description>Save &amp;amp; Connect was not registering the sitemap URL with the crawler, and Save &amp;amp; Start Fresh was not deleting the previous index. Setup now shows a full-screen progress modal, and WooCommerce products get richer meta tags.</description>
<category>WordPress</category>
<pubDate>Fri, 10 Apr 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Search for Drupal 3.3.3: Sitemap Registration on Save and Connect Fixed</title>
<link>https://opensolr.com/changelog/entry/drupal-module-3-3-3-sitemap-registration-save-connect-fix</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/drupal-module-3-3-3-sitemap-registration-save-connect-fix</guid>
<description>The sitemap URL is now registered with the crawler on every Save &amp;amp; Connect and Save &amp;amp; Start Fresh, and Save &amp;amp; Start Fresh now deletes the previous index before creating the new one.</description>
<category>Drupal</category>
<pubDate>Fri, 10 Apr 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Hybrid Search Relevance: Lexical Field Boosts Zeroed in Vector Mode</title>
<link>https://opensolr.com/changelog/entry/hybrid-search-lexical-field-boosts-zeroed-vector-mode</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/hybrid-search-lexical-field-boosts-zeroed-vector-mode</guid>
<description>In vector hybrid mode, lexical field weight boosts are now zeroed so semantic similarity drives the ranking. Field weights still apply when search falls back to pure lexical mode.</description>
<category>Search</category>
<pubDate>Fri, 10 Apr 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Data Ingestion: Empty API Responses Fixed, Duplicate Documents Eliminated, Richer Enrichment and a Queue Dashboard Built for Scale</title>
<link>https://opensolr.com/changelog/entry/data-ingestion-api-php-8-empty-responses-fix</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/data-ingestion-api-php-8-empty-responses-fix</guid>
<description>Four changes to Data Ingestion: a PHP 8 fault that made every endpoint return empty responses is fixed, URI normalization stops the crawler and the API creating duplicate documents, enrichment now uses structured text and longer sentiment input, and the queue dashboard handles thousands of jobs.</description>
<category>Data Ingestion</category>
<pubDate>Thu, 09 Apr 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Hosted Search Page: Query Elevation Controls Restored, Results Count Moved Under the Search Bar</title>
<link>https://opensolr.com/changelog/entry/query-elevation-controls-hosted-search-instant-effect</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/query-elevation-controls-hosted-search-instant-effect</guid>
<description>Query Elevation controls are back on the hosted search page and take effect immediately, and the results count now sits directly under the search bar with the response time shown in seconds.</description>
<category>Search</category>
<pubDate>Thu, 09 Apr 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Drupal Query Elevation: REMOVE Button No Longer Appears on Results With No Elevation Rules</title>
<link>https://opensolr.com/changelog/entry/drupal-query-elevation-remove-button-without-rules-fix</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/drupal-query-elevation-remove-button-without-rules-fix</guid>
<description>Fixed the Query Elevation REMOVE button showing on results that have no elevation rules. Visibility is now driven by CSS class specificity instead of inline styles.</description>
<category>Drupal</category>
<pubDate>Thu, 09 Apr 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>WordPress Search Plugin Documentation: 17-Page Guide From Setup to WooCommerce</title>
<link>https://opensolr.com/changelog/entry/wordpress-search-plugin-17-page-documentation</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/wordpress-search-plugin-17-page-documentation</guid>
<description>The WordPress Search Plugin documentation is a 17-page guide covering installation and setup, the data crawler, data ingestion, facets, search tuning, AI features and WooCommerce.</description>
<category>Documentation</category>
<pubDate>Thu, 09 Apr 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Search for WordPress: Free AI Hybrid Search Plugin, With a 50% Partner Discount</title>
<link>https://opensolr.com/changelog/entry/opensolr-search-wordpress-plugin-launch</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/opensolr-search-wordpress-plugin-launch</guid>
<description>Opensolr Search for WordPress is a free plugin that replaces default WordPress search with hybrid vector and keyword search, facets, autocomplete, analytics, elevation and full WooCommerce support. Plugin users also qualify for the Partner Program: 50% off any small or medium plan for a year.</description>
<category>WordPress</category>
<pubDate>Thu, 09 Apr 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Drupal Facets: Hierarchical Drill-Down From JSON-LD Breadcrumbs, Per-Facet Thresholds and Safari Fixes</title>
<link>https://opensolr.com/changelog/entry/drupal-hierarchical-drilldown-facets-json-ld-breadcrumbs</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/drupal-hierarchical-drilldown-facets-json-ld-breadcrumbs</guid>
<description>Drill-down facets built automatically from JSON-LD breadcrumbs, a per-facet minimum count, instant CSS tooltips, a set of Safari and iOS fixes, and a new Partner Program.</description>
<category>Drupal</category>
<pubDate>Sat, 04 Apr 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Web Crawler Dates: Strict UTC Conversion, a Safety Gate, and Extraction From Date-Related CSS Classes</title>
<link>https://opensolr.com/changelog/entry/web-crawler-date-timezone-utc-conversion-fix</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/web-crawler-date-timezone-utc-conversion-fix</guid>
<description>Dates carrying a timezone offset such as +03:00 are now strictly converted to UTC before indexing, and anything that still does not match the Solr format is dropped rather than failing the index. The crawler also extracts dates from date-related CSS classes on sites with no JSON-LD or meta tags.</description>
<category>Web Crawler</category>
<pubDate>Sat, 04 Apr 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Thousands Separators and Smart Decimals Across Facet Sliders, Filter Pills and Price Tooltips</title>
<link>https://opensolr.com/changelog/entry/facet-slider-thousands-separators-decimals</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/facet-slider-thousands-separators-decimals</guid>
<description>Numbers in facet slider inputs, active filter pills and price topbar slider tooltips now use thousands separators, with two decimals on float fields and none on integers.</description>
<category>Search</category>
<pubDate>Sat, 04 Apr 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Homepage Drupal Card Rewritten, Plus a Vector Search E-Commerce Demo</title>
<link>https://opensolr.com/changelog/entry/homepage-drupal-card-vector-search-ecommerce-demo</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/homepage-drupal-card-vector-search-ecommerce-demo</guid>
<description>The homepage Drupal card now showcases the Opensolr Search for Drupal module, and a vector search e-commerce demo has been added to the live demos section.</description>
<category>Website</category>
<pubDate>Fri, 03 Apr 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Web Crawler Skips Embedding Generation on Indexes Without AI Vector Access</title>
<link>https://opensolr.com/changelog/entry/web-crawler-skips-embeddings-without-vector-access</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/web-crawler-skips-embeddings-without-vector-access</guid>
<description>The Web Crawler now respects the package vector access flag. Indexes without AI features no longer generate embeddings during a crawl, which saves GPU resources and speeds up indexing.</description>
<category>Web Crawler</category>
<pubDate>Fri, 03 Apr 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Search Facet Filters Admin Panel: Map Solr Schema Fields to List, Slider, and Date Widgets</title>
<link>https://opensolr.com/changelog/entry/search-facet-filters-admin-panel-configuration</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/search-facet-filters-admin-panel-configuration</guid>
<description>A Search Facet Filters section in the admin panel discovers all indexed fields via the Solr schema and lets you map them as list, slider or date range widgets, with drag-to-reorder. Embeddable search supports facets too, via data-sidebar=&quot;on&quot;.</description>
<category>Control Panel</category>
<pubDate>Fri, 03 Apr 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>GPU Priority Queue Puts Search Embeddings Ahead of Crawler Batch Jobs</title>
<link>https://opensolr.com/changelog/entry/gpu-priority-queue-search-embeddings-first</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/gpu-priority-queue-search-embeddings-first</guid>
<description>User-facing search requests now jump ahead of background crawler batch jobs on the GPU, with a configurable timeout that falls back to lexical search instantly if the GPU is busy.</description>
<category>Performance &amp; SEO</category>
<pubDate>Fri, 03 Apr 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>AI and Vector Features Now Gated per Package With Friendly Upgrade Prompts</title>
<link>https://opensolr.com/changelog/entry/ai-vector-features-gated-per-package</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/ai-vector-features-gated-per-package</guid>
<description>AI Hints, AI Reader, Vector Embeddings and Hybrid Search are now gated per package, and indexes without vector access get a clear upgrade prompt instead of a generic error. Lexical keyword search still works on every plan.</description>
<category>API</category>
<pubDate>Fri, 03 Apr 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Facet Filter Sidebar, Fixed Search Header, Loading Overlay and a More Reliable Highlighter</title>
<link>https://opensolr.com/changelog/entry/facet-filter-sidebar-category-price-date-ranges</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/facet-filter-sidebar-category-price-date-ranges</guid>
<description>A new facet filter sidebar lets visitors narrow results by category, price, date and any structured field. The search header now stays fixed while scrolling, transitions show a loading overlay, and highlighting works in short fields such as titles.</description>
<category>Search</category>
<pubDate>Fri, 03 Apr 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Fixed: The Search Box No Longer Shows Solr-Escaped Apostrophes Back to the User</title>
<link>https://opensolr.com/changelog/entry/search-box-apostrophes-solr-escaped-fix</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/search-box-apostrophes-solr-escaped-fix</guid>
<description>Queries containing apostrophes — &quot;don&apos;t&quot;, &quot;it&apos;s&quot;, &quot;O&apos;Brien&quot; — were echoed back into the search box in their Solr-escaped form. The box now shows the clean, unescaped query.</description>
<category>Search</category>
<pubDate>Tue, 31 Mar 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Drupal Module: Multilingual Meta Tags and JSON-LD, Live Document Counts, Language Selector Order</title>
<link>https://opensolr.com/changelog/entry/drupal-multilingual-meta-tags-json-ld-facets</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/drupal-multilingual-meta-tags-json-ld-facets</guid>
<description>Opensolr Search for Drupal gains full multilingual meta tags and JSON-LD, live document counts next to each content type in the admin tabs, and a language selector that shows the active language first.</description>
<category>Drupal</category>
<pubDate>Sun, 29 Mar 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Search for Drupal: Stop Crawl Button, Currency Symbols, Query Embeddings</title>
<link>https://opensolr.com/changelog/entry/opensolr-search-drupal-stop-crawl-currency-embeddings</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/opensolr-search-drupal-stop-crawl-currency-embeddings</guid>
<description>Opensolr Search for Drupal gains a Stop Crawl button, price display with currency symbols, and optimised query embeddings for better search relevance.</description>
<category>Drupal</category>
<pubDate>Sat, 28 Mar 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>New is_query Parameter on the Embed APIs for Optimised Retrieval Vectors</title>
<link>https://opensolr.com/changelog/entry/is-query-parameter-embed-api-retrieval-vectors</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/is-query-parameter-embed-api-retrieval-vectors</guid>
<description>Set is_query=1 when embedding a search query to get a vector optimised for retrieval, on both the embed and batch embed endpoints.</description>
<category>API</category>
<pubDate>Sat, 28 Mar 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Web Crawler: Stop Crawl Button, Instantly Applied Settings, Core-Wide Thread Limits, Cleaner Descriptions and a Buffer Fix</title>
<link>https://opensolr.com/changelog/entry/web-crawler-stop-crawl-button</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/web-crawler-stop-crawl-button</guid>
<description>Five crawler changes: a new Stop Crawl button that halts running processes without losing the schedule, settings that apply to the active schedule immediately, max_threads enforced across all start URLs, description extraction that no longer picks up CSS or JavaScript, and a fix for a Solr buffer that could stick after a stopped crawl.</description>
<category>Web Crawler</category>
<pubDate>Sat, 28 Mar 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Instruction-Tuned Query Prefixes Lift Vector Recall 5-15%, and Price Badges Show Currency Symbols</title>
<link>https://opensolr.com/changelog/entry/vector-search-instruction-tuned-prefixes-5-15-recall</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/vector-search-instruction-tuned-prefixes-5-15-recall</guid>
<description>The embedding model now uses instruction-tuned prefixes that optimise query vectors for retrieval, worth 5&amp;ndash;15% better recall on natural language queries and stronger cross-language matching. Price badges also show currency symbols instead of raw codes.</description>
<category>Search</category>
<pubDate>Sat, 28 Mar 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Drupal Module Security Audit: 35+ XSS, CSRF and Solr Injection Issues Fixed</title>
<link>https://opensolr.com/changelog/entry/drupal-module-security-audit-35-issues-fixed</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/drupal-module-security-audit-35-issues-fixed</guid>
<description>A three-round security audit of the Drupal module found and fixed more than 35 issues, covering XSS in AI streaming output, Solr injection on range filters and facet values, CSRF on admin write endpoints, and safe URL generation under CLI and cron.</description>
<category>Security</category>
<pubDate>Wed, 25 Mar 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Real-Time Drupal Content Sync, Per-Document Duplicate Handling and Full UTF-8 Safety</title>
<link>https://opensolr.com/changelog/entry/drupal-real-time-content-sync-node-save-ingestion-api</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/drupal-real-time-content-sync-node-save-ingestion-api</guid>
<description>Drupal node saves can now be pushed to the index the moment they happen, the Ingestion API skips duplicate documents instead of rejecting the whole batch, and the enrichment pipeline is safe for CJK, emoji and accented text.</description>
<category>Data Ingestion</category>
<pubDate>Wed, 25 Mar 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Search for Drupal 2.0: Real-Time Sync, Async Bulk Ingestion to 500K+ Documents, and Contextual Help</title>
<link>https://opensolr.com/changelog/entry/opensolr-search-drupal-2-0-real-time-sync-bulk-ingestion</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/opensolr-search-drupal-2-0-real-time-sync-bulk-ingestion</guid>
<description>Opensolr Search for Drupal 2.0 adds the Data Ingestion API, real-time sync on every node save and delete, async bulk ingestion via Drupal cron that scales past 500,000 documents, full CJK/UTF-8 safety and a three-round security audit. All ten admin tabs now link to the relevant documentation.</description>
<category>Drupal</category>
<pubDate>Wed, 25 Mar 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Hybrid Search Live Demo: Try Vector and Keyword Search Without Signing Up</title>
<link>https://opensolr.com/changelog/entry/hybrid-search-live-demo-vector-keyword-no-signup</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/hybrid-search-live-demo-vector-keyword-no-signup</guid>
<description>The Hybrid Search Live Demo lets you try vector and keyword search, facets, autocomplete, AI Hints and the rest of the search features on a real index, without signing up.</description>
<category>Search</category>
<pubDate>Mon, 23 Mar 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Six New Guides: Five Solr Error Troubleshooters and a MySQL Import Walkthrough</title>
<link>https://opensolr.com/changelog/entry/five-solr-error-guides-mergeaborted-parseexception-geo</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/five-solr-error-guides-mergeaborted-parseexception-geo</guid>
<description>Five new Solr error troubleshooting guides — MergeAbortedException, invalid geo coordinates, ParseException, cannot unload non-existent core and ConcurrentModificationException — each with root cause analysis, diagrams and step-by-step fixes, plus a new MySQL Import guide.</description>
<category>Documentation</category>
<pubDate>Mon, 23 Mar 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Web Crawler Reindex All Button: Re-Queue Every Crawled URL in One Click</title>
<link>https://opensolr.com/changelog/entry/web-crawler-reindex-all-button-one-click</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/web-crawler-reindex-all-button-one-click</guid>
<description>A Reindex All button in the Web Crawler panel moves every previously crawled URL back into the crawl queue for a full re-crawl on demand.</description>
<category>Web Crawler</category>
<pubDate>Mon, 23 Mar 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Search Drupal Module Launches on Drupal.org With Hybrid Vector Search</title>
<link>https://opensolr.com/changelog/entry/opensolr-search-drupal-module-drupal-org-launch</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/opensolr-search-drupal-module-drupal-org-launch</guid>
<description>Opensolr Search is now an official module on Drupal.org: hybrid vector and keyword search, facets, autocomplete, AI Hints, AI Reader, spellcheck, Query Elevation, analytics and a sitemap generator, with no dependency on Search API.</description>
<category>Drupal</category>
<pubDate>Mon, 23 Mar 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Web Crawler Keep Index Fresh: Scheduled Re-Crawls and Automatic Removal of Dead Pages</title>
<link>https://opensolr.com/changelog/entry/web-crawler-keep-index-fresh-scheduled-recrawls</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/web-crawler-keep-index-fresh-scheduled-recrawls</guid>
<description>Keep Index Fresh re-crawls previously indexed pages on a schedule of every 7 to 365 days, updating content and prices. Pages that return a non-200 status are now removed from the index automatically.</description>
<category>Web Crawler</category>
<pubDate>Fri, 20 Mar 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Fresh Mode Becomes a 2 to 365 Day Date Window, Plus a Bigger Mobile Clear Button and an Autocomplete Highlight Fix</title>
<link>https://opensolr.com/changelog/entry/fresh-mode-date-window-filter-2-365-days</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/fresh-mode-date-window-filter-2-365-days</guid>
<description>Fresh mode is now a date window filter of 2 to 365 days rather than a boost factor. Alongside it, the search clear button is larger on mobile and autocomplete no longer highlights one and two character stopwords.</description>
<category>Search</category>
<pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Spellcheck Corrects Every Misspelled Word, and Relevancy Defaults Move to Flexible Minimum Match</title>
<link>https://opensolr.com/changelog/entry/did-you-mean-spellcheck-corrects-all-words</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/did-you-mean-spellcheck-corrects-all-words</guid>
<description>&quot;Did you mean?&quot; now corrects all misspelled words in a query rather than just one, and shows the full corrected query. Relevancy defaults also move to Flexible minimum match, returning more results for longer natural-language searches.</description>
<category>Search</category>
<pubDate>Tue, 17 Mar 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>New Solr Error Troubleshooting Guides: SAXParseException, NumberFormatException and More</title>
<link>https://opensolr.com/changelog/entry/solr-error-troubleshooting-guides-expansion</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/solr-error-troubleshooting-guides-expansion</guid>
<description>A documentation expansion across Solr error troubleshooting: five new in-depth guides, each with root cause analysis, diagrams and step-by-step fixes, all linked automatically from the Error Audit.</description>
<category>Documentation</category>
<pubDate>Sun, 15 Mar 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Smart Fix Suggestions: Error Audit Links Each Error to the Right FAQ Automatically</title>
<link>https://opensolr.com/changelog/entry/error-audit-smart-fix-suggestions-faq-links</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/error-audit-smart-fix-suggestions-faq-links</guid>
<description>The Error Audit table now matches each error against the Opensolr documentation and links the FAQ page that explains how to fix it. Works in the per-index audit and in the Weekly Error Digest emails.</description>
<category>Control Panel</category>
<pubDate>Sun, 15 Mar 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Weekly Error Digest, Communications Preferences, and a More Reliable Index Reset</title>
<link>https://opensolr.com/changelog/entry/weekly-error-digest-monday-email-top-index-errors</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/weekly-error-digest-monday-email-top-index-errors</guid>
<description>A Monday email now summarises the top errors across your indexes, a new Communications page lets you turn it off, index reset verifies the index is really empty and falls back to a hard reset, and Error Audit shows readable root causes instead of Java stack traces.</description>
<category>Control Panel</category>
<pubDate>Fri, 13 Mar 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Error Audit: Seven Days of Searchable Solr Error History in the Control Panel</title>
<link>https://opensolr.com/changelog/entry/error-audit-7-day-searchable-solr-error-history</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/error-audit-7-day-searchable-solr-error-history</guid>
<description>Every Solr error your index hits is now captured, classified and kept for seven days in a dedicated searchable index. The new Error Audit dashboard adds an error rate chart, breakdowns, full-text search across stack traces and plain-English root cause explanations.</description>
<category>Control Panel</category>
<pubDate>Thu, 12 Mar 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Turbo Indexer 2.5.1: Forked Workers Now Inherit the Drush URI Flag Correctly</title>
<link>https://opensolr.com/changelog/entry/turbo-indexer-2-5-1-workers-inherit-drush-uri-flag</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/turbo-indexer-2-5-1-workers-inherit-drush-uri-flag</guid>
<description>Forked worker processes did not inherit --uri from the parent Drush process, so URL-dependent tokens resolved against http://default. Fixed in 2.5.1; reindex affected indexes after updating.</description>
<category>Turbo Indexer</category>
<pubDate>Wed, 11 Mar 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Query Analytics Tabs Fixed: Load Without Elevation Rules, and No More 403 via Shared Search Links</title>
<link>https://opensolr.com/changelog/entry/query-analytics-tabs-load-without-elevation-rules</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/query-analytics-tabs-load-without-elevation-rules</guid>
<description>The No Results and Click Analytics tabs now load on indexes without Elevation Rules enabled, and no longer return 403 when Query Analytics is reached through a shared search link.</description>
<category>Query Analytics</category>
<pubDate>Tue, 10 Mar 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Data Ingestion API Docs: Full PHP, Python and cURL Examples, Plus content_type Guidance</title>
<link>https://opensolr.com/changelog/entry/data-ingestion-api-docs-php-python-curl-examples</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/data-ingestion-api-docs-php-python-curl-examples</guid>
<description>The Data Ingestion API docs now carry complete PHP, Python and cURL examples for both submission methods, with error handling and job status polling, and a full content_type field reference.</description>
<category>Documentation</category>
<pubDate>Sun, 08 Mar 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Data Ingestion Queue: Job Detail Modal, Run Now and Retry Controls, Exact Solr Errors and Two API Fixes</title>
<link>https://opensolr.com/changelog/entry/data-ingestion-job-detail-modal-status-errors-payload</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/data-ingestion-job-detail-modal-status-errors-payload</guid>
<description>The Data Ingestion Queue gains a Job Detail modal, per-job, per-index and per-user Run Now controls, one-click Retry, and exact Solr errors for failed documents. Two Data Ingestion API bugs — content_type defaults and the leaking rtf flag — are fixed.</description>
<category>Data Ingestion</category>
<pubDate>Sun, 08 Mar 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>The Data Ingestion API: Push 50 Documents per Batch, Extract PDF and Office Files, Upload JSON Payloads, and Global Rate Limits</title>
<link>https://opensolr.com/changelog/entry/data-ingestion-api-push-50-documents-per-batch</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/data-ingestion-api-push-50-documents-per-batch</guid>
<description>The Data Ingestion API arrives: push up to 50 documents per batch with automatic enrichment, extract text from PDF and Office files with rtf:true, upload large batches as a JSON file, with URI now mandatory and document IDs generated as md5 of the URI. Global API rate limits of 30 requests per minute and 500 per hour are now enforced.</description>
<category>API</category>
<pubDate>Sun, 08 Mar 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Two New Account Pages: API Usage Dashboard and Data Ingestion Queue</title>
<link>https://opensolr.com/changelog/entry/api-usage-dashboard-rate-limit-gauges-endpoint-breakdown</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/api-usage-dashboard-rate-limit-gauges-endpoint-breakdown</guid>
<description>Two new pages under Account: an API Usage dashboard with live rate-limit gauges and monthly history, and a Data Ingestion Queue with live progress bars and pause, resume and stop controls.</description>
<category>Account</category>
<pubDate>Sun, 08 Mar 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Search Tuning: Six Per-Index Relevancy Controls With No Reindexing Required</title>
<link>https://opensolr.com/changelog/entry/search-tuning-six-per-index-relevancy-controls</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/search-tuning-six-per-index-relevancy-controls</guid>
<description>Search Tuning adds six per-index relevancy controls to Index Settings. Each index is tuned independently, changes save automatically, and they take effect on the next search — no reindexing and no restart.</description>
<category>Search</category>
<pubDate>Sun, 08 Mar 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Query Analytics Gains a No-Results Dashboard, Click Analytics With CTR, and Bulk Query Deletion</title>
<link>https://opensolr.com/changelog/entry/no-results-dashboard-zero-result-searches-query-analytics</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/no-results-dashboard-zero-result-searches-query-analytics</guid>
<description>Three additions to Query Analytics: a No-Results Dashboard counting zero-result searches by unique IP, Click Analytics with CTR tracking in three views, and bulk deletion of queries by checkbox.</description>
<category>Web Crawler</category>
<pubDate>Sat, 07 Mar 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Query Elevation Arrives: Pin, Exclude and Reorder Results From the Search UI, With Global Rules and a Tabbed Query Analytics App</title>
<link>https://opensolr.com/changelog/entry/query-elevation-pin-exclude-search-ui-launch</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/query-elevation-pin-exclude-search-ui-launch</guid>
<description>Query Elevation lets you pin, exclude and reorder search results from the Search UI, per query or globally. Query Statistics becomes a tabbed Query Analytics &amp;amp; Tools application, pin and exclude are now mutually exclusive and colour-coded, and a bug that applied only the last of several pinned documents is fixed.</description>
<category>Search</category>
<pubDate>Sat, 07 Mar 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Add New Index Gets Sidebar Filters and a Compact Layout, Plus an Error Log Accuracy Fix</title>
<link>https://opensolr.com/changelog/entry/add-new-index-sidebar-filter-panel</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/add-new-index-sidebar-filter-panel</guid>
<description>The Add New Index page replaces dropdown menus with an always-visible sidebar filter panel and a tighter layout, and the Error Log now shows each distinct root cause instead of merging different errors together.</description>
<category>Control Panel</category>
<pubDate>Fri, 06 Mar 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Reliable Text Extraction for DOCX, XLSX and PPTX Files in Document Indexing</title>
<link>https://opensolr.com/changelog/entry/document-indexing-docx-xlsx-pptx-extraction-fix</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/document-indexing-docx-xlsx-pptx-extraction-fix</guid>
<description>DOCX, DOC, XLSX, XLS and PPTX files now extract properly, including tables, headers, footers and speaker notes. Previously many were indexed with empty text.</description>
<category>Web Crawler</category>
<pubDate>Fri, 06 Mar 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Web Crawler: Choose Curl or Chrome as Your Renderer, With Chrome Pages Now Under a Second</title>
<link>https://opensolr.com/changelog/entry/web-crawler-renderer-setting-curl-chrome</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/web-crawler-renderer-setting-curl-chrome</guid>
<description>A new Renderer setting lets you pick Curl for speed or Chrome for JavaScript-rendered sites. Chrome pages now complete in about 0.5&amp;ndash;1s instead of 2&amp;ndash;25s, and Crawl Stats gains a Clear button for 4xx and 5xx errors.</description>
<category>Web Crawler</category>
<pubDate>Thu, 05 Mar 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Web Crawler: Cleaner Tag Fields for Autocomplete, and Failed Solr Batches Retried</title>
<link>https://opensolr.com/changelog/entry/crawler-tag-fields-autocomplete-spellcheck-cleanup</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/crawler-tag-fields-autocomplete-spellcheck-cleanup</guid>
<description>Crawler tag fields are now cleaned before they are stored, so autocomplete and spellcheck suggestions are no longer noisy, and documents in a failed Solr batch insert are retried on the next flush instead of being lost.</description>
<category>Web Crawler</category>
<pubDate>Wed, 04 Mar 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Search Result Fixes: Highlighting on Boolean Queries, and No More Jan 01 1970 Dates</title>
<link>https://opensolr.com/changelog/entry/title-description-highlighting-boolean-queries-fix</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/title-description-highlighting-boolean-queries-fix</guid>
<description>Titles and descriptions are now highlighted on queries containing AND or OR, and the date badge is hidden entirely when a document has no real creation date.</description>
<category>Search</category>
<pubDate>Wed, 04 Mar 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>API Rate Limiting Goes Live: Per-User and Per-IP Limits With 429 Responses</title>
<link>https://opensolr.com/changelog/entry/api-rate-limiting-per-user-per-ip-429</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/api-rate-limiting-per-user-per-ip-429</guid>
<description>API rate limiting is now active. Requests are tracked per user and per IP against per-minute and per-hour limits; exceeding one returns a 429 with a Retry-After header. Monthly counters are stored so you can review usage over time.</description>
<category>API</category>
<pubDate>Tue, 03 Mar 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Web Crawler Resume: Sitemap Re-Discovery, Empty Queues and Automatic Stale Lock Cleanup</title>
<link>https://opensolr.com/changelog/entry/web-crawler-resume-child-sitemap-rediscovery</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/web-crawler-resume-child-sitemap-rediscovery</guid>
<description>Resume now always launches the crawler, even on an empty queue, re-fetches every child sitemap to pick up new URLs, and clears stale lock files left behind by an interrupted crawl.</description>
<category>Web Crawler</category>
<pubDate>Mon, 02 Mar 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>New Troubleshooting Guide: The Solr &quot;Document Contains at Least One Immense Term&quot; Error</title>
<link>https://opensolr.com/changelog/entry/solr-immense-term-error-troubleshooting-guide</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/solr-immense-term-error-troubleshooting-guide</guid>
<description>A new guide for the Solr immense term error explains why untokenized field types produce it and gives four fixes, with diagrams, code examples and a section for Drupal and Search API users.</description>
<category>Documentation</category>
<pubDate>Mon, 02 Mar 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>A New Web Crawler Search UI: AI Hints, Dark Mode, Infinite Scroll, Embeddable Mode, OG Thumbnails and Price, Language, Source and Sentiment Filters</title>
<link>https://opensolr.com/changelog/entry/ai-hints-streaming-summaries-search-results</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/ai-hints-streaming-summaries-search-results</guid>
<description>A large release for the Web Crawler Search UI: streaming AI Hints grounded in your indexed content, a dark theme, infinite scroll by default, full-width and embeddable layouts, Open Graph thumbnails, and filtering and sorting by price, language, source domain, freshness and sentiment. Plus a fix for blank result descriptions.</description>
<category>Search</category>
<pubDate>Sun, 01 Mar 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Web Crawler Flush to Solr Now Reports Flushed Documents and Commits Immediately</title>
<link>https://opensolr.com/changelog/entry/web-crawler-flush-to-solr-reports-commits</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/web-crawler-flush-to-solr-reports-commits</guid>
<description>The Flush to Solr button always reported an empty buffer even when documents were flushed. It now reports the real count and commits automatically, so flushed documents are searchable at once.</description>
<category>Web Crawler</category>
<pubDate>Sun, 01 Mar 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Schedule Optimize: Auto-Optimise Your Opensolr Index Every 2 to 365 Days</title>
<link>https://opensolr.com/changelog/entry/schedule-optimize-index-2-365-days</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/schedule-optimize-index-2-365-days</guid>
<description>Set your index to optimise on a recurring schedule of 2 to 365 days, and get live index stats plus running-optimisation detection from the Optimize button.</description>
<category>Index Management</category>
<pubDate>Fri, 27 Feb 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>New API Docs for Pausing, Resuming and Checking the Web Crawler, Plus Updated Terms and Privacy Policy</title>
<link>https://opensolr.com/changelog/entry/api-docs-pause-resume-check-web-crawler</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/api-docs-pause-resume-check-web-crawler</guid>
<description>Three new API documents cover pausing the web crawler, resuming it, and checking whether it is running, each with endpoint, parameters and copy-paste examples. The Terms &amp;amp; Conditions and Privacy Policy pages have also been rewritten for clarity.</description>
<category>Website</category>
<pubDate>Fri, 27 Feb 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Web Crawler Pause and Resume Controls, a Three-State Status Badge and Faster Batched Indexing</title>
<link>https://opensolr.com/changelog/entry/web-crawler-pause-resume-controls</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/web-crawler-pause-resume-controls</guid>
<description>The Web Crawler gains Pause and Resume controls that keep your cron schedule, a status badge that distinguishes Running, Paused and Stopped, a clear message when you resume an empty queue, and faster indexing through larger Solr batches.</description>
<category>Web Crawler</category>
<pubDate>Fri, 27 Feb 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Analytics Chart Renders Up to 5,000 Points, and Full Request Shows the Complete URL</title>
<link>https://opensolr.com/changelog/entry/analytics-chart-5000-data-points</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/analytics-chart-5000-data-points</guid>
<description>The analytics chart no longer refuses to draw beyond 100 data points, and the Full Request column in Query Analytics now captures the entire Solr query string rather than only the first parameter.</description>
<category>Analytics</category>
<pubDate>Fri, 27 Feb 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Web Crawler Developer Guide: A Full Docs Hub With Index Fields, the Solr API and Code Examples</title>
<link>https://opensolr.com/changelog/entry/web-crawler-developer-guide-docs-hub</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/web-crawler-developer-guide-docs-hub</guid>
<description>A complete Web Crawler developer documentation hub is now live under Docs &amp;gt; FAQ, covering index fields, every Solr API parameter, and copy-paste code examples in five languages. The Solr Environment filter on the Opensolr Index list also stops resetting itself.</description>
<category>Website</category>
<pubDate>Thu, 26 Feb 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Hybrid Vector and Keyword Search Verified on Live Indexes, With Sharper Result Snippets</title>
<link>https://opensolr.com/changelog/entry/hybrid-vector-keyword-search-verified-live-indexes</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/hybrid-vector-keyword-search-verified-live-indexes</guid>
<description>Hybrid search has been tested across live indexes with real-world queries, and result snippets are now shorter — the highlighter picks the most relevant sentence around your terms instead of dumping a wall of text.</description>
<category>Search</category>
<pubDate>Wed, 25 Feb 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Web Crawler Dual-Extraction Strategy Captures More Text From JavaScript-Heavy Pages</title>
<link>https://opensolr.com/changelog/entry/web-crawler-dual-extraction-javascript-pages</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/web-crawler-dual-extraction-javascript-pages</guid>
<description>The crawler now runs two independent text extraction engines and keeps whichever captures more real content, and detects and renders framework-rendered pages automatically.</description>
<category>Web Crawler</category>
<pubDate>Wed, 25 Feb 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Homepage Slideshow Fix: Slides Now Glide Smoothly Instead of Flashing</title>
<link>https://opensolr.com/changelog/entry/homepage-slideshow-smooth-glide-transition-fix</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/homepage-slideshow-smooth-glide-transition-fix</guid>
<description>The homepage image slideshow now glides each slide to the left instead of switching instantly.</description>
<category>Website</category>
<pubDate>Wed, 25 Feb 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Database Import Now Shows the Server&apos;s Real PHP Upload Size Limit</title>
<link>https://opensolr.com/changelog/entry/database-import-real-php-upload-size-limit</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/database-import-real-php-upload-size-limit</guid>
<description>Database Import now reads the actual upload limit from the server&apos;s PHP configuration and, when a file is too large, names the exact value and the PHP-FPM settings to adjust.</description>
<category>Infrastructure</category>
<pubDate>Wed, 25 Feb 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Multi-Instance Parallel Indexing, New Drush Stop Controls and Faster Defaults, Plus a Better Index Search</title>
<link>https://opensolr.com/changelog/entry/multi-instance-parallel-indexing-isolated-sessions</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/multi-instance-parallel-indexing-isolated-sessions</guid>
<description>You can now run multiple indexers at once on different servers or indexes, each session fully isolated. drush osstop gains per-server and per-index control, drush ost runs in the background by default, and defaults rise to 10 workers and 200-item batches. The Indexes list also keeps its filter in the URL and works properly on mobile keyboards.</description>
<category>Index Management</category>
<pubDate>Wed, 25 Feb 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Query Analytics: Full Request Inspector, Server-Side Pagination and Filters for Latest Queries</title>
<link>https://opensolr.com/changelog/entry/full-request-inspector-query-analytics</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/full-request-inspector-query-analytics</guid>
<description>Query Analytics. Each row in Latest Queries opens a Full Request Inspector showing every Solr parameter and the raw URL; the table now paginates server-side with query, status and IP filters; and a DataTables parameter bug that produced PHP warnings is fixed.</description>
<category>Analytics</category>
<pubDate>Wed, 25 Feb 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Changelog Rebuilt as a Searchable Database-Backed Page, With New SVG Compliance and Review Badges</title>
<link>https://opensolr.com/changelog/entry/changelog-database-backed-page-full-text-search-filters</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/changelog-database-backed-page-full-text-search-filters</guid>
<description>The changelog is now a dynamic, database-backed page with full-text search, filters, sidebar navigation and pagination. The security compliance section and the footer review badges have been rebuilt as inline SVG cards.</description>
<category>Website</category>
<pubDate>Tue, 24 Feb 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Index Management Redesign: Config Files Manager, Backup Manager, Merged Index Tools and AJAX Reload, Reset, Commit and Restart</title>
<link>https://opensolr.com/changelog/entry/config-files-manager-redesign-inline-new-file-form</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/config-files-manager-redesign-inline-new-file-form</guid>
<description>A redesign pass across index management: a cleaner Config Files Manager with an inline new file form, upload notes tucked behind an info button, a restyled Backup Manager with backup files and the restore log side by side, Delete By Query merged into a single Index Tools panel, and Reload, Reset, Commit and Restart running via an AJAX modal.</description>
<category>Index Management</category>
<pubDate>Tue, 24 Feb 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Query Analytics Now Displays Umlauts and Accented Characters Correctly</title>
<link>https://opensolr.com/changelog/entry/query-analytics-umlauts-accented-characters-fix</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/query-analytics-umlauts-accented-characters-fix</guid>
<description>Special characters in Query Analytics are no longer shown URL-encoded: a query such as W&amp;auml;rmeenergie now reads as itself.</description>
<category>Analytics</category>
<pubDate>Tue, 24 Feb 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Batch Embeddings API, Database Export Download Fixes, and Inline Confirmations for HTTP Auth and IP Rules</title>
<link>https://opensolr.com/changelog/entry/batch-embeddings-api-50-texts-per-request</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/batch-embeddings-api-50-texts-per-request</guid>
<description>A new batch embeddings endpoint handles up to 50 texts per request. Database export downloads gain a ready-to-copy wget command and no longer return 403 Forbidden, and saving HTTP Auth credentials or an IP access rule now confirms inline.</description>
<category>Infrastructure</category>
<pubDate>Tue, 24 Feb 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Analytics: Readable Search Queries, Parallel Shard Processing and Nine Reporting Fixes</title>
<link>https://opensolr.com/changelog/entry/analytics-parallel-shard-processing-speedup</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/analytics-parallel-shard-processing-speedup</guid>
<description>Analytics now shows the human-readable query behind every request, however complex, translates CMS-generated queries into plain strings, and loads faster through parallel shard processing — together with fixes for numeric-only queries, double UTF-8 encoding, indexing-request correlation and chart labels.</description>
<category>Analytics</category>
<pubDate>Mon, 23 Feb 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Pricing Page Structured Data Fix Resolves Google Review Snippet Errors</title>
<link>https://opensolr.com/changelog/entry/pricing-page-structured-data-review-snippet-fix</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/pricing-page-structured-data-review-snippet-fix</guid>
<description>Review snippet errors reported in Google Search Console for the pricing page are resolved: the structured data now uses the correct schema type for rich results.</description>
<category>Performance &amp; SEO</category>
<pubDate>Mon, 23 Feb 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Service Status Page: Inflated Downtime Durations Fixed</title>
<link>https://opensolr.com/changelog/entry/service-status-inflated-downtime-durations-fix</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/service-status-inflated-downtime-durations-fix</guid>
<description>The Service Status page was reporting inflated downtime durations &amp;mdash; hundreds of hours in some cases &amp;mdash; for outages that were actually brief. The figures shown are now the real ones.</description>
<category>Infrastructure</category>
<pubDate>Mon, 23 Feb 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Search Update: Hybrid Balance Tuning, Visible Relevance Scores, Better AI Summaries, Locale Filter Fix</title>
<link>https://opensolr.com/changelog/entry/hybrid-search-keyword-semantic-balance-tuning</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/hybrid-search-keyword-semantic-balance-tuning</guid>
<description>Hybrid search is better balanced, relevance scores are visible on all result pages, AI summaries are more context-aware, the language and locale filter now filters correctly, and dense vector indexes are recognised automatically.</description>
<category>Search</category>
<pubDate>Sat, 21 Feb 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Homepage Redesigned: Clean Layout, Step-by-Step How It Works, Live Demos on the Front Page</title>
<link>https://opensolr.com/changelog/entry/opensolr-homepage-redesign-modern-clean-layout</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/opensolr-homepage-redesign-modern-clean-layout</guid>
<description>The homepage has been completely redesigned with a modern, clean layout. It adds a step-by-step How It Works section for new users, puts the live search demos on the front page, and improves mobile responsiveness across all pages.</description>
<category>Website</category>
<pubDate>Fri, 20 Feb 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Analytics: Parallel Loading, Numeric Column Sorting and Five Display Fixes</title>
<link>https://opensolr.com/changelog/entry/analytics-parallel-data-processing-faster-loading</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/analytics-parallel-data-processing-faster-loading</guid>
<description>Analytics now loads in parallel, tables sort numerically by dates, hits, sizes and bandwidth, Recent Queries loads even when a data source is down, accented and non-Latin queries display correctly, and two metrics were corrected.</description>
<category>Analytics</category>
<pubDate>Fri, 20 Feb 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Manage Your Own SSH Keys Directly From the Opensolr Control Panel</title>
<link>https://opensolr.com/changelog/entry/manage-ssh-keys-opensolr-control-panel</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/manage-ssh-keys-opensolr-control-panel</guid>
<description>Server owners can now manage their own SSH keys directly from the Opensolr control panel.</description>
<category>Infrastructure</category>
<pubDate>Thu, 19 Feb 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Structured Data, Social Previews, Faster Pages and Accessibility Work Across the Opensolr Site</title>
<link>https://opensolr.com/changelog/entry/structured-data-blog-faq-rich-google-results</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/structured-data-blog-faq-rich-google-results</guid>
<description>Blog posts and FAQ pages now carry structured data for richer Google results, and shared Opensolr links show proper preview images, titles and descriptions. Alongside: browser caching, minified assets, lazy loading, explicit image dimensions, semantic landmarks, better contrast and alt text on every image.</description>
<category>Performance &amp; SEO</category>
<pubDate>Thu, 19 Feb 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Plan Pricing Updated for Rising Infrastructure Costs; Yearly 25% Discount Retired</title>
<link>https://opensolr.com/changelog/entry/plan-pricing-update-yearly-discount-retired</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/plan-pricing-update-yearly-discount-retired</guid>
<description>Plan pricing has been updated to reflect rising infrastructure and operational costs, and the yearly 25% discount has been retired. See the current plan pricing.</description>
<category>Pricing</category>
<pubDate>Sun, 15 Feb 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Cleaner Pricing Layout With Better Readability for Plan Options</title>
<link>https://opensolr.com/changelog/entry/cleaner-pricing-layout-plan-options-readability</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/cleaner-pricing-layout-plan-options-readability</guid>
<description>The pricing page has a cleaner layout, making plan options and pricing details easier to read and compare.</description>
<category>Website</category>
<pubDate>Wed, 21 Jan 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Reindex and Cut Over to the New Solr Index</title>
<link>https://opensolr.com/learn/solr-migrations/345/reindex-and-cut-over-to-the-new-solr-index</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-migrations/345/reindex-and-cut-over-to-the-new-solr-index</guid>
<description>The part of a Solr migration only you can do: reindex into the new Opensolr Index from your crawler, CMS module, custom indexer or the Data Ingestion API, adjust the application, validate counts and results, then switch over.</description>
<category>SOLR DOCUMENTATION-Migrations</category>
</item>
<item>
<title>Solr Upgrade Pitfalls - Dates Spatial Fields and docValues</title>
<link>https://opensolr.com/learn/solr-migrations/344/solr-upgrade-pitfalls-dates-spatial-fields-and-docvalues</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-migrations/344/solr-upgrade-pitfalls-dates-spatial-fields-and-docvalues</guid>
<description>Three changes break most Solr upgrades: date values must be UTC with a Z suffix, Point fields need docValues to facet, sort or group, and LatLonType is gone. What fails, the error you see, and the fix for each.</description>
<category>SOLR DOCUMENTATION-Migrations</category>
</item>
<item>
<title>solrconfig.xml Conversion Table for a Solr Upgrade</title>
<link>https://opensolr.com/learn/solr-migrations/343/solrconfig.xml-conversion-table-for-a-solr-upgrade</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-migrations/343/solrconfig.xml-conversion-table-for-a-solr-upgrade</guid>
<description>Every solrconfig.xml element that changed on the way to Solr 9: luceneMatchVersion, master and slave to leader and follower, removed handlers and response writers, cache classes, request parsers and dispatchers, with a before and after example.</description>
<category>SOLR DOCUMENTATION-Migrations</category>
</item>
<item>
<title>schema.xml Conversion Table for a Solr Upgrade</title>
<link>https://opensolr.com/learn/solr-migrations/342/schema.xml-conversion-table-for-a-solr-upgrade</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-migrations/342/schema.xml-conversion-table-for-a-solr-upgrade</guid>
<description>Every schema.xml element that changed between old Solr versions and Solr 9: Trie fields to Point fields, LatLonType to LatLonPointSpatialField, removed attributes and factories, schema version, with the replacement for each and a before and after example.</description>
<category>SOLR DOCUMENTATION-Migrations</category>
</item>
<item>
<title>Solr Migration Option 3 - Convert the Configuration Yourself</title>
<link>https://opensolr.com/learn/solr-migrations/341/solr-migration-option-3-convert-the-configuration-yourself</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-migrations/341/solr-migration-option-3-convert-the-configuration-yourself</guid>
<description>For heavily customised Solr configurations: save the current files, convert schema.xml and solrconfig.xml with the conversion tables, upload them as one ZIP to a new Opensolr Index, reindex, validate and cut over.</description>
<category>SOLR DOCUMENTATION-Migrations</category>
</item>
<item>
<title>Solr Migration Option 2 - New Index with the Default Configuration</title>
<link>https://opensolr.com/learn/solr-migrations/340/solr-migration-option-2-new-index-with-the-default-configuration</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-migrations/340/solr-migration-option-2-new-index-with-the-default-configuration</guid>
<description>If your schema is close to stock (Opensolr, Drupal, WordPress or Search API Solr), skip the conversion: create a new Opensolr Index on a current Solr version, point your client at it, reindex, and delete the old index when you are satisfied.</description>
<category>SOLR DOCUMENTATION-Migrations</category>
</item>
<item>
<title>Solr Migration Option 1 - Opensolr Converts Your Configuration</title>
<link>https://opensolr.com/learn/solr-migrations/339/solr-migration-option-1-opensolr-converts-your-configuration</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-migrations/339/solr-migration-option-1-opensolr-converts-your-configuration</guid>
<description>Opensolr converts your schema.xml and solrconfig.xml to the target Solr version, provisions a new index with the converted configuration and hands over the connection details in under four business hours. You then reindex from your source.</description>
<category>SOLR DOCUMENTATION-Migrations</category>
</item>
<item>
<title>Solr Migration Checklist - What to Gather Before You Start</title>
<link>https://opensolr.com/learn/solr-migrations/338/solr-migration-checklist-what-to-gather-before-you-start</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-migrations/338/solr-migration-checklist-what-to-gather-before-you-start</guid>
<description>Before moving an Opensolr Index to a newer Solr version, gather the index name, the Solr version, the document count, your source of truth, custom field types and handlers, word lists and where your application keeps the connection. With the API commands to save the configuration.</description>
<category>SOLR DOCUMENTATION-Migrations</category>
</item>
<item>
<title>Indexing into Solr Without a Memory Spike</title>
<link>https://opensolr.com/learn/opensolr-resources/337/indexing-into-solr-without-a-memory-spike</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-resources/337/indexing-into-solr-without-a-memory-spike</guid>
<description>How to index into Solr without memory spikes: batch sizes, commitWithin and autoCommit instead of a commit per document, soft against hard commits, and why every commit opens a new searcher.</description>
<category>OPENSOLR GUIDE-Account Resources</category>
</item>
<item>
<title>Solr Queries That Fail on Their Own</title>
<link>https://opensolr.com/learn/opensolr-resources/336/solr-queries-that-fail-on-their-own</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-resources/336/solr-queries-that-fail-on-their-own</guid>
<description>Some Solr queries throw no matter how much memory the server has: too many boolean clauses, leading wildcards, heavy regular expressions, huge OR lists. How to recognise each one and what to send instead.</description>
<category>OPENSOLR GUIDE-Account Resources</category>
</item>
<item>
<title>The Cost of Faceting Grouping and Highlighting in Solr</title>
<link>https://opensolr.com/learn/opensolr-resources/335/the-cost-of-faceting-grouping-and-highlighting-in-solr</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-resources/335/the-cost-of-faceting-grouping-and-highlighting-in-solr</guid>
<description>Faceting, grouping and highlighting are the expensive features of a Solr query. What each one costs in memory and time, facet.limit and facet.method, grouping against collapsing, and the highlighter settings that keep it cheap.</description>
<category>OPENSOLR GUIDE-Account Resources</category>
</item>
<item>
<title>Solr Cache Sizing - filterCache queryResultCache documentCache</title>
<link>https://opensolr.com/learn/opensolr-resources/334/solr-cache-sizing-filtercache-queryresultcache-documentcache</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-resources/334/solr-cache-sizing-filtercache-queryresultcache-documentcache</guid>
<description>Solr caches trade heap for speed. How big one filterCache entry really is, how to size filterCache, queryResultCache and documentCache against your document count, autowarming, and why CaffeineCache is the only class left in Solr 9.</description>
<category>OPENSOLR GUIDE-Account Resources</category>
</item>
<item>
<title>Solr docValues and the TextField Trap</title>
<link>https://opensolr.com/learn/opensolr-resources/333/solr-docvalues-and-the-textfield-trap</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-resources/333/solr-docvalues-and-the-textfield-trap</guid>
<description>docValues let Solr facet, sort and group from a column on disk instead of un-inverting the field in the heap. Measured heap cost without them, where to add them, and why docValues on a solr.TextField stops the core from loading.</description>
<category>OPENSOLR GUIDE-Account Resources</category>
</item>
<item>
<title>Solr Deep Paging and cursorMark</title>
<link>https://opensolr.com/learn/opensolr-resources/332/solr-deep-paging-and-cursormark</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-resources/332/solr-deep-paging-and-cursormark</guid>
<description>The cost of a Solr result page grows with its offset: start=1000000 is many times slower than start=0. Real measurements, why it happens, and how cursorMark keeps the cost per page flat for exports, crawls and sitemaps.</description>
<category>OPENSOLR GUIDE-Account Resources</category>
</item>
<item>
<title>Solr Performance - Ask for Fewer Rows and Fields</title>
<link>https://opensolr.com/learn/opensolr-resources/331/solr-performance-ask-for-fewer-rows-and-fields</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-resources/331/solr-performance-ask-for-fewer-rows-and-fields</guid>
<description>Every document Solr returns is read, decompressed, cached and serialized. Why rows and fl decide response time, memory and bandwidth, with real payload measurements, and how to ask only for what a page shows.</description>
<category>OPENSOLR GUIDE-Account Resources</category>
</item>
<item>
<title>Where Solr Memory Goes - JVM Heap and Memory Mapped Files</title>
<link>https://opensolr.com/learn/opensolr-resources/330/where-solr-memory-goes-jvm-heap-and-memory-mapped-files</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-resources/330/where-solr-memory-goes-jvm-heap-and-memory-mapped-files</guid>
<description>A Solr node uses two kinds of memory: the JVM heap, with a hard ceiling, for caches, result windows and un-inverted fields, and memory-mapped index files managed by the operating system. What goes where, and which one runs out.</description>
<category>OPENSOLR GUIDE-Account Resources</category>
</item>
<item>
<title>eDisMax Worked Examples and Tuning in Practice</title>
<link>https://opensolr.com/learn/solr-configuration-files/329/edismax-worked-examples-and-tuning-in-practice</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-configuration-files/329/edismax-worked-examples-and-tuning-in-practice</guid>
<description>Three eDisMax queries worked through: a short query, a long query and a request-time override, then the order in which to tune: defaults in the handler, mm before boosts, pf before pf2, low slop, real queries.</description>
<category>SOLR DOCUMENTATION-Configuration</category>
</item>
<item>
<title>How eDisMax Builds the Score and Where Each Parameter Lives</title>
<link>https://opensolr.com/learn/solr-configuration-files/328/how-edismax-builds-the-score-and-where-each-parameter-lives</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-configuration-files/328/how-edismax-builds-the-score-and-where-each-parameter-lives</guid>
<description>How eDisMax assembles the final score from the qf clauses, the phrase boosts and tie, and where each parameter belongs: request handler defaults in solrconfig.xml, invariants, appends, or the request itself.</description>
<category>SOLR DOCUMENTATION-Configuration</category>
</item>
<item>
<title>eDisMax pf pf2 pf3 and ps - Phrase Boosting and Slop</title>
<link>https://opensolr.com/learn/solr-configuration-files/327/edismax-pf-pf2-pf3-and-ps-phrase-boosting-and-slop</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-configuration-files/327/edismax-pf-pf2-pf3-and-ps-phrase-boosting-and-slop</guid>
<description>pf, pf2 and pf3 reward documents where the query words appear together, as a whole phrase, in pairs or in triples. ps, ps2 and ps3 set how far apart they may be. What each adds to the query, with real debugQuery captures.</description>
<category>SOLR DOCUMENTATION-Configuration</category>
</item>
<item>
<title>eDisMax mm - Minimum Should Match Explained</title>
<link>https://opensolr.com/learn/solr-configuration-files/326/edismax-mm-minimum-should-match-explained</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-configuration-files/326/edismax-mm-minimum-should-match-explained</guid>
<description>The eDisMax mm parameter decides how many of the query words a document must contain. Percentages, conditional expressions like 2&lt;75%, how Solr rounds, and the parsed queries that show it, captured with debugQuery on a live index.</description>
<category>SOLR DOCUMENTATION-Configuration</category>
</item>
<item>
<title>eDisMax qf - Which Fields Count and How Much</title>
<link>https://opensolr.com/learn/solr-configuration-files/325/edismax-qf-which-fields-count-and-how-much</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-configuration-files/325/edismax-qf-which-fields-count-and-how-much</guid>
<description>The eDisMax qf parameter lists the fields a query searches and the weight of each one. How qf turns one word into a clause per field, how boosts and tie work, and the query Solr actually builds, from a real debugQuery capture.</description>
<category>SOLR DOCUMENTATION-Configuration</category>
</item>
<item>
<title>Solr 9 Defaults That Changed Under Your Configuration</title>
<link>https://opensolr.com/learn/opensolr-resources/324/solr-9-defaults-that-changed-under-your-configuration</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-resources/324/solr-9-defaults-that-changed-under-your-configuration</guid>
<description>A Solr 9 upgrade usually fails on a default you never set: CaffeineCache only, the unified highlighter, recursive maxBooleanClauses, blockUnknown on, localhost binding, the security manager, schema 1.7 docValues and lib directives.</description>
<category>OPENSOLR GUIDE-Account Resources</category>
</item>
<item>
<title>What Solr 9 Removed and What Only Moved to Modules</title>
<link>https://opensolr.com/learn/opensolr-resources/323/what-solr-9-removed-and-what-only-moved-to-modules</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-resources/323/what-solr-9-removed-and-what-only-moved-to-modules</guid>
<description>Solr 9 turned the old contribs into modules you switch on by name, and removed DIH, Velocity, the old LRU caches, CDCR and autoscaling. One table: each component, its status in Solr 9 and what to do about it.</description>
<category>OPENSOLR GUIDE-Account Resources</category>
</item>
<item>
<title>Everything Else Solr 9 Added</title>
<link>https://opensolr.com/learn/opensolr-resources/322/everything-else-solr-9-added</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-resources/322/everything-else-solr-9-added</guid>
<description>Beyond vectors, Solr 9 brought Java 11 as the floor, Lucene 9, certificate authentication, rate limiting and cancellable tasks, node roles and replica placement, SQL in the Admin UI, six new stemmers, SolrJ on HTTP/2 and leader and follower everywhere.</description>
<category>OPENSOLR GUIDE-Account Resources</category>
</item>
<item>
<title>Solr 9 Dense Vectors and the knn Query Parser</title>
<link>https://opensolr.com/learn/opensolr-resources/321/solr-9-dense-vectors-and-the-knn-query-parser</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-resources/321/solr-9-dense-vectors-and-the-knn-query-parser</guid>
<description>Solr 9.0 added DenseVectorField and the knn query parser, so Solr can match documents by meaning as well as by words. What the field type and the parser do, the schema definition, and what they power on Opensolr: hybrid search, AI Hints, AI Reader and search by image.</description>
<category>OPENSOLR GUIDE-Account Resources</category>
</item>
<item>
<title>Solr Replication Repeater - Leader Repeater and Followers</title>
<link>https://opensolr.com/learn/opensolr-replication/320/solr-replication-repeater-leader-repeater-and-followers</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-replication/320/solr-replication-repeater-leader-repeater-and-followers</guid>
<description>A Solr replication repeater follows a leader and leads its own followers, so one leader feeds many replicas across regions. The combined solrconfig.xml block, how followers point at it, and the rules that keep the chain healthy.</description>
<category>OPENSOLR GUIDE-Solr Replication Guide</category>
</item>
<item>
<title>AI API - Hybrid search grouped by page or Drupal entity (vdb_search)</title>
<link>https://opensolr.com/learn/opensolr-ai-api/319/ai-api-hybrid-search-grouped-by-page-or-drupal-entity-vdb_search</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-ai-api/319/ai-api-hybrid-search-grouped-by-page-or-drupal-entity-vdb_search</guid>
<description>Search an Opensolr Index by words and meaning with the vdb_search API endpoint: one result per Drupal entity, or per page and document with site=1, with highlights, the matching PDF pages and, if asked, text passages for a chat bot.</description>
<category>AI SERVICES-AI API: Vectors, Images &amp; LLM</category>
</item>
<item>
<title>AI API - Indexes, embedding model and AI search readiness (vdb_info)</title>
<link>https://opensolr.com/learn/opensolr-ai-api/318/ai-api-indexes-embedding-model-and-ai-search-readiness-vdb_info</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-ai-api/318/ai-api-indexes-embedding-model-and-ai-search-readiness-vdb_info</guid>
<description>List your Opensolr Indexes with the embedding model and the language model of the API servers using the vdb_info API endpoint. With index_name it also checks whether that index is ready for AI search with vectors, as Drupal AI Search needs.</description>
<category>AI SERVICES-AI API: Vectors, Images &amp; LLM</category>
</item>
<item>
<title>AI API - Your site chat bot in one call (assistant_chat)</title>
<link>https://opensolr.com/learn/opensolr-ai-api/317/ai-api-your-site-chat-bot-in-one-call-assistant_chat</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-ai-api/317/ai-api-your-site-chat-bot-in-one-call-assistant_chat</guid>
<description>Run the Opensolr chat bot of your site from your own code with the assistant_chat API endpoint: send the conversation, Opensolr searches your index, looks up the facts it needs and streams the answer with its sources, as Server-Sent Events.</description>
<category>AI SERVICES-AI API: Vectors, Images &amp; LLM</category>
</item>
<item>
<title>AI API - Chat completions with tool calls (chat_completions)</title>
<link>https://opensolr.com/learn/opensolr-ai-api/316/ai-api-chat-completions-with-tool-calls-chat_completions</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-ai-api/316/ai-api-chat-completions-with-tool-calls-chat_completions</guid>
<description>Talk to the language model of the Opensolr API servers with the chat_completions API endpoint: the request and answer format of the OpenAI chat completions API, tool calls, JSON output and streaming included, for agents you build yourself.</description>
<category>AI SERVICES-AI API: Vectors, Images &amp; LLM</category>
</item>
<item>
<title>AI API - Language, sentiment and vectors for your texts (enrich_text)</title>
<link>https://opensolr.com/learn/opensolr-ai-api/315/ai-api-language-sentiment-and-vectors-for-your-texts-enrich_text</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-ai-api/315/ai-api-language-sentiment-and-vectors-for-your-texts-enrich_text</guid>
<description>Get the language, locale, sentiment and meaning vector of up to 50 texts in one call with the enrich_text API endpoint on api.opensolr.com, computed exactly as Data Ingestion computes them for a document, without writing anything to the index.</description>
<category>AI SERVICES-AI API: Vectors, Images &amp; LLM</category>
</item>
<item>
<title>AI API - Alt text for a picture (image_alt_text)</title>
<link>https://opensolr.com/learn/opensolr-ai-api/314/ai-api-alt-text-for-a-picture-image_alt_text</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-ai-api/314/ai-api-alt-text-for-a-picture-image_alt_text</guid>
<description>Write the alt text of a picture with the image_alt_text API endpoint on api.opensolr.com: you give the picture and your own instruction, Opensolr reads what the picture shows and the text in it, and writes the alt text in the language you ask for.</description>
<category>AI SERVICES-AI API: Vectors, Images &amp; LLM</category>
</item>
<item>
<title>AI API - Words for what a picture shows (image_clip)</title>
<link>https://opensolr.com/learn/opensolr-ai-api/313/ai-api-words-for-what-a-picture-shows-image_clip</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-ai-api/313/ai-api-words-for-what-a-picture-shows-image_clip</guid>
<description>Turn a picture into search words by what it shows with the image_clip API endpoint on api.opensolr.com: labels with their scores and one text, without reading the text in the picture. One picture, or up to 10 in one call.</description>
<category>AI SERVICES-AI API: Vectors, Images &amp; LLM</category>
</item>
<item>
<title>API - Postal codes and addresses (postal_codes)</title>
<link>https://opensolr.com/learn/api-geolocation/312/api-postal-codes-and-addresses-postal_codes</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-geolocation/312/api-postal-codes-and-addresses-postal_codes</guid>
<description>Find postal codes and street addresses with the postal_codes API endpoint on api.opensolr.com: by free text (a code, a code and a town, a town and a country) or by country and city with an optional street, up to 50 of each.</description>
<category>API ENDPOINTS-Geolocation</category>
</item>
<item>
<title>API - Distance between two places (geo_distance)</title>
<link>https://opensolr.com/learn/api-geolocation/311/api-distance-between-two-places-geo_distance</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-geolocation/311/api-distance-between-two-places-geo_distance</guid>
<description>Get the straight-line distance in kilometres and miles between places, addresses or coordinates with the geo_distance API endpoint on api.opensolr.com, up to 25 pairs per call. It is the distance as the crow flies, not by road.</description>
<category>API ENDPOINTS-Geolocation</category>
</item>
<item>
<title>API - Check VAT numbers (vat_check)</title>
<link>https://opensolr.com/learn/api-geolocation/310/api-check-vat-numbers-vat_check</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-geolocation/310/api-check-vat-numbers-vat_check</guid>
<description>Check whether EU and UK VAT numbers are valid with the vat_check API endpoint on api.opensolr.com, up to 25 per call: EU numbers by the EU VIES service, UK numbers by the UK registry, with the company name and address when known.</description>
<category>API ENDPOINTS-Geolocation</category>
</item>
<item>
<title>API - VAT rates of a country (vat_rates)</title>
<link>https://opensolr.com/learn/api-geolocation/309/api-vat-rates-of-a-country-vat_rates</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-geolocation/309/api-vat-rates-of-a-country-vat_rates</guid>
<description>Get the standard and reduced VAT rates of up to 30 countries in one call with the vat_rates API endpoint on api.opensolr.com, by two-letter country code; EL and UK are accepted for Greece and the United Kingdom.</description>
<category>API ENDPOINTS-Geolocation</category>
</item>
<item>
<title>API - Exchange rates (currency_rates)</title>
<link>https://opensolr.com/learn/api-geolocation/308/api-exchange-rates-currency_rates</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-geolocation/308/api-exchange-rates-currency_rates</guid>
<description>Get the exchange rates of a currency, today or on a past day, and convert an amount, with the currency_rates API endpoint on api.opensolr.com. Currencies are ISO 4217 codes such as EUR, USD or RON.</description>
<category>API ENDPOINTS-Geolocation</category>
</item>
<item>
<title>API - Local time at a place (local_time)</title>
<link>https://opensolr.com/learn/api-geolocation/307/api-local-time-at-a-place-local_time</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-geolocation/307/api-local-time-at-a-place-local_time</guid>
<description>Get the local time right now at places, addresses, coordinates or IP addresses with the local_time API endpoint on api.opensolr.com: date, time, weekday, time zone and UTC offset, up to 25 lookups per call.</description>
<category>API ENDPOINTS-Geolocation</category>
</item>
<item>
<title>API - Addresses to coordinates (address_geo)</title>
<link>https://opensolr.com/learn/api-geolocation/306/api-addresses-to-coordinates-address_geo</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-geolocation/306/api-addresses-to-coordinates-address_geo</guid>
<description>Turn up to 25 street addresses or place names into coordinates with the address_geo API endpoint on api.opensolr.com: the best match for each, with its kind, region and country. An item written as lat,lon gets the place at those coordinates.</description>
<category>API ENDPOINTS-Geolocation</category>
</item>
<item>
<title>API - Places at GPS coordinates on the API servers (reverse_geo)</title>
<link>https://opensolr.com/learn/api-geolocation/305/api-places-at-gps-coordinates-on-the-api-servers-reverse_geo</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-geolocation/305/api-places-at-gps-coordinates-on-the-api-servers-reverse_geo</guid>
<description>Turn up to 50 GPS coordinate pairs into the places they are in with the reverse_geo API endpoint on api.opensolr.com: nearest place, region, country, the places around it and the street address on the spot, in the batch answer of nearby_places.</description>
<category>API ENDPOINTS-Geolocation</category>
</item>
<item>
<title>API - Geolocate IP Addresses on the API servers (ip_geo)</title>
<link>https://opensolr.com/learn/api-geolocation/304/api-geolocate-ip-addresses-on-the-api-servers-ip_geo</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-geolocation/304/api-geolocate-ip-addresses-on-the-api-servers-ip_geo</guid>
<description>Find where public IP addresses are with the ip_geo API endpoint on api.opensolr.com: the same answer as geo_lookup, country, region, city, coordinates and time zone, up to 50 addresses per call, next to the other lookups.</description>
<category>API ENDPOINTS-Geolocation</category>
</item>
<item>
<title>API - Check text extraction jobs (file_extract_status)</title>
<link>https://opensolr.com/learn/api-data-ingestion/303/api-check-text-extraction-jobs-file_extract_status</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-data-ingestion/303/api-check-text-extraction-jobs-file_extract_status</guid>
<description>Check up to 20 text extraction jobs at once with the file_extract_status API endpoint: the state of each, and its text or PDF pages once it is done.</description>
<category>API ENDPOINTS-Data Ingestion</category>
</item>
<item>
<title>API - Retry the failed ingestion jobs of an index (ingest_queue_retry_failed)</title>
<link>https://opensolr.com/learn/api-data-ingestion/302/api-retry-the-failed-ingestion-jobs-of-an-index-ingest_queue_retry_failed</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-data-ingestion/302/api-retry-the-failed-ingestion-jobs-of-an-index-ingest_queue_retry_failed</guid>
<description>Put the failed Data Ingestion jobs of an Opensolr Index back in the queue in one call with the ingest_queue_retry_failed API endpoint: jobs that failed whole, finished jobs with some failed documents, or both.</description>
<category>API ENDPOINTS-Data Ingestion</category>
</item>
<item>
<title>API - Start waiting ingestion jobs now (ingest_run_now)</title>
<link>https://opensolr.com/learn/api-data-ingestion/301/api-start-waiting-ingestion-jobs-now-ingest_run_now</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-data-ingestion/301/api-start-waiting-ingestion-jobs-now-ingest_run_now</guid>
<description>Start writing the pending Data Ingestion jobs of an Opensolr Index right away with the ingest_run_now API endpoint, for one job or for every pending job of an index.</description>
<category>API ENDPOINTS-Data Ingestion</category>
</item>
<item>
<title>API - Ingestion progress of an index (ingest_queue_core_progress)</title>
<link>https://opensolr.com/learn/api-data-ingestion/300/api-ingestion-progress-of-an-index-ingest_queue_core_progress</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-data-ingestion/300/api-ingestion-progress-of-an-index-ingest_queue_core_progress</guid>
<description>Follow the Data Ingestion progress of one Opensolr Index with the ingest_queue_core_progress API endpoint: documents done and failed in the jobs running now, the current wave of jobs, and the active jobs in the order they run.</description>
<category>API ENDPOINTS-Data Ingestion</category>
</item>
<item>
<title>API - One ingestion job with its documents (ingest_queue_job_detail)</title>
<link>https://opensolr.com/learn/api-data-ingestion/299/api-one-ingestion-job-with-its-documents-ingest_queue_job_detail</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-data-ingestion/299/api-one-ingestion-job-with-its-documents-ingest_queue_job_detail</guid>
<description>Read one Data Ingestion job of your Opensolr Index with its documents and its result using the ingest_queue_job_detail API endpoint. Use it to see which documents a job carried and why some failed.</description>
<category>API ENDPOINTS-Data Ingestion</category>
</item>
<item>
<title>API - Page through the ingestion jobs of an index (ingest_queue_list_jobs)</title>
<link>https://opensolr.com/learn/api-data-ingestion/298/api-page-through-the-ingestion-jobs-of-an-index-ingest_queue_list_jobs</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-data-ingestion/298/api-page-through-the-ingestion-jobs-of-an-index-ingest_queue_list_jobs</guid>
<description>Page through the Data Ingestion jobs of one Opensolr Index with the ingest_queue_list_jobs API endpoint: sort, order and filter on failed or partially failed jobs, without their documents, so it stays fast with many jobs.</description>
<category>API ENDPOINTS-Data Ingestion</category>
</item>
<item>
<title>API - Indexes with ingestion jobs (ingest_queue_list_cores)</title>
<link>https://opensolr.com/learn/api-data-ingestion/297/api-indexes-with-ingestion-jobs-ingest_queue_list_cores</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-data-ingestion/297/api-indexes-with-ingestion-jobs-ingest_queue_list_cores</guid>
<description>List the Opensolr Indexes of your account that have Data Ingestion jobs with the ingest_queue_list_cores API endpoint: per index, how many jobs are pending, running, done, failed, paused, stopped and can be retried.</description>
<category>API ENDPOINTS-Data Ingestion</category>
</item>
<item>
<title>API - Pause, resume, stop, retry or delete an ingestion job (ingest_queue_action)</title>
<link>https://opensolr.com/learn/api-data-ingestion/296/api-pause-resume-stop-retry-or-delete-an-ingestion-job-ingest_queue_action</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-data-ingestion/296/api-pause-resume-stop-retry-or-delete-an-ingestion-job-ingest_queue_action</guid>
<description>Act on one Data Ingestion job of your Opensolr Index with the ingest_queue_action API endpoint: stop, pause, resume, retry, delete, or replace its documents with save_payload. The edited documents follow the same rules as a new push.</description>
<category>API ENDPOINTS-Data Ingestion</category>
</item>
<item>
<title>API - Check a Data Ingestion job (ingest_status)</title>
<link>https://opensolr.com/learn/api-data-ingestion/295/api-check-a-data-ingestion-job-ingest_status</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-data-ingestion/295/api-check-a-data-ingestion-job-ingest_status</guid>
<description>Follow a Data Ingestion job of your Opensolr Index with the ingest_status API endpoint: its state, how many documents are done, written and failed, and the result. Reading your own queue is never rate limited.</description>
<category>API ENDPOINTS-Data Ingestion</category>
</item>
<item>
<title>API - Live server metrics (stream_server_data)</title>
<link>https://opensolr.com/learn/api-logs-analytics/294/api-live-server-metrics-stream_server_data</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-logs-analytics/294/api-live-server-metrics-stream_server_data</guid>
<description>Follow the CPU, memory, disk and load of the server of your Opensolr Index live with the stream_server_data API endpoint: one JSON reading every interval seconds, max readings in all.</description>
<category>API ENDPOINTS-Logs &amp; Analytics</category>
</item>
<item>
<title>API - Tail the HTTP access log (tail_apache_log)</title>
<link>https://opensolr.com/learn/api-logs-analytics/293/api-tail-the-http-access-log-tail_apache_log</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-logs-analytics/293/api-tail-the-http-access-log-tail_apache_log</guid>
<description>Read the latest lines of the web server access log that mention your Opensolr Index with the tail_apache_log API endpoint: who called the index, when, which URL, with which HTTP status, as plain text in msg.</description>
<category>API ENDPOINTS-Logs &amp; Analytics</category>
</item>
<item>
<title>Hybrid Search Example With curl</title>
<link>https://opensolr.com/learn/web-crawler-code-examples/292/hybrid-search-example-with-curl</link>
<guid isPermaLink="true">https://opensolr.com/learn/web-crawler-code-examples/292/hybrid-search-example-with-curl</guid>
<description>Try hybrid search on your Opensolr Index from the command line: get the meaning vector of a search from the embed endpoint with curl, then send one {!hybrid} request to Solr as a POST. Two commands to copy, plus the keyword-only version.</description>
<category>WEB CRAWLER GUIDE-Code Examples</category>
</item>
<item>
<title>Hybrid Search Example in Python</title>
<link>https://opensolr.com/learn/web-crawler-code-examples/291/hybrid-search-example-in-python</link>
<guid isPermaLink="true">https://opensolr.com/learn/web-crawler-code-examples/291/hybrid-search-example-in-python</guid>
<description>A complete Python function for hybrid search on an Opensolr Index with requests: meaning vector from the embed endpoint, one {!hybrid} request to Solr, a fallback to words when there is no vector, highlights, facets and Did you mean, runnable from the command line.</description>
<category>WEB CRAWLER GUIDE-Code Examples</category>
</item>
<item>
<title>Hybrid Search Example in Node.js</title>
<link>https://opensolr.com/learn/web-crawler-code-examples/290/hybrid-search-example-in-node.js</link>
<guid isPermaLink="true">https://opensolr.com/learn/web-crawler-code-examples/290/hybrid-search-example-in-node.js</guid>
<description>A complete Node.js server for hybrid search on an Opensolr Index, with no packages to install: meaning vector from the embed endpoint, one {!hybrid} request to Solr, a fallback to words when there is no vector, and JSON with highlights, facets and Did you mean.</description>
<category>WEB CRAWLER GUIDE-Code Examples</category>
</item>
<item>
<title>Hybrid Search Example in PHP</title>
<link>https://opensolr.com/learn/web-crawler-code-examples/289/hybrid-search-example-in-php</link>
<guid isPermaLink="true">https://opensolr.com/learn/web-crawler-code-examples/289/hybrid-search-example-in-php</guid>
<description>A complete PHP endpoint for hybrid search on an Opensolr Index: it gets the meaning vector of the search from the embed endpoint, sends one {!hybrid} request to Solr, falls back to words when there is no vector, and answers JSON with highlights, facets and Did you mean.</description>
<category>WEB CRAWLER GUIDE-Code Examples</category>
</item>
<item>
<title>Did You Mean: Spellcheck for Your Own Search Box</title>
<link>https://opensolr.com/learn/web-crawler-solr-api/288/did-you-mean-spellcheck-for-your-own-search-box</link>
<guid isPermaLink="true">https://opensolr.com/learn/web-crawler-solr-api/288/did-you-mean-spellcheck-for-your-own-search-box</guid>
<description>Add Did you mean to your own search on an Opensolr Index: the spellcheck parameters the hosted search page sends, the dictionary built from the words of your own pages, reading collations from the response, and when to show the suggestion.</description>
<category>WEB CRAWLER GUIDE-Solr API</category>
</item>
<item>
<title>Boost Recent Results: Freshness in Solr Queries</title>
<link>https://opensolr.com/learn/web-crawler-solr-api/287/boost-recent-results-freshness-in-solr-queries</link>
<guid isPermaLink="true">https://opensolr.com/learn/web-crawler-solr-api/287/boost-recent-results-freshness-in-solr-queries</guid>
<description>Lift newer documents in the results of your Opensolr Index without hiding older ones: the recip() boost behind Fresh results, how its half-life works, filtering by date instead, and the Fresh and AI switches of the hosted search page.</description>
<category>WEB CRAWLER GUIDE-Solr API</category>
</item>
<item>
<title>Sort Search Results by Date, Price or Any Field</title>
<link>https://opensolr.com/learn/web-crawler-solr-api/286/sort-search-results-by-date-price-or-any-field</link>
<guid isPermaLink="true">https://opensolr.com/learn/web-crawler-solr-api/286/sort-search-results-by-date-price-or-any-field</guid>
<description>Sort the results of your Opensolr Index with the sort parameter: by relevance, by date, by price or by any single-valued field with docValues, with a tie-breaker so pages never repeat, and how visitors sort on the hosted search page.</description>
<category>WEB CRAWLER GUIDE-Solr API</category>
</item>
<item>
<title>Highlight the Search Words in Your Results</title>
<link>https://opensolr.com/learn/web-crawler-solr-api/285/highlight-the-search-words-in-your-results</link>
<guid isPermaLink="true">https://opensolr.com/learn/web-crawler-solr-api/285/highlight-the-search-words-in-your-results</guid>
<description>Highlighting on your Opensolr Index: the hl parameters the hosted search page sends, why hl.encoder=html matters, how the highlighting part of the response is keyed by document id, and how to show the snippets safely on your own pages.</description>
<category>WEB CRAWLER GUIDE-Solr API</category>
</item>
<item>
<title>The {!hybrid} Query Parser: Words and Meaning in One Solr Request</title>
<link>https://opensolr.com/learn/web-crawler-solr-api/284/the-hybrid-query-parser-words-and-meaning-in-one-solr-request</link>
<guid isPermaLink="true">https://opensolr.com/learn/web-crawler-solr-api/284/the-hybrid-query-parser-words-and-meaning-in-one-solr-request</guid>
<description>Send a hybrid search to your Opensolr Index yourself with the {!hybrid} query parser: the keyword and vector sub-queries, mode, alpha and topN, the defaults that come from Search Tuning, where the meaning vector comes from, and a request you can copy.</description>
<category>WEB CRAWLER GUIDE-Solr API</category>
</item>
<item>
<title>How to Replace Search API Solr with the Opensolr Search Drupal Module</title>
<link>https://opensolr.com/learn/opensolr-and-drupal/283/how-to-replace-search-api-solr-with-the-opensolr-search-drupal-module</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-and-drupal/283/how-to-replace-search-api-solr-with-the-opensolr-search-drupal-module</guid>
<description>Move a Drupal site from Search API Solr to the Opensolr Search module without downtime: install it next to Search API, connect a new Opensolr Index, fill it, map your facets, check /opensolr-search, then let the core search forms point there and remove the old setup.</description>
<category>INTEGRATION-Drupal</category>
</item>
<item>
<title>Drupal Facet Mapping Examples: Online Shop, News Site and Course Catalogue</title>
<link>https://opensolr.com/learn/opensolr-and-drupal/282/drupal-facet-mapping-examples-online-shop-news-site-and-course-catalogue</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-and-drupal/282/drupal-facet-mapping-examples-online-shop-news-site-and-course-catalogue</guid>
<description>Ready-made Facet Mapping setups for the Opensolr Search Drupal module: which Drupal field to map, the Solr Field Name, the Solr Type for one value or many, and the facet widget, for an online shop, a news site and a course catalogue.</description>
<category>INTEGRATION-Drupal</category>
</item>
<item>
<title>Data Crawler or Data Ingestion: Which One Should My Drupal Site Use?</title>
<link>https://opensolr.com/learn/opensolr-and-drupal/281/data-crawler-or-data-ingestion-which-one-should-my-drupal-site-use</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-and-drupal/281/data-crawler-or-data-ingestion-which-one-should-my-drupal-site-use</guid>
<description>The Opensolr Search Drupal module fills your Opensolr Index two ways. The Data Crawler reads your public pages from a sitemap; Data Ingestion sends each item from Drupal when it is saved, private sites included. What each needs, what goes in, and why many sites run both.</description>
<category>INTEGRATION-Drupal</category>
</item>
<item>
<title>AI-API - RAG in two calls (embed_and_search, then ai_summary)</title>
<link>https://opensolr.com/learn/opensolr-ai-api/280/ai-api-rag-in-two-calls-embed_and_search-then-ai_summary</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-ai-api/280/ai-api-rag-in-two-calls-embed_and_search-then-ai_summary</guid>
<description>Answer questions from your own content with two Opensolr API calls: embed_and_search finds the best results in your Opensolr Index, then ai_summary writes the answer from their title, description and text. Full examples in PHP and Python.</description>
<category>AI SERVICES-AI API: Vectors, Images &amp; LLM</category>
</item>
<item>
<title>AI-API - Search Tuning for one call (embed_and_search)</title>
<link>https://opensolr.com/learn/opensolr-ai-api/279/ai-api-search-tuning-for-one-call-embed_and_search</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-ai-api/279/ai-api-search-tuning-for-one-call-embed_and_search</guid>
<description>Change the Search Tuning of your Opensolr Index for a single embed_and_search call: field weights, the balance between words and meaning, Minimum Match, Search Mode, Vector Candidate Pool, Content Quality Boost and freshness. The saved settings stay as they are.</description>
<category>AI SERVICES-AI API: Vectors, Images &amp; LLM</category>
</item>
<item>
<title>Create a Scoped API Key for an App, a Script or a Contractor</title>
<link>https://opensolr.com/learn/security/278/create-a-scoped-api-key-for-an-app-a-script-or-a-contractor</link>
<guid isPermaLink="true">https://opensolr.com/learn/security/278/create-a-scoped-api-key-for-an-app-a-script-or-a-contractor</guid>
<description>Create an Opensolr scoped API key under Account, API Keys: name it, tick only the endpoints it needs, pick the indexes it may touch, set an optional expiry date, then copy it. It is used exactly like the master key, with the account owner&apos;s email.</description>
<category>OPENSOLR GUIDE-Data Security</category>
</item>
<item>
<title>Stop a Yearly Opensolr Subscription From Renewing</title>
<link>https://opensolr.com/learn/billing/277/stop-a-yearly-opensolr-subscription-from-renewing</link>
<guid isPermaLink="true">https://opensolr.com/learn/billing/277/stop-a-yearly-opensolr-subscription-from-renewing</guid>
<description>A yearly Opensolr subscription renews automatically for another year. To stop the renewal, cancel the plan under Billing, Cancel Plan before the renewal date. A renewal payment already taken is handled under section 8 of the Terms.</description>
<category>OPENSOLR GUIDE-Pricing &amp; Billing</category>
</item>
<item>
<title>What Happens When an Opensolr Renewal Payment Fails</title>
<link>https://opensolr.com/learn/billing/276/what-happens-when-an-opensolr-renewal-payment-fails</link>
<guid isPermaLink="true">https://opensolr.com/learn/billing/276/what-happens-when-an-opensolr-renewal-payment-fails</guid>
<description>When an Opensolr renewal payment fails, you get an email with a Pay Invoice Now button on Stripe and a link to your Payment Profile; when your bank wants 3D Secure, the email asks you to confirm the payment. Pay the invoice or update your card to keep the plan.</description>
<category>OPENSOLR GUIDE-Pricing &amp; Billing</category>
</item>
<item>
<title>Switch Between Monthly and Yearly Billing</title>
<link>https://opensolr.com/learn/billing/275/switch-between-monthly-and-yearly-billing</link>
<guid isPermaLink="true">https://opensolr.com/learn/billing/275/switch-between-monthly-and-yearly-billing</guid>
<description>Any Opensolr subscription can switch from monthly to yearly billing, or from yearly to monthly. Open a support ticket on the contact page, tell us which billing you want, and we confirm the exact new price and start date before making the change.</description>
<category>OPENSOLR GUIDE-Pricing &amp; Billing</category>
</item>
<item>
<title>AI-API - Documents to text, with the pictures inside a PDF read by OCR (doc_to_text)</title>
<link>https://opensolr.com/learn/opensolr-ai-api/274/ai-api-documents-to-text-with-the-pictures-inside-a-pdf-read-by-ocr-doc_to_text</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-ai-api/274/ai-api-documents-to-text-with-the-pictures-inside-a-pdf-read-by-ocr-doc_to_text</guid>
<description>Read up to 5 documents (PDF, Word, RTF, OpenDocument, HTML, text) into plain text with one API call. A PDF comes back page by page; with the image processing add-on the pictures and scanned pages inside it are read by OCR too.</description>
<category>AI SERVICES-AI API: Vectors, Images &amp; LLM</category>
</item>
<item>
<title>Early EOF — The Client Hung Up Before Solr Finished Reading the Update</title>
<link>https://opensolr.com/learn/solr-errors/273/early-eof-the-client-hung-up-before-solr-finished-reading-the-update</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-errors/273/early-eof-the-client-hung-up-before-solr-finished-reading-the-update</guid>
<description>org.eclipse.jetty.io.EofException: Early EOF means your client stopped sending an update batch halfway, usually a Drupal or hosting timeout. The whole batch is dropped, so documents go missing. Fix: send smaller batches, raise the client timeout, reindex.</description>
<category>SOLR DOCUMENTATION-Errors</category>
</item>
<item>
<title>API - Find Places by Name (place_search)</title>
<link>https://opensolr.com/learn/api-geolocation/272/api-find-places-by-name-place_search</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-geolocation/272/api-find-places-by-name-place_search</guid>
<description>Find places by name, or by the first letters of a name, with the place_search API endpoint on opensolr.com: coordinates, region, country, kind and population of up to 25 matches, best first, optionally in one country.</description>
<category>API ENDPOINTS-Geolocation</category>
</item>
<item>
<title>AI-API - Read the text printed in a picture (image_ocr)</title>
<link>https://opensolr.com/learn/opensolr-ai-api/271/ai-api-read-the-text-printed-in-a-picture-image_ocr</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-ai-api/271/ai-api-read-the-text-printed-in-a-picture-image_ocr</guid>
<description>Read the text printed in up to 10 pictures with one API call: gas receipts, invoices, shelf labels, screenshots and business cards, turned into words your Opensolr index can search.</description>
<category>AI SERVICES-AI API: Vectors, Images &amp; LLM</category>
</item>
<item>
<title>AI-API - Words and vector for pictures (image_index)</title>
<link>https://opensolr.com/learn/opensolr-ai-api/270/ai-api-words-and-vector-for-pictures-image_index</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-ai-api/270/ai-api-words-and-vector-for-pictures-image_index</guid>
<description>image_index reads up to 10 pictures in one call: the words that describe each picture (objects and a sentence from the image model) and the search vector of those words, so a picture costs one AI request instead of two and never ends up with words but no vector.</description>
<category>AI SERVICES-AI API: Vectors, Images &amp; LLM</category>
</item>
<item>
<title>How about Solr 10.0?</title>
<link>https://opensolr.com/learn/solr-migrations/269/how-about-solr-10.0</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-migrations/269/how-about-solr-10.0</guid>
<description>Solr 10 is available on Opensolr. What Solr 10.0 adds, what it removes, why it does not change relevance for website search, what breaks when a configuration moves to it, and how to create a Solr 10 index or get a dedicated Solr 10 server.</description>
<category>SOLR DOCUMENTATION-Migrations</category>
</item>
<item>
<title>API - Nearest Places for GPS Coordinates (nearby_places)</title>
<link>https://opensolr.com/learn/api-geolocation/268/api-nearest-places-for-gps-coordinates-nearby_places</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-geolocation/268/api-nearest-places-for-gps-coordinates-nearby_places</guid>
<description>Turn GPS coordinates into the nearest named place with the nearby_places API endpoint on opensolr.com: city, region, province, community and country, the other places within a radius, and the street address when one is on the spot. Up to 50 pairs per call.</description>
<category>API ENDPOINTS-Geolocation</category>
</item>
<item>
<title>API - Geolocate IP Addresses (geo_lookup)</title>
<link>https://opensolr.com/learn/api-geolocation/267/api-geolocate-ip-addresses-geo_lookup</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-geolocation/267/api-geolocate-ip-addresses-geo_lookup</guid>
<description>Find where public IP addresses are with the geo_lookup API endpoint on opensolr.com: country, region, city, coordinates and time zone, up to 50 addresses per call. A missing fact is left out, never faked. HTTP 400 when no address is usable.</description>
<category>API ENDPOINTS-Geolocation</category>
</item>
<item>
<title>AI-API - Search by Image (image_to_text)</title>
<link>https://opensolr.com/learn/opensolr-ai-api/266/ai-api-search-by-image-image_to_text</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-ai-api/266/ai-api-search-by-image-image_to_text</guid>
<description>Search by image: image_to_text turns an uploaded photo or base64 image into search words: the objects in it and one sentence about it, or the text printed on it when OCR reads real text. Barcodes and QR codes come back separately. Up to ten pictures per call.</description>
<category>AI SERVICES-AI API: Vectors, Images &amp; LLM</category>
</item>
<item>
<title>API - Delete a Dedicated Environment</title>
<link>https://opensolr.com/learn/api-cluster-management/265/api-delete-a-dedicated-environment</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-cluster-management/265/api-delete-a-dedicated-environment</guid>
<description>Remove one of your dedicated environments with the delete_environment API endpoint: pass env_name. The removal is queued and runs in the background. A wrong name answers Not Owner in plain text.</description>
<category>API ENDPOINTS-Cluster Management</category>
</item>
<item>
<title>AI-API - Hybrid Search (embed_and_search)</title>
<link>https://opensolr.com/learn/opensolr-ai-api/264/ai-api-hybrid-search-embed_and_search</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-ai-api/264/ai-api-hybrid-search-embed_and_search</guid>
<description>embed_and_search runs a full hybrid search on your Opensolr Index in one call: the question is matched on its words and on its meaning, ranked with the Search Tuning saved for the index, and comes back with highlights, facets, spelling suggestions and the query vector. Send fresh=no for results of any date.</description>
<category>AI SERVICES-AI API: Vectors, Images &amp; LLM</category>
</item>
<item>
<title>API - Restore a Backup</title>
<link>https://opensolr.com/learn/api-backup-management/263/api-restore-a-backup</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-backup-management/263/api-restore-a-backup</guid>
<description>Restore an Opensolr Index from a backup with the restore_backup API endpoint: pass a file name from get_backup_files_list and type=full for data and configuration, or type=conf for the configuration files only. The restore is queued and runs in the background.</description>
<category>API ENDPOINTS-Backup Management</category>
</item>
<item>
<title>API - Live stream of Solr requests (stream_solr_log)</title>
<link>https://opensolr.com/learn/api-logs-analytics/262/api-live-stream-of-solr-requests-stream_solr_log</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-logs-analytics/262/api-live-stream-of-solr-requests-stream_solr_log</guid>
<description>Follow the Solr requests of your Opensolr Index live with the stream_solr_log API endpoint: one JSON reading every interval seconds, max readings in all, each with the requests since the one before.</description>
<category>API ENDPOINTS-Logs &amp; Analytics</category>
</item>
<item>
<title>API - Tail the Solr request log (tail_access_log)</title>
<link>https://opensolr.com/learn/api-logs-analytics/261/api-tail-the-solr-request-log-tail_access_log</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-logs-analytics/261/api-tail-the-solr-request-log-tail_access_log</guid>
<description>Read the latest lines of the Solr log that mention your Opensolr Index with the tail_access_log API endpoint: the requests Solr handled, with their parameters, hits and times, as plain text in msg.</description>
<category>API ENDPOINTS-Logs &amp; Analytics</category>
</item>
<item>
<title>API - Tail the Web Crawler Log</title>
<link>https://opensolr.com/learn/api-web-crawler/260/api-tail-the-web-crawler-log</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-web-crawler/260/api-tail-the-web-crawler-log</guid>
<description>Read the last lines of the crawl log of an Opensolr Index with the tail_crawl_log API endpoint, to see what the crawl is doing right now. Answers Idle... when there is no crawl log.</description>
<category>API ENDPOINTS-Web Crawler</category>
</item>
<item>
<title>API - Re-queue Crawled URLs for Re-crawling</title>
<link>https://opensolr.com/learn/api-web-crawler/259/api-re-queue-crawled-urls-for-re-crawling</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-web-crawler/259/api-re-queue-crawled-urls-for-re-crawling</guid>
<description>Put every crawled URL of an Opensolr Index back in the crawl queue with the move_done_to_todo API endpoint, so the next crawl run reads every page again and updates the index. This is what Keep Index Fresh runs.</description>
<category>API ENDPOINTS-Web Crawler</category>
</item>
<item>
<title>API - Check Crawl Schedule Status</title>
<link>https://opensolr.com/learn/api-web-crawler/258/api-check-crawl-schedule-status</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-web-crawler/258/api-check-crawl-schedule-status</guid>
<description>Check whether an Opensolr Index has a crawl schedule with the crawl_schedule_status API endpoint: active true means the crawl is on a schedule, running or not at this moment.</description>
<category>API ENDPOINTS-Web Crawler</category>
</item>
<item>
<title>API - Remove a URL from the Crawler Queue (HMAC signed)</title>
<link>https://opensolr.com/learn/api-web-crawler/257/api-remove-a-url-from-the-crawler-queue-hmac-signed</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-web-crawler/257/api-remove-a-url-from-the-crawler-queue-hmac-signed</guid>
<description>Make the crawl of an Opensolr Index read one page again with the HMAC signed delete_crawler_url API endpoint: the URL leaves the done and todo lists of the crawl, so the next run finds it as new. Call it when a page of your CMS changes.</description>
<category>API ENDPOINTS-Web Crawler</category>
</item>
<item>
<title>API - Add a Crawl URL (HMAC signed)</title>
<link>https://opensolr.com/learn/api-web-crawler/256/api-add-a-crawl-url-hmac-signed</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-web-crawler/256/api-add-a-crawl-url-hmac-signed</guid>
<description>Add a start URL to the crawl of an Opensolr Index, already verified, with the HMAC signed add_crawl_url_signed API endpoint. The URL must be HTTPS and public. The signature replaces the verification file.</description>
<category>API ENDPOINTS-Web Crawler</category>
</item>
<item>
<title>API - Enable or Disable Query Elevation</title>
<link>https://opensolr.com/learn/api-index-management/255/api-enable-or-disable-query-elevation</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-index-management/255/api-enable-or-disable-query-elevation</guid>
<description>Switch Query Elevation on or off for an Opensolr Index with the elevation_toggle API endpoint. enable=yes adds what the index needs to its configuration and reloads it; enable=no switches the pinned results of the hosted search page off.</description>
<category>API ENDPOINTS-Index Management</category>
</item>
<item>
<title>API - Get Account Summary (HMAC signed)</title>
<link>https://opensolr.com/learn/api-index-management/254/api-get-account-summary-hmac-signed</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-index-management/254/api-get-account-summary-hmac-signed</guid>
<description>Get the plan, limits and usage behind an Opensolr Index with the HMAC signed get_account_summary API endpoint: disk, traffic and documents of the index, indexes left, crawl limits, AI requests used and allowed, and your API rate limits.</description>
<category>API ENDPOINTS-Index Management</category>
</item>
<item>
<title>API - Get Vector-Capable Regions</title>
<link>https://opensolr.com/learn/api-index-management/253/api-get-vector-capable-regions</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-index-management/253/api-get-vector-capable-regions</guid>
<description>List the regions where an Opensolr Index gets site search, Data Ingestion and hybrid search with the vector_regions API endpoint: identifier, country, Solr version and coordinates. nearest=1 flags the region closest to you.</description>
<category>API ENDPOINTS-Index Management</category>
</item>
<item>
<title>Master API Key vs Scoped API Keys — How Opensolr API Access Control Works</title>
<link>https://opensolr.com/learn/security/251/master-api-key-vs-scoped-api-keys-how-opensolr-api-access-control-works</link>
<guid isPermaLink="true">https://opensolr.com/learn/security/251/master-api-key-vs-scoped-api-keys-how-opensolr-api-access-control-works</guid>
<description>Your master Opensolr API key is root level: it calls every endpoint on every index and is the first HTTP password of each new index, so it never goes to a contractor. Scoped keys are limited to the endpoints and indexes you pick, with an optional expiry. Team members use their own login and key.</description>
<category>OPENSOLR GUIDE-Data Security</category>
</item>
<item>
<title>Evaluating Opensolr for Your Organization: Free Plan, Pricing, Service Tiers and Vendor Reviews</title>
<link>https://opensolr.com/learn/billing/245/evaluating-opensolr-for-your-organization-free-plan-pricing-service-tiers-and-vendor-reviews</link>
<guid isPermaLink="true">https://opensolr.com/learn/billing/245/evaluating-opensolr-for-your-organization-free-plan-pricing-service-tiers-and-vendor-reviews</guid>
<description>Evaluating Opensolr for production: free registration with no card and a free plan that never expires, extended evaluation allowances on request, monthly unit pricing for indexes, disk and traffic, the AI allowance every plan includes, prepayment discounts, and when a Resilient Dedicated Cluster is the next step.</description>
<category>OPENSOLR GUIDE-Pricing &amp; Billing</category>
</item>
<item>
<title>Migrating from Hosted Apache Solr (hostedapachesolr.com) to Opensolr — Complete Guide</title>
<link>https://opensolr.com/learn/solr-migrations/243/migrating-from-hosted-apache-solr-hostedapachesolr.com-to-opensolr-complete-guide</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-migrations/243/migrating-from-hosted-apache-solr-hostedapachesolr.com-to-opensolr-complete-guide</guid>
<description>hostedapachesolr.com shut down on October 31, 2022. Move a Drupal Search API site to an Opensolr Index: create an index, connect Drupal with the Opensolr module or Search API Solr, reindex from your site, verify in the control panel.</description>
<category>SOLR DOCUMENTATION-Migrations</category>
</item>
<item>
<title>Managed Solr Hosting in 2026 — The Complete Provider Comparison</title>
<link>https://opensolr.com/learn/opensolr-versus-managed-solr-providers/242/managed-solr-hosting-in-2026-the-complete-provider-comparison</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-versus-managed-solr-providers/242/managed-solr-hosting-in-2026-the-complete-provider-comparison</guid>
<description>Managed Solr providers come in five kinds, from Solr on your own cloud servers to full search platforms. What each kind leaves to you, and seven questions to ask any provider before you move your indexes, with Opensolr&apos;s answers.</description>
<category>OPENSOLR VERSUS-Managed Solr Providers</category>
</item>
<item>
<title>Solr Migration - Move an Old Index to a Current Solr Version</title>
<link>https://opensolr.com/learn/solr-migrations/241/solr-migration-move-an-old-index-to-a-current-solr-version</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-migrations/241/solr-migration-move-an-old-index-to-a-current-solr-version</guid>
<description>Move an Opensolr Index from an old Solr version to a current one: a new index, a converted configuration and a full reindex from your source, run side by side until you switch. Solr versions below 8.x retire on 01/01/2027.</description>
<category>SOLR DOCUMENTATION-Migrations</category>
</item>
<item>
<title>Why was my email address rejected during registration?</title>
<link>https://opensolr.com/learn/security/240/why-was-my-email-address-rejected-during-registration</link>
<guid isPermaLink="true">https://opensolr.com/learn/security/240/why-was-my-email-address-rejected-during-registration</guid>
<description>Opensolr checks an email address before it sends the registration code, so a signup can be refused: where you connect from, a domain reputation service, a list of disposable providers, and the DNS of the domain (mail records, SPF, DMARC, domain age). Mistakes are reviewed by hand.</description>
<category>OPENSOLR GUIDE-Data Security</category>
</item>
<item>
<title>How to Access the Solr Admin UI for Your Index</title>
<link>https://opensolr.com/learn/opensolr-management-control-panel/239/how-to-access-the-solr-admin-ui-for-your-index</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-management-control-panel/239/how-to-access-the-solr-admin-ui-for-your-index</guid>
<description>Reach the native Solr Admin UI for your Opensolr Index from the quick action row in the Index Control Panel: click Solr Admin and it opens in a new tab with credentials already loaded, no second login. Run raw queries, browse documents, inspect the schema, read live logs. Blank? Check the Security tab IP rules.</description>
<category>OPENSOLR GUIDE-Control Panel</category>
</item>
<item>
<title>Why does my Drupal Solr index data get reset or disappear after config import?</title>
<link>https://opensolr.com/learn/opensolr-and-drupal/238/why-does-my-drupal-solr-index-data-get-reset-or-disappear-after-config-import</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-and-drupal/238/why-does-my-drupal-solr-index-data-get-reset-or-disappear-after-config-import</guid>
<description>Every document disappears from your Solr index after drush config:import on a Drupal site using Config Split. Search API sees server: null from the base config, so reactToServerSwitch() calls removeIndex() and deleteAllIndexItems() and wipes it silently. Fix with a settings.php override or config_ignore.</description>
<category>INTEGRATION-Drupal</category>
</item>
<item>
<title>Drupal &amp; WordPress Partner Discount — 20% Off</title>
<link>https://opensolr.com/learn/billing/237/drupal-wordpress-partner-discount-20-off</link>
<guid isPermaLink="true">https://opensolr.com/learn/billing/237/drupal-wordpress-partner-discount-20-off</guid>
<description>20% off a Small or Medium Opensolr plan for a full year when your Drupal or WordPress site runs the free Opensolr Search module or plugin as its search engine. Who is eligible, the search traffic and admin activity we check, the feedback we ask for, and how to apply.</description>
<category>OPENSOLR GUIDE-Pricing &amp; Billing</category>
</item>
<item>
<title>Complete Guide to the Opensolr Search Drupal Module</title>
<link>https://opensolr.com/learn/opensolr-and-drupal/236/complete-guide-to-the-opensolr-search-drupal-module</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-and-drupal/236/complete-guide-to-the-opensolr-search-drupal-module</guid>
<description>The map of the Opensolr Search module for Drupal 10.1, 11 and 12: install, connect, fill the index with the Data Crawler or Data Ingestion, the search page at /opensolr-search, facets, tuning, elevation, analytics and the AI parts, each linked to its page in the Drupal docs.</description>
<category>INTEGRATION-Drupal</category>
</item>
<item>
<title>API - Get Facetable Fields</title>
<link>https://opensolr.com/learn/api-web-crawler/235/api-get-facetable-fields</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-web-crawler/235/api-get-facetable-fields</guid>
<description>List the fields of an Opensolr Index that can be facets with the get_facetable_fields API endpoint: each field with its type (string, numeric, date), label, document count and its facet settings on the hosted search page.</description>
<category>API ENDPOINTS-Web Crawler</category>
</item>
<item>
<title>API - Get Settings Dashboard (Combined Account, Crawl &amp; Environment Data)</title>
<link>https://opensolr.com/learn/api-index-management/233/api-get-settings-dashboard-combined-account-crawl-environment-data</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-index-management/233/api-get-settings-dashboard-combined-account-crawl-environment-data</guid>
<description>Get the account summary, crawl stats, crawl schedule, index list, site search regions and API rate limits of an Opensolr Index in one HMAC signed call: get_settings_dashboard, the call the Drupal and WordPress settings pages make.</description>
<category>API ENDPOINTS-Index Management</category>
</item>
<item>
<title>Opensolr Enterprise Apps Management — Dedicated Infrastructure Hosting</title>
<link>https://opensolr.com/learn/opensolr-management-control-panel/232/opensolr-enterprise-apps-management-dedicated-infrastructure-hosting</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-management-control-panel/232/opensolr-enterprise-apps-management-dedicated-infrastructure-hosting</guid>
<description>Opensolr runs your whole application stack on dedicated VPS or bare metal, not only the Solr cluster: web server, databases, PHP, Python and Node runtimes, SSL, Varnish, cron, backups, git deployments and per IP rate limiting against bots. For enterprise clients only.</description>
<category>OPENSOLR GUIDE-Control Panel</category>
</item>
<item>
<title>Opensolr vs SearchStax — Managed Solr and Site Search in One Account</title>
<link>https://opensolr.com/learn/opensolr-versus-searchstax/231/opensolr-vs-searchstax-managed-solr-and-site-search-in-one-account</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-versus-searchstax/231/opensolr-vs-searchstax-managed-solr-and-site-search-in-one-account</guid>
<description>Both run Apache Solr. SearchStax sells Solr infrastructure (Managed Search) and website search (Site Search) as two products, each with its own pricing. Opensolr runs managed Solr and the whole site search on the same Opensolr Index: crawling, hybrid search, a hosted search page, a chat bot and analytics.</description>
<category>OPENSOLR VERSUS-SearchStax</category>
</item>
<item>
<title>Opensolr vs Self-Hosted Solr — Why Manage the Plumbing When Someone Else Can?</title>
<link>https://opensolr.com/learn/opensolr-versus-self-hosted-solr/230/opensolr-vs-self-hosted-solr-why-manage-the-plumbing-when-someone-else-can</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-versus-self-hosted-solr/230/opensolr-vs-self-hosted-solr-why-manage-the-plumbing-when-someone-else-can</guid>
<description>Running Solr yourself means servers, Java, restarts, backups, replication and keeping writes off the public internet. On Opensolr you still edit schema.xml and solrconfig.xml yourself, while Opensolr runs the servers, restarts Solr when it stops, keeps daily backups and explains errors.</description>
<category>OPENSOLR VERSUS-Self-Hosted Solr</category>
</item>
<item>
<title>Opensolr vs AWS OpenSearch — Stay on Apache Solr</title>
<link>https://opensolr.com/learn/opensolr-versus-aws-opensearch/229/opensolr-vs-aws-opensearch-stay-on-apache-solr</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-versus-aws-opensearch/229/opensolr-vs-aws-opensearch-stay-on-apache-solr</guid>
<description>AWS OpenSearch Service runs OpenSearch, a different engine with JSON mappings and its own Query DSL, so moving a Solr app there means rewriting schema, queries and client code. Opensolr keeps you on Apache Solr, with config files edited in the browser, IP rules per request handler and site search on top.</description>
<category>OPENSOLR VERSUS-AWS OpenSearch</category>
</item>
<item>
<title>Opensolr vs Elasticsearch — Site Search Built In, Not Assembled</title>
<link>https://opensolr.com/learn/opensolr-versus-elasticsearch/228/opensolr-vs-elasticsearch-site-search-built-in-not-assembled</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-versus-elasticsearch/228/opensolr-vs-elasticsearch-site-search-built-in-not-assembled</guid>
<description>Elasticsearch is a general-purpose engine: for site search you configure the embedding model, the hybrid query, the crawler and the search page yourself. Opensolr is Apache Solr with all of it built in: crawling, meaning vectors, hybrid search, a hosted search page, AI Hints and analytics.</description>
<category>OPENSOLR VERSUS-Elasticsearch</category>
</item>
<item>
<title>Hybrid Search Live Demo — Try It Yourself</title>
<link>https://opensolr.com/learn/opensolr-ai-nlp/227/hybrid-search-live-demo-try-it-yourself</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-ai-nlp/227/hybrid-search-live-demo-try-it-yourself</guid>
<description>Run hybrid search live on four real Opensolr indexes: the Opensolr knowledge base, Fluke test and measurement gear, a German office supplies catalog searched in English, and Starbucks at Home coffee. Click a query, no sign up, and watch BM25 keyword matching and vector meaning fuse into one ranked list.</description>
<category>AI SERVICES-Hybrid Search</category>
</item>
<item>
<title>ConcurrentModificationException — Two Operations Collided Inside Solr</title>
<link>https://opensolr.com/learn/solr-errors/226/concurrentmodificationexception-two-operations-collided-inside-solr</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-errors/226/concurrentmodificationexception-two-operations-collided-inside-solr</guid>
<description>java.util.ConcurrentModificationException: null is a harmless, transient threading collision inside Solr, two threads touching one internal list: heavy indexing during queries, an autoCommit hitting a facet query, or cache warming as a new searcher opens. Retry, batch updates, commit less often.</description>
<category>SOLR DOCUMENTATION-Errors</category>
</item>
<item>
<title>Cannot Unload Non-Existent Core — Index Not Ready After Restart</title>
<link>https://opensolr.com/learn/solr-errors/225/cannot-unload-non-existent-core-index-not-ready-after-restart</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-errors/225/cannot-unload-non-existent-core-index-not-ready-after-restart</guid>
<description>Cannot unload non-existent core appears when a reload, commit or query reaches an Opensolr Index that has not finished loading, after a server restart or a replication cycle. Nothing is lost and no action is needed: wait 30 to 60 seconds, retry, check the Error Audit tab if it repeats.</description>
<category>SOLR DOCUMENTATION-Errors</category>
</item>
<item>
<title>ParseException — Cannot Parse Query Syntax Error in Solr Search</title>
<link>https://opensolr.com/learn/solr-errors/224/parseexception-cannot-parse-query-syntax-error-in-solr-search</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-errors/224/parseexception-cannot-parse-query-syntax-error-in-solr-search</guid>
<description>Cannot parse, Encountered &quot;:&quot; at line 1, column N: a Solr ParseException raised while searching, not while indexing your data. Typical causes are q and fq glued together without an ampersand, no spaces around AND, OR and NOT, unbalanced quotes or brackets, and unescaped : ( ) [ ] + - in user input.</description>
<category>SOLR DOCUMENTATION-Errors</category>
</item>
<item>
<title>Point Must Be in lat, lon or x y Format — Invalid Geo Coordinates in Solr</title>
<link>https://opensolr.com/learn/solr-errors/223/point-must-be-in-lat-lon-or-x-y-format-invalid-geo-coordinates-in-solr</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-errors/223/point-must-be-in-lat-lon-or-x-y-format-invalid-geo-coordinates-in-solr</guid>
<description>InvalidShapeException, Point must be in &apos;lat, lon&apos; or &apos;x y&apos; format: a Solr location field got an empty string, GeoJSON longitude first order, parentheses or degree symbols, or values outside -90 to 90 and -180 to 180. Send plain latitude then longitude, or omit the field.</description>
<category>SOLR DOCUMENTATION-Errors</category>
</item>
<item>
<title>Background Merge Hit Exception - MergeAbortedException in Apache Solr</title>
<link>https://opensolr.com/learn/solr-errors/222/background-merge-hit-exception-mergeabortedexception-in-apache-solr</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-errors/222/background-merge-hit-exception-mergeabortedexception-in-apache-solr</guid>
<description>java.io.IOException: background merge hit exception with MergeAbortedException and [maxNumSegments=1] means a forceMerge from optimize=true was interrupted by another commit or a reload. No documents are lost, but the commit returns HTTP 500. Stop optimizing on commit, in Drupal Search API too.</description>
<category>SOLR DOCUMENTATION-Errors</category>
</item>
<item>
<title>Leader Not Available — Index Fetch Failed During Replication</title>
<link>https://opensolr.com/learn/solr-errors/221/leader-not-available-index-fetch-failed-during-replication</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-errors/221/leader-not-available-index-fetch-failed-during-replication</guid>
<description>Leader is not available, Index fetch failed by exception, Expected mime type application/octet-stream but got text/html: the follower got an HTML page instead of binary Solr data. Causes are a dead leader Solr process, a missing index, a proxy or firewall page, or a wrong replication URL.</description>
<category>SOLR DOCUMENTATION-Errors</category>
</item>
<item>
<title>How to Import Data from MySQL (SQL) into Your Opensolr Index</title>
<link>https://opensolr.com/learn/solr-configuration-files/220/how-to-import-data-from-mysql-sql-into-your-opensolr-index</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-configuration-files/220/how-to-import-data-from-mysql-sql-into-your-opensolr-index</guid>
<description>DataImportHandler was removed in Solr 9, so importing MySQL or PostgreSQL rows into an Opensolr Index now needs a script. Working curl, PHP and Python examples: query the database, turn each row into a JSON document, POST the array to /update?commit=true in batches of 500 to 1000.</description>
<category>SOLR DOCUMENTATION-Configuration</category>
</item>
<item>
<title>ClassNotFoundException: solr.FastLRUCache — Cache Class Removed in Solr 9</title>
<link>https://opensolr.com/learn/solr-errors/219/classnotfoundexception-solr.fastlrucache-cache-class-removed-in-solr-9</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-errors/219/classnotfoundexception-solr.fastlrucache-cache-class-removed-in-solr-9</guid>
<description>Error loading class solr.FastLRUCache or solr.LRUCache: both cache classes were removed in Solr 9. In solrconfig.xml switch filterCache, queryResultCache, documentCache and fieldValueCache to class solr.CaffeineCache, keeping size and autowarmCount, then upload and reload your Opensolr Index.</description>
<category>SOLR DOCUMENTATION-Errors</category>
</item>
<item>
<title>NumberFormatException During Indexing — Wrong Data Type in Numeric Field</title>
<link>https://opensolr.com/learn/solr-errors/218/numberformatexception-during-indexing-wrong-data-type-in-numeric-field</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-errors/218/numberformatexception-during-indexing-wrong-data-type-in-numeric-field</guid>
<description>NumberFormatException: For input string, on Error adding field kcal=false, is a boolean or a placeholder such as N/A, none or an empty string reaching a pfloat or pint field. Solr rejects the whole document, so one bad row vanishes from a batch of a thousand. Clean the value or retype the field.</description>
<category>SOLR DOCUMENTATION-Errors</category>
</item>
<item>
<title>Missing SearchComponents — 500 Exception in solrconfig.xml</title>
<link>https://opensolr.com/learn/solr-errors/217/missing-searchcomponents-500-exception-in-solrconfig.xml</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-errors/217/missing-searchcomponents-500-exception-in-solrconfig.xml</guid>
<description>Missing SearchComponents named [suggest], spellcheck or elevator means a requestHandler in solrconfig.xml lists a component in first-components, last-components or components with no matching searchComponent block. Define the missing component or remove the reference, then reload your index.</description>
<category>SOLR DOCUMENTATION-Errors</category>
</item>
<item>
<title>SAXParseException — XML Parsing Error in Solr Configuration Files</title>
<link>https://opensolr.com/learn/solr-errors/216/saxparseexception-xml-parsing-error-in-solr-configuration-files</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-errors/216/saxparseexception-xml-parsing-error-in-solr-configuration-files</guid>
<description>SAXParseException, with Unable to reload core, means solrconfig.xml, schema.xml or an included file such as search.xml holds invalid XML. The message names the file in systemId with the exact lineNumber and columnNumber. Usual culprits: a curly smart quote, an unclosed tag, an unescaped character.</description>
<category>SOLR DOCUMENTATION-Errors</category>
</item>
<item>
<title>ArrayIndexOutOfBoundsException: Index -1 out of bounds for length 1</title>
<link>https://opensolr.com/learn/solr-errors/215/arrayindexoutofboundsexception-index-1-out-of-bounds-for-length-1</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-errors/215/arrayindexoutofboundsexception-index-1-out-of-bounds-for-length-1</guid>
<description>ArrayIndexOutOfBoundsException: Index -1 out of bounds for length 1 on a query points at damaged index segments, not your query. Indexing killed mid commit, a disk filling during a commit, kill -9, power loss and stale NFS all do it. Run Optimize to rewrite the segments clean, or re-index.</description>
<category>SOLR DOCUMENTATION-Errors</category>
</item>
<item>
<title>Solr 9 Features and What&apos;s New</title>
<link>https://opensolr.com/learn/opensolr-resources/212/solr-9-features-and-whats-new</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-resources/212/solr-9-features-and-whats-new</guid>
<description>Solr 9 put dense vectors inside Solr and removed classes old configurations still name. Overview of the release, the Solr versions you can pick on Opensolr today (versions below 8.x retire on 01/01/2027), and one page per part of the release.</description>
<category>OPENSOLR GUIDE-Account Resources</category>
</item>
<item>
<title>Upload and Import Data from CSV to Your Opensolr Index</title>
<link>https://opensolr.com/learn/solr-configuration-files/211/upload-and-import-data-from-csv-to-your-opensolr-index</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-configuration-files/211/upload-and-import-data-from-csv-to-your-opensolr-index</guid>
<description>Bulk loading a CSV or TSV file into an Opensolr Index through the native /update/csv handler with curl, without writing code. The parameters that matter, commit, separator, skip, fieldnames and overwrite, generating an id with UUIDUpdateProcessorFactory, and fixes for the unknown field error.</description>
<category>SOLR DOCUMENTATION-Configuration</category>
</item>
<item>
<title>Laravel Opensolr Search: Sample App with Scout, Vue 3 and Hybrid Search</title>
<link>https://opensolr.com/learn/opensolr-resources/209/laravel-opensolr-search-sample-app-with-scout-vue-3-and-hybrid-search</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-resources/209/laravel-opensolr-search-sample-app-with-scout-vue-3-and-hybrid-search</guid>
<description>A complete Laravel 13 sample: hybrid semantic search over an Opensolr index through Laravel Scout and the Opensolr API, a Vue 3 front end on Vite and a grounded AI answer. Runs on the public demo account out of the box. Source at github.com/phpcip/laravel-opensolr-search.</description>
<category>OPENSOLR GUIDE-Account Resources</category>
</item>
<item>
<title>How to Define New Fields in schema.xml</title>
<link>https://opensolr.com/learn/solr-configuration-files/208/how-to-define-new-fields-in-schema.xml</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-configuration-files/208/how-to-define-new-fields-in-schema.xml</guid>
<description>Adding a new field to schema.xml on an Opensolr Index: open the Edit schema.xml tab, then declare name, type, indexed, stored, multiValued and required. Which type to pick, text_general for body copy, string for ids and facets, tint or tfloat for ranges, pdate for timestamps, plus dynamic fields such as *_s.</description>
<category>SOLR DOCUMENTATION-Configuration</category>
</item>
<item>
<title>API - Send a file for text extraction (file_extract)</title>
<link>https://opensolr.com/learn/api-data-ingestion/206/api-send-a-file-for-text-extraction-file_extract</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-data-ingestion/206/api-send-a-file-for-text-extraction-file_extract</guid>
<description>Send a file that has no public URL to Opensolr for text extraction with the file_extract API endpoint: in one part or in several, identified by its sha1 and size. Scanned pages and pictures are read by OCR. Then push it with Data Ingestion.</description>
<category>API ENDPOINTS-Data Ingestion</category>
</item>
<item>
<title>API - List the Data Ingestion queue (ingest_queue)</title>
<link>https://opensolr.com/learn/api-data-ingestion/205/api-list-the-data-ingestion-queue-ingest_queue</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-data-ingestion/205/api-list-the-data-ingestion-queue-ingest_queue</guid>
<description>List the latest 100 Data Ingestion jobs of your account, or of one Opensolr Index, with their documents, using the ingest_queue API endpoint. Reading your own queue is never rate limited.</description>
<category>API ENDPOINTS-Data Ingestion</category>
</item>
<item>
<title>API - Push documents (ingest)</title>
<link>https://opensolr.com/learn/api-data-ingestion/204/api-push-documents-ingest</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-data-ingestion/204/api-push-documents-ingest</guid>
<description>Push up to 50 documents per call into an Opensolr Index with the ingest API endpoint on api.opensolr.com. Each document needs uri, title, description and text (or rtf:true). The batch is queued; Opensolr enriches every document and adds meaning vectors as it writes it.</description>
<category>API ENDPOINTS-Data Ingestion</category>
</item>
<item>
<title>API Usage Dashboard — Monitor Your API Requests and Rate Limits</title>
<link>https://opensolr.com/learn/api-logs-analytics/203/api-usage-dashboard-monitor-your-api-requests-and-rate-limits</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-logs-analytics/203/api-usage-dashboard-monitor-your-api-requests-and-rate-limits</guid>
<description>See how your account uses the Opensolr API on Account &gt; API Usage: calls this month, AI requests against your allowance, the last minute and the last hour against your rate limits, calls per endpoint and the last six months.</description>
<category>API ENDPOINTS-Logs &amp; Analytics</category>
</item>
<item>
<title>Opensolr vs Algolia — Site Search on Apache Solr for One Plan Price</title>
<link>https://opensolr.com/learn/opensolr-versus-algolia/198/opensolr-vs-algolia-site-search-on-apache-solr-for-one-plan-price</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-versus-algolia/198/opensolr-vs-algolia-site-search-on-apache-solr-for-one-plan-price</guid>
<description>Algolia is a hosted engine you integrate through its API and UI libraries, with pay-as-you-go plans billed on search requests and records. Opensolr runs your site search on Apache Solr: crawl or push your content, hybrid search, a hosted search page and a chat bot, for one plan price.</description>
<category>OPENSOLR VERSUS-Algolia</category>
</item>
<item>
<title>Document Contains Immense Term — Field Value Exceeds Maximum Length</title>
<link>https://opensolr.com/learn/solr-errors/196/document-contains-immense-term-field-value-exceeds-maximum-length</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-errors/196/document-contains-immense-term-field-value-exceeds-maximum-length</guid>
<description>Document contains at least one immense term, longer than the max length 32766, rejects the document: one token passed Lucene&apos;s byte cap. The cause is an untokenized field, a string type or KeywordTokenizer holding article bodies, raw HTML or a Drupal aggregated field. Retype it as text and re-index.</description>
<category>SOLR DOCUMENTATION-Errors</category>
</item>
<item>
<title>API - Check Optimize Status</title>
<link>https://opensolr.com/learn/api-index-management/195/api-check-optimize-status</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-index-management/195/api-check-optimize-status</guid>
<description>Check an optimize of an Opensolr Index with the optimize_status API endpoint: whether it is still running or finished, and the segments, size, documents and deleted documents of the index now.</description>
<category>API ENDPOINTS-Index Management</category>
</item>
<item>
<title>API - Flush Crawl Buffer to Solr</title>
<link>https://opensolr.com/learn/api-web-crawler/194/api-flush-crawl-buffer-to-solr</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-web-crawler/194/api-flush-crawl-buffer-to-solr</guid>
<description>Send the crawled pages waiting in the buffer to your Opensolr Index now with the flush_crawl_buffer API endpoint. max_batches flushes 100 pages per batch at a time and tells how many are left.</description>
<category>API ENDPOINTS-Web Crawler</category>
</item>
<item>
<title>API - Check if Web Crawler is Running</title>
<link>https://opensolr.com/learn/api-web-crawler/193/api-check-if-web-crawler-is-running</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-web-crawler/193/api-check-if-web-crawler-is-running</guid>
<description>Check whether the crawl of an Opensolr Index is running right now with the crawler_active API endpoint. CRAWLER IS READY means nothing runs; Crawler is already running means a crawl is in progress.</description>
<category>API ENDPOINTS-Web Crawler</category>
</item>
<item>
<title>API - Pause the Web Crawler</title>
<link>https://opensolr.com/learn/api-web-crawler/191/api-pause-the-web-crawler</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-web-crawler/191/api-pause-the-web-crawler</guid>
<description>Pause the crawl of an Opensolr Index with the pause_crawl API endpoint: the running crawl stops now and the schedule stays, so the next scheduled run resumes it. To stop for good, use stop_crawl.</description>
<category>API ENDPOINTS-Web Crawler</category>
</item>
<item>
<title>Autocomplete for Your Own Search Box</title>
<link>https://opensolr.com/learn/web-crawler-solr-api/190/autocomplete-for-your-own-search-box</link>
<guid isPermaLink="true">https://opensolr.com/learn/web-crawler-solr-api/190/autocomplete-for-your-own-search-box</guid>
<description>Build search suggestions on your Opensolr Index: the /autocomplete handler, the four fields Opensolr fills for every page so that beginnings of words match, a request you can copy, and a small script that shows suggestions safely.</description>
<category>WEB CRAWLER GUIDE-Solr API</category>
</item>
<item>
<title>Complete Search Page: End-to-End Example</title>
<link>https://opensolr.com/learn/web-crawler-code-examples/189/complete-search-page-end-to-end-example</link>
<guid isPermaLink="true">https://opensolr.com/learn/web-crawler-code-examples/189/complete-search-page-end-to-end-example</guid>
<description>A complete search page in one HTML file for your Opensolr Index: search box, highlighted results, a language facet, Did you mean and pages, served by the hybrid search endpoint of the PHP, Node.js or Python example so that no key ever reaches the browser.</description>
<category>WEB CRAWLER GUIDE-Code Examples</category>
</item>
<item>
<title>Faceted Navigation &amp; Filtering</title>
<link>https://opensolr.com/learn/web-crawler-solr-api/188/faceted-navigation-filtering</link>
<guid isPermaLink="true">https://opensolr.com/learn/web-crawler-solr-api/188/faceted-navigation-filtering</guid>
<description>Facets on your Opensolr Index from your own code: facet.field counts, filters with the term parser, multi-select facets with tag and exclude, date and price ranges, the fields that can be facets, and the facet sidebar of the hosted search page.</description>
<category>WEB CRAWLER GUIDE-Solr API</category>
</item>
<item>
<title>Pagination: rows, start and cursorMark</title>
<link>https://opensolr.com/learn/web-crawler-solr-api/187/pagination-rows-start-and-cursormark</link>
<guid isPermaLink="true">https://opensolr.com/learn/web-crawler-solr-api/187/pagination-rows-start-and-cursormark</guid>
<description>Page through the results of your Opensolr Index with rows and start, work out the number of pages from numFound, keep away from deep pages, and walk a whole index with cursorMark when you need every document.</description>
<category>WEB CRAWLER GUIDE-Solr API</category>
</item>
<item>
<title>Understanding the Solr JSON Response</title>
<link>https://opensolr.com/learn/web-crawler-solr-api/183/understanding-the-solr-json-response</link>
<guid isPermaLink="true">https://opensolr.com/learn/web-crawler-solr-api/183/understanding-the-solr-json-response</guid>
<description>Read every part of the JSON your Opensolr Index answers: responseHeader, response with numFound and docs, highlighting, facet_counts, spellcheck and errors, with real examples and the JavaScript to parse facets and Did you mean.</description>
<category>WEB CRAWLER GUIDE-Solr API</category>
</item>
<item>
<title>How Text Analysis Works: Stemming, Synonyms &amp; Accent Folding</title>
<link>https://opensolr.com/learn/web-crawler-index-fields/182/how-text-analysis-works-stemming-synonyms-accent-folding</link>
<guid isPermaLink="true">https://opensolr.com/learn/web-crawler-index-fields/182/how-text-analysis-works-stemming-synonyms-accent-folding</guid>
<description>Why a search on your Opensolr Index finds other forms of the same word: the analysis every text field goes through (accents, word parts, stopwords, lower case, English stemming, search-time synonyms), with real examples of what matches what.</description>
<category>WEB CRAWLER GUIDE-Index Fields</category>
</item>
<item>
<title>Code Examples: Build Your Own Search UI</title>
<link>https://opensolr.com/learn/web-crawler-code-examples/180/code-examples-build-your-own-search-ui</link>
<guid isPermaLink="true">https://opensolr.com/learn/web-crawler-code-examples/180/code-examples-build-your-own-search-ui</guid>
<description>Build your own hybrid search on an Opensolr Index: why requests go through your server, the meaning vector from the embed endpoint, one {!hybrid} Solr request, the fallback to words when there is no vector, and complete examples in PHP, Node.js, Python and curl.</description>
<category>WEB CRAWLER GUIDE-Code Examples</category>
</item>
<item>
<title>Querying the Solr API: Search Parameters Explained</title>
<link>https://opensolr.com/learn/web-crawler-solr-api/179/querying-the-solr-api-search-parameters-explained</link>
<guid isPermaLink="true">https://opensolr.com/learn/web-crawler-solr-api/179/querying-the-solr-api-search-parameters-explained</guid>
<description>Query the Solr API of your Opensolr site search index from your own code: the /select URL and its credentials, the parameters that matter (q, fq, fl, rows, sort), filters you will use, filters on every search, and the Query Inspector that copies the request of your search page.</description>
<category>WEB CRAWLER GUIDE-Solr API</category>
</item>
<item>
<title>Batch vector embeddings</title>
<link>https://opensolr.com/learn/opensolr-ai-api/175/batch-vector-embeddings</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-ai-api/175/batch-vector-embeddings</guid>
<description>batch_embed on api.opensolr.com turns up to 50 texts into meaning vectors of 1,024 numbers in one call, each embedded as a document, with the tokens used and a truncated flag per text. Each text that needed the GPU counts as one AI request; repeats come from cache for free.</description>
<category>AI SERVICES-AI API: Vectors, Images &amp; LLM</category>
</item>
<item>
<title>API - Reset Solr Index Data</title>
<link>https://opensolr.com/learn/api-index-management/174/api-reset-solr-index-data</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-index-management/174/api-reset-solr-index-data</guid>
<description>Delete every document of an Opensolr Index with the reset_index API endpoint (reset_core is the same call). The index, its configuration and its settings stay. Answers RESET OK.</description>
<category>API ENDPOINTS-Index Management</category>
</item>
<item>
<title>Shared, Dedicated, Resilient Cluster Solr Cloud Solutions</title>
<link>https://opensolr.com/learn/billing/173/shared-dedicated-resilient-cluster-solr-cloud-solutions</link>
<guid isPermaLink="true">https://opensolr.com/learn/billing/173/shared-dedicated-resilient-cluster-solr-cloud-solutions</guid>
<description>The four Opensolr hosting tiers compared: Shared Solr for development and ordinary production, Shared Resilient Cluster for load balanced throughput, Dedicated Standalone on a machine nobody else touches, and Dedicated Cluster with master, replicas and failover. Indexes stay isolated on all four.</description>
<category>OPENSOLR GUIDE-Pricing &amp; Billing</category>
</item>
<item>
<title>Slow Solr Queries From Drupal: Facets and Deep Paging</title>
<link>https://opensolr.com/learn/solr-errors/171/slow-solr-queries-from-drupal-facets-and-deep-paging</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-errors/171/slow-solr-queries-from-drupal-facets-and-deep-paging</guid>
<description>A Drupal search is slow because of facets, not the query: fewer facets, a facet.limit, docValues, facet.threads and JSON facets fix it. Deep pagination by scrapers is the other cost: cap the page depth and use cursorMark for exports.</description>
<category>SOLR DOCUMENTATION-Errors</category>
</item>
<item>
<title>Drupal - Can not get additional data from Solr timeout after...</title>
<link>https://opensolr.com/learn/solr-errors/168/drupal-can-not-get-additional-data-from-solr-timeout-after</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-errors/168/drupal-can-not-get-additional-data-from-solr-timeout-after</guid>
<description>Solr was unable to retrieve additional data about the server, with cURL error 28, is Drupal search_api_solr timing out on /admin/luke, whose field and term dump runs to megabytes. Define /admin/luke as solr.PingRequestHandler in solrconfig.xml, or set skip_schema_check in settings.php.</description>
<category>SOLR DOCUMENTATION-Errors</category>
</item>
<item>
<title>Manual Opensolr Index Replication</title>
<link>https://opensolr.com/learn/opensolr-replication/167/manual-opensolr-index-replication</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-replication/167/manual-opensolr-index-replication</guid>
<description>Replicate one Opensolr Index to another by hand: the leader and follower blocks for solrconfig.xml, leaderUrl and credentials, IP rules on /replication, and how to check it. The built-in Replicate does the same in a few clicks.</description>
<category>OPENSOLR GUIDE-Solr Replication Guide</category>
</item>
<item>
<title>Cancel Your Opensolr Subscription or Close Your Account</title>
<link>https://opensolr.com/learn/billing/166/cancel-your-opensolr-subscription-or-close-your-account</link>
<guid isPermaLink="true">https://opensolr.com/learn/billing/166/cancel-your-opensolr-subscription-or-close-your-account</guid>
<description>Cancel an Opensolr subscription under Billing, Cancel Plan: the account moves to the free plan at once. Money back only for New Accounts inside the money-back window of the Terms, otherwise the unused days become account credit. Closing the account itself takes one email to support@opensolr.com.</description>
<category>OPENSOLR GUIDE-Pricing &amp; Billing</category>
</item>
<item>
<title>Create vector embeddings</title>
<link>https://opensolr.com/learn/opensolr-ai-api/162/create-vector-embeddings</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-ai-api/162/create-vector-embeddings</guid>
<description>The embed endpoint on api.opensolr.com turns one text, or one search question, into a meaning vector of 1,024 numbers, made by the same multilingual model as the vectors in your Opensolr Index. Send payload and is_query; the answer is the bare JSON array of the vector.</description>
<category>AI SERVICES-AI API: Vectors, Images &amp; LLM</category>
</item>
<item>
<title>Create vector embeddings for every document in your Opensolr Index</title>
<link>https://opensolr.com/learn/opensolr-ai-api/161/create-vector-embeddings-for-every-document-in-your-opensolr-index</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-ai-api/161/create-vector-embeddings-for-every-document-in-your-opensolr-index</guid>
<description>embed_opensolr_index adds meaning vectors to documents already in your Opensolr Index: it reads the fields you name, makes one 1,024-number vector per document and writes it with a Solr atomic update. The index needs a vector field and the update log; fields neither stored nor docValues are lost.</description>
<category>AI SERVICES-AI API: Vectors, Images &amp; LLM</category>
</item>
<item>
<title>Moodle LMS Integration Tutorial</title>
<link>https://opensolr.com/learn/moodle-opensolr-integration/160/moodle-lms-integration-tutorial</link>
<guid isPermaLink="true">https://opensolr.com/learn/moodle-opensolr-integration/160/moodle-lms-integration-tutorial</guid>
<description>Connect Moodle global search to an Opensolr Index: install the PHP Solr extension, enable global search, choose Solr, enter host, port 443, secure mode, index name and the login of the index, create the schema with setup_schema.php, then index with search/cli/indexer.php.</description>
<category>INTEGRATION-Moodle</category>
</item>
<item>
<title>Cannot change field from DOCS_AND_FREQS_AND_POSITIONS DOCS_AND_FREQS_AND_POSITIONS_AND_OFFSETS</title>
<link>https://opensolr.com/learn/solr-errors/157/cannot-change-field-from-docs_and_freqs_and_positions-docs_and_freqs_and_positions_and_offsets</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-errors/157/cannot-change-field-from-docs_and_freqs_and_positions-docs_and_freqs_and_positions_and_offsets</guid>
<description>cannot change field from index options DOCS_AND_FREQS_AND_POSITIONS to DOCS_AND_FREQS_AND_POSITIONS_AND_OFFSETS appears when storeOffsetsWithPositions is added or dropped after indexing, often by Drupal Search API Solr enabling highlighting. Make the definition consistent, reload, wipe and re-index.</description>
<category>SOLR DOCUMENTATION-Errors</category>
</item>
<item>
<title>The Solr edismax query Parser. How it works and how it helps.</title>
<link>https://opensolr.com/learn/solr-configuration-files/155/the-solr-edismax-query-parser.-how-it-works-and-how-it-helps</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-configuration-files/155/the-solr-edismax-query-parser.-how-it-works-and-how-it-helps</guid>
<description>eDisMax spreads the words a user typed over the fields you name, decides how many must match and rewards words that appear together. What it does, the parameters (qf, mm, pf, pf2, pf3, ps) with one page each, and how Opensolr exposes them.</description>
<category>SOLR DOCUMENTATION-Configuration</category>
</item>
<item>
<title>Autocomplete in Solr and EdgeNGram Fields - the eCommerce helper</title>
<link>https://opensolr.com/learn/solr-configuration-files/154/autocomplete-in-solr-and-edgengram-fields-the-ecommerce-helper</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-configuration-files/154/autocomplete-in-solr-and-edgengram-fields-the-ecommerce-helper</guid>
<description>Autocomplete and search as you type in Solr with EdgeNGram fields: the edgy_text field type and solr.EdgeNGramFilterFactory index every prefix of a word, so typing lap already matches laptop. Shows the fieldType XML, minGramSize and maxGramSize, and where it helps on product names and SKUs.</description>
<category>SOLR DOCUMENTATION-Configuration</category>
</item>
<item>
<title>Best Fulltext Solr Fields</title>
<link>https://opensolr.com/learn/solr-configuration-files/153/best-fulltext-solr-fields</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-configuration-files/153/best-fulltext-solr-fields</guid>
<description>Which Solr field type to use for full text search: text_general, with HTML stripping, ICU tokenization, word delimiters, stopword removal and stemming, and text_general_phonetic, which adds Beider Morse encoding for sound alike matches. Includes qf, mm and bf tuning examples.</description>
<category>SOLR DOCUMENTATION-Configuration</category>
</item>
<item>
<title>Opensolr is ISO9001 and ISO27001 Certified</title>
<link>https://opensolr.com/learn/security/152/opensolr-is-iso9001-and-iso27001-certified</link>
<guid isPermaLink="true">https://opensolr.com/learn/security/152/opensolr-is-iso9001-and-iso27001-certified</guid>
<description>Opensolr holds ISO 27001 for information security management and ISO 9001 for quality management, both independently audited rather than self declared. What each standard covers, continuous risk management, documented processes, and how the certificates answer a vendor security questionnaire.</description>
<category>OPENSOLR GUIDE-Data Security</category>
</item>
<item>
<title>AI-API - Summarize Context</title>
<link>https://opensolr.com/learn/opensolr-ai-api/150/ai-api-summarize-context</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-ai-api/150/ai-api-summarize-context</guid>
<description>ai_summary on api.opensolr.com writes an answer, or a summary, from the content you send, word by word as it is written. The instruction is the whole prompt and reaches the model unchanged: your question, your rules and the content of your best search results.</description>
<category>AI SERVICES-AI API: Vectors, Images &amp; LLM</category>
</item>
<item>
<title>How does Opensolr Work?</title>
<link>https://opensolr.com/learn/billing/149/how-does-opensolr-work</link>
<guid isPermaLink="true">https://opensolr.com/learn/billing/149/how-does-opensolr-work</guid>
<description>Opensolr is managed Apache Solr hosting: you create Opensolr Indexes in the region and Solr version you pick, and Opensolr runs the servers. A plan is made of indexes, clusters, disk and traffic, paid monthly or yearly by card. Start on the free plan, no credit card.</description>
<category>OPENSOLR GUIDE-Pricing &amp; Billing</category>
</item>
<item>
<title>Order &amp; Upgrade Indexes, Disk Space, Bandwidth — Opensolr Resources</title>
<link>https://opensolr.com/learn/billing/148/order-upgrade-indexes-disk-space-bandwidth-opensolr-resources</link>
<guid isPermaLink="true">https://opensolr.com/learn/billing/148/order-upgrade-indexes-disk-space-bandwidth-opensolr-resources</guid>
<description>An Opensolr plan is four separate resources: indexes, clusters, disk space and bandwidth. Buy more of the one you ran out of, not a bigger bundle. Check usage in the index control panel or Solr Admin, then set the sliders on the pricing page. Live in minutes, pro rated, no reindexing.</description>
<category>OPENSOLR GUIDE-Pricing &amp; Billing</category>
</item>
<item>
<title>Cannot Change DocValues Type</title>
<link>https://opensolr.com/learn/solr-errors/146/cannot-change-docvalues-type</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-errors/146/cannot-change-docvalues-type</guid>
<description>cannot change DocValues type from SORTED to SORTED_SET says the data on disk was built with different field settings than your edited schema. Flipping multiValued, moving string to pint or adding docValues triggers it. Nothing converts in place: reset the index data, reload and re-index everything.</description>
<category>SOLR DOCUMENTATION-Errors</category>
</item>
<item>
<title>Setup Opensolr with Omeka Solr</title>
<link>https://opensolr.com/learn/opensolr-omeka/145/setup-opensolr-with-omeka-solr</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-omeka/145/setup-opensolr-with-omeka-solr</guid>
<description>Connect Omeka S to an Opensolr Index with the Advanced Search adapter for Solr module: put the Solr _default configuration on the index, enter https, the host, port 443, the index name as Solr core and the login of the index, create the _text_ field, align the maps and reindex.</description>
<category>INTEGRATION-Omeka</category>
</item>
<item>
<title>Can not query all data in Solr</title>
<link>https://opensolr.com/learn/solr-errors/144/can-not-query-all-data-in-solr</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-errors/144/can-not-query-all-data-in-solr</guid>
<description>q=*:* returns fewer documents than you indexed, usually because a default /select handler pulled in by an xi:include of search.xml sets its own filter queries, field list or row limit. Remove that include from solrconfig.xml and reload; then check rows, start, stray fq defaults and commits.</description>
<category>SOLR DOCUMENTATION-Errors</category>
</item>
<item>
<title>Using NLP Models</title>
<link>https://opensolr.com/learn/opensolr-ai-nlp/143/using-nlp-models</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-ai-nlp/143/using-nlp-models</guid>
<description>Wiring OpenNLP into schema_extra_types.xml, with a worked Dutch fieldType: OpenNLPTokenizerFactory, OpenNLPPOSFilterFactory for part of speech tagging, TypeTokenFilterFactory whitelisting nouns, EdgeNGram autocomplete and a query side synonym graph. Absolute model paths and gotchas.</description>
<category>AI SERVICES-Hybrid Search</category>
</item>
<item>
<title>API - Get configuration file</title>
<link>https://opensolr.com/learn/api-config-files/142/api-get-configuration-file</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-config-files/142/api-get-configuration-file</guid>
<description>Read one configuration file of an Opensolr Index with the get_file API endpoint: pass file_name and file_extension, get the content of the file back in msg. Use it to check schema.xml or a word list from your own code.</description>
<category>API ENDPOINTS-Config Files</category>
</item>
<item>
<title>My search query does not return the correct results</title>
<link>https://opensolr.com/learn/solr-errors/141/my-search-query-does-not-return-the-correct-results</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-errors/141/my-search-query-does-not-return-the-correct-results</guid>
<description>Missing or badly ranked results are nearly always your schema, analyzer chain or query parameters, not the hosting. Debug from the Query tab: add debugQuery=true to read the scoring, check which field df searches, compare index time against query time analysis, and run q=*:*&amp;rows=0.</description>
<category>SOLR DOCUMENTATION-Errors</category>
</item>
<item>
<title>How to Import XML Data into Your Opensolr Index</title>
<link>https://opensolr.com/learn/solr-configuration-files/140/how-to-import-xml-data-into-your-opensolr-index</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-configuration-files/140/how-to-import-xml-data-into-your-opensolr-index</guid>
<description>Index XML documents by posting the file to the /update endpoint of your Opensolr Index over HTTP, with no DataImportHandler and no data-config.xml, since DIH was removed in Solr 9. Covers the add, doc and field format Solr expects, the required id field, and curl, PHP and Python batch importers.</description>
<category>SOLR DOCUMENTATION-Configuration</category>
</item>
<item>
<title>Solr Traffic Bandwidth</title>
<link>https://opensolr.com/learn/opensolr-resources/139/solr-traffic-bandwidth</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-resources/139/solr-traffic-bandwidth</guid>
<description>Opensolr bills the bytes your index sends back, not the number of requests. What counts, why bots make it spike, how to send fewer bytes (rows, fl, caching, filters, two indexes), where to see who uses it, and what happens at the monthly limit.</description>
<category>OPENSOLR GUIDE-Account Resources</category>
</item>
<item>
<title>Solr Best Practices</title>
<link>https://opensolr.com/learn/opensolr-resources/138/solr-best-practices</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-resources/138/solr-best-practices</guid>
<description>Solr runs out of memory because of what it is asked for, not because it is busy. The overview of Solr best practices on Opensolr: one page per topic (memory, rows, deep paging, docValues, caches, facets, failing queries, indexing), and the short version.</description>
<category>OPENSOLR GUIDE-Account Resources</category>
</item>
<item>
<title>Enable Spellcheck in Solr</title>
<link>https://opensolr.com/learn/solr-spellcheck/136/enable-spellcheck-in-solr</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-spellcheck/136/enable-spellcheck-in-solr</guid>
<description>Add &quot;did you mean&quot; suggestions to an Opensolr Index: a spellcheck field type and field in schema.xml, a DirectSolrSpellChecker component on /select in solrconfig.xml, a reindex, then spellcheck=true on your queries.</description>
<category>SOLR DOCUMENTATION-Spellcheck</category>
</item>
<item>
<title>How to use OpenNLP (NER) with Opensolr</title>
<link>https://opensolr.com/learn/opensolr-ai-nlp/133/how-to-use-opennlp-ner-with-opensolr</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-ai-nlp/133/how-to-use-opennlp-ner-with-opensolr</guid>
<description>Hand rolling Named Entity Recognition in Solr with OpenNLP: pull people, places and organisations out of indexed data with the default .bin models, which Opensolr installs on request and enables by default in the Germany Solr 9 environment. Plus how managed AI search compares with the DIY route.</description>
<category>AI SERVICES-Hybrid Search</category>
</item>
<item>
<title>Information Security Policy</title>
<link>https://opensolr.com/learn/security/132/information-security-policy</link>
<guid isPermaLink="true">https://opensolr.com/learn/security/132/information-security-policy</guid>
<description>The Opensolr information security policy, in short: what account and index data are held and where, how sign-in, two-factor, teams, index passwords, IP rules and API keys gate access, how indexes stay up, and the third parties involved. ISO 27001 and ISO 9001 certified, reviewed quarterly.</description>
<category>OPENSOLR GUIDE-Data Security</category>
</item>
<item>
<title>Solr Too Many Boolean Clauses Error</title>
<link>https://opensolr.com/learn/solr-errors/129/solr-too-many-boolean-clauses-error</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-errors/129/solr-too-many-boolean-clauses-error</guid>
<description>maxClauseCount is set to 1024 and TooManyClauses stop a query that expanded past the Lucene limit: Drupal Search API Solr fanning terms over boosted fields, wildcards, synonyms or a huge OR filter list. In Solr 9 only solr.xml raises it, via an int element plus JVM properties, and it takes a restart.</description>
<category>SOLR DOCUMENTATION-Errors</category>
</item>
<item>
<title>Drupal Configuration Steps</title>
<link>https://opensolr.com/learn/opensolr-and-drupal/126/drupal-configuration-steps</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-and-drupal/126/drupal-configuration-steps</guid>
<description>Connect Search API Solr to an Opensolr Index by hand: the Basic Auth connector, https, port 443, Solr path a single slash, Solr core the index name and the login of the index, then Get config.zip, upload it on the Configuration tab and index.</description>
<category>INTEGRATION-Drupal</category>
</item>
<item>
<title>I cannot index any content from my Drupal CMS to my Opensolr index</title>
<link>https://opensolr.com/learn/opensolr-and-drupal/124/i-cannot-index-any-content-from-my-drupal-cms-to-my-opensolr-index</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-and-drupal/124/i-cannot-index-any-content-from-my-drupal-cms-to-my-opensolr-index</guid>
<description>Drupal indexing fails with SolrException and FileNotFoundException on a data/tlog file: the transaction log of your Opensolr Index points to a file that is gone. Reload the index; if the error returns, remove the updateLog block from solrconfig.xml; on a dedicated server, restart Solr.</description>
<category>INTEGRATION-Drupal</category>
</item>
<item>
<title>The log4j Vulnerability (CVE-2021-44228)</title>
<link>https://opensolr.com/learn/security/123/the-log4j-vulnerability-cve-2021-44228</link>
<guid isPermaLink="true">https://opensolr.com/learn/security/123/the-log4j-vulnerability-cve-2021-44228</guid>
<description>Opensolr is not vulnerable to CVE-2021-44228, the log4j remote code execution flaw. The whole platform was patched on December 11, 2021, across every hosted Solr version, old releases included, with no customer action and no downtime. Written confirmation is available for a security review.</description>
<category>OPENSOLR GUIDE-Data Security</category>
</item>
<item>
<title>API - Get LIVE Web Crawler Stats</title>
<link>https://opensolr.com/learn/api-web-crawler/122/api-get-live-web-crawler-stats</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-web-crawler/122/api-get-live-web-crawler-stats</guid>
<description>Read the crawl numbers of an Opensolr Index with the get_crawl_stats API endpoint: pages indexed, in error, skipped and still queued, data downloaded, documents waiting for the index, file types, and samples of the failed URLs.</description>
<category>API ENDPOINTS-Web Crawler</category>
</item>
<item>
<title>CORS Ajax requests directly to Opensolr Index.</title>
<link>https://opensolr.com/learn/security/121/cors-ajax-requests-directly-to-opensolr-index</link>
<guid isPermaLink="true">https://opensolr.com/learn/security/121/cors-ajax-requests-directly-to-opensolr-index</guid>
<description>Calling an Opensolr Index straight from browser JavaScript requires your origins to be whitelisted: authenticated AJAX requests are refused from any domain not approved for that index. Send the exact scheme and host, the index name and your account email to support@opensolr.com.</description>
<category>OPENSOLR GUIDE-Data Security</category>
</item>
<item>
<title>Opensolr Resilient Cluster Explained - Billing</title>
<link>https://opensolr.com/learn/billing/120/opensolr-resilient-cluster-explained-billing</link>
<guid isPermaLink="true">https://opensolr.com/learn/billing/120/opensolr-resilient-cluster-explained-billing</guid>
<description>An Opensolr resilient cluster keeps the same index on three servers, one master and two replicas: writes go to the master, searches are spread over all three, and a watchdog restarts what stops answering. Each cluster is one part of your plan, priced per cluster on the pricing page.</description>
<category>OPENSOLR GUIDE-Pricing &amp; Billing</category>
</item>
<item>
<title>Default HTTP Auth Credentials</title>
<link>https://opensolr.com/learn/security/118/default-http-auth-credentials</link>
<guid isPermaLink="true">https://opensolr.com/learn/security/118/default-http-auth-credentials</guid>
<description>A new Opensolr Index ships with HTTP Basic Auth already on: username opensolr, password your Master REST API Key from the dashboard. Change both in the Security tab of the index; the new credentials work in about 10 seconds. Generating a new API key does not change the password of existing indexes.</description>
<category>OPENSOLR GUIDE-Data Security</category>
</item>
<item>
<title>DataImport (DIH) Disabled by Default</title>
<link>https://opensolr.com/learn/security/117/dataimport-dih-disabled-by-default</link>
<guid isPermaLink="true">https://opensolr.com/learn/security/117/dataimport-dih-disabled-by-default</guid>
<description>The Solr DataImport Handler (DIH) is off across Opensolr for security, because it pulls data from a source defined inside the index configuration. Ask support to enable it per index, then set up db-data-config.xml and run a full import. DIH was removed in Solr 9; Solr below 8 is retired on 01/01/2027.</description>
<category>OPENSOLR GUIDE-Data Security</category>
</item>
<item>
<title>Drupal Search API Opensolr</title>
<link>https://opensolr.com/learn/opensolr-and-drupal/116/drupal-search-api-opensolr</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-and-drupal/116/drupal-search-api-opensolr</guid>
<description>Search API Opensolr turns your Opensolr Index into a Search API server, with the connection read from your Opensolr account. Autoconfigure creates the index and the server and uploads the Solr configuration; a submodule edits the login and IP rules of the index. Drupal 10.1 and 11.</description>
<category>INTEGRATION-Drupal</category>
</item>
<item>
<title>API - Get Index Request Handlers</title>
<link>https://opensolr.com/learn/api-index-management/114/api-get-index-request-handlers</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-index-management/114/api-get-index-request-handlers</guid>
<description>List the request handler paths of an Opensolr Index with the request_handlers API endpoint, such as /select and /update. Use them as the handler of an IP rule.</description>
<category>API ENDPOINTS-Index Management</category>
</item>
<item>
<title>API - Get Available Regions</title>
<link>https://opensolr.com/learn/api-index-management/113/api-get-available-regions</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-index-management/113/api-get-available-regions</guid>
<description>Get the identifiers of every region you can create an Opensolr Index in with the regions API endpoint (server_country is the same call). Use one as the region of create_index.</description>
<category>API ENDPOINTS-Index Management</category>
</item>
<item>
<title>Opensolr Index fails to reload when AnalyzingInfixSuggester is used as a Suggester</title>
<link>https://opensolr.com/learn/solr-errors/112/opensolr-index-fails-to-reload-when-analyzinginfixsuggester-is-used-as-a-suggester</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-errors/112/opensolr-index-fails-to-reload-when-analyzinginfixsuggester-is-used-as-a-suggester</guid>
<description>Suggesters sharing one data directory make a reload fail with LockObtainFailedException on analyzingInfixSuggesterIndexDir/write.lock. Give every AnalyzingInfixSuggester its own indexPath in solrconfig_extra.xml, move to BlendedInfixLookupFactory, or drop the suggester. Drupal exports omit it.</description>
<category>SOLR DOCUMENTATION-Errors</category>
</item>
<item>
<title>ICU Library Errors</title>
<link>https://opensolr.com/learn/solr-errors/110/icu-library-errors</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-errors/110/icu-library-errors</guid>
<description>Error loading class solr.ICUCollationField means the ICU library is not enabled on your server, so a schema sorting names across languages, collating accents and umlauts or normalizing Unicode will not load. Email support@opensolr.com to switch ICU on, then reload. Multilingual Drupal hits this most.</description>
<category>SOLR DOCUMENTATION-Errors</category>
</item>
<item>
<title>Opensolr Connection Issues</title>
<link>https://opensolr.com/learn/opensolr-and-drupal/108/opensolr-connection-issues</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-and-drupal/108/opensolr-connection-issues</guid>
<description>Drupal cannot reach your Opensolr Index, or indexing fails? Check Solr path (a single slash) and Solr core (the index name), the login of the index, host and port 443, IP rules, disk and bandwidth limits and the uploaded config.zip. A 404 on the bare index address is normal.</description>
<category>INTEGRATION-Drupal</category>
</item>
<item>
<title>How to Upload Solr Configuration Files to an Opensolr Index</title>
<link>https://opensolr.com/learn/solr-configuration-files/106/how-to-upload-solr-configuration-files-to-an-opensolr-index</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-configuration-files/106/how-to-upload-solr-configuration-files-to-an-opensolr-index</guid>
<description>Put Solr configuration files on an Opensolr Index: a whole set as one ZIP (saved first, reloaded once, order does not matter), one file through the browser editor, or from your own code with the API.</description>
<category>SOLR DOCUMENTATION-Configuration</category>
</item>
<item>
<title>Can not update/upload configuration files</title>
<link>https://opensolr.com/learn/solr-errors/105/can-not-updateupload-configuration-files</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-errors/105/can-not-updateupload-configuration-files</guid>
<description>Config uploads failing with unknown type, missing field or unresolvable reference errors are a dependency order problem: schema.xml cannot see types living in schema_extra_types.xml. The Opensolr Config Files Uploader orders a zip for you. By hand: extras, then schema.xml, then solrconfig.xml.</description>
<category>SOLR DOCUMENTATION-Errors</category>
</item>
<item>
<title>Undefined field _text_</title>
<link>https://opensolr.com/learn/solr-errors/104/undefined-field-_text_</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-errors/104/undefined-field-_text_</guid>
<description>Undefined field _text_ means a query points at the catch all field _text_ that your schema.xml never defines. It is a convention, not a built in Solr field. Add _text_ as a multiValued text_general field fed by copyField from title, description and content, or point df at a field that exists.</description>
<category>SOLR DOCUMENTATION-Errors</category>
</item>
<item>
<title>GDPR Privacy Agreement</title>
<link>https://opensolr.com/learn/security/101/gdpr-privacy-agreement</link>
<guid isPermaLink="true">https://opensolr.com/learn/security/101/gdpr-privacy-agreement</guid>
<description>Opensolr GDPR agreement: an account is an email address and a password. No payment data is stored, billing runs through Stripe. Staff never open your index data. TLS everywhere, optional two-factor sign-in, product emails only while you keep them on, and data protection requests answered within the GDPR deadline.</description>
<category>OPENSOLR GUIDE-Data Security</category>
</item>
<item>
<title>Login and Payment Troubleshooting for Your Opensolr Account</title>
<link>https://opensolr.com/learn/billing/100/login-and-payment-troubleshooting-for-your-opensolr-account</link>
<guid isPermaLink="true">https://opensolr.com/learn/billing/100/login-and-payment-troubleshooting-for-your-opensolr-account</guid>
<description>Cannot sign in to Opensolr, or cannot pay? Clear the opensolr.com cookies, try a private window, reset your password or use a recovery code. For payments: save your Payment Profile first, pay with a card from your profile country, confirm 3D Secure from the email, or pay the invoice on Stripe.</description>
<category>OPENSOLR GUIDE-Pricing &amp; Billing</category>
</item>
<item>
<title>Account upgrade and refund policy</title>
<link>https://opensolr.com/learn/billing/98/account-upgrade-and-refund-policy</link>
<guid isPermaLink="true">https://opensolr.com/learn/billing/98/account-upgrade-and-refund-policy</guid>
<description>Opensolr upgrades and downgrades are pro rated: you pay, or are credited, only the difference for the days not yet used, live five to ten minutes after you order. Money back only for New Accounts inside the money-back window of the Terms; every other cancellation turns the unused days into account credit.</description>
<category>OPENSOLR GUIDE-Pricing &amp; Billing</category>
</item>
<item>
<title>Content length exceeds upload limit of 2048 KB</title>
<link>https://opensolr.com/learn/solr-errors/97/content-length-exceeds-upload-limit-of-2048-kb</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-errors/97/content-length-exceeds-upload-limit-of-2048-kb</guid>
<description>The request body sent in a POST request is too large, Content length exceeds upload limit of 2048 KB. Raise formdataUploadLimitInKB, and multipartUploadLimitInKB for files, inside requestDispatcher in solrconfig.xml, then reload. Smaller batches are safer, and giant OR filters hit maxBooleanClauses.</description>
<category>SOLR DOCUMENTATION-Errors</category>
</item>
<item>
<title>API - Get list of available environments and servers</title>
<link>https://opensolr.com/learn/api-index-management/93/api-get-list-of-available-environments-and-servers</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-index-management/93/api-get-list-of-available-environments-and-servers</guid>
<description>List the environments you can create Opensolr Indexes in with the get_env API endpoint: shared regions, your own dedicated servers and your cluster environments, each with its Solr version and country. web_crawler=true keeps the regions with site search.</description>
<category>API ENDPOINTS-Index Management</category>
</item>
<item>
<title>API - Get a list of your Opensolr Indexes</title>
<link>https://opensolr.com/learn/api-index-management/92/api-get-a-list-of-your-opensolr-indexes</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-index-management/92/api-get-a-list-of-your-opensolr-indexes</guid>
<description>List the Opensolr Indexes of your account with the get_index_list API endpoint: one GET with email and api_key returns each index name and its type. A scoped key sees only the indexes it was given.</description>
<category>API ENDPOINTS-Index Management</category>
</item>
<item>
<title>Opensolr Search for WordPress</title>
<link>https://opensolr.com/learn/opensolr-and-wordpress/90/opensolr-search-for-wordpress</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-and-wordpress/90/opensolr-search-for-wordpress</guid>
<description>Opensolr Search is a free WordPress plugin for site search on your own Opensolr Index: install it, connect your Opensolr account, fill the index with the Data Crawler or Data Ingestion and open /opensolr-search. WooCommerce, facets, tuning, elevation, analytics and AI, each linked to the docs.</description>
<category>INTEGRATION-Wordpress</category>
</item>
<item>
<title>Move from schema.xml to managed-schema</title>
<link>https://opensolr.com/learn/solr-configuration-files/89/move-from-schema.xml-to-managed-schema</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-configuration-files/89/move-from-schema.xml-to-managed-schema</guid>
<description>Switch to managed schema mode so the Schema API can add and change fields over HTTP, which Drupal Search API Solr needs: put ManagedIndexSchemaFactory with mutable set to true into solrconfig.xml and reload. Two factories stop the index starting, and hand edits to managed-schema are overwritten.</description>
<category>SOLR DOCUMENTATION-Configuration</category>
</item>
<item>
<title>Move from managed-schema to schema.xml</title>
<link>https://opensolr.com/learn/solr-configuration-files/88/move-from-managed-schema-to-schema.xml</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-configuration-files/88/move-from-managed-schema-to-schema.xml</guid>
<description>Go back from managed schema to a classic schema.xml you edit yourself: replace the schemaFactory element in solrconfig.xml with ClassicIndexSchemaFactory and reload from the Tools menu. Only one factory may be present or the index will not start, and the Schema API can no longer write.</description>
<category>SOLR DOCUMENTATION-Configuration</category>
</item>
<item>
<title>API - Create Resilient Cluster</title>
<link>https://opensolr.com/learn/api-cluster-management/84/api-create-resilient-cluster</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-cluster-management/84/api-create-resilient-cluster</guid>
<description>Create a Resilient Cluster index with the create_cluster API endpoint: a cluster_name and the master_server environment of your cluster. Opensolr creates the master index and one replica index on each replica server of that environment.</description>
<category>API ENDPOINTS-Cluster Management</category>
</item>
<item>
<title>API - Get Index Details, Info and Stats</title>
<link>https://opensolr.com/learn/api-index-management/81/api-get-index-details-info-and-stats</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-index-management/81/api-get-index-details-info-and-stats</guid>
<description>Read the details of an Opensolr Index with the get_core_info API endpoint: its disk and traffic use against the limits, the connection URL, Solr version, region and HTTP Basic Auth credentials, plus totals for your indexes.</description>
<category>API ENDPOINTS-Index Management</category>
</item>
<item>
<title>How do I add a lib jar file</title>
<link>https://opensolr.com/learn/solr-configuration-files/79/how-do-i-add-a-lib-jar-file</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-configuration-files/79/how-do-i-add-a-lib-jar-file</guid>
<description>Custom JAR libraries, Solr plugins and third party token filters are installed for you: email the compiled .jar, or a link to its official release page, to support@opensolr.com with your registration address and index name. Then reference it from schema.xml or solrconfig.xml and reload.</description>
<category>SOLR DOCUMENTATION-Configuration</category>
</item>
<item>
<title>API - Get Index Request Log</title>
<link>https://opensolr.com/learn/api-logs-analytics/78/api-get-index-request-log</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-logs-analytics/78/api-get-index-request-log</guid>
<description>Search the request log of an Opensolr Index with the request_log API endpoint, using Solr parameters: q, fq, sort, start, rows (up to 1000) and facets on ip, path, q, http_status. Find errors, top queries, top visitors and slow requests.</description>
<category>API ENDPOINTS-Logs &amp; Analytics</category>
</item>
<item>
<title>API - Upload solr configuration via zip archive</title>
<link>https://opensolr.com/learn/api-config-files/77/api-upload-solr-configuration-via-zip-archive</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-config-files/77/api-upload-solr-configuration-via-zip-archive</guid>
<description>Upload a whole Solr configuration to an Opensolr Index with the upload_zip_config_files API endpoint: a multipart POST with the .zip in userfile. Every file is saved, the index reloads, and a cluster master passes the files to its replicas.</description>
<category>API ENDPOINTS-Config Files</category>
</item>
<item>
<title>API - Get all the Solr configuration files list</title>
<link>https://opensolr.com/learn/api-config-files/76/api-get-all-the-solr-configuration-files-list</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-config-files/76/api-get-all-the-solr-configuration-files-list</guid>
<description>List every configuration file of an Opensolr Index with the get_all_config_files API endpoint: one GET with email, api_key and core_name. The list comes as a JSON string inside msg.</description>
<category>API ENDPOINTS-Config Files</category>
</item>
<item>
<title>API - Get error log</title>
<link>https://opensolr.com/learn/api-logs-analytics/75/api-get-error-log</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-logs-analytics/75/api-get-error-log</guid>
<description>Read the latest Solr errors of an Opensolr Index with the get_error_log API endpoint: up to 50 errors from the server log, each with its time, level, message, stack trace and root cause.</description>
<category>API ENDPOINTS-Logs &amp; Analytics</category>
</item>
<item>
<title>API - Reload index</title>
<link>https://opensolr.com/learn/api-index-management/74/api-reload-index</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-index-management/74/api-reload-index</guid>
<description>Reload an Opensolr Index with the reload_core API endpoint so Solr reads its configuration files again. Answers CORE RELOAD OK, or the Solr error when a file cannot be loaded.</description>
<category>API ENDPOINTS-Index Management</category>
</item>
<item>
<title>API - Delete configuration file</title>
<link>https://opensolr.com/learn/api-config-files/73/api-delete-configuration-file</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-config-files/73/api-delete-configuration-file</guid>
<description>Delete one configuration file from an Opensolr Index with the delete_config_file API endpoint: pass file_name and file_extension. schema.xml and solrconfig.xml cannot be deleted. On a cluster master, the file is removed from the replicas too.</description>
<category>API ENDPOINTS-Config Files</category>
</item>
<item>
<title>API - Upload or update your opensolr configuration files</title>
<link>https://opensolr.com/learn/api-config-files/72/api-upload-or-update-your-opensolr-configuration-files</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-config-files/72/api-upload-or-update-your-opensolr-configuration-files</guid>
<description>Upload one configuration file to an Opensolr Index with the upload_config_file API endpoint: a multipart POST with the file in userfile. The file keeps its own name, replaces a file with the same name, and accepted types are .xml, .txt, .zip, .aff and .dic.</description>
<category>API ENDPOINTS-Config Files</category>
</item>
<item>
<title>API - Remove IP access</title>
<link>https://opensolr.com/learn/api-security/71/api-remove-ip-access</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-security/71/api-remove-ip-access</guid>
<description>Remove an IP rule from an Opensolr Index with the delete_ip API endpoint: the same ip and handler the rule was added with. An index with no rules left is not reachable from any address.</description>
<category>API ENDPOINTS-Security</category>
</item>
<item>
<title>API - Get index IP list</title>
<link>https://opensolr.com/learn/api-security/70/api-get-index-ip-list</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-security/70/api-get-index-ip-list</guid>
<description>List the IP rules of an Opensolr Index with the get_ip_list API endpoint: one GET with email, api_key and core_name returns every address and the request handler it may use.</description>
<category>API ENDPOINTS-Security</category>
</item>
<item>
<title>API - Add index IP access rule</title>
<link>https://opensolr.com/learn/api-security/69/api-add-index-ip-access-rule</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-security/69/api-add-index-ip-access-rule</guid>
<description>Add an IP rule to an Opensolr Index with the add_ip API endpoint: one IPv4 address, or all, and the request handler it may use, such as /select or /. How many rules an index can have depends on your plan.</description>
<category>API ENDPOINTS-Security</category>
</item>
<item>
<title>API - Get index full status</title>
<link>https://opensolr.com/learn/api-index-management/68/api-get-index-full-status</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-index-management/68/api-get-index-full-status</guid>
<description>Read the Solr core status of an Opensolr Index with the get_core_status API endpoint: start time, uptime, documents, segments and size, as Solr reports them, in msg as a JSON string.</description>
<category>API ENDPOINTS-Index Management</category>
</item>
<item>
<title>API - Optimize a Solr Index</title>
<link>https://opensolr.com/learn/api-index-management/67/api-optimize-a-solr-index</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-index-management/67/api-optimize-a-solr-index</guid>
<description>Start an optimize of an Opensolr Index with the optimize API endpoint: Solr merges the index into one segment and drops deleted documents, in the background. Follow it with optimize_status.</description>
<category>API ENDPOINTS-Index Management</category>
</item>
<item>
<title>API - Ping Solr Environment</title>
<link>https://opensolr.com/learn/api-index-management/66/api-ping-solr-environment</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-index-management/66/api-ping-solr-environment</guid>
<description>Check that the Solr of an Opensolr server answers with the ping_server API endpoint: pass the hostname of the server, get the Solr ping answer back. Only servers of the Opensolr platform can be pinged.</description>
<category>API ENDPOINTS-Index Management</category>
</item>
<item>
<title>API - Commit data for a Solr Index</title>
<link>https://opensolr.com/learn/api-index-management/65/api-commit-data-for-a-solr-index</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-index-management/65/api-commit-data-for-a-solr-index</guid>
<description>Make the documents you sent to an Opensolr Index searchable now with the commit API endpoint: one GET with email, api_key and core_name. Answers DATA COMMIT OK.</description>
<category>API ENDPOINTS-Index Management</category>
</item>
<item>
<title>API - Remove HTTP Auth</title>
<link>https://opensolr.com/learn/api-security/64/api-remove-http-auth</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-security/64/api-remove-http-auth</guid>
<description>Remove the HTTP Basic Auth username and password from an Opensolr Index with the remove_http_auth API endpoint. The index is then protected by its IP rules only. On a cluster master, the replicas follow.</description>
<category>API ENDPOINTS-Security</category>
</item>
<item>
<title>API - Update HTTP Auth</title>
<link>https://opensolr.com/learn/api-security/63/api-update-http-auth</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-security/63/api-update-http-auth</guid>
<description>Set a new HTTP Basic Auth username and password on an Opensolr Index with the update_http_auth API endpoint. Every app that connects to the index then needs the new credentials. On a cluster master, the replicas get them too.</description>
<category>API ENDPOINTS-Security</category>
</item>
<item>
<title>API - Stop the Web Crawler</title>
<link>https://opensolr.com/learn/api-web-crawler/62/api-stop-the-web-crawler</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-web-crawler/62/api-stop-the-web-crawler</guid>
<description>Stop the crawl of an Opensolr Index and remove its schedule with the stop_crawl API endpoint. Answers CRAWLER IS READY / NOT RUNNING. To stop only until the next scheduled run, use pause_crawl.</description>
<category>API ENDPOINTS-Web Crawler</category>
</item>
<item>
<title>API - Start the Web Crawler</title>
<link>https://opensolr.com/learn/api-web-crawler/61/api-start-the-web-crawler</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-web-crawler/61/api-start-the-web-crawler</guid>
<description>Start, resume or restart the crawl of your site into an Opensolr Index with the start_crawl API endpoint: crawl mode, pause between requests, page, traffic and file size limits, renderer, schedule and re-queue options. Resume is start_crawl with clean=no.</description>
<category>API ENDPOINTS-Web Crawler</category>
</item>
<item>
<title>Download backup files</title>
<link>https://opensolr.com/learn/api-backup-management/60/download-backup-files</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-backup-management/60/download-backup-files</guid>
<description>Download the backup files of an Opensolr Index over HTTPS from backup.opensolr.com, signed in with the username and password of the index. There is no API endpoint for downloads: use the file names from get_backup_files_list.</description>
<category>API ENDPOINTS-Backup Management</category>
</item>
<item>
<title>API - Get list of backup files</title>
<link>https://opensolr.com/learn/api-backup-management/59/api-get-list-of-backup-files</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-backup-management/59/api-get-list-of-backup-files</guid>
<description>List the backup files of an Opensolr Index with the get_backup_files_list API endpoint: one GET with email, api_key and core_name. Use a file name from the list to restore it or to download it.</description>
<category>API ENDPOINTS-Backup Management</category>
</item>
<item>
<title>API - Create backup</title>
<link>https://opensolr.com/learn/api-backup-management/58/api-create-backup</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-backup-management/58/api-create-backup</guid>
<description>Make a backup of an Opensolr Index with the create_backup API endpoint: one GET with email, api_key and core_name. The backup runs in the background and then shows in the list of backup files, ready to download or restore.</description>
<category>API ENDPOINTS-Backup Management</category>
</item>
<item>
<title>API - Replicate Solr Index</title>
<link>https://opensolr.com/learn/api-index-management/57/api-replicate-solr-index</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-index-management/57/api-replicate-solr-index</guid>
<description>Make one of your Opensolr Indexes a follower of another with the replicate_index API endpoint: core_name is the leader, target_index an existing index on the same Solr version. The follower copies the data and configuration of the leader and checks for changes every 20 seconds.</description>
<category>API ENDPOINTS-Index Management</category>
</item>
<item>
<title>API - Delete Solr Index</title>
<link>https://opensolr.com/learn/api-index-management/56/api-delete-solr-index</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-index-management/56/api-delete-solr-index</guid>
<description>Delete an Opensolr Index with the delete_index API endpoint (delete_core is the same call). Its data, configuration and schedules are removed. Deleting a cluster master deletes its replicas first.</description>
<category>API ENDPOINTS-Index Management</category>
</item>
<item>
<title>API - Create New Solr Index</title>
<link>https://opensolr.com/learn/api-index-management/55/api-create-new-solr-index</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-index-management/55/api-create-new-solr-index</guid>
<description>Create an Opensolr Index with the create_index API endpoint: a name and a region. The new index answers on HTTPS at once, protected by the username opensolr and your master API key, with one IP rule that lets every address in.</description>
<category>API ENDPOINTS-Index Management</category>
</item>
<item>
<title>My schema.xml doesn&apos;t take effect</title>
<link>https://opensolr.com/learn/solr-errors/53/my-schema.xml-doesnt-take-effect</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-errors/53/my-schema.xml-doesnt-take-effect</guid>
<description>You edited schema.xml, saved it, and Solr still uses the old fields. ManagedIndexSchemaFactory and managed-schema are overriding it: replace that schemaFactory block in solrconfig.xml with ClassicIndexSchemaFactory and click Reload. Also covers forgotten reloads, case sensitive names, missing fieldTypes.</description>
<category>SOLR DOCUMENTATION-Errors</category>
</item>
<item>
<title>Data won&apos;t get indexed.</title>
<link>https://opensolr.com/learn/solr-errors/51/data-wont-get-indexed</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-errors/51/data-wont-get-indexed</guid>
<description>Documents were sent but nothing is searchable and q=*:* returns 0 results, or fewer than expected. Usual reasons: no commit was issued, field names do not match schema.xml exactly (case sensitive), a corrupted data folder, HTTP 401 from wrong Basic Auth, or oversized documents. Start at the Error Log.</description>
<category>SOLR DOCUMENTATION-Errors</category>
</item>
<item>
<title>JTS Polygonal Geo-Spatial search support</title>
<link>https://opensolr.com/learn/solr-errors/43/jts-polygonal-geo-spatial-search-support</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-errors/43/jts-polygonal-geo-spatial-search-support</guid>
<description>JTS Topology Suite gives an Opensolr Index polygon and multi polygon geo spatial search, past the circles and bounding boxes plain Solr can do. It is on by default on most Opensolr servers and regions, needs no setup, and works with SpatialRecursivePrefixTreeFieldType, BBoxField and Intersects(POLYGON(...)).</description>
<category>SOLR DOCUMENTATION-Errors</category>
</item>
<item>
<title>Drupal Setup with Opensolr</title>
<link>https://opensolr.com/learn/opensolr-and-drupal/37/drupal-setup-with-opensolr</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-and-drupal/37/drupal-setup-with-opensolr</guid>
<description>Three ways to connect a Drupal site to Opensolr, and how to pick one: the Opensolr Search module for a finished search page without Search API, Search API Opensolr to keep your Search API indexes and Views, or Search API Solr set up by hand. Each links to its own setup page.</description>
<category>INTEGRATION-Drupal</category>
</item>
<item>
<title>Solr Cloud Free Membership</title>
<link>https://opensolr.com/learn/billing/34/solr-cloud-free-membership</link>
<guid isPermaLink="true">https://opensolr.com/learn/billing/34/solr-cloud-free-membership</guid>
<description>The Opensolr free plan is free forever, not a trial: no credit card, no countdown, no expiry date. One fully managed Opensolr Index with live limits, the full Apache Solr API, the WordPress and Drupal plugins and a monthly AI allowance. An index idle for 30 days can be removed.</description>
<category>OPENSOLR GUIDE-Pricing &amp; Billing</category>
</item>
<item>
<title>How can I save disk space for my index?</title>
<link>https://opensolr.com/learn/opensolr-resources/33/how-can-i-save-disk-space-for-my-index</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-resources/33/how-can-i-save-disk-space-for-my-index</guid>
<description>A smaller Opensolr Index is mostly a schema decision: Point fields instead of Trie, fewer stored fields, omitNorms and omitPositions, fewer NGrams, stop words. What each lever saves, what it costs, and what happens when an index runs out of disk.</description>
<category>OPENSOLR GUIDE-Account Resources</category>
</item>
</channel>
</rss>
