Giter VIP home page Giter VIP logo

Comments (5)

Corionis avatar Corionis commented on June 2, 2024

To gain better control of time-outs am doing a large refactor to allow adjustment on every read and write call.

from els.

Corionis avatar Corionis commented on June 2, 2024

Discovered part of the issue is a time-out enforced by an ISP that cannot be controlled by the software. This has required the addition of an internal "heartbeat" beyond basic TCP/IP time-out settings. In the process of adding and testing a new arrangement to better handle time-outs, heartbeats, and exceptions. This should cure hang problems but requires significant testing.

from els.

Corionis avatar Corionis commented on June 2, 2024

Background on communications changes:

Previously ELS used time-outs enforced by the sftp protocol to manage behavior. That approach was problematic because the stty protocol could hang in a read() operation if something failed in an odd way.

To address time-out and process hang issues the approach was changed to use stty to manage behavior and an infinite time-out for sftp. This allows the use of read() time-outs with stty that can control sftp better than the previous technique.

Along the way discovered an issue with time-outs enforced by an ISP. That necessitated an internal "heartbeat" that is automatically sent once per minute to keep a connection alive during long-running operations - such as backing-up a large movie file or performing a subscriber scan of all content on a slower computer.

The result makes ELS more predictable and reliable with various Internet connection oddities.

These are significant changes impacting a lot of code. It is being used daily for my media collection. After it has run successfully for several days this issue will be closed.

from els.

Corionis avatar Corionis commented on June 2, 2024

This build of ELS 4.0 has been running flawlessly for 10 days with the oddities mentioned in the other comments. The new approach is working well. Don't forget to add the "timeout" element to your JSON files, in minutes. Example: "timeout" : "15",

from els.

Corionis avatar Corionis commented on June 2, 2024

These changes have now been running for over 30 days without error.

from els.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.