All of lore.kernel.org
 help / color / mirror / Atom feed
* client/server mode error handling
@ 2020-09-16 17:50 Frank Ritchie
  2020-09-18  7:27 ` Sitsofe Wheeler
  0 siblings, 1 reply; 2+ messages in thread
From: Frank Ritchie @ 2020-09-16 17:50 UTC (permalink / raw)
  To: fio

Hi all,

I am looking for documentation on how fio handles unavailable servers
in client/server mode. For instance, if I start a client specifying 10
servers to run tests on and only 5 are immediately available will fio
retry, block, fail, etc? Is the behavior configurable?

Thanks,
Frank


^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: client/server mode error handling
  2020-09-16 17:50 client/server mode error handling Frank Ritchie
@ 2020-09-18  7:27 ` Sitsofe Wheeler
  0 siblings, 0 replies; 2+ messages in thread
From: Sitsofe Wheeler @ 2020-09-18  7:27 UTC (permalink / raw)
  To: Frank Ritchie; +Cc: fio

Hi,

On Wed, 16 Sep 2020 at 20:03, Frank Ritchie <frankaritchie@gmail.com> wrote:
>
> Hi all,
>
> I am looking for documentation on how fio handles unavailable servers
> in client/server mode. For instance, if I start a client specifying 10
> servers to run tests on and only 5 are immediately available will fio
> retry, block, fail, etc? Is the behavior configurable?

Client connection is done in
https://github.com/axboe/fio/blob/14060ebb90ce5a0a164d0e5e52c13e31b53b282d/client.c#L601
. Reading through the functions it calls (such as fio_client_connect_ip() see
https://github.com/axboe/fio/blob/14060ebb90ce5a0a164d0e5e52c13e31b53b282d/client.c#L529)
they call ultimately connect() and if that fails for any reason (see
https://man7.org/linux/man-pages/man2/connect.2.html ) an error is returned and
the client exits. In the above scenario, if the fio client tries to connect to
a server that is not running but the port is not being firewalled that client
will exit with an error message (and if firewalled it will eventually timeout).
There is nothing that I see in the current code that would allow
retrying/blocking but you could modify the code to do the connect in a loop
until some number of retries had been done / some timeout reached.  After you
had succeeded with the initial change, you could make it an option that
attached to the client struct and then it would be configurable...


--
Sitsofe | http://sucs.org/~sits/


^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2020-09-18  7:27 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-09-16 17:50 client/server mode error handling Frank Ritchie
2020-09-18  7:27 ` Sitsofe Wheeler

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.