System clock updates can cause a TinyPilot update to time out
Nobody has claimed this yet.
Assessment
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Newbie friendliness
- 62/100
- Issue type
- Bug
- Clarity
- Clearly specified
- Activity status
- Stale
- Tech stack
- python, raspberry-pi
- Domain
- operating-systems, release
Research direction
Start by reading scripts/update-service, especially the timeout logic linked in the issue, and review Python's time.monotonic documentation. Verify that a system clock update during an update no longer causes the ten-minute timeout to trigger; use the issue's example as context for the expected failure.
Written by the indexing model from the issue text.
Description
TinyPilot's update service times out if the update takes longer than 10 minutes.
The problem is that TinyPilot has no real time clock and relies on NTP to set time. Every time the Pi shuts off, its system clock falls behind until it contacts NTP to get the latest time.
If the system time updates in the middle of a TinyPilot update, the time jump forward will fool the update process into thinking that the update has timed out.
Example: https://github.com/tiny-pilot/tinypilot/issues/1392#issuecomment-1571733803
It's probably possible to avoid this by timing out based on a monotonic timer that doesn't change due to system time updates like time.monotonic.
- Dominant language
- Python
- Stars
- 3.5k
- Forks
- 292
- PR merge metrics
- No merged PRs in 30d
Getting set up
- No Dockerfile or Docker Compose file
- No pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from tiny-pilot/tinypilot
-
enhancement
Difficulty 5/5 Over a week Newbie friendliness 35/100
tiny-pilot/tinypilot#1929 · 3 comments ·
-
bug
Difficulty 3/5 1-2 days Newbie friendliness 35/100
tiny-pilot/tinypilot#1899 · 1 comment ·
-
Difficulty 4/5 3-5 days Newbie friendliness 35/100
tiny-pilot/tinypilot#1896 ·
-
enhancement
Difficulty 5/5 Over a week Newbie friendliness 35/100
tiny-pilot/tinypilot#1882 ·
-
Provide canonical dev setupMay be free again @jotaen4tinypilot claimed this 258 days ago, and no pull request is open. Openenhancement
tiny-pilot/tinypilot#1876 · 9 comments · 1 assignee ·
All issues in tiny-pilot/tinypilot
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
Maintainers usually reply within 1 day
-
Difficulty 2/5 Half a day Newbie friendliness 70/100
Maintainers usually reply within 1 day
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
Qiskit/qiskit-ibm-runtime#3431 · 1 comment ·
Maintainers usually reply within 1 day
-
[Lesson] A compatibility-gate rejection is a verdict, not something to overwrite with --accept-riskOpenlesson-submission needs-ac pending-review
Difficulty 2/5 1-3 hours Newbie friendliness 65/100
Ikalus1988/MisakaNet#2870 ·
Maintainers usually reply within 1 day
-
feature:LinkChecker
Difficulty 2/5 1-3 hours Newbie friendliness 66/100
digitalfabrik/integreat-cms#4594 ·
Maintainers usually reply within 5 days