Database

Manage DB

Browse collections and tables, and watch the CQRS timing pipeline.

← Overviewβ€’Course & GeographyLogical Milestone

Course Splitscourse_splits

A logical milestone along a course at a cumulative distance, pointing to a physical TimingPoint.

Table Columns & Types (11)

course_splits
ColumnPostgreSQL TypeConstraintsDefaultDocumentation
iduuid
NOT NULLPK
gen_random_uuid()Unique course split identifier.
courseIduuid
NOT NULLFK -> courses.id
β€”Course track.
timingPointIduuid
NOT NULLFK -> timingPoints.id
β€”Physical timing station.
nametext
NOT NULL
β€”Split milestone name (e.g. "Twin Lakes Inbound").
sequenceOrderinteger
NOT NULLUnique with courseId
β€”1-based chronological checkpoint progression order.
distanceFromStartMetersdouble precision
NOT NULL
β€”Cumulative distance from start line in meters.
subSplitBitmapinteger
NOT NULL
1Bitmask: 1=IN (arrival), 2=OUT (departure), 3=IN+OUT (dwell tracked).
cutoffDurationSecondsinteger
nullable
β€”Mandatory station departure cutoff duration relative to event gun start.
tsdIdealDurationSecondsdouble precision
nullable
β€”Target ideal elapsed seconds for TSD regularity rally scoring.
isSecretCheckpointboolean
NOT NULL
falseSecret regularity stage checkpoint hidden from competitor roadbooks.
createdAttimestamp with time zone
NOT NULL
now()Creation timestamp.

Database Indexes (2)

Index NameColumnsTypeQuery Performance Rationale
course_splits_order_idx(courseId, sequenceOrder)UNIQUEGuarantees strict sequential ordering of checkpoints along a course.
course_splits_course_dist_idx(courseId, distanceFromStartMeters)INDEXAccelerates distance-based milestone queries and elevation profile charting.