WSPR Challenge
People say they have missed the original WSPR Challenge so I wizzed up a look-alike. Not sure what I've missed by way of pages and functionality, the WayBack machine doesn't have the whole site so if anyone can assist with any comments about what I've missed, that would be good. Bug reports welcome; one issue is it's no longer possible to report duplicates as per the original err column they used.
On Mar 5, 2023, at 5:50 AM, Phil vk7jj via groups.io <vk7jj@...> wrote:
[Edited Message Follows]
People say they have missed the original WSPR Challenge so I wizzed up a look-alike. Not sure what I've missed by way of pages and functionality, the WayBack machine doesn't have the whole site so if anyone can assist with any comments about what I've missed, that would be good. Bug reports welcome; one issue is it's no longer possible to report duplicates as per the original err column they used.
Thanks for checking it out Tom, barring bugs or other reported issues it will only be incremental changes for the next week or so.
Don't know what to do about sussing out the bad decodes and reporting them, will play around with that some time, don't even know how dups are getting through wsprnet.org, oh well.
73
Phil
On Mar 6, 2023, at 4:44 AM, Erwin - PE3ES - F4VTQ via groups.io <waterwin2@...> wrote:
Dupes get past the wsprnet.org filtering when posted at "exactly" the same moment.
Hi Erwin, I don't think that is possible from a code processing point of view. In the case where two uploads arrived simultaneously, even on a multi-threaded machine there is only a single processor thread servicing that bit of code, so 'that bit of code' always gets executed. It can't just 'go into the database'.
There is quite a bit of processing before it gets to that point such as the event driven TCPIP port hardware and caching that does the initial processing on the ethernet card before the data is passed to the computer's PHP code, in a nice neat queue.
Here is their db dup checking code as last I knew; you can see that nothing can get into the db without the dup check.
I've been looking into the problem and there does seem to be a common denominator, all the dupers so far are those who run multiple different versions of 'uploading software' including home-brew. Yes, there are 'lock, release and rollback' timing issues with database engines but if that is what's happing it would occur regardless of the version of upload software, so the version issue seems a logical pointer to 'something' but I guess only Gary or Bruce etc would have the knowledge and opportunity to chase it up.
Phil
$dupecheck = "SELECT Spotnum from spots
WHERE Reporter='$rcall' AND CallSign='$tcall'
AND Date=$datestamp AND Band=$band;
$dupes = dbqarray($dupecheck);
//if ($verbose && !$dupes) echo "$dupecheck\n";
if (count($dupes) > 0) {
//logfile("debug.txt", $dupecheck . " found " . count($dupes) . " dupe(s)\n");
if ($verbose) echo "Found " . count($dupes) . " dupe(s)\n";
return 0;
}
$query = "INSERT INTO `spots`
(`version`, `Date`, `Reporter`, `ReporterGrid`, `dB`, `MHz`, `CallSign`, `Grid`, `Power`, `Drift`, `Band`, `distance`, `azimuth`, `code`)
VALUES ('$version', $datestamp, '$rcall', '$rgrid', $snr, $freq, '$tcall', '$tgrid', $tdbm, $drift, $band, {$spotdist[0]}, {$spotdist[1]}, $mode)";