Queue Status
Queue Status answers one question: is JudoNet keeping up?

JudoNet does not do its work the instant a packet arrives. Packets go into queues and are dealt with in batches, which is what lets it cope with several mats reporting at once.
The page updates itself every five seconds. You do not need to reload it — leave it open on a second screen during a session and it stays current. If it cannot reach JudoNet it says so at the top, rather than leaving old numbers on screen looking live.
The page is divided into blocks, and they are of two kinds:
| Kind | What it tells you | How it behaves |
|---|---|---|
| Waiting now | How much work is queued but not yet done | Goes up and down. Should not keep climbing. |
| Everything else | How much has been sent, and how much failed | Only ever goes up. A large number is not a problem. |
Waiting now
| Row | What it means |
|---|---|
| Packets waiting to be saved in a file | Packets queued to be written to the packet files on disk. |
| Packets waiting to be stored locally in the database | Packets queued for JudoNet's own database. |
| Packets dropped because the file queue was full | Packets lost — see when storage falls behind. |
| Packets dropped because the database queue was full | The same, for the database. |
Small numbers that keep changing are healthy. During a busy session the queues fill and empty constantly; a number of a few dozen that drops again a second later is JudoNet working normally. No marker appears until a queue passes 100, which is also the point at which JudoNet raises an alert of its own.
A number that only grows is the warning sign. It means work is arriving faster than JudoNet can clear it, and something is wrong underneath — see when storage falls behind.
Zero everywhere is also normal — during a break, or between sessions, there is simply nothing to do.
The two "dropped" rows should always read zero. They count packets JudoNet accepted and then had to throw away because the queue filled up. Those packets are gone and cannot be recovered. Any number above zero here is marked in red and means data from this competition is missing.
UDP sending — by channel
One row for each thing JudoNet broadcasts to on the local network.
| Channel | Goes to |
|---|---|
| Graphics | CG - JudoGraphics, on port 5000. |
| FairReplay markers | Markers and events — ippon, shido, winner, first hajime — on port 5001. |
| FR Recorder data | The live time and score overlay, on port 5002. |
The columns:
| Column | Meaning |
|---|---|
| Waiting | Queued but not yet broadcast. |
| Accepted | Total packets taken in for this channel. |
| Sent | Total broadcast successfully. |
| Failed | No network interface would accept the packet. |
| No interface | There was no interface enabled to send on. |
| Superseded | A newer packet for the same mat replaced one still waiting. Normal — see below. |
Counts are packets, not network sends. A packet broadcast to three interfaces counts once here. The per-interface table below is where individual sends are counted.
What each column tells you when it moves
Failed is a network problem. The packet reached the sending stage and every enabled interface refused it.
No interface is a settings problem, not a network one — nothing was switched on to send through. This is the counter that finally makes an old trap visible: previously the graphics queue would empty normally and read zero while nothing actually left the PC. Now that case has its own number.
Superseded is normal, and will be non-zero at every competition. It means a newer packet for the same mat arrived before the previous one had been sent, so the older one was dropped in favour of the newer. It does not mean sending is falling behind.
The scoreboard sends on a fixed rhythm and again whenever the board changes. A contest timer rolling 03:27 to 03:26 is a change, so when a roll lands beside a rhythm tick, two packets for that mat arrive microseconds apart and the newer one is kept. Two unsynchronised clocks coinciding is all this counter records.
Nothing is lost. Only the UDP sending queue replaces packets. Local storage is a separate sink that does not coalesce, so both packets of a pair are still written — the stored record of the competition is complete either way.
The older packet is dropped rather than sent late because these channels carry what is happening now, and sending a stale scoreboard state is worse than sending nothing.
Measured over an eight-mat hour: 56 replacements against 30,664 packets on each channel — 0.17% on the graphics channel, and fewer on the recorder. Every displaced packet had been waiting between 0.3 and 1.3 ms, nowhere near the fifth of a second that a sender actually falling behind would show.
FairReplay markers show n/a for Superseded, and that is correct. Markers carry their own timestamps, so one that arrives late is still accurate, and dropping one would lose an event from the recording for good. They are never replaced — only the two live-state channels are.
A failed broadcast is never retried. If a packet cannot go out, it is discarded and JudoNet moves on to the next one. Retrying would mean delivering old scoreboard state after newer state had already gone, which is worse than the gap. This is why the failure counters matter: nothing is going to quietly fix itself later.
UDP sending — by network interface
The same sending, counted per network adapter, so one adapter failing can be told apart from all of them failing.
| Column | Meaning |
|---|---|
| Interface / IP Address | Which network connection. |
| Status | Whether UDP sending is enabled on it. |
| Sends OK | Individual network sends that succeeded. |
| Send errors | Individual network sends that failed. |
These are individual sends, so the totals here are naturally larger than the channel totals — one packet going to three interfaces adds three.
One interface showing errors while others do not points at that adapter: unplugged, disabled in Windows, or on a network that has gone away. All of them showing errors at once points at something broader.
An interface listed as not active with zero counts is normal — it simply is not being used for broadcasting. Which interfaces are enabled is set on Live data.
Repeated send failures are not written to the log one line per packet. The first is logged in full and the rest are summarised periodically, so a broken adapter cannot bury everything else. The counters here always count every failure regardless.
Sent to the platform
Three blocks of counters for data going to the online platform. They only ever climb, so a large number means JudoNet has been busy, not that anything is wrong.
Realtime packets — the live stream of what the scoreboards are showing.
| Row | Meaning |
|---|---|
| Packets currently sending | How many are in the batch being sent at this moment. |
| Requests sent with realtime data | Total requests attempted. |
| Successful requests | Requests that succeeded. |
| Packets accepted | Individual packets the platform accepted. |
| Packets rejected / Failed requests | Individual packets, and whole requests, that failed. |
Data packets — the bulk upload of stored packets.
| Row | Meaning |
|---|---|
| Data packets sending | Size of the batch currently being sent. |
| Data packets sent OK / errored | Individual packets accepted or rejected. |
| Data packet requests / Successful / Failed | The same, counted as whole requests. |
These stay at zero on a JudoManager (JM) competition. The bulk upload only runs against Judobase (JB), and only while Store Online is on. Zeros here are not a fault at a national or club event.
Contest times — the start and end time of each contest.
| Row | Meaning |
|---|---|
| Times sending requests | Total attempts. |
| Times sent OK / Times sent with errors | How many succeeded and how many failed. |
Reading the counters
Within each block the successes are listed first and the failures last, so the bottom of each block is where to look.
A red dot appears beside any failure count above zero. That is the thing to look for — you do not have to read the numbers themselves.
An amber dot means something that needs attention but is not a failure: a queue that has grown past 100, or the No interface column above. No dot ever appears beside Superseded — it is normal at any value, and JudoNet renders it as a plain number.
A failure count that rose earlier and has since stopped rising is history, not a live problem — the dot stays because the total is still above zero. To tell the difference, watch whether the number is still climbing, and check Alerts and Errors, which reports the reason and clears when the problem resolves.
Resetting the counters
Reset counters sets every total on this page back to zero. It is the practical way to start a competition from a clean slate, so that any number appearing afterwards belongs to this session rather than to testing you did that morning.
- The button appears only when you are signed in, and asks for confirmation.
- It clears the totals only. Queued work is untouched and still gets sent — resetting does not throw anything away.
- The accumulated totals cannot be recovered afterwards.
The platform counters also reset by themselves when a different JudoManager server is selected, because JudoNet reconnects from scratch. A page full of zeros just after you changed server is expected.
When storage falls behind
JudoNet raises an alert by itself once more than 100 packets are waiting in either the file queue or the database queue. You will see it on Alerts and Errors as well as here.
| Queue that is growing | Usual cause |
|---|---|
| Waiting to be saved in a file | The disk is slow, full, or something is scanning the folder. |
| Waiting to be stored in the database | The disk is slow or full, or the database has grown very large because it was never cleared between competitions. |
What to check, in order:
- Free disk space on the JudoNet PC. This is the most common cause by far.
- Whether the database was cleared before this competition — see backing up and clearing.
- Antivirus scanning
C:\JudoNet. Real-time scanning of a folder being written to constantly slows it dramatically; excluding the folder is a normal thing to ask for.
If it keeps growing
JudoNet does not let a queue grow without limit — that would eventually exhaust the PC's memory and take packet reception down with it, which is worse than the original problem. Instead the queue has a ceiling. Once it is reached, the oldest packets are dropped to make room for newer ones, counted in the two dropped rows, and an alert is raised.
This is a deliberate last resort: bounded, visible loss instead of an unbounded failure. It does mean that by the time those rows are moving, data from this competition has already been lost.
A backlog is not cosmetic. Packets waiting in a queue have not been stored yet, and anything still queued when the service stops abruptly — a crash, or the PC losing power — is lost. A normal service stop flushes them first. If a queue is growing, deal with it during the competition rather than after it.
What this page does not show
The page now covers all three UDP broadcasts and both storage queues. What it still cannot tell you is whether anything is listening at the other end.
A packet counted as Sent left this PC successfully. It does not confirm CG - JudoGraphics or a FairReplay recorder received it — UDP broadcasting gets no acknowledgement back.
To check the other end, use:
- The FairReplay Recorders section of Live data — a red status means inputs are not recording.
- Alerts and Errors — connection problems are reported there.
- The UDP log,
C:\JudoNet\logs\UdpSenderService\udp-<date>.log, which records the broadcasts themselves.