Greetings all,
Recently I've linked my BBS to a rather unreliable news server (there is unique groups on there that other news servers don't have). Unfortunately because of it's unreliability I've had a bunch of issues trying to mirror all the content, as I keep running into various problems such as:
- Random disconnects
- Infinite loop (100000000 branches) detected issue
To get around the Infinite loop problem, I tried setting at the beginning of newslink.js the following:
branch_limit = "0";
Unfortunately, that seems to do nothing at all.
Whenever a random issue happens, be it disconnection or infinite loop, the message import PTRs are not updated, so, the BBS starts from the beginning and ignores a bunch of messages after downloading them as it already has them.
I looked at the sourcecode of where the pointers are retrieved, from my understanding it's from the .snl file in /data/subs/. Unfortunately when I open it up, it's in some binary format I don't quite understand. Looking at the javascript code, used newslink.js, I'm just not getting how it's set.
So I can't manually fix the number.
I've resorted to temporarily hardcoding the PTR number in the newslink.js, but I think a better workaround would be updating the PTR number in
the .snl file everytime a article is downloaded, rather than when the
entire transaction is complete.
While I do more or less understand what's going on in newslink.js, I'm really confused about what I would need to modify in the file to make this happen and would appreciate help on this. I also consider the fact that
PTRs aren't updated with every article download is a bug.
I'd suggest limiting the number of messages downloaded per execution of newslink.js and that'll avoid the problem altogether with no modification
of newslink.js necessary.
Sysop: | Tandy |
---|---|
Location: | New York, USA |
Users: | 15 |
Nodes: | 13 (0 / 13) |
Uptime: | 02:01:04 |
Calls: | 335 |
Messages: | 113,420 |