Author: pb
Date: Mon Nov 17 19:23:08 2008
New Revision: 3320
Log:
- fixed bug #013348: improvements to ezsolrbase::sendHTTPRequest
Modified:
ezfind/ezp4/trunk/extension/ezfind/classes/ezsolrbase.php
ezfind/ezp4/trunk/extension/ezfind/doc/changelogs/2.0/unstable/CHANGELOG-2.0.0alpha1-to-2.0.0beta1
ezfind/ezp4/trunk/extension/ezfind/settings/solr.ini.append.php
Modified: ezfind/ezp4/trunk/extension/ezfind/classes/ezsolrbase.php
==============================================================================
--- ezfind/ezp4/trunk/extension/ezfind/classes/ezsolrbase.php (original)
+++ ezfind/ezp4/trunk/extension/ezfind/classes/ezsolrbase.php Mon Nov 17 19:23:08 2008
@@ -318,6 +318,8 @@
function sendHTTPRequest( $url, $postData = false, $contentType = '', $userAgent = 'eZ Publish' )
{
$connectionTimeout = $this->SolrINI->variable( 'SolrBase', 'ConnectionTimeout' );
+ $processTimeout = $this->SolrINI->variable( 'SolrBase', 'ProcessTimeout' );
+
if ( extension_loaded( 'curl' ) )
{
@@ -325,6 +327,8 @@
curl_setopt( $ch, CURLOPT_URL, $url );
curl_setopt( $ch, CURLOPT_RETURNTRANSFER, 1 );
curl_setopt( $ch, CURLOPT_CONNECTTIMEOUT, $connectionTimeout );
+ curl_setopt( $ch, CURLOPT_TIMEOUT, $processTimeout );
+ //CURLOPT_TIMEOUT
if ( $postData !== false )
{
curl_setopt( $ch, CURLOPT_POST, 1 );
@@ -403,6 +407,7 @@
"User-Agent: $userAgent\r\n" .
"Pragma: no-cache\r\n" .
"Connection: close\r\n\r\n";
+ stream_set_timeout( $fp, $processTimeout );
fputs( $fp, $request );
if ( $method == 'POST' )
{
@@ -434,9 +439,20 @@
{
$buf .= fgets( $fp, 128 );
}
+ $info = stream_get_meta_data($fp);
+
fclose($fp);
-
- return $buf;
+ if ( $info['timed_out'] )
+ {
+ eZDebug::writeError( 'connection error: processing timed out', 'eZSolr::sendHTTPRequest()' );
+ return false;
+ }
+ else
+ {
+ return $buf;
+ }
+
+
}
}
}
Modified: ezfind/ezp4/trunk/extension/ezfind/doc/changelogs/2.0/unstable/CHANGELOG-2.0.0alpha1-to-2.0.0beta1
==============================================================================
--- ezfind/ezp4/trunk/extension/ezfind/doc/changelogs/2.0/unstable/CHANGELOG-2.0.0alpha1-to-2.0.0beta1 (original)
+++ ezfind/ezp4/trunk/extension/ezfind/doc/changelogs/2.0/unstable/CHANGELOG-2.0.0alpha1-to-2.0.0beta1 Mon Nov 17 19:23:08 2008
@@ -13,3 +13,4 @@
- changed "minimum must match" definition in solrconfig.xml (rev 3315)
- fixed bug #013351: rhel service script searches for a JAVA_HOME var, but then uses simply "java"
- fixed bug #013959: Incorrect date formatting on win32
+- fixed enhancement #013348: improvements to ezsolrbase::sendHTTPRequest
Modified: ezfind/ezp4/trunk/extension/ezfind/settings/solr.ini.append.php
==============================================================================
--- ezfind/ezp4/trunk/extension/ezfind/settings/solr.ini.append.php (original)
+++ ezfind/ezp4/trunk/extension/ezfind/settings/solr.ini.append.php Mon Nov 17 19:23:08 2008
@@ -5,5 +5,7 @@
SearchServerURI=http://localhost:8983/solr
# Solr connection timeout in seconds
ConnectionTimeout=10
+# Solr read/send timeout in seconds, for larger indexes increase this to accomodate long optimize and/or commit processing
+ProcessTimeout=20
*/ ?>
_______________________________________________
svn-eZFind mailing list
[email protected]
http://lists.ez.no/mailman/listinfo/svn-ezfind