Indexer Optimizer
v1.0.14
Indexer Optimizer
- Updates and support included for 12 months
- License key delivered immediately by email
- 30-day money-back guarantee
- Full documentation included
- Composer-ready installation
Indexer Optimization
Verkort Magento-reindex-tijden op grote catalogi van uren naar minuten. Deze module intercepteert de native Magento-indexers (price, EAV, category-product, catalog rule, stock, fulltext) met geoptimaliseerde batch-routines en configureerbare batch sizes, draait ze in de juiste afhankelijkheidsvolgorde en slaat overbodig werk over — bijvoorbeeld wanneer catalog_category_product en catalog_product_category anders dezelfde gedeelde tabel twee keer zouden herbouwen.
Eén CLI-commando, bin/magento wimakeit:indexer:reindex-all, vervangt de gebruikelijke reeks van indexer:reindex-aanroepen. Het toont een real-time progress bar, voert elke indexer in de juiste volgorde uit en biedt een --skip-fulltext-flag voor stores die de search delegeren naar Meilisearch of een aparte worker.
Voor wie
- Handelaars met grote catalogi (10k+ SKU's, bundle products of veel klantengroepen) waar native reindex pijnlijk traag is
- Stores met een ERP-gedreven import waar partiële of volledige reindex meerdere keren per dag wordt getriggerd
- Stores die Meilisearch of OpenSearch als zoekengine gebruiken, waar catalog-indexers moeten draaien maar fulltext apart wordt afgehandeld
- DevOps-teams die één scriptbaar reindex-commando willen voor deploys en cron
Belangrijkste voordelen
- Eén commando om alles te reindexen —
wimakeit:indexer:reindex-alldraait alle catalog-indexers in afhankelijkheidsvolgorde met globale progress bar en per-indexer timing samenvatting. - Configureerbare batch sizes — tune price, EAV, category-product, catalog rule, bundle en stock batch sizes vanuit de admin om te matchen met server-geheugen en database-profiel.
- Toggles per indexer — behoud de native Magento-indexer voor een specifieke index die u niet wilt overrulen; de optimizer is opt-out per index.
- Overbodige reindexen overgeslagen —
catalog_category_productencatalog_product_categorydelen een tabel; als de ene al geldig is, wordt de andere overgeslagen. Bespaart minuten bij elke deploy. - Fulltext gecontroleerd op dependencies — voordat
catalogsearch_fulltextdraait, controleert de module dat de vereiste indexers geldig zijn en herindex ze indien nodig. - OPTIMIZE TABLE na full reindex — optionele MySQL-tabel-optimalisatie wint ruimte terug en defragmenteert indextabellen na grote reindex-jobs.
- Stale indexer-detector — een uurlijkse cron logt een waarschuwing in
system.logals een indexer langer dan de geconfigureerde drempel in "invalid"-status blijft.
Compatibiliteit
- Magento 2.4.x / Mage-OS equivalent
- PHP 8.1, 8.2, 8.3
- Vereist
wimakeit/module-core3.0.9 of hoger - Werkt naast
wimakeit/module-meilisearch-engine(gebruik--skip-fulltexten laat Meilisearch de search verzorgen) - Compatibel met native MySQL-search en OpenSearch
Installeer deze module via Composer. Zorg ervoor dat uw auth.json is geconfigureerd met uw Wimakeit-inloggegevens.
$ composer require wimakeit/module-indexer:^1.0.14
$ bin/magento setup:upgrade
$ bin/magento setup:di:compile
Installation notes
The standard composer require + setup:upgrade + setup:di:compile flow applies. The points below cover what's specific to this module.
Prerequisites
The price indexer must run in dimension mode none. The optimized routines write to the base catalog_product_index_price table with a website_id column; the dimensional modes (website, customer_group, website_and_customer_group) create per-dimension tables (_ws0, _cg0, ...) that this module does not populate. The price plugin transparently falls back to Magento's native indexer when dimension mode is anything other than none, and wimakeit:indexer:fast-reindex aborts with an explicit error.
Verify and configure:
bin/magento indexer:show-dimensions-mode catalog_product_price
bin/magento indexer:set-dimensions-mode catalog_product_price none
bin/magento indexer:reindex catalog_product_price
bin/magento cache:flush
Required dependency
This module requires wimakeit/module-core 3.0.9 or later. Composer will pull it automatically from the Wimakeit registry as long as the registry is declared in your project's composer.json.
ACL permissions
After installation, one ACL resource is registered under System → Permissions → User Roles:
| Resource | Default |
|---|---|
Wimakeit_Indexer::config (edit module configuration) | granted to Administrator role only |
Configuration
The module ships with safe production defaults. Go to Stores → Configuration → Catalog → Catalog → Wimakeit Indexer Optimization only if you want to change them.
General
| Setting | Default |
|---|---|
| Enable Optimized Indexers | Yes |
| Enable Performance Logging | No — turn on temporarily to measure batches |
| Enable Table Optimization | Yes (runs OPTIMIZE TABLE after full reindex) |
| Stale Indexer Threshold (hours) | 4 |
Per-indexer toggles
| Setting | Default |
|---|---|
| Enable Price Optimizer | Yes |
| Enable EAV Optimizer | Yes |
| Enable Category Optimizer | Yes |
| Enable Catalog Rule Optimizer | Yes |
| Enable Stock Optimizer | Yes |
Batch sizes
| Setting | Default |
|---|---|
| Price Indexer Batch Size | 1000 (recommended 500–2000) |
| Bundle Price Batch Size | 2000 (recommended 500–2000) |
| Category-Product Batch Size | 5000 |
| EAV Indexer Batch Size | 5000 |
| Catalog Rule Batch Size | 5000 |
| Stock Indexer Batch Size | 5000 |
CLI commands
# Reindex all catalog indexers in dependency order, with progress bar
bin/magento wimakeit:indexer:reindex-all
# Skip fulltext (when Meilisearch handles search)
bin/magento wimakeit:indexer:reindex-all --skip-fulltext
# Without progress bar (cron/scripts)
bin/magento wimakeit:indexer:reindex-all --no-progress
# Detailed indexer status
bin/magento wimakeit:indexer:status --detailed
# Category-product reindex (full or per-id)
bin/magento wimakeit:indexer:category-product --full
bin/magento wimakeit:indexer:category-product --product-ids=123,456
# Fast bundle-price reindex
bin/magento wimakeit:indexer:fast-reindex
Cron jobs (registered automatically)
| Job | Schedule |
|---|---|
wimakeit_indexer_stale_detector (warn if indexer stuck invalid) | hourly |
No setup needed — just make sure Magento cron is running.
- Versie
- v1.0.14
- Licentie
- Jaarabonnement
- Ondersteuning
- 12 maanden
- Last updated
- 5 jun. 2026
- Magento
- Magento 2.4.4 Magento 2.4.5 Magento 2.4.6 Magento 2.4.7 Mage-OS 2.0 Mage-OS 2.1
- PHP
- PHP 8.1 PHP 8.2 PHP 8.3
- Hyvä
- Niet compatibel
- Pakket
-
wimakeit/module-indexer
Compatibility checker
Pick your stack to see if this module fits.
Compatibiliteit 4
Prijs & licentie 4
composer require in vendor/wimakeit/ terecht; u kan ze lezen, auditen en lokaal patchen voor uw eigen Magento-installatie. U mag de code NIET herverspreiden, sublicentiëren, op een publiek Composer-register publiceren of doorverkopen. Eén licentie = één productiedomein + één staging/dev-domein (zie de algemene voorwaarden voor de volledige EULA). Wimakeit-modules staan NIET op het publieke packagist.org — ze worden uitsluitend verspreid via het private Composer-register packages.wimakeit.be. Installatie & updates 6
composer require wimakeit/module-indexer:^1.0.11 uit, daarna bin/magento setup:upgrade, bin/magento setup:di:compile en tot slot bin/magento cache:flush. Het tabblad Installation op deze pagina lijst elke configuratiestap (ACL's, crons, defaultwaarden) — een deploy duurt minuten, geen uren. Hulp nodig? Wimakeit biedt Magento-installatiediensten vanuit ons Waalse kantoor (Presles, tussen Charleroi en Namen). auth.json toe: {"http-basic": {"packages.wimakeit.be": {"username": "UW-E-MAIL", "password": "UW-TOKEN"}}}. Stap 3: registreer het repo: composer config repositories.wimakeit composer https://packages.wimakeit.be. Stap 4: composer require wimakeit/module-indexer:^1.0.11. In CI/CD-pipelines injecteert u COMPOSER_AUTH als JSON-environment-variabele in plaats van auth.json te commit'en. composer require, zelfde modulecode, zelfde databaseschema — geen fork om te onderhouden, geen licentiewijziging. composer update blijft veilig binnen een major. app/design/frontend/{UwVendor}/{theme}/Wimakeit_{Module}/templates/ met hetzelfde relatieve pad. Blocks, ViewModels en Helpers worden overschreven via DI-preference in uw eigen custom module — declareer <preference for="Wimakeit\…\OriginalClass" type="UwVendor\Override\Class" /> in etc/di.xml. Layout-XML wordt uitgebreid (voorkeur) of overschreven op de standaard Magento-manier. Wimakeit-modules gebruiken nooit het keyword final op klassen die u redelijkerwijs zou willen override — overschrijven is een first-class scenario, geen hack. Support & beveiliging 3
contact@wimakeit.com met modulenaam, versie, Magento/Mage-OS-versie en reproduceringsstappen. Fixes verschijnen in de volgende patch. Wimakeit-support antwoordt in het Nederlands, Frans en Engels op werkdagen (CET-uren). contact@wimakeit.com met het voorvoegsel [SECURITY] in het onderwerp — vermeld de module, versie en reproductiestappen. Bevestiging op werkdagen, vermelding in het Changelog op verzoek. Wimakeit is een Belgische BV (besloten vennootschap) onderworpen aan Belgisch en Europees recht inzake privacy en responsible disclosure. Over Wimakeit 1
Iets gevonden dat niet in de FAQ staat?
Meld een bug of stel een vraag — het formulier is voor-ingevuld met deze module.
Changelog
Categories: Security, Feature, Fix, Perf, Admin, Deps.
[1.0.12] - 2026-06-02
Fix
- Price plugin now falls back to Magento's native indexer when the price indexer dimension mode is not
none, instead of silently leaving the per-dimension tables (_ws0,_cg0, ...) stale and causing 1146 "table doesn't exist" errors on bundle product saves. wimakeit:indexer:fast-reindexaborts with a clear error and the exactindexer:set-dimensions-modefix command when dimension mode is notnone.
[1.0.11] - 2026-05-10
Admin
- Enable Debug Logging now defaults to off on fresh installs, matching the convention adopted across every Wimakeit module after the core 3.0.9 rollout. Existing deployments with the value explicitly saved are not affected.
Perf
- Fresh deploys no longer write ~100+ info/debug/warning traces per indexer run into
var/log/system.log. Hard errors still log unconditionally.
[1.0.10] - 2026-05-10
Feature
- New Enable Logging toggle (Stores → Configuration → Catalog → Wimakeit Indexer → Logging). Four logger consumers (fulltext indexer plugin, stock indexer plugin, product-category plugin, optimized stock indexer) emit
info/debug/notice/warningonly when the toggle is on;error/criticalalways log.
Deps
- Requires
wimakeit/module-core3.0.9+ for the shared debug logger virtual type.
[1.0.9] - 2026-05-08
Admin
- Admin menu group standardized — module appears under a top-level Wimakeit_Indexer entry with a Settings child that opens directly on the native catalog configuration where the Wimakeit Indexer group lives.
Deps
- Certified PHP 8.1 → 8.3 support. Composer
phpconstraint tightened to>=8.1 <8.4.
[1.0.8] - 2026-04-29
Admin
- Internal release pipeline standardized (validate, tag, deploy, release stages). No functional change for merchants.
[1.0.7] - 2026-04-07
Deps
- Depends on
wimakeit/module-corefor shared CLI and config abstractions.
[1.0.6] - 2026-03-17
Admin
- CLI commands and config readers refactored to extend the shared abstractions provided by
wimakeit/module-core3.0 — consistent logging and option handling across all Wimakeit CLI commands.
[1.0.5] - 2026-03-12
Fix
wimakeit/module-corecomposer dependency now points to the published package (wimakeit/module-core) instead of the legacy nested path that brokecomposer installon stores that bypassed the GitLab registry.
[1.0.4] - 2026-03-12
Fix
- Indexer table-clear step now uses the context-aware
clearTableutility — safer when an indexer runs against a custom store scope or a partial dataset.
[1.0.3] - 2026-02-27
Admin
- New
wimakeit:indexer:statusandwimakeit:indexer:bundle-pricesCLI commands stabilized; admin tab definition consolidated under the shared Wimakeit_Core admin section.
[1.0.2] - 2025-12-18
Fix
- Added stock and
catalogrulecoverage to the optimized indexer plugins. Saving a product or price rule now triggers the optimized partial reindex path instead of falling back to a full reindex.
[1.0.1] - 2025-12-15
Admin
- Initial post-launch hotfix release — pipeline and package-name corrections so the module installs cleanly from the Wimakeit GitLab Composer Registry.
[1.0.0] - 2024-12-15
Feature
- Initial release with optimized bundle price indexer (
BundlePriceOptimized) and EAV attribute indexer (EavOptimized). - Delta indexing plugin to reduce work on incremental reindex.
- Auto-adjusted batch sizes for large catalogs.
- New CLI commands
wimakeit:indexer:fast-reindex,wimakeit:indexer:status,wimakeit:indexer:bundle-prices.
Admin
- New admin panel under Stores → Configuration → Catalog → Catalog → Wimakeit Indexer Optimization to tune batch sizes and toggle per-indexer optimizers.
Een bug gevonden? Laat het ons weten.
Een kort formulier opent in een nieuw tabblad — de modulenaam en uw taal zijn al ingevuld. Beschrijf wat u probeerde, wat misging, en wij komen binnen één werkdag bij u terug.
Een bug melden voor Indexer OptimizerHulp nodig?
Ons team helpt u graag met de integratie.