You are here

public function Apache_Solr_Service_Balancer::addDocument in Apache Solr Search 5

Add a Solr Document to the index

Parameters

Apache_Solr_Document $document:

boolean $allowDups:

boolean $overwritePending:

boolean $overwriteCommitted:

Return value

Apache_Solr_Response

Throws

Exception If an error occurs during the service call

File

SolrPhpClient/Apache/Solr/Service/Balancer.php, line 484

Class

Apache_Solr_Service_Balancer
Reference Implementation for using multiple Solr services in a distribution. Functionality includes: routing of read / write operations failover (on selection) for multiple read servers

Code

public function addDocument(Apache_Solr_Document $document, $allowDups = false, $overwritePending = true, $overwriteCommitted = true) {
  $service = $this
    ->_selectWriteService();
  do {
    try {
      return $service
        ->addDocument($document, $allowDups, $overwritePending, $overwriteCommitted);
    } catch (Exception $e) {
      if ($e
        ->getCode() != 0) {

        //IF NOT COMMUNICATION ERROR
        throw $e;
      }
    }
    $service = $this
      ->_selectWriteService(true);
  } while ($service);
  return false;
}