Ubuntu 16.04 no longer supported or functional?

My librenms installation stopped working overnight. All the pollers are still polling, but the web interface has stopped working altogether. There’s just a message " Whoops, looks like something went wrong. Check your librenms.log." that doesn’t give much of any useful information.

but running ./validate.php tells me this:

====================================

Component Version
LibreNMS 21.5.1-28-g69397ea
DB Schema 2020_12_14_091314_create_port_group_port_table (205)
PHP 7.3.17-1+ubuntu16.04.1+deb.sury.org+1
Python 3.5.2
MySQL 10.0.38-MariaDB-0ubuntu0.16.04.1
RRDTool 1.5.5
SNMP NET-SNMP 5.7.3

====================================

[OK] Composer Version: 2.1.2
[OK] Dependencies up-to-date.
[OK] Database connection successful
[FAIL] MariaDB version 10.2.2 is the minimum supported version as of March, 2021. Update MariaDB to a supported version 10.5 suggested).
[FAIL] Your database is out of date!
[FIX]:
./lnms migrate

However, ubuntu 16.04 does NOT have a more recent version of MariaDB available:

root@Fastcom-config-mgmt:~# apt-get install mariadb-server
Reading package lists… Done
Building dependency tree
Reading state information… Done
mariadb-server is already the newest version (10.0.38-0ubuntu0.16.04.1).

How do I proceed? As everything was functional yesterday, can I roll back and prevent future updates? Or do I need to buckle down, free up some disk space, and finally upgrade the OS? Or “simply” find a way to get an updated MariaDB version 10.2.2+ onto this server?

So. Apparently that wasn’t my issue, or at least… it’s not still my issue? I’ve now managed to upgrade mariadb ; I’m at 10.2.31

$ ./validate.php

Component Version
LibreNMS 21.5.1-29-g3cf0397
DB Schema 2020_12_14_091314_create_port_group_port_table (205)
PHP 7.3.17-1+ubuntu16.04.1+deb.sury.org+1
Python 3.5.2
MySQL 10.2.31-MariaDB-10.2.31+maria~xenial
RRDTool 1.5.5
SNMP NET-SNMP 5.7.3
====================================

[OK] Composer Version: 2.1.2
[OK] Dependencies up-to-date.
[OK] Database connection successful
[FAIL] Your database is out of date!
[FIX]:
./lnms migrate

but that “fix” does not fix anything, just reports some errors:

$ ./lnms migrate


  • Application In Production!     *
    

Do you really wish to run this command? (yes/no) [no]:

yes

Migrating: 2020_12_14_091314_create_port_groups_table

In Connection.php line 678:

SQLSTATE[42S01]: Base table or view already exists: 1050 Table 'port_groups
’ already exists (SQL: create table port_groups (id int unsigned not nu
ll auto_increment primary key, name varchar(255) not null, desc varchar
(255) null) default character set utf8mb4 collate ‘utf8mb4_unicode_ci’)

In Exception.php line 18:

SQLSTATE[42S01]: Base table or view already exists: 1050 Table 'port_groups
’ already exists

In PDOStatement.php line 112:

SQLSTATE[42S01]: Base table or view already exists: 1050 Table 'port_groups
’ already exists

I’ve got the latest daily files:
$ git pull
Already up-to-date.
$ ./daily.sh
Updating to latest codebase OK
Updating Composer packages OK
Updating SQL-Schema OK
Updating submodules OK
Cleaning up DB OK
Fetching notifications OK
Caching PeeringDB data OK
Caching Mac OUI data OK

The next step in the google rabbit hole said to:
$ ./lnms migrate --pretend

and then MANUALLY run those commands. So I did, by way of:

mysql

MariaDB [(none)]> use librenms
… all the commands from the migrate’s output, adding the requisite ; to the end of each

SOME of them have errors, specifically:

MariaDB [librenms]> select TABLE_NAME from information_schema.tables where table_schema = ?
→ ;
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ‘?’ at line 1
MariaDB [librenms]> select * from information_schema.columns where table_schema = ? and CHARACTER_SET_NAME is not null and COLLATION_NAME is not null and (CHARACTER_SET_NAME != ? or COLLATION_NAME != ?)
→ ;
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ‘? and CHARACTER_SET_NAME is not null and COLLATION_NAME is not null and (`CH’ at line 1

… and now it appears to function again. I have no particular understanding of why my librenms was non-functional specifically today. Nor why those particular mysql commands above are not syntactical. But assuming that my particular plight was not unique, maaaaybe it will help somebody else when they google my error messages.

PS. My ./validate.pl STILL tells me that my database is out of date, and I have no idea what’s up with that

Drop the table and rerun the migration. But why stay in 16.04? It’s very much not supported.

Started having same issue after the last daily as well on 2 separate servers. Both CentOS 7.9.

Same here, almost the same environment as the OP. I already upgraded MariaDB to 10.5, PHP8.0.2 - everything else is the same. It just stopped working.

Re: “drop the table and rerun the migration” - can’t, foreign key constraints error when attempting to drop that table.

Why stay with 16.04 - because it’s been running well for 5 years and upgrading is a pain in the ass, and I meet the requirements for Librenms…why not run 16.04?

This topic was automatically closed 91 days after the last reply. New replies are no longer allowed.