oracular (3) Search::Elasticsearch::Error.3pm.gz

Provided by: libsearch-elasticsearch-perl_8.12-1_all bug

NAME

       Search::Elasticsearch::Error - Errors thrown by Search::Elasticsearch

VERSION

       version 8.12

DESCRIPTION

       Errors thrown by Search::Elasticsearch are error objects, which can include a stack trace and information
       to help debug problems. An error object consists of the following:

           {
               type  => $type,              # eg Missing
               text  => 'Error message',
               vars  => {...},              # vars which may help to explain the error
               stack => [...],              # a stack trace
           }

       The $Search::Elasticsearch::Error::DEBUG variable can be set to 1 or 2 to increase the verbosity of
       errors.

       Error objects stringify to a human readable error message when used in text context (for example: "print
       'Oh no! '.$error").  They also support the "TO_JSON" method to support conversion to JSON when
       "convert_blessed" in JSON is enabled.

ERROR CLASSES

       The following error classes are defined:

       •   "Search::Elasticsearch::Error::Param"

           A bad parameter has been passed to a method.

       •   "Search::Elasticsearch::Error::Request"

           There was some generic error performing your request in Elasticsearch.  This error is triggered by
           HTTP status codes 400 and 500. This class has the following sub-classes:

           •   "Search::Elasticsearch::Error::Unauthorized"

               Invalid (or no) username/password provided as "userinfo" for a password protected service. These
               errors are triggered by the 401 HTTP status code.

           •   "Search::Elasticsearch::Error::Missing"

               A resource that you requested was not found.  These errors are triggered by the 404 HTTP status
               code.

           •   "Elastisearch::Error::Conflict"

               Your request could not be performed because of some conflict.  For instance, if you try to delete
               a document with a particular version number, and the document has already changed, it will throw
               a "Conflict" error.  If it can, it will include the "current_version" in the error vars. This
               error is triggered by the 409 HTTP status code.

           •   "Search::Elasticsearch::Error::ContentLength"

               The request body was longer than the max_content_length.

           •   "Search::Elasticsearch::Error::RequestTimeout"

               The request took longer than the specified "timeout".  Currently only applies to the
               cluster_health request.

       •   "Search::Elasticsearch::Error::Timeout"

           The request timed out.

       •   "Search::Elasticsearch::Error::Cxn"

           There was an error connecting to a node in the cluster.  This error indicates node failure and will
           be retried on another node.  This error has the following sub-classes:

           •   "Search::Elasticsearch::Error::Unavailable"

               The current node is unable to handle your request at the moment. Your request will be retried on
               another node.  This error is triggered by the 503 HTTP status code.

           •   "Search::Elasticsearch::Error::BadGateway"

               A proxy between the client and Elasticsearch is unable to connect to Elasticsearch.  This error
               is triggered by the 502 HTTP status code.

           •   "Search::Elasticsearch::Error::GatewayTimeout"

               A proxy between the client and Elasticsearch is unable to connect to Elasticsearch within its own
               timeout. This error is triggered by the 504 HTTP status code.

           •   "Search::Elasticsearch::Error::SSL"

               There was a problem validating the SSL certificate.  Not all backends support this error type.

       •   "Search::Elasticsearch::Error::Forbidden"

           Either the cluster was unable to process the request because it is currently blocking, eg there are
           not enough master nodes to form a cluster, or because the authenticated user is trying to perform an
           unauthorized action. This error is triggered by the 403 HTTP status code.

       •   "Search::Elasticsearch::Error::Illegal"

           You have attempted to perform an illegal operation.  For instance, you attempted to use a Scroll
           helper in a different process after forking.

       •   "Search::Elasticsearch::Error::Serializer"

           There was an error serializing a variable or deserializing a string.

       •   "Elasticsarch::Error::Internal"

           An internal error occurred - please report this as a bug in this module.

AUTHOR

       Enrico Zimuel <enrico.zimuel@elastic.co>

       This software is Copyright (c) 2024 by Elasticsearch BV.

       This is free software, licensed under:

         The Apache License, Version 2.0, January 2004