I had upgraded PHP from 7.2 to 7.3 on my server and suddenly Wallabag stopped working!
I got some weird error like –
PHP Fatal error: Allowed memory size of 134217728 bytes exhausted
I guessed it had something to do with the PHP upgrade. So, I decided to upgrade Wallabag as well.
That’s when the problems started!
Per Wallabag’s update page, all I had to do was run –
make update
That opened up another can of worms! This time I got an even more cryptic error –
scripts/update.sh: 10: scripts/update.sh: BASH_SOURCE: parameter not set Makefile:16: recipe for target 'update' failed make: *** [update] Error 2
After trying to fix that error, I came across a suggestion to run the the update script directly –
bash scripts/update.sh
This time the error was –
10: scripts/update.sh: BASH_SOURCE: parameter not set
Then I remembered that I was running my Wallabag instance on SQLite! The advantage of running SQLite was that I was having the database backed up constantly (using a file copy).
So, I tried a different route of just installing Wallabag again. I downloaded and extracted Wallabag and put it in a new directory.
After copying over app/config/parameters.yml
and the database from data/db/wallabag.sqlite
, I thought the problem would be solved.
But then I came across this part of updating the database as well by executing some SQL statements.
This was a simple as opening the database and pasting the SQL statements –
> sqlite data/db/wallabag.sqlite
And I thought I was done. But then, when I tried using the browser extension, I started getting an error right away.
This time I opened up the logs in /var/logs/nginx/wallabag_error.log
and found an error like –
Uncaught Symfony\Component\DependencyInjection\Exception\ParameterNotFoundException: You have requested a non-existent parameter "mailer_port". Did you mean this: "mailer_host"
This time, searching for the error gave me the hint that there were extra configurations in the new parameters.yml
file that did not exist from the older parameters.yml
that I had copied over.
Looking at the parameters.yml.dist
, I figured out the missing parameters and added that.
That solved everything finally!
Oh, also along the way, I had to enable the php extension called tidy in my php.ini
–
extension=tidy
and restart php-fpm
/etc/init.d/php7.3-fpm restart
Now, the browser extension worked perfectly. Phew!