Go easy on your use of commit - use the <autocommit /> section solrconfig.xml instead.
Also consider using optimize() once a day if you are doing lots of adds/removes.
(PECL solr >= 0.9.2)
SolrClient::commit — Commit tous les ajouts/modifications effectués sur l'index
$softCommit
= false
, bool $waitSearcher
= true
, bool $expungeDeletes
= false
): SolrUpdateResponseCommit tous les ajouts/modifications effectués sur l'index.
softCommit
Va rafraîchir la vue de l'index d'une façon plus performante, mais sans aucune garantie d'être sur le disque. (Solr4.0+)
Un commit "soft" est plus rapide sachant qu'il ne modifie que l'index, et ne synchronise pas les fichiers d'index, ni n'écrit de nouveaux descripteurs d'index. Si le JVM crash ou s'il y a un perte d'énergie, les modificiations qui sont survenues après le dernier commit "hard" seront perdues. Les collections de recherche, qui ont des besoins proches du temps réel (qui nécessitent donc que les modifications soient rapidement visibles) doivent avoir des commit soft régulièrement, et moins de commit hard.
waitSearcher
Attend jusqu'à ce qu'un nouvel objet de recherche soit ouvert et enregistré comme objet de recherche principal, rendant visible les modifications.
expungeDeletes
Supprime définitivement les effacements. (Solr1.4+)
Retourne un objet SolrUpdateResponse en cas de succès, et lance une exception si une erreur survient.
Lance une exception SolrClientException si le client a échoué ou s'il y a eu un problème avec la connexion.
Lance une exception SolrServerException si le serveur Solr a échoué dans l'exécution de la requête.
Version | Description |
---|---|
PECL solr 1.1.0, PECL solr 2.0.0 | Suppression de l'argument $maxSegments |
PECL solr 2.0.0b | Modification de l'API : SolrClient::commit ([ int $maxSegments = 0 [, bool $softCommit = false [, bool $waitSearcher = true[, bool $expungeDeletes = false ]]] ) |
PECL solr 0.9.2 | Signature : SolrClient::commit ([ int $maxSegments = 1 [, bool $waitFlush = true [, bool $waitSearcher = true ]]] ). $waitFlush : bloc tant que les modifications de l'index ne sont pas écrites sur le disque. |
PECL Solr >= 2.0 ne supporte que le serveur Solr >= 4.0
Go easy on your use of commit - use the <autocommit /> section solrconfig.xml instead.
Also consider using optimize() once a day if you are doing lots of adds/removes.