What is "purge" supposed to do ?

Support requests, bug reports, etc. go here. Dedicated servers / VDS hosting only
Poupoul2
Bear Rating Trainee
Bear Rating Trainee
Posts: 8
Joined: 18 May 2008, 15:00
Contact:

What is "purge" supposed to do ?

Postby Poupoul2 » 03 Mar 2011, 11:37

Hi.
I'm a bit confused about the purge feature. I'm pretty sure that I did configure it proprely, but it does not seem to do what I'm expecting it to do (Please note that the issue might as well be on my side). For me, the articles meeting the purge criteria should be deleted. Is it correct ? Does it mean that that the related entries in the entries table in the DB should also disappear ?
My main concern is that, even with the purge, my DB is still growing, and I will not be able to keep my tt-rss installation, as the DB will be full in the next day. It looks like the purge is not...purging anything. Any help/explanation would be greatly appreciated.

Some information about my configuration :
- I'm using TT-RSS 1.5.1 on mysql on a distant mutualised host.
- I'm (successfully )updating the feeds thru a local wget :

Code: Select all

wget --output-document=/dev/null --timeout=600 "http://XXX/rss/backend.php?op=globalUpdateFeeds&daemon=1"
. Is there anything I should do to "activate" the purge ?
- Here is my config.php

Code: Select all

<?php
   // Your RDBMS must be configured to accept connections
   // via TCP/IP and authentified by password.

   define('DB_TYPE', "mysql"); // or mysql
   define('DB_HOST', "XXXX");
   define('DB_USER', "XXXX");
   define('DB_NAME', "XXXX");
   define('DB_PASS', "XXXX");
   //define('DB_PORT', '5432'); // when neeeded, PG-only

   define('MAGPIE_FETCH_TIME_OUT', 60);
   // Magpie's default timeout is 5 seconds.  Some RSS feeds,
   // such as from large Trac installs, can take significantly
   // longer than 5 seconds to generate.  To prevent failed
   // updates, increase this.

   define('MAGPIE_CACHE_DIR', 'cache/magpie');
   // Local cache directory for RSS feeds

   define('MAGPIE_CACHE_AGE', 60*30);
   // How long to store cached RSS objects? In seconds.
   // Defaults to 30 minutes

   define('ICONS_DIR', "icons");
   define('ICONS_URL', "icons");
   // Local and URL path to the directory, where feed favicons are stored.
   // Unless you really know what you're doing, please keep those relative
   // to tt-rss main directory.

   define('SINGLE_USER_MODE', true);
   // Operate in single user mode, disables all functionality related to
   // multiple users.
   
   define('TMP_DIRECTORY', '/tmp');
   // Directory for temporary files

   define('ENABLE_UPDATE_DAEMON', false);
   // This enables different mechanism for user-triggered updates designed
   // for update daemon running in background on the server.
   // This option suggests FEEDS_FRAME_REFRESH set to a small value
   // (like 60 seconds, depending on number of users and server/bandwidth load).

   define('DAEMON_SLEEP_INTERVAL', 120);
   // Interval between update daemon update runs

   define('DATABASE_BACKED_SESSIONS', false);
   // Store session information in a database, recommended for multiuser
   // configurations. Doesn't seem to work for everyone, so enable with caution.
   // tt-rss uses default PHP session storing mechanism if disabled.

   define('SESSION_CHECK_ADDRESS', 1);
   // Check client IP address when validating session:
   // 0 - disable checking
   // 1 - check first 3 octets of an address (recommended)
   // 2 - check first 2 octets of an address
   // 3 - check entire address

   define('SESSION_COOKIE_LIFETIME', 0);
   // Default lifetime of a session (e.g. login) cookie. In seconds,
   // 0 means cookie will be deleted when browser closes.

   define('SESSION_EXPIRE_TIME', 86400);
   // Hard expiration limit for sessions. Should be
   // greater or equal to SESSION_COOKIE_LIFETIME

   define('DAEMON_UPDATE_LOGIN_LIMIT', 0);
   // Stop updating feeds of user who haven't logged in specified
   // amount of days. 0 disables.

   define('CHECK_FOR_NEW_VERSION', true);
   // Check for new versions of tt-rss automatically.

   define('USE_CURL', false);
   // Use CURL to fetch remote data instead of PHP built-in fopen()

   define('DIGEST_ENABLE', false);
   // Global option to enable daily digests. Also toggles the ability of users
   // to forward articles by email.

   define('DIGEST_EMAIL_LIMIT', 10);
   // The maximum amount of emails sent in one digest batch

   define('DAEMON_SENDS_DIGESTS', true);
   // If update daemon and update_feeds should send digests
   // Disable if you prefer querying special URL (see wiki)

   define('ENABLE_TRANSLATIONS', true);
   // Enable support for interface translations

   define('MYSQL_CHARSET', 'UTF8');
   // Connection charset for MySQL. If you have a legacy database and/or experience
   // garbage unicode characters with this option, try setting it to a blank string.

   define('DEFAULT_UPDATE_METHOD', 0);
   // Which feed parsing library to use as default:
   // 0 - Magpie
   // 1 - SimplePie

   define('SIMPLEPIE_CACHE_DIR',   'cache/simplepie');
   // Cache directory for RSS feeds when using SimplePie

   define('SIMPLEPIE_CACHE_IMAGES', false);
   // Allow caching feed images when using SimplePie, to bypass hotlink
   // prevention and such at expense of local disk space and bandwidth.
   // Note that you (or your users) also have to enable image caching
   // in feed editor.
   
   define('COUNTERS_MAX_AGE', 365);
   // Hard limit for unread counters calculation. Try tweaking this
   // parameter to speed up tt-rss when having a huge number of articles
   // in the database (better yet, enable purging!)

   define('DIGEST_FROM_NAME', 'Tiny Tiny RSS');
   define('DIGEST_FROM_ADDRESS', '[email protected]');
   // Name, address and subject for sending outgoing mail. This applies
   // to password reset notifications, digest emails and any other mail.

   define('DIGEST_SUBJECT', '[tt-rss] New headlines for last 24 hours');
   // Subject line for email digests

   define('DIGEST_SMTP_HOST', '');
   // SMTP Host to send outgoing mail. Blank - use system MTA.

   define('DIGEST_SMTP_LOGIN', '');
   define('DIGEST_SMTP_PASSWORD', '');
   // These two options enable SMTP authentication when sending
   // outgoing mail. Require DIGEST_SMTP_HOST.

   define('DAEMON_FEED_LIMIT', 100);
   // Limits the amount of feeds daemon (or a cronjob) updates on one run

   define('ALLOW_REMOTE_USER_AUTH', false);
   // Set to 'true' if you trust your web server's REMOTE_USER
   // environment variable to validate that the user is logged in. This
   // option can be used to integrate tt-rss with Apache's external
   // authentication modules.

   define('AUTO_LOGIN', false);
   // Set this to true if you use ALLOW_REMOTE_USER_AUTH and you want
   // to skip the login form. If set to true, users won't be able to
   // set application language and settings profile.

   define('LOCK_DIRECTORY', 'lock');
   // Directory for lockfiles, must be writable to the user you run
   // daemon process or cronjobs under.

   define('ENABLE_GZIP_OUTPUT', false);
   // Selectively gzip output to improve wire performance. This requires
   // PHP Zlib extension on the server.

   define('PHP_EXECUTABLE', '/usr/bin/php');
   // Path to PHP executable

   define('ENABLE_REGISTRATION', false);
   // Allow users to register themselves. Please be vary that allowing
   // random people to access your tt-rss installation is a security risk
   // and potentially might lead to data loss or server exploit. Disabled
   // by default.

   define('REG_NOTIFY_ADDRESS', '[email protected]');
   // Email address to send new user notifications to.

   define('REG_MAX_USERS', 10);
   // Maximum amount of users which will be allowed to register on this
   // system. 0 - no limit.

   define('FEEDBACK_URL', '');
   // Displays an URL for users to provide feedback or comments regarding
   // this instance of tt-rss. Can lead to a forum, contact email, etc.

   define('FORCE_ARTICLE_PURGE', 10);
   // When this option is not 0, users ability to control feed purging
   // intervals is disabled and all articles (which are not starred)
   // older than this amount of days are purged.

   define('SPHINX_ENABLED', false);
   // Enable fulltext search using Sphinx (http://www.sphinxsearch.com)
   // Please see http://tt-rss.org/wiki/SphinxSearch for more information.

   define('SPHINX_INDEX', 'ttrss');
   // Index name in Sphinx configuration

   define('ENABLE_TWEET_BUTTON', false);
   // Enable 'tweet this' button for articles

   define('CONSUMER_KEY', '');
   define('CONSUMER_SECRET', '');
   // Your OAuth instance authentication information for Twitter, visit
   // http://twitter.com/oauth_clients to register your instance.

   define('CONFIG_VERSION', 21);
   // Expected config version. Please update this option in config.php
   // if necessary (after migrating all new options from this file).

   // vim:ft=php
?>

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

Re: What is "purge" supposed to do ?

Postby fox » 03 Mar 2011, 12:52

Old articles should be removed from the DB as long as they are old enough in days (controlled by the purging settings), not unread (controlled by an option) and do not exist in the feed content anymore.

Purging happens on each feed update, so I'm not sure what you're doing wrong. It should work. :)

ttrss-tester
Bear Rating Trainee
Bear Rating Trainee
Posts: 1
Joined: 12 Apr 2011, 00:25

Re: What is "purge" supposed to do ?

Postby ttrss-tester » 12 Apr 2011, 00:29

fox wrote:Old articles should be removed from the DB as long as they are old enough in days (controlled by the purging settings), not unread (controlled by an option) and do not exist in the feed content anymore.


I have the same issue...
I checked that in "ttrss_entries" database table (mysql), the ID=1 is updated at "2010-12-17 20:37:00" and in its Rss feed, this item is'n always present.
In my ttrs installation (v1.5.1), the item is readed.

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

Re: What is "purge" supposed to do ?

Postby fox » 12 Apr 2011, 20:21

Check all three date columns (date_updated, updated, date_entered). Purge works based on date_updated which means the last time the article has been found in the originating feed.

(Updated is the feed-provided article date which gets displayed in the UI and date_entered is the time the article has originally been imported).

Edit: also, if you have inactive users, their feeds can eventually stop being updated based on DAEMON_UPDATE_LOGIN_LIMIT and thus no longer purged since tt-rss doesn't process them at all.

User avatar
davidm
Plays it by ear
Posts: 115
Joined: 29 Mar 2012, 20:10
Contact:

Re: What is "purge" supposed to do ?

Postby davidm » 14 Jul 2012, 16:24

fox wrote:Edit: also, if you have inactive users, their feeds can eventually stop being updated based on DAEMON_UPDATE_LOGIN_LIMIT and thus no longer purged since tt-rss doesn't process them at all.


I used ttrss for a time with the user "admin", then I created another user, erased all admin's feed, and never logged in as admin anymore.

I set the purge age in config.php.

Now I'm manually checking the database and there are lots of articles from admin's feeds in ttrss_entries. Is there any way to clean all that (since user "admin" cannot be erased)?

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

Re: What is "purge" supposed to do ?

Postby fox » 16 Jul 2012, 01:30

You can remove all feeds on admin, this would take care of everything else.

User avatar
davidm
Plays it by ear
Posts: 115
Joined: 29 Mar 2012, 20:10
Contact:

Re: What is "purge" supposed to do ?

Postby davidm » 16 Jul 2012, 20:11

I did remove all feeds when I stopped logging in as admin. There is nothing left to remove (feeds, tags, filters), but the feed items are still in the database.

User avatar
Narga
Bear Rating Trainee
Bear Rating Trainee
Posts: 16
Joined: 25 Dec 2013, 06:37

Re: What is "purge" supposed to do ?

Postby Narga » 17 Aug 2015, 14:59

Is the cached images of starred items will delete when it's unstarred?

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

Re: What is "purge" supposed to do ?

Postby fox » 17 Aug 2015, 15:07

yes.

User avatar
Narga
Bear Rating Trainee
Bear Rating Trainee
Posts: 16
Joined: 25 Dec 2013, 06:37

Re: What is "purge" supposed to do ?

Postby Narga » 26 Aug 2015, 04:30

I've set the purge date to 3 days old for a year ago but I still found a lot of feeds which has too many old items
Image
How can I remove it manual or using special sql query?

xtaz
Bear Rating Master
Bear Rating Master
Posts: 174
Joined: 24 Dec 2009, 16:48

Re: What is "purge" supposed to do ?

Postby xtaz » 26 Aug 2015, 11:14

Starred posts don't get purged, and if old posts are still present in the actual feed then they won't be purged either. If they were then they would just come back as new posts on the next feed update. Check the actual feed to see if they are there.

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

Re: What is "purge" supposed to do ?

Postby fox » 26 Aug 2015, 12:13

what if you checked the faq, op

User avatar
Narga
Bear Rating Trainee
Bear Rating Trainee
Posts: 16
Joined: 25 Dec 2013, 06:37

Re: What is "purge" supposed to do ?

Postby Narga » 26 Aug 2015, 18:11

fox wrote:what if you checked the faq, op

Yes, I've read the FAQ but it's not purging as the FAQ mentioned. That's why I ask again about it.
xtaz wrote:Starred posts don't get purged, and if old posts are still present in the actual feed then they won't be purged either. If they were then they would just come back as new posts on the next feed update. Check the actual feed to see if they are there.

@fox and @xtaz: they will purging in next update if I archived them then delete again from archives to mark them as new. I have many feeds with old items which has not purged

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

Re: What is "purge" supposed to do ?

Postby fox » 26 Aug 2015, 18:24

>Yes, I've read the FAQ but it's not purging as the FAQ mentioned. That's why I ask again about it.

yes it does. every time this is being brought up it is 100% user error (i.e. misconfiguration) or misunderstanding of how it works. i have severe doubts your case would be different.

e: at this point unless you can demonstrate that something that should is not getting erased by tt-rss and it is not a misconfiguration i'm not going to bother looking into it. "i have a screenshot with articles in it and a vague feeling" does not count.

> they will purging in next update if I archived them then delete again from archives to mark them as new

i'm not sure what you're talking about here but i suggest you stop fucking around with archiving cause i'm not sure you know what it actually does (like many others before you)

User avatar
Narga
Bear Rating Trainee
Bear Rating Trainee
Posts: 16
Joined: 25 Dec 2013, 06:37

Re: What is "purge" supposed to do ?

Postby Narga » 26 Aug 2015, 19:32

OK, because I confused with the very old read items that is not purge after the feed updated, As you said, may be I have misconfiguration with my reader, you don't need to care about this problem again. Thanks


Return to “Support”

Who is online

Users browsing this forum: No registered users and 8 guests