Tiny Tiny RSS: error after last update: "Your access level is insufficient to run this script."



  • When I try to login the Tiny Tiny RSS app, I get the error: "Your access level is insufficient to run this script." The URL is forwarded to https://rss.mydomain.com/public.php?op=dbupdate

    Is it connected to this FAQ entry? https://git.tt-rss.org/fox/tt-rss/wiki/FAQ#i-have-http-authentication-enabled-and-get-your-access-level-is-insufficient-to-run-this-script-error-on-login

    I have HTTP authentication enabled and get “Your access level is insufficient to run this script” error on login
    The problem is that if you have auth_remote enabled in config.php tt-rss tries to automatically log you in as the user specified by the server using HTTP authentication, which may not have administrative privileges. You will need to either temporarily disable auth_remote (replace it with auth_internal in config.php), temporarily disable HTTP authentication, or give yourself administrative permissions using the SQL client:

    update ttrss_users set access_level = 10 where login = 'you';
    


  • This is now reported twice. My instance updated fine, so I am not able to reproduce this. Does the suggested elevation of user access level solve the issue?



    Tried the SQL command, worked, re-run the db-updater which now complained

    ERROR: could not create unique index “ttrss_feeds_feed_url_owner_uid_key” DETAIL: Key (feed_url, owner_uid)=(http://example.com/feed, 1) is duplicated.
    

    Tried the SQL command advised here: https://discourse.tt-rss.org/t/potential-problems-when-upgrading-to-schema-137/2122, worked, re-run the db-updater, which now complained the "“ttrss_feeds_feed_url_owner_uid_key" already existed.

    Decided to restore TT-RSS from a backup which now gives me the following errors:

    Jan 01 00:00:00 name: 'BackupsError',
    Jan 01 00:00:00 reason: 'external error',
    Jan 01 00:00:00 message:
    Jan 01 00:00:00 'unable to chmod: ENOENT: no such file or directory, chmod \'/home/yellowtent/appsdata/655b5a8c-62b4-4760-8e48-f2355412f845/data/plugins/fever/fever_api.php\'' }
    Jun 04 12:55:19 box:apptask Apptask completed for 655b5a8c-62b4-4760-8e48-f2355412f845
    

    I do use the fever plugin but don't understand what's happening.

    Tried to "repair" in Cloudron which gives me the following errors:

    Jun 04 13:01:05 [13:01:05/69] Lock: update.lock
    Jun 04 13:01:05 [13:01:05/69] checking for updates (mysql)...
    Jun 04 13:01:05 PHP Fatal error: Uncaught PDOException: SQLSTATE[42S02]: Base table or view not found: 1146 Table '3e29dfb36989891c.ttrss_version' doesn't exist in /app/code/classes/dbupdater.php:15
    Jun 04 13:01:05 Stack trace:
    Jun 04 13:01:05 #0 /app/code/classes/dbupdater.php(15): PDO->query('SELECT schema_v...')
    Jun 04 13:01:05 #1 /app/code/classes/dbupdater.php(20): DbUpdater->getSchemaVersion()
    Jun 04 13:01:05 #2 /app/code/update.php(334): DbUpdater->isUpdateRequired()
    Jun 04 13:01:05 #3 {main}
    Jun 04 13:01:05 thrown in /app/code/classes/dbupdater.php on line 15
    

    Now, MySQL shows me "empty set" when I try to list tables!



  • Apparently the restore didn't succeed from that backup at all. Can you restore to an older backup?



  • Tried an older update, similar error:

    Jun 04 13:51:45 box:apptask rss.missmuti.de error installing app: BackupsError: unable to chmod: ENOENT: no such file or directory, chmod '/home/yellowtent/appsdata/655b5a8c-62b4-4760-8e48-f2355412f845/data/plugins/fever/fever_api.php'
    Jun 04 13:51:45 box:apptask rss.missmuti.de updating app with values: {"installationState":"error","installationProgress":"unable to chmod: ENOENT: no such file or directory, chmod '/home/yellowtent/appsdata/655b5a8c-62b4-4760-8e48-f2355412f845/data/plugins/fever/fever_api.php'"}
    Jun 04 13:51:45 box:apptask Apptask completed with error { BackupsError: unable to chmod: ENOENT: no such file or directory, chmod '/home/yellowtent/appsdata/655b5a8c-62b4-4760-8e48-f2355412f845/data/plugins/fever/fever_api.php'
    Jan 01 00:00:00 at /home/yellowtent/box/src/backups.js:524:40
    Jan 01 00:00:00 at /home/yellowtent/box/node_modules/async/dist/async.js:473:16
    Jan 01 00:00:00 at iterateeCallback (/home/yellowtent/box/node_modules/async/dist/async.js:988:17)
    Jan 01 00:00:00 at /home/yellowtent/box/node_modules/async/dist/async.js:969:16
    Jan 01 00:00:00 at FSReqWrap.oncomplete (fs.js:141:20)
    Jan 01 00:00:00 name: 'BackupsError',
    Jan 01 00:00:00 reason: 'external error',
    Jan 01 00:00:00 message:
    Jan 01 00:00:00 'unable to chmod: ENOENT: no such file or directory, chmod \'/home/yellowtent/appsdata/655b5a8c-62b4-4760-8e48-f2355412f845/data/plugins/fever/fever_api.php\'' }
    Jun 04 13:51:45 box:apptask Apptask completed for 655b5a8c-62b4-4760-8e48-f2355412f845
    

    Apparently, the fever plugin that was part of my Tiny Tiny RSS installation is 'gone' - it's not even in the backups (I just checked the folder...)



  • Ok, managed to restore to a functional version by manually recreating all files and folders in the plugins directory...
    Why weren't the backed up?



  • They are in appsdata so they will get backed up. Can you check if they are backed up now after your fix or if the issue persists?



  • @nebulon
    Yep, it's backed up now. Weird.



  • @nebulon
    I realized something now: Plugins in /app/date/plugins.local/ (where the software author fox wants user plugins to go to) are not recognized in the Cloudron version of TT-RSS....



  • What do you mean by this? The plugins would still be updated if they are located within /app/data/. Do you mean manually installed plugins are now located in some other folder which the app does not include?



  • @nebulon
    /app/data has two folders for plugins: "plugins" (system plugins) and "plugins.local" (user plugins).

    According to https://git.tt-rss.org/fox/tt-rss/wiki/Plugins:

    Installing plugins Copy plugin folder to tt-rss/plugins.local then activate it in the settings panel. Plugin folder name should correspond to plugin class name defined in (plugin)/init.php, i.e. Af_ExamplePlugin should be copied to plugins.local/af_exampleplugin.

    If I have the a plugin folder in "plugins.local" it's not recognized in TT-RSS on Cloudron, only if the plugin folder is in "plugins".



  • Oh I see what you mean, it misses the symlink from /app/code/plugins.local to /app/data/plugins.local?



  • Yep!
    Screenshot_2019-06-06 Terminal.png



  • @necrevistonnezr Ah, I wasn't aware of this local plugin directory. I will fix up the app. This is actually really nice of ttrss since it simplifies app packaging.


Log in to reply