|
ahamai> ну тогда это оверхед в коде. когда я делал, сравнить мне было не с чем, просто сделал на ровном месте, но по http оно работает ровно так, как было сделано в первой версии (хотя я много что забыл, но всё равно как-то работает). поэтому мой вариант естественно не оптимален и не идеален, и если кто-то сделает гораздо красивее, я с радостью перейду на этот формат.
Ну вот, кстати, я начал просто отслеживать хэши сообщений вместе с айдишниками, и после перефетча (со всего, кроме spline-online) из 17614 сообщений 14067 оказались с корректными айдишниками (сравнивал по функции LOWER() в базе, так что нюансы с A-z не важны), а вот 3547 сообщений имеют айдишники, которые вообще описанному в доках хэшу не соответствуют. Вопрос: был/имеется ещё какой-то алгоритм хэширования или что за фигня там происходит? А потом коллизиям удивляются.
Статистика сообщений с левыми ID по эхам (не считая spline):
sqlite> SELECT DISTINCT `echoname`, COUNT(`id`) FROM `msg` WHERE LOWER(`msgid`) != LOWER(`content_id`) GROUP BY `echoname`; blcat.local|1 develop.16|17 game.rogue.14|39 idec.talks|322 idec.test|13 ii.stat|7 linux.14|341 lit.14|4 lor-opennet.17|1 lor.gold|31 music.14|34 ping.local|4 pipe.2032|1123 plan.9|2 python.15|8 retro.talks|27 ru.humor.14|35 spnet.stats|1 std.club|1241 std.favorites|2 std.game|139 std.hugeping|68 std.hugeping.micro|2 std.prog|36 std.rein|1 std.tech|47 zx.spectrum|1
|