# The remote farmer cannot resume the connection to the node without restarting. (error=RestartNeeded)

**URL:** <https://forum.autonomys.xyz/t/the-remote-farmer-cannot-resume-the-connection-to-the-node-without-restarting-error-restartneeded/1887>\
**Category:** Support\
**Created:** [September 15, 2023, 5:00am UTC](https://forum.autonomys.xyz/t/the-remote-farmer-cannot-resume-the-connection-to-the-node-without-restarting-error-restartneeded/1887 "2023-09-15T05:00:09Z")\
**Posts on this page:** 8\
**Page:** 1

<div class="post-metadata">

**Author:** ![Rabinovitch](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.autonomys.xyz/rabinovitch/32/99_2.png) [@Rabinovitch](https://forum.autonomys.xyz/u/Rabinovitch)\
**Post date:** [September 15, 2023, 5:00am UTC](https://forum.autonomys.xyz/t/the-remote-farmer-cannot-resume-the-connection-to-the-node-without-restarting-error-restartneeded/1887/1 "2023-09-15T05:00:09Z")

</div>

## Issue Report

### Environment

- **Operating System:** Ubuntu 22.04.3 LTS on node+farmer server, Ubuntu 20.04.6 LTS on remote farmer.
- **Advanced CLI:** gemini-3f-2023-sep-13-2

### Problem

After restarting the node, the farmer on node’s local server can resume the connection as usual, while the remote farmer cannot resume the connection to the node without restarting.

```auto
Sep 15 07:52:38 lenovo7 subspace-farmer[93395]: 2023-09-15T04:52:38.620046Z ERROR single_disk_farm{disk_farm_index=6}: subspace_farmer::utils::piece_validator: Failed tor retrieve segment headers from node piece_index=1575 error=RestartNeeded("Networking or low-level protocol error: WebSocket connection error: connection closed")
Sep 15 07:52:38 lenovo7 subspace-farmer[93395]: 2023-09-15T04:52:38.702851Z ERROR single_disk_farm{disk_farm_index=12}: subspace_farmer::utils::piece_validator: Failed tor retrieve segment headers from node piece_index=1669 error=RestartNeeded("Networking or low-level protocol error: WebSocket connection error: connection closed")
Sep 15 07:52:39 lenovo7 subspace-farmer[93395]: 2023-09-15T04:52:39.303228Z ERROR single_disk_farm{disk_farm_index=10}: subspace_farmer::utils::piece_validator: Failed tor retrieve segment headers from node piece_index=3014 error=RestartNeeded("Networking or low-level protocol error: WebSocket connection error: connection closed")
Sep 15 07:52:39 lenovo7 subspace-farmer[93395]: 2023-09-15T04:52:39.420706Z ERROR single_disk_farm{disk_farm_index=3}: subspace_farmer::utils::piece_validator: Failed tor retrieve segment headers from node piece_index=2271 error=RestartNeeded("Networking or low-level protocol error: WebSocket connection error: connection closed")

```

---

<div class="post-metadata">

**Author:** ![nazar-pc](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.autonomys.xyz/nazar-pc/32/6_2.png) [@nazar-pc](https://forum.autonomys.xyz/u/nazar-pc)\
**Post date:** [September 15, 2023, 8:12am UTC](https://forum.autonomys.xyz/t/the-remote-farmer-cannot-resume-the-connection-to-the-node-without-restarting-error-restartneeded/1887/2 "2023-09-15T08:12:57Z")

</div>

There is zero difference between local and remote farmer, must be a coincidence and remove should also exit eventually.

Also judging by `disk_farm_index=12` you either have a lot of disks or you sliced disk into multiple farms unnecessarily. If it is sliced disk it’ll be less efficient than one big farm.

---

<div class="post-metadata">

**Author:** ![Rabinovitch](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.autonomys.xyz/rabinovitch/32/99_2.png) [@Rabinovitch](https://forum.autonomys.xyz/u/Rabinovitch)\
**Post date:** [September 15, 2023, 8:24am UTC](https://forum.autonomys.xyz/t/the-remote-farmer-cannot-resume-the-connection-to-the-node-without-restarting-error-restartneeded/1887/3 "2023-09-15T08:24:18Z")

</div>

Really? [More rewards on smaller plots - #8 by nazar-pc](https://forum.autonomys.xyz/t/more-rewards-on-smaller-plots/1660/8)  
There are simply several relatively small plot files, like this:

```auto
path=/media/aorus-1/plot1,size=111679874151 \
path=/media/aorus-2/plot0,size=111679874151 \
path=/media/aorus-2/plot1,size=111679874151 \
path=/media/aorus-3/plot0,size=111679874151 \
path=/media/aorus-3/plot1,size=111679874151 \
path=/media/aorus-4/plot0,size=111679874151 \
path=/media/aorus-4/plot1,size=111679874151 \
path=/media/aorus-5/plot0,size=111679874151 \
path=/media/aorus-5/plot1,size=111679874151

```

I proceeded from the experience of colleagues. Should I now replot everything? 😭

---

<div class="post-metadata">

**Author:** ![nazar-pc](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.autonomys.xyz/nazar-pc/32/6_2.png) [@nazar-pc](https://forum.autonomys.xyz/u/nazar-pc)\
**Post date:** [September 15, 2023, 8:37am UTC](https://forum.autonomys.xyz/t/the-remote-farmer-cannot-resume-the-connection-to-the-node-without-restarting-error-restartneeded/1887/4 "2023-09-15T08:37:33Z")

</div>

Things change quickly and we have already fixed underlying reasons for large plots that caused less rewards in [Release gemini-3f-2023-sep-11 · subspace/subspace · GitHub](https://github.com/subspace/subspace/releases/tag/gemini-3f-2023-sep-11). It is not necessary to replot, things will continue to work, but somewhat suboptimally, so no need to create small plots or recommend it to anyone. You’ll just spend more RAM and CPU for no reason.

---

<div class="post-metadata">

**Author:** ![Rabinovitch](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.autonomys.xyz/rabinovitch/32/99_2.png) [@Rabinovitch](https://forum.autonomys.xyz/u/Rabinovitch)\
**Post date:** [November 10, 2023, 3:52pm UTC](https://forum.autonomys.xyz/t/the-remote-farmer-cannot-resume-the-connection-to-the-node-without-restarting-error-restartneeded/1887/5 "2023-11-10T15:52:45Z")

</div>

The problem looks a little different these days, but I believe this topic is still suitable for it. The remote farmer cannot resume the connection to the node if the node has been restarted (for example, to update the version).

```plaintext
Nov 10 18:31:26 lenovo7 subspace-farmer[2339391]: 2023-11-10T15:31:26.431653Z ERROR jsonrpsee_core::client::async_client: [backend]: Networking or low-level protocol error: WebSocket connection error: connection closed
Nov 10 18:31:26 lenovo7 subspace-farmer[2339391]: 2023-11-10T15:31:26.431652Z ERROR jsonrpsee_core::client::async_client: [backend]: Networking or low-level protocol error: WebSocket connection error: connection closed
Nov 10 18:31:26 lenovo7 subspace-farmer[2339391]: 2023-11-10T15:31:26.431662Z ERROR jsonrpsee_core::client::async_client: [backend]: Networking or low-level protocol error: WebSocket connection error: connection closed
Nov 10 18:31:26 lenovo7 subspace-farmer[2339391]: 2023-11-10T15:31:26.431651Z ERROR jsonrpsee_core::client::async_client: [backend]: Networking or low-level protocol error: WebSocket connection error: connection closed
Nov 10 18:31:26 lenovo7 subspace-farmer[2339391]: 2023-11-10T15:31:26.431705Z ERROR jsonrpsee_core::client::async_client: [backend]: Networking or low-level protocol error: WebSocket connection error: connection closed
Nov 10 18:31:26 lenovo7 subspace-farmer[2339391]: 2023-11-10T15:31:26.431715Z ERROR jsonrpsee_core::client::async_client: [backend]: Networking or low-level protocol error: WebSocket connection error: connection closed

```

So I need to restart the farmer(s) too.  
`gemini-3g-2023-nov-09`

---

<div class="post-metadata">

**Author:** ![Qwinn](https://avatars.discourse-cdn.com/v4/letter/q/8baadc/32.png) [@Qwinn](https://forum.autonomys.xyz/u/Qwinn)\
**Post date:** [November 10, 2023, 4:44pm UTC](https://forum.autonomys.xyz/t/the-remote-farmer-cannot-resume-the-connection-to-the-node-without-restarting-error-restartneeded/1887/6 "2023-11-10T16:44:09Z")

</div>

Farmer and node are version-updated at the same time, so wouldn’t you want to restart the farmers to also update the version anyway? Otherwise you’d be running two different versions between node and farms.

My process has been, prep all my scripts to run the new version for both node and farmer, then shut down all farmers, then shut down node, then restart node, then restart farmers.

---

<div class="post-metadata">

**Author:** ![nazar-pc](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.autonomys.xyz/nazar-pc/32/6_2.png) [@nazar-pc](https://forum.autonomys.xyz/u/nazar-pc)\
**Post date:** [November 10, 2023, 6:07pm UTC](https://forum.autonomys.xyz/t/the-remote-farmer-cannot-resume-the-connection-to-the-node-without-restarting-error-restartneeded/1887/7 "2023-11-10T18:07:24Z")

</div>

It was always the case and will likely be for some time, but farmer should shut down when node does shortly after those errors.  
But generally should should upgrade both together anyway because not all releases are cross-compatible with each other.

---

<div class="post-metadata">

**Author:** ![Rabinovitch](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.autonomys.xyz/rabinovitch/32/99_2.png) [@Rabinovitch](https://forum.autonomys.xyz/u/Rabinovitch)\
**Post date:** [November 10, 2023, 9:12pm UTC](https://forum.autonomys.xyz/t/the-remote-farmer-cannot-resume-the-connection-to-the-node-without-restarting-error-restartneeded/1887/8 "2023-11-10T21:12:09Z")

</div>

I knew that the details presented in the post would not be enough. But after all, the farmer cannot restore the connection even after restarting the node for any other reason. I wrote “for example”, didn’t I? 😉
