Skip to content

0.13.18

Choose a tag to compare

@Toflar Toflar released this 15 Jun 14:49

Massive Performance Improvements 🚀

I'm super excited to release Loupe 0.13.18, bringing some of the largest performance gains we've seen so far.

General improvements

This release delivers dramatic improvements across a wide range of query types:

  • Multi-word queries: up to 8× faster
  • Phrase queries: up to 32× faster
  • Plain queries: up to 14× faster
  • Single-word queries: up to 3.5× faster
  • Negated queries: up to 5.5× faster

Indexing is faster too! You can expect improvements from anywhere between 10% and 20% 🥳 🚀

A new query cache

Loupe now ships with a query cache which you can configure (see docs for details) but out of the box it will automatically use APCu if available. It will make subsequent searches (e.g. typeahead scenarios etc.) faster by caching intermediate results. In other words: if you have APCu already available then without any changes, Loupe will be even faster for these use cases! 🚀

Changelog

  • Make max values per facet configurable by @Toflar in #299
  • Added support for a query cache with APCu support out-of-the-box by @Toflar in #296
  • PHPBench by @daun in #300
  • Use shared candidate document set by @daun in #301
  • Make benchmarks more stable by @Toflar in #302
  • Performance improvements by @Toflar in #303
  • Optimize multi-token relevance CTE aggregation in search by @Toflar in #304
  • Calculate exactness data once per term by @daun in #305
  • Increase term batch size to 16k for faster indexing by @Toflar in #306
  • Skip superfluous group-by for dedup by @daun in #307
  • Skip redundant where clause already enforced by join by @daun in #308
  • Add missing indexes for cleanup queries by @Toflar in #309
  • Skip document-orphan cleanup during add/update indexing by @Toflar in #310
  • Skip redundant candidate-doc filter for single-token queries by @Toflar in #311
  • Disable index benchmark warmups to fix update bench by @daun in #312
  • Skip tokenization for unchanged docs by @daun in #313
  • Skip start and end columns unless requested by @daun in #315
  • Analyze database to help query planner by @daun in #314
  • Fix phrase group search by @daun in #316
  • Cache built filters in query cache by @Toflar in #318
  • Fix a little typo in searching.md by @hirasso in #319

New Contributors

Full Changelog: 0.13.17...0.13.18