Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Database: introduce Marker.TrackPointId column #1725

Closed
4 tasks
dennisguse opened this issue Oct 8, 2023 · 1 comment
Closed
4 tasks

Database: introduce Marker.TrackPointId column #1725

dennisguse opened this issue Oct 8, 2023 · 1 comment
Assignees
Labels
maintenance Required maintenance work

Comments

@dennisguse
Copy link
Member

For (unknown) historic reasons, the Marker's table links to the TrackPoint table by storing

  • TrackId
  • Latitude
  • Longitude
    In case there are duplicate TrackPoints (e.g., visiting the same place twice during one track recording), the first TrackPoint is chosen.

I guess, back then this kind of convenient (it is also in line with the exports in KML/GPX).
This is however, not that great as it kind of tricky to maintain.

The goal is to simplify this, by replacing Marker's.latitude/longitude by introducing Markers.TrackPointId.

Affected Modules:

  • Import/Export (KML/GPX)
  • ChartView
  • MarkerList
  • CustomContentProvider / ContentProviderUtils

PS/ as TrackPoint.Id is unique within OpenTracks, Marker.TrackId may be dropped as well.
However, this column may have some performance benefits.

@dennisguse dennisguse added the maintenance Required maintenance work label Oct 8, 2023
@dennisguse dennisguse self-assigned this Jan 12, 2024
dennisguse added a commit that referenced this issue Jan 15, 2024
Required TrackPoint data is now loaded with a JOIN.

Part of #1725.
@dennisguse
Copy link
Member Author

#1831 (comment)

@dennisguse dennisguse closed this as not planned Won't fix, can't repro, duplicate, stale Feb 7, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
maintenance Required maintenance work
Projects
None yet
Development

No branches or pull requests

1 participant