ππ·π΄ ππ°π³πΈπΎ ππ·π°π π²π°π½ πππ½ ππ½ππΈπ» ππ΄π°π πΏπΏπΏπΏ — ππΈππ·πΎππ π±πΈπ»π»πΈπΎπ½π πΎπ΅ ππΎππ
The Radio That Runs to Year 9999
Rave the World Radio has a new kind of clock. Not a countdown. A schedule that already knows the next song — including the one that starts on the last second MySQL will admit exists.
31 December 9999, 23:59:59 UTC.
That is the ceiling of a MySQL DATETIME.
It is also now a real play time on
ravetheworldradio.com
.
The Problem That Looked Like a Billion Rows
The station does not shuffle in the listener’s browser and
hope for the best. Each channel — Main, Electro, Chill-out,
Goa-Trance, Hardcore, Afrobeats — has a play log:
track name, genre, and played_utc.
The player asks only: what started in the last ten minutes, and what is queued next?
5–6 BILLIONROWS?
If you materialise every play from now until that DATETIME wall, you are staring at roughly five to six billion rows across six streams.
That is not a clever database. That is a warehouse.
The Lossless Trick
Listen to Electro for half an hour and the secret is obvious. Nine tracks. Same order. Then the first one again. The loop is 1,747 seconds — a little under 29 minutes.
- Arpent
- Bit Bit Loop
- Blippy Trance
- Fresh Focus
- Ice and Snow
- Jungle Mission
- Kosmose Vaikus
- Mere Hingamine
- Rahulik Suda
Epoch (UTC): 27 February 2026, 07:41:56.
That formula is the billion-row table. Storing the nine names and their lengths is the raw data. Expanding it into billions of inserts would only repeat the same block until the calendar runs out.
A Date You Can Audit
Pick a ridiculous afternoon: 15 June 2099, 12:00:00 UTC.
The song is Arpent. It started at 11:57:43 and ends at 12:00:25.
Loop number:
1,324,001
On the last legal DATETIME, 9999-12-31 23:59:59 UTC, Electro is in Kosmose Vaikus, started at 23:54:58.
No UNIX_TIMESTAMP() on these dates.
After 19 January 2038 that function returns zero.
The schedule uses DATETIME arithmetic so year 9999
does not fall off a 32-bit cliff.
What the Listener Actually Loads
The public page still looks like a radio. It synthesises a short window: ten minutes back, twelve hours ahead.
A handful of rows. The six cycles on disk are about 132 tracks, not 132 million.
The MP3s did not move. The URLs did not change. Only the idea of “the log” got honest.
Why Prolong It?
A 24/7 station is a promise that someone, somewhere, can press play and hear a decided next track. Most streams fake that with a live encoder. This one can point at a calendar instead.
I like that the proof fits in a spreadsheet: two loops, then a handful of spot dates. I like that a home playlist export (M3U + the raw filenames) is the same contract the server uses.
SO IS THE RADIO.
ONE OF THEM WE CAN ACTUALLY SCHEDULE.
Sources & Technical References
- MySQL — Date and Time Data Types — DATETIME range and storage behaviour.
- MySQL — Date and Time Functions — Date arithmetic and temporal functions.
- Rave the World Radio — Public radio channels and scheduling system.
- Climate Clock — Climate-emergency reference used in the article.
Technical calculations and playlist-cycle examples are based on the station's scheduling data and implementation.


Comments
Post a Comment