Comments (7)
from telraam.
Ziet er goed uit, merci!
from telraam.
On second thought, it might not be ideal to delete all laps and then save them again: this does a lot of writes to the database, and will keep increasing lap ids. Do you have a suggestion for a better approach? I think maybe you can compare the laps by their timestamp (if they lie in a 5 second interval, they are the same, so you can just edit their timestamp), and only insert new laps and delete unneeded laps?
Additionally, if any laps other than the last one is edited, a lap is deleted or there's an insertion between already existing laps, maybe log this, since this would be strange (will happen in the case of a station getting disconnected and reconnected later)
from telraam.
(Also, pls werk met pull requests, dat maakt het makkelijker om comments toe te voegen op een specifieke lijn)
from telraam.
I meant to work with a pull request but because of an oversight it immediately got pushed to the development branch my bad.
The save method is indeed not ideal.
I'm working on a new version that only fetches the new detections instead of going through all the detections. Since it only calculates the new laps it'll only add those to the db.
from telraam.
Yeah no worries about the accidental push :) I've enabled branch protection, this was misconfigured.
The version that only fetches new detection sounds more efficient :) There are however some pitfalls/edge cases:
- Telraam may be restarted during the event
- If there are two detections, A and B, and A has a higher detection id then B, then this does not mean that A's timestamp is after B.
- common case: the fetcher that fetches the detections from the stations does not run at the same time for every station, so detections from one station may be inserted later than detections from another station, even if the detections happened earlier
- less common case: some stations can become temporarily disconnected, for example by the Ethernet cable getting driven over, while the detections from other stations are still getting inserted. After the connection is restored, the detections from the disconnected stations will be pulled in, maybe leading to different behaviour of the lapper. If the algorithm runs only with the newly inserted detections, so without the detections that are in time around the newly inserted detections, strange things will happen.
from telraam.
This was done, thanks @Topvennie
from telraam.
Related Issues (20)
- feat: Positioners HOT 2
- feat: Retrieve lapCount by lapSourceId
- feat: WS endpoint for loxsi HOT 3
- chore: cleanup
- Get CI running again
- Dynamic thread creation for Station Fetchers
- Remove SimpleLapper
- Positioner
- Allow multiple Positioners
- Fetcher: move to WS based fetcher
- BatonDetection expects a teamId?
- Remove BatonId HOT 1
- SimplePositioner freaks out due multi-threading HOT 2
- Add assertion that station IDs are ordered by distance and make sense
- Slapper: Remove hardcoded variables
- Slapper: Support less or more than 7 stations
- Standardize on either upper or lower case MAC addresses HOT 3
- Lapper and positioner don't agree HOT 1
- Remove baton_id from team model HOT 1
- Nostradamus: Investigate
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 telraam.