Comments (5)
To gain better control of time-outs am doing a large refactor to allow adjustment on every read and write call.
from els.
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.
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.
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.
These changes have now been running for over 30 days without error.
from els.
Related Issues (20)
- Update documentation
- Update ELS Plex Generator HOT 1
- Fix new start-up & general usability HOT 12
- Hints must be created on a single publisher HOT 7
- Move projects from GrokSoft to Corionis HOT 1
- Null pointer in System tabs HOT 1
- Remote connection not restored using last publisher/subscriber HOT 1
- Full regression test HOT 1
- Editing Library Sources is problematic HOT 3
- Content metadata discovery & analysis
- Force date match tool HOT 1
- Test on macOS and create .dmg distribution file HOT 7
- Build macOS .tar.gz distributable download HOT 1
- 4.0 Release
- Release regression test
- Make updater work without a GUI
- Monitor Tool
- Exception if any configuration directory is a symbolic link
- Updates fail for multiple users HOT 3
- Locations tab bugs HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from els.