<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="content-type" content="text/html; charset=UTF-8"> <title>Predefined Constants</title> </head> <body><div class="manualnavbar" style="text-align: center;"> <div class="prev" style="text-align: left; float: left;"><a href="gearman.resources.html">Resource Types</a></div> <div class="next" style="text-align: right; float: right;"><a href="gearman.examples.html">Examples</a></div> <div class="up"><a href="book.gearman.html">Gearman</a></div> <div class="home"><a href="index.html">PHP Manual</a></div> </div><hr /><div id="gearman.constants" class="appendix"> <h1>Predefined Constants</h1> <p class="simpara"> The constants below are defined by this extension, and will only be available when the extension has either been compiled into PHP or dynamically loaded at runtime. </p> <p class="para"> Return values. Always check <span class="methodname"><a href="gearmanclient.error.html" class="methodname">GearmanClient::error()</a></span> or <span class="methodname"><strong>GearmanWorker()</strong></span> for a string error, as it may contain more details: </p> <p class="para"> <dl> <dt id="constant.gearman-success"> <span class="term"> <strong><code>GEARMAN_SUCCESS</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Whatever action was taken was successful. </span> </dd> </dt> <dt id="constant.gearman-io-wait"> <span class="term"> <strong><code>GEARMAN_IO_WAIT</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> When in non-blocking mode, an event is hit that would have blocked. </span> </dd> </dt> <dt id="constant.gearman-errno"> <span class="term"> <strong><code>GEARMAN_ERRNO</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> A system error. Check <span class="methodname"><strong>GearmanClient::errno()</strong></span> or <span class="methodname"><strong>GearmanWorker::errno()</strong></span> for the system error code that was returned. </span> </dd> </dt> <dt id="constant.gearman-no-active-fds"> <span class="term"> <strong><code>GEARMAN_NO_ACTIVE_FDS</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> <span class="methodname"><strong>GearmanClient::wait()</strong></span> or <span class="methodname"><strong>GearmanWorker()</strong></span> was called with no connections. </span> </dd> </dt> <dt id="constant.gearman-unexpected-packet"> <span class="term"> <strong><code>GEARMAN_UNEXPECTED_PACKET</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Indicates something going very wrong in gearmand. Applies only to <a href="class.gearmanworker.html" class="classname">GearmanWorker</a>. </span> </dd> </dt> <dt id="constant.gearman-getaddrinfo"> <span class="term"> <strong><code>GEARMAN_GETADDRINFO</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> DNS resolution failed (invalid host, port, etc). </span> </dd> </dt> <dt id="constant.gearman-no-servers"> <span class="term"> <strong><code>GEARMAN_NO_SERVERS</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Did not call <span class="methodname"><a href="gearmanclient.addserver.html" class="methodname">GearmanClient::addServer()</a></span> before submitting jobs or tasks. </span> </dd> </dt> <dt id="constant.gearman-lost-connection"> <span class="term"> <strong><code>GEARMAN_LOST_CONNECTION</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Lost a connection during a request. </span> </dd> </dt> <dt id="constant.gearman-memory-allocation-failure"> <span class="term"> <strong><code>GEARMAN_MEMORY_ALLOCATION_FAILURE</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Memory allocation failed (ran out of memory). </span> </dd> </dt> <dt id="constant.gearman-server-error"> <span class="term"> <strong><code>GEARMAN_SERVER_ERROR</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Something went wrong in the Gearman server and it could not handle the request gracefully. </span> </dd> </dt> <dt id="constant.gearman-work-data"> <span class="term"> <strong><code>GEARMAN_WORK_DATA</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Notice return code obtained with <span class="methodname"><a href="gearmanclient.returncode.html" class="methodname">GearmanClient::returnCode()</a></span> when using <span class="methodname"><a href="gearmanclient.do.html" class="methodname">GearmanClient::do()</a></span>. Sent to update the client with data from a running job. A worker uses this when it needs to send updates, send partial results, or flush data during long running jobs. </span> </dd> </dt> <dt id="constant.gearman-work-warning"> <span class="term"> <strong><code>GEARMAN_WORK_WARNING</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Notice return code obtained with <span class="methodname"><a href="gearmanclient.returncode.html" class="methodname">GearmanClient::returnCode()</a></span> when using <span class="methodname"><a href="gearmanclient.do.html" class="methodname">GearmanClient::do()</a></span>. Updates the client with a warning. The behavior is just like <strong><code>GEARMAN_WORK_DATA</code></strong>, but should be treated as a warning instead of normal response data. </span> </dd> </dt> <dt id="constant.gearman-work-status"> <span class="term"> <strong><code>GEARMAN_WORK_STATUS</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Notice return code obtained with <span class="methodname"><a href="gearmanclient.returncode.html" class="methodname">GearmanClient::returnCode()</a></span> when using <span class="methodname"><a href="gearmanclient.do.html" class="methodname">GearmanClient::do()</a></span>. Sent to update the status of a long running job. Use <span class="methodname"><a href="gearmanclient.dostatus.html" class="methodname">GearmanClient::doStatus()</a></span> to obtain the percentage complete of the task. </span> </dd> </dt> <dt id="constant.gearman-work-exception"> <span class="term"> <strong><code>GEARMAN_WORK_EXCEPTION</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Notice return code obtained with <span class="methodname"><a href="gearmanclient.returncode.html" class="methodname">GearmanClient::returnCode()</a></span> when using <span class="methodname"><a href="gearmanclient.do.html" class="methodname">GearmanClient::do()</a></span>. Indicates that a job failed with a given exception. </span> </dd> </dt> <dt id="constant.gearman-work-fail"> <span class="term"> <strong><code>GEARMAN_WORK_FAIL</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Notice return code obtained with <span class="methodname"><a href="gearmanclient.returncode.html" class="methodname">GearmanClient::returnCode()</a></span> when using <span class="methodname"><a href="gearmanclient.do.html" class="methodname">GearmanClient::do()</a></span>. Indicates that the job failed. </span> </dd> </dt> <dt id="constant.gearman-could-not-connect"> <span class="term"> <strong><code>GEARMAN_COULD_NOT_CONNECT</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Failed to connect to servers. </span> </dd> </dt> <dt id="constant.gearman-invalid-function-name"> <span class="term"> <strong><code>GEARMAN_INVALID_FUNCTION_NAME</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Trying to register a function name of NULL or using the callback interface without specifying callbacks. </span> </dd> </dt> <dt id="constant.gearman-invalid-worker-function"> <span class="term"> <strong><code>GEARMAN_INVALID_WORKER_FUNCTION</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Trying to register a function with a NULL callback function. </span> </dd> </dt> <dt id="constant.gearman-no-registered-functions"> <span class="term"> <strong><code>GEARMAN_NO_REGISTERED_FUNCTIONS</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> When a worker gets a job for a function it did not register. </span> </dd> </dt> <dt id="constant.gearman-no-jobs"> <span class="term"> <strong><code>GEARMAN_NO_JOBS</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> For a non-blocking worker, when <span class="methodname"><a href="gearmanworker.work.html" class="methodname">GearmanWorker::work()</a></span> does not have any active jobs. </span> </dd> </dt> <dt id="constant.gearman-echo-data-corruption"> <span class="term"> <strong><code>GEARMAN_ECHO_DATA_CORRUPTION</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> After <span class="methodname"><a href="gearmanclient.echo.html" class="methodname">GearmanClient::echo()</a></span> or <span class="methodname"><a href="gearmanworker.echo.html" class="methodname">GearmanWorker::echo()</a></span> the data returned doesn't match the data sent. </span> </dd> </dt> <dt id="constant.gearman-need-workload-fn"> <span class="term"> <strong><code>GEARMAN_NEED_WORKLOAD_FN</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> When the client opted to stream the workload of a task, but did not specify a workload callback function. </span> </dd> </dt> <dt id="constant.gearman-pause"> <span class="term"> <strong><code>GEARMAN_PAUSE</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> For the non-blocking client task interface, can be returned from the task callback to "pause" the call and return from <span class="methodname"><a href="gearmanclient.runtasks.html" class="methodname">GearmanClient::runTasks()</a></span>. Call <span class="methodname"><a href="gearmanclient.runtasks.html" class="methodname">GearmanClient::runTasks()</a></span> again to continue. </span> </dd> </dt> <dt id="constant.gearman-unknown-state"> <span class="term"> <strong><code>GEARMAN_UNKNOWN_STATE</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Internal client/worker state error. </span> </dd> </dt> <dt id="constant.gearman-send-buffer-too-small"> <span class="term"> <strong><code>GEARMAN_SEND_BUFFER_TOO_SMALL</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Internal error: trying to flush more data in one atomic chunk than is possible due to hard-coded buffer sizes. </span> </dd> </dt> <dt id="constant.gearman-timeout"> <span class="term"> <strong><code>GEARMAN_TIMEOUT</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Hit the timeout limit set by the client/worker. </span> </dd> </dt> </dl> </p> <p class="para"> <a href="class.gearmanclient.html" class="classname">GearmanClient</a> options: </p> <p class="para"> <dl> <dt id="constant.gearman-client-non-blocking"> <span class="term"> <strong><code>GEARMAN_CLIENT_NON_BLOCKING</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Run the cient in a non-blocking mode. </span> </dd> </dt> <dt id="constant.gearman-client-unbuffered-result"> <span class="term"> <strong><code>GEARMAN_CLIENT_UNBUFFERED_RESULT</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Allow the client to read data in chunks rather than have the library buffer the entire data result and pass that back. </span> </dd> </dt> <dt id="constant.gearman-client-free-tasks"> <span class="term"> <strong><code>GEARMAN_CLIENT_FREE_TASKS</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Automatically free task objects once they are complete. This is the default setting in this extension to prevent memory leaks. </span> </dd> </dt> </dl> </p> <p class="para"> <a href="class.gearmanworker.html" class="classname">GearmanWorker</a> options: </p> <p class="para"> <dl> <dt id="constant.gearman-worker-non-blocking"> <span class="term"> <strong><code>GEARMAN_WORKER_NON_BLOCKING</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Run the worker in non-blocking mode. </span> </dd> </dt> <dt id="constant.gearman-worker-grab-uniq"> <span class="term"> <strong><code>GEARMAN_WORKER_GRAB_UNIQ</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Return the client assigned unique ID in addition to the job handle. </span> </dd> </dt> </dl> </p> <p class="para"> Base Gearman configuration: </p> <p class="para"> <dl> <dt id="constant.gearman-default-tcp-host"> <span class="term"> <strong><code>GEARMAN_DEFAULT_TCP_HOST</code></strong> (<span class="type"><a href="language.types.string.html" class="type string">string</a></span>) </span> <dd> <span class="simpara"> </span> </dd> </dt> <dt id="constant.gearman-default-tcp-port"> <span class="term"> <strong><code>GEARMAN_DEFAULT_TCP_PORT</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> </span> </dd> </dt> <dt id="constant.gearman-default-socket-timeout"> <span class="term"> <strong><code>GEARMAN_DEFAULT_SOCKET_TIMEOUT</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> </span> </dd> </dt> <dt id="constant.gearman-default-socket-send-size"> <span class="term"> <strong><code>GEARMAN_DEFAULT_SOCKET_SEND_SIZE</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> </span> </dd> </dt> <dt id="constant.gearman-default-socket-recv-size"> <span class="term"> <strong><code>GEARMAN_DEFAULT_SOCKET_RECV_SIZE</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> </span> </dd> </dt> <dt id="constant.gearman-max-error-size"> <span class="term"> <strong><code>GEARMAN_MAX_ERROR_SIZE</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> </span> </dd> </dt> <dt id="constant.gearman-packet-header-size"> <span class="term"> <strong><code>GEARMAN_PACKET_HEADER_SIZE</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> </span> </dd> </dt> <dt id="constant.gearman-job-handle-size"> <span class="term"> <strong><code>GEARMAN_JOB_HANDLE_SIZE</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> </span> </dd> </dt> <dt id="constant.gearman-option-size"> <span class="term"> <strong><code>GEARMAN_OPTION_SIZE</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> </span> </dd> </dt> <dt id="constant.gearman-unique-size"> <span class="term"> <strong><code>GEARMAN_UNIQUE_SIZE</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> </span> </dd> </dt> <dt id="constant.gearman-max-command-args"> <span class="term"> <strong><code>GEARMAN_MAX_COMMAND_ARGS</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> </span> </dd> </dt> <dt id="constant.gearman-args-buffer-size"> <span class="term"> <strong><code>GEARMAN_ARGS_BUFFER_SIZE</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> </span> </dd> </dt> <dt id="constant.gearman-send-buffer-size"> <span class="term"> <strong><code>GEARMAN_SEND_BUFFER_SIZE</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> </span> </dd> </dt> <dt id="constant.gearman-recv-buffer-size"> <span class="term"> <strong><code>GEARMAN_RECV_BUFFER_SIZE</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> </span> </dd> </dt> <dt id="constant.gearman-worker-wait-timeout"> <span class="term"> <strong><code>GEARMAN_WORKER_WAIT_TIMEOUT</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> </span> </dd> </dt> </dl> </p> </div> <hr /><div class="manualnavbar" style="text-align: center;"> <div class="prev" style="text-align: left; float: left;"><a href="gearman.resources.html">Resource Types</a></div> <div class="next" style="text-align: right; float: right;"><a href="gearman.examples.html">Examples</a></div> <div class="up"><a href="book.gearman.html">Gearman</a></div> <div class="home"><a href="index.html">PHP Manual</a></div> </div></body></html>