Tiny corrupting old data

Support requests, bug reports, etc. go here. Dedicated servers / VDS hosting only
Striker21
Bear Rating Trainee
Bear Rating Trainee
Posts: 42
Joined: 27 Oct 2015, 00:30

Tiny corrupting old data

Postby Striker21 » 26 Dec 2016, 19:03

VPS, Ubuntu 14.04, PostgreSQL, Tiny Tiny RSS v16.8 (557d86f) (main git)


I just discovered today that Tiny is corrupting old data, updating old entries with new data belonging to another publication (just keeping the link). As with most things I believe it's due to badly coded feeds, though it's also a concern as what triggers it is not easily seen from a user perspective and I personally think it should not happen in any case.

Website A - http://mmorpg.org.pl/rss?format=rss
This sites specifies their <guid>24641</guid> this way, this is one of the later ones from today.

Website B - http://mmo.one/rss/
This sites specifies their <guid isPermaLink="false">25651</guid> this way, this is one of the later ones from today.

Now website B logically overlapped website A GUID wise some while back and that is also the problem as far as have been able tot debug. When TTRSS fetches news from website A with e.g. GUID 24641 this is then matched to website B GUID 24641 and that news gets updated instead of a new news being created for Website A. This in turn results in fresh news popping up on website B where the title and content reflects the real new news on website A, but the link is kept from the old article on website B.

Now I presume these sites should not be using GUID the way they do, though it's also not an easy one to spot nor control. I'd love if there is a TTRSS solution to this, though the only thing that comes to mind would to at least ensure that GUID can only affect an update within the same website that is being fetched (if it exists) at least that makes sense to me (as why would any feed be allowed to update entries of another feed right?)

Looking forward hearing your thoughts on this.

Christian

User avatar
fox
^ me reading your posts ^
Posts: 6318
Joined: 27 Aug 2005, 22:53
Location: Saint-Petersburg, Russia
Contact:

Re: Tiny corrupting old data

Postby fox » 26 Dec 2016, 19:13

who would've thought that a random integer number is not a particularly good Globally Unique Identifier :thinking:

i guess the good news is you can only overwrite your own data by subscribing to these feeds because tt-rss includes local user id to the internal database identifier

other than that, as far as i'm concerned this is working as intended

e: no, i'm not going to limit article GUIDs to one feed, because some horribly coded abortions like you linked exist. these people need to fix their shit instead. i'm sure even a retard-tier fuckwit of a web developer might at some point understand that he is not alone on the internet and his mysql database row id for his shitty video game blogpost is not a fucking guid.

Striker21
Bear Rating Trainee
Bear Rating Trainee
Posts: 42
Joined: 27 Oct 2015, 00:30

Re: Tiny corrupting old data

Postby Striker21 » 26 Dec 2016, 19:39

Ha-ha, yes not a smart move :) globally means locally for some clearly.

Though in my case it is now overwriting old data by updating them as mentioned and not fetching the new ones sort of as a result as well (I got some 1700 feeds under my user ID so I guess it was bound to happen sooner or later). I'm looking to create some sort of hotfix, any thoughts on a temporary fix while I try to get these badly coded feeds updated with something that truly makes them globally unique?

Is the place in your code an easy edit and if so where if I would go that route... or would I have to look to use e.g. feedcleaner to do some magic?

Striker21
Bear Rating Trainee
Bear Rating Trainee
Posts: 42
Joined: 27 Oct 2015, 00:30

Re: Tiny corrupting old data

Postby Striker21 » 26 Dec 2016, 19:45

Never-mind, hmm, I never figured out if I can get the feedcleaner to more dynamically remove a part of the code with regex as I've never gotten any examples to work for that - as in fully removing <guid>*</guid> as I process. So for a temporary solution this will do I guess { "URL": "http://mmorpg.org.pl", "type": "regex", "pattern": "/<guid>/", "replacement": "]]<guid>mmorpgorgpl" },

Thanks for taking time to feedback in all cases fox, much appreciated! Merry xmas and a happy new year!

User avatar
fox
^ me reading your posts ^
Posts: 6318
Joined: 27 Aug 2005, 22:53
Location: Saint-Petersburg, Russia
Contact:

Re: Tiny corrupting old data

Postby fox » 26 Dec 2016, 20:04

yeah completely removing guid will work just fine, it isn't even a required attribute

better not having it at all in the feed than having something like the above

JustAMacUser
Bear Rating Overlord
Bear Rating Overlord
Posts: 373
Joined: 20 Aug 2013, 23:13

Re: Tiny corrupting old data

Postby JustAMacUser » 26 Dec 2016, 21:21

I'd also like to suggest you contact the site owners since you are probably not the only one affected. Even something as simple as throwing in their domain name in front of the article ID will help make it unique.

Striker21
Bear Rating Trainee
Bear Rating Trainee
Posts: 42
Joined: 27 Oct 2015, 00:30

Re: Tiny corrupting old data

Postby Striker21 » 27 Dec 2016, 02:04



Return to “Support”

Who is online

Users browsing this forum: Bing [Bot], Google [Bot] and 10 guests