---
name: "Search::Elasticsearch::CxnPool::Static::NoPing"
section: "3pm"
platform: "linux"
package: "libsearch-elasticsearch-perl"
version: "8.12-1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/Search::Elasticsearch::CxnPool::Static::NoPing"
---

# Search::Elasticsearch::CxnPool::Static::NoPing(3pm)

A CxnPool for connecting to a remote cluster without the ability to ping.

## NAME

Search::Elasticsearch::CxnPool::Static::NoPing - A CxnPool for connecting to a remote cluster without the ability to ping.

## VERSION

version 8.12

## SYNOPSIS

```
    $e = Search::Elasticsearch->new(
        cxn_pool => 'Static::NoPing'
        nodes    => [
            'search1:9200',
            'search2:9200'
        ],
    );
```

## DESCRIPTION

The Static::NoPing connection pool (like the Static pool) should be used when your access to the cluster is limited.  However, the `"Static"` pool needs to be able to ping nodes in the cluster, with a `"HEAD /"` request.  If you can't ping your nodes, then you should use the `"Static::NoPing"` connection pool instead.

Because the cluster cannot be pinged, this CxnPool cannot use a short ping request to determine whether nodes are live or not - it just has to send requests to the nodes to determine whether they are alive or not.

Most of the time, a dead node will cause the request to fail quickly. However, in situations where node failure takes time (eg malfunctioning routers or firewalls), a failure may not be reported until the request itself times out (see "request\_timeout" in Search::Elasticsearch::Cxn).

Failed nodes will be retried regularly to check if they have recovered.

This class does Search::Elasticsearch::Role::CxnPool::Static::NoPing and Search::Elasticsearch::Role::Is\_Sync.

## CONFIGURATION

### "nodes"

The list of nodes to use to serve requests.  Can accept a single node, multiple nodes, and defaults to `"localhost:9200"` if no `"nodes"` are specified. See "node" in Search::Elasticsearch::Role::Cxn for details of the node specification.

### See also

- •

  "request\_timeout" in Search::Elasticsearch::Role::Cxn

- •

  "dead\_timeout" in Search::Elasticsearch::Role::Cxn

- •

  "max\_dead\_timeout" in Search::Elasticsearch::Role::Cxn

### Inherited configuration

From Search::Elasticsearch::Role::CxnPool::Static::NoPing

- •

  max\_retries

From Search::Elasticsearch::Role::CxnPool

- •

  randomize\_cxns

## METHODS

### next\_cxn()

```
    $cxn = $cxn_pool->next_cxn
```

Returns the next available node  in round robin fashion - either a live node which has previously responded successfully, or a previously failed node which should be retried. If all nodes are dead, it will throw a `"NoNodes"` error.

### Inherited methods

From Search::Elasticsearch::Role::CxnPool::Static::NoPing

- •

  **should\_mark\_dead()**

- •

  **schedule\_check()**

From Search::Elasticsearch::Role::CxnPool

- •

  **cxn\_factory()**

- •

  **logger()**

- •

  **serializer()**

- •

  **current\_cxn\_num()**

- •

  **cxns()**

- •

  **seed\_nodes()**

- •

  **next\_cxn\_num()**

- •

  **set\_cxns()**

- •

  **request\_ok()**

- •

  **request\_failed()**

- •

  **should\_retry()**

- •

  **should\_mark\_dead()**

- •

  **cxns\_str()**

- •

  **cxns\_seeds\_str()**

- •

  **retries()**

- •

  **reset\_retries()**

## AUTHOR

Enrico Zimuel \<enrico.zimuel@elastic.co\>

## COPYRIGHT AND LICENSE

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

This is free software, licensed under:

```
  The Apache License, Version 2.0, January 2004
```
