--- Begin Message ---
Hello,
I am running Netdisco 2 on CentOS 6 (with PostgreSQL v8.4.20).
Upgrades usually work fine, but this time, I had a problem: Version 2.42
failed during deployment. I am including below the terminal output for
your reference.
After the above, NetDisco continues to operate, however system info
shows the old version, which - as I understand - means that the
installation of the new version has failed.
Please guide me to find what is wrong so that I can complete the upgrade
procedure.
Thanks in advance!
Best Regards,
Nick
Follows the upgrade procedure output:
------------------------------------------------------------------------------------
[netdisco@netgaze ~]$ ~/bin/localenv cpanm --notest App::Netdisco
--> Working on App::Netdisco
Fetching
http://www.cpan.org/authors/id/O/OL/OLIVER/App-Netdisco-2.042010.tar.gz
... OK
Configuring App-Netdisco-2.042010 ... OK
==> Found dependencies: List::MoreUtils, SNMP::Info, Regexp::Common,
Dancer::Plugin::Swagger
--> Working on List::MoreUtils
Fetching
http://www.cpan.org/authors/id/R/RE/REHSACK/List-MoreUtils-0.428.tar.gz
... OK
Configuring List-MoreUtils-0.428 ... OK
==> Found dependencies: Exporter::Tiny, List::MoreUtils::XS
--> Working on Exporter::Tiny
Fetching
http://www.cpan.org/authors/id/T/TO/TOBYINK/Exporter-Tiny-1.002001.tar.gz
... OK
Configuring Exporter-Tiny-1.002001 ... OK
Building Exporter-Tiny-1.002001 ... OK
Successfully installed Exporter-Tiny-1.002001
--> Working on List::MoreUtils::XS
Fetching
http://www.cpan.org/authors/id/R/RE/REHSACK/List-MoreUtils-XS-0.428.tar.gz
... OK
Configuring List-MoreUtils-XS-0.428 ... OK
==> Found dependencies: XSLoader
--> Working on XSLoader
Fetching http://www.cpan.org/authors/id/S/SA/SAPER/XSLoader-0.24.tar.gz
... OK
Configuring XSLoader-0.24 ... OK
Building XSLoader-0.24 ... OK
Successfully installed XSLoader-0.24 (upgraded from 0.10)
Building List-MoreUtils-XS-0.428 ... OK
Successfully installed List-MoreUtils-XS-0.428
Building List-MoreUtils-0.428 ... OK
Successfully installed List-MoreUtils-0.428 (upgraded from 0.33)
--> Working on SNMP::Info
Fetching
http://www.cpan.org/authors/id/O/OL/OLIVER/SNMP-Info-3.68.tar.gz ... OK
Configuring SNMP-Info-3.68 ... OK
Building SNMP-Info-3.68 ... OK
Successfully installed SNMP-Info-3.68 (upgraded from 3.64)
--> Working on Regexp::Common
Fetching
http://www.cpan.org/authors/id/A/AB/ABIGAIL/Regexp-Common-2017060201.tar.gz
... OK
Configuring Regexp-Common-2017060201 ... OK
Building Regexp-Common-2017060201 ... OK
Successfully installed Regexp-Common-2017060201
--> Working on Dancer::Plugin::Swagger
Fetching
http://www.cpan.org/authors/id/Y/YA/YANICK/Dancer-Plugin-Swagger-0.2.0.tar.gz
... OK
==> Found dependencies: File::ShareDir::Install
--> Working on File::ShareDir::Install
Fetching
http://www.cpan.org/authors/id/E/ET/ETHER/File-ShareDir-Install-0.13.tar.gz
... OK
Configuring File-ShareDir-Install-0.13 ... OK
Building File-ShareDir-Install-0.13 ... OK
Successfully installed File-ShareDir-Install-0.13 (upgraded from 0.05)
Configuring Dancer-Plugin-Swagger-0.2.0 ... OK
==> Found dependencies: PerlX::Maybe, Path::Tiny,
File::ShareDir::Tarball, Class::Load, Dancer::Plugin::REST,
List::AllUtils, MooseX::MungeHas, MooX::Singleton
--> Working on PerlX::Maybe
Fetching
http://www.cpan.org/authors/id/T/TO/TOBYINK/PerlX-Maybe-1.201.tar.gz ... OK
Configuring PerlX-Maybe-1.201 ... OK
Building PerlX-Maybe-1.201 ... OK
Successfully installed PerlX-Maybe-1.201
--> Working on Path::Tiny
Fetching
http://www.cpan.org/authors/id/D/DA/DAGOLDEN/Path-Tiny-0.108.tar.gz ... OK
Configuring Path-Tiny-0.108 ... OK
Building Path-Tiny-0.108 ... OK
Successfully installed Path-Tiny-0.108
--> Working on File::ShareDir::Tarball
Fetching
http://www.cpan.org/authors/id/Y/YA/YANICK/File-ShareDir-Tarball-0.2.2.tar.gz
... OK
Configuring File-ShareDir-Tarball-0.2.2 ... OK
==> Found dependencies: File::chdir, Test::File::ShareDir
--> Working on File::chdir
Fetching
http://www.cpan.org/authors/id/D/DA/DAGOLDEN/File-chdir-0.1010.tar.gz ... OK
Configuring File-chdir-0.1010 ... OK
Building File-chdir-0.1010 ... OK
Successfully installed File-chdir-0.1010
--> Working on Test::File::ShareDir
Fetching
http://www.cpan.org/authors/id/K/KE/KENTNL/Test-File-ShareDir-1.001002.tar.gz
... OK
Configuring Test-File-ShareDir-1.001002 ... OK
==> Found dependencies: Class::Tiny
--> Working on Class::Tiny
Fetching
http://www.cpan.org/authors/id/D/DA/DAGOLDEN/Class-Tiny-1.006.tar.gz ... OK
Configuring Class-Tiny-1.006 ... OK
Building Class-Tiny-1.006 ... OK
Successfully installed Class-Tiny-1.006
Building Test-File-ShareDir-1.001002 ... OK
Successfully installed Test-File-ShareDir-1.001002
Building File-ShareDir-Tarball-0.2.2 ... OK
Successfully installed File-ShareDir-Tarball-0.2.2
--> Working on Class::Load
Fetching
http://www.cpan.org/authors/id/E/ET/ETHER/Class-Load-0.25.tar.gz ... OK
Configuring Class-Load-0.25 ... OK
==> Found dependencies: Data::OptList
--> Working on Data::OptList
Fetching
http://www.cpan.org/authors/id/R/RJ/RJBS/Data-OptList-0.110.tar.gz ... OK
Configuring Data-OptList-0.110 ... OK
Building Data-OptList-0.110 ... OK
Successfully installed Data-OptList-0.110 (upgraded from 0.108)
Building Class-Load-0.25 ... OK
Successfully installed Class-Load-0.25
--> Working on Dancer::Plugin::REST
Fetching
http://www.cpan.org/authors/id/Y/YA/YANICK/Dancer-Plugin-REST-0.11.tar.gz
... OK
Configuring Dancer-Plugin-REST-0.11 ... OK
Building Dancer-Plugin-REST-0.11 ... OK
Successfully installed Dancer-Plugin-REST-0.11
--> Working on List::AllUtils
Fetching
http://www.cpan.org/authors/id/D/DR/DROLSKY/List-AllUtils-0.15.tar.gz ... OK
Configuring List-AllUtils-0.15 ... OK
==> Found dependencies: List::UtilsBy, List::SomeUtils
--> Working on List::UtilsBy
Fetching
http://www.cpan.org/authors/id/P/PE/PEVANS/List-UtilsBy-0.11.tar.gz ... OK
Configuring List-UtilsBy-0.11 ... OK
Building List-UtilsBy-0.11 ... OK
Successfully installed List-UtilsBy-0.11
--> Working on List::SomeUtils
Fetching
http://www.cpan.org/authors/id/D/DR/DROLSKY/List-SomeUtils-0.56.tar.gz
... OK
Configuring List-SomeUtils-0.56 ... OK
==> Found dependencies: List::SomeUtils::XS
--> Working on List::SomeUtils::XS
Fetching
http://www.cpan.org/authors/id/D/DR/DROLSKY/List-SomeUtils-XS-0.58.tar.gz
... OK
Configuring List-SomeUtils-XS-0.58 ... OK
Building List-SomeUtils-XS-0.58 ... OK
Successfully installed List-SomeUtils-XS-0.58
Building List-SomeUtils-0.56 ... OK
Successfully installed List-SomeUtils-0.56
Building List-AllUtils-0.15 ... OK
Successfully installed List-AllUtils-0.15
--> Working on MooseX::MungeHas
Fetching
http://www.cpan.org/authors/id/T/TO/TOBYINK/MooseX-MungeHas-0.011.tar.gz
... OK
Configuring MooseX-MungeHas-0.011 ... OK
Building MooseX-MungeHas-0.011 ... OK
Successfully installed MooseX-MungeHas-0.011
--> Working on MooX::Singleton
Fetching
http://www.cpan.org/authors/id/A/AJ/AJGB/MooX-Singleton-1.20.tar.gz ... OK
Configuring MooX-Singleton-1.20 ... OK
Building MooX-Singleton-1.20 ... OK
Successfully installed MooX-Singleton-1.20
Building Dancer-Plugin-Swagger-0.2.0 ... OK
Successfully installed Dancer-Plugin-Swagger-0.2.0
Building App-Netdisco-2.042010 ... OK
Successfully installed App-Netdisco-2.042010 (upgraded from 2.040003)
24 distributions installed
[netdisco@netgaze ~]$
[netdisco@netgaze ~]$ ~/bin/netdisco-deploy
This is the Netdisco II deployment script.
Before we continue, the following prerequisites must be in place:
* Database added to PostgreSQL for Netdisco
* User added to PostgreSQL with rights to the Netdisco Database
* "~/environments/deployment.yml" file configured with Database
dsn/user/pass
* A full backup of any existing Netdisco database data
* Internet access (for OUIs and MIBs)
You will be asked to confirm all changes to your system.
So, is all of the above in place? [y/N]: y
Would you like to deploy the database schema? [y/N]: y
DBIx::Class::Schema::Versioned::_on_connect(): Versions out of sync.
This is 58, your database contains version 53, please call upgrade on
your Schema. at /home/netdisco/perl5/lib/perl5/Dancer/Plugin/DBIC.pm line 62
DBIx::Class::Schema::Versioned::upgrade_single_step(): DB version (53)
is lower than the schema version (58). Attempting upgrade.
DBIx::Class::Schema::Versioned::upgrade_single_step(): DB version (54)
is lower than the schema version (58). Attempting upgrade.
DBIx::Class::Schema::Versioned::upgrade_single_step(): DB version (55)
is lower than the schema version (58). Attempting upgrade.
DBIx::Class::Schema::Versioned::upgrade_single_step(): DB version (56)
is lower than the schema version (58). Attempting upgrade.
DBIx::Class::Schema::Versioned::upgrade_single_step(): DB version (57)
is lower than the schema version (58). Attempting upgrade.
NOTICE: ALTER TABLE / ADD PRIMARY KEY will create implicit index
"device_port_wireless_pkey" for table "device_port_wireless"
NOTICE: ALTER TABLE / ADD PRIMARY KEY will create implicit index
"device_port_log_pkey" for table "device_port_log"
DB schema update complete.
DBIx::Class::Storage::DBI::_dbh_execute(): DBI Exception: DBD::Pg::st
execute failed: ERROR: syntax error at or near "ORDER"
LINE 5: array_agg(dp.port ORDER BY dp.port) AS left_por...
^ [for Statement "INSERT INTO
statistics ( day, device_count, device_ip_count, device_link_count,
device_port_count, device_port_up_count, ip_active_count,
ip_table_count, netdisco_ver, node_active_count, node_table_count,
perl_ver, pg_ver, schema_ver, snmpinfo_ver) VALUES ( ?, (SELECT COUNT( *
) FROM device me), (SELECT COUNT( * ) FROM device_ip me), (SELECT
COALESCE( SUM( aggports ), 0 ) FROM ( WITH BothWays AS
( SELECT dp.ip AS left_ip,
ld.dns AS left_dns,
ld.name AS left_name,
array_agg(dp.port ORDER BY dp.port) AS left_port,
array_agg(dp.name ORDER BY dp.name) AS left_descr,
count(dpp.*) AS aggports,
sum(COALESCE(dpp.raw_speed, 0)) AS aggspeed,
di.ip AS right_ip,
rd.dns AS right_dns,
rd.name AS right_name,
array_agg(dp.remote_port ORDER BY dp.remote_port) AS
right_port,
array_agg(dp2.name ORDER BY dp2.name) AS right_descr
FROM device_port dp
LEFT OUTER JOIN device_port_properties dpp ON (
(dp.ip = dpp.ip) AND (dp.port = dpp.port)
AND (dp.type IS NULL
OR dp.type !~*
'^(53|ieee8023adLag|propVirtual|l2vlan|l3ipvlan|135|136|137)$')
AND (dp.is_master = 'false'
OR dp.slave_of IS NOT NULL) )
INNER JOIN device ld ON dp.ip = ld.ip
INNER JOIN device_ip di ON dp.remote_ip = di.alias
INNER JOIN device rd ON di.ip = rd.ip
LEFT OUTER JOIN device_port dp2 ON (di.ip = dp2.ip
AND ((dp.remote_port = dp2.port)
OR (dp.remote_port =
dp2.name)
OR (dp.remote_port =
dp2.descr)))
WHERE dp.remote_port IS NOT NULL
AND dp.port !~* 'vlan'
AND (dp.descr IS NULL OR dp.descr !~* 'vlan')
GROUP BY left_ip,
left_dns,
left_name,
right_ip,
right_dns,
right_name )
SELECT *
FROM BothWays b
WHERE NOT EXISTS
( SELECT *
FROM BothWays b2
WHERE b2.right_ip = b.left_ip
AND b2.right_port = b.left_port
AND b2.left_ip < b.left_ip )
ORDER BY aggspeed DESC, 1, 2
) me), (SELECT COUNT( * ) FROM device_port me), (SELECT COUNT( * ) FROM
device_port me WHERE ( up = ? )), (SELECT COUNT( * ) FROM (SELECT me.ip
FROM node_ip me WHERE ( active ) GROUP BY me.ip) me), (SELECT COUNT( * )
FROM node_ip me), ?, (SELECT COUNT( * ) FROM (SELECT me.mac FROM node me
WHERE ( active ) GROUP BY me.mac) me), (SELECT COUNT( * ) FROM node me),
?, ?, ?, ? )" with ParamValues: 1='2019-08-23', 2='up', 3='2.42.10',
4='5.10.1', 5='8.4.20', 6='58', 7='3.68'] at
/home/netdisco/perl5/lib/perl5/App/Netdisco/Util/Statistics.pm line 42
Updating statistics...
[netdisco@netgaze ~]$ rpm -qa | grep postgres
postgresql-server-8.4.20-8.el6_9.x86_64
postgresql-8.4.20-8.el6_9.x86_64
postgresql-devel-8.4.20-8.el6_9.x86_64
postgresql-libs-8.4.20-8.el6_9.x86_64
------------------------------------------------------------------------------------
--- End Message ---