I’m using Ubuntu 16.04.7 Virtual Machine on our network to host a tango database. I have installed everything according to the Ubuntu guidelines here: Ubuntu installation guidelines
Everything installed successfully, but when I run the TangoTest I get the following results:
/usr/lib/tango/TangoTest test
Can't build connection to TANGO database server, exiting
The tango-db.service seems to startup fine:
sudo systemctl status tango-db
● tango-db.service - LSB: Start the tango control system database daemon
Loaded: loaded (/etc/init.d/tango-db; bad; vendor preset: enabled)
Active: active (exited) since Wed 2022-01-12 11:04:31 SAST; 1min 13s ago
Docs: man:systemd-sysv-generator(8)
Process: 4112 ExecStart=/etc/init.d/tango-db start (code=exited, status=0/SUCCESS)
Jan 12 11:04:22 precise64 systemd[1]: Starting LSB: Start the tango control system database daemon...
Jan 12 11:04:31 precise64 systemd[1]: Started LSB: Start the tango control system database daemon.
But when I run the DataBaseds manually, I get this:
Also, I saw this logging error in the mysql.service:
sudo systemctl status mysql
● mysql.service - LSB: Start and stop the mysql database server daemon
Loaded: loaded (/etc/init.d/mysql; bad; vendor preset: enabled)
Active: active (running) since Thu 2022-01-13 14:17:48 SAST; 1h 44min ago
Docs: man:systemd-sysv-generator(8)
Process: 3647 ExecStart=/etc/init.d/mysql start (code=exited, status=0/SUCCESS)
CGroup: /system.slice/mysql.service
├─3749 /bin/bash /usr/bin/mysqld_safe
└─3900 /usr/sbin/mysqld --basedir=/usr --datadir=/var/lib/mysql --plugin-dir=/usr/lib/mysql/plugin --user=mysql --log-error=/var/log/mysql
Jan 13 14:18:46 precise64 systemd[1]: Starting LSB: Start and stop the mysql database server daemon...
Jan 13 14:18:48 precise64 mysql[3647]: * Starting MariaDB database server mysqld
Jan 13 14:18:48 precise64 /etc/init.d/mysql[3750]: 220113 14:18:48 mysqld_safe Can't log to error log and syslog at the same time. Remove all --log-
Jan 13 14:17:48 precise64 mysql[3647]: ...done.
Jan 13 14:17:48 precise64 systemd[1]: Started LSB: Start and stop the mysql database server daemon.
Ubuntu 16.06 starts to get quite old now ;-)…
We don’t really support that any longer but maybe someone could help you there.
And the Tango version available in Ubuntu 16.04 packages is old too it seems (Tango 8?).
About the undefined symbol when you start the DataBaseds, what is the result of the following command: ldd /usr/lib/tango/DataBaseds
It looks like you’re missing a symbol coming from log4tango which was provided in a separate library at that time.
liblog4tango has been merged with libtango since cppTango 9.3.3 I think.
Maybe you’re missing that library?
You could also try to build/install Tango from the TangoSourceDistribution if you want to get a more recent version of the Tango software? I think tango 9.3.4 should still compile on Ubuntu 16.04.
Can you see what library is missing?
How should I add it? I’ll try that first, otherwise I’ll try installing directly from the TangoSourceDistribution.
Thanks,
Charl
You seem to have liblog4tango library.
If this library is not empty in your use case (size != 0), then I don’t know what is the origin of your error.
We did provide an empty version of this liblog4tangolibrary at some point to ease the transition to the new libtango library already containing log4tango symbols, so maybe you have this version?
[quote=“theC”]
How can I re-install this liblog4tango. What version should I use?[/quote]
Well, if the Ubuntu 16.04 packages are well prepared, liblog4tango should be installed automatically as dependency with libtango when installing the tango-db package, I guess.
The path where liblog4tango is installed (/usr/local/lib/) is different than the one where the tango lib is installed (/usr/lib/x86_64-linux-gnu/).
Maybe you should check whether you don’t have several versions of liblog4tango installed on your system.
Is there one under /usr/lib/x86_64-linux-gnu/?
What I would do if I were you would be to:
Use a more recent distribution
Install tango library, tango databaseds and TangoTest from the latest TangoSourceDsitribution
If option 1. and 2. are not an option for you, I would uninstall tango-db, tango-test and packages having log4tango in their name.
Then I would reinstall tango-db and see whether the Databaseds still have the same issue.
I would use the one under /usr/lib/x86_64-linux-gnu/ and move or remove the one under /usr/local/lib so tango-db does not try to use it.
Check with ldd before running the tango databaseds to ensure it is using the one under /usr/lib/x86_64-linux-gnu/
But maybe there is something wrong in the Ubuntu 16 packages.
liblog4tango.so.5.0.1 installed under /usr/local/lib was probably installed as a dependency on 1 package (maybe tango-test?) whereas the one installed under /usr/lib/x86_64-linux-gnu/ was installed with some other package.
I would try to use the same liblog4tango lib as the one installed when libtango.so.8 was installed, which is probably the one in /usr/lib/x86_64-linux-gnu/ because this is where libtango.so.8 has been installed too.
[quote=“Reynald”]What I would do if I were you would be to:
Use a more recent distribution [/quote]
So, I installed a fresh Ubuntu 20.04 system and then installed the mariadb package without errors.
I then tried to install the tango-db & tango-tester packages and got these errors:
sudo apt install tango-db tango-test
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following additional packages will be installed:
dbconfig-common dbconfig-mysql libcos4-2 liblog4tango5v5 libnorm1 libomniorb4-2 libomnithread4 libpgm-5.2-0 libtango-tools libtango9 libzmq5 tango-common tango-starter
Suggested packages:
omninotify
Recommended packages:
default-mysql-client
The following NEW packages will be installed:
dbconfig-common dbconfig-mysql libcos4-2 liblog4tango5v5 libnorm1 libomniorb4-2 libomnithread4 libpgm-5.2-0 libtango-tools libtango9 libzmq5 tango-common tango-db tango-starter tango-test
0 upgraded, 15 newly installed, 0 to remove and 4 not upgraded.
Need to get 5,811 kB of archives.
After this operation, 28.8 MB of additional disk space will be used.
Do you want to continue? [Y/n] y
Get:1 http://za.archive.ubuntu.com/ubuntu focal/universe amd64 dbconfig-common all 2.0.13 [586 kB]
Get:2 http://za.archive.ubuntu.com/ubuntu focal/universe amd64 dbconfig-mysql all 2.0.13 [1,136 B]
Get:3 http://za.archive.ubuntu.com/ubuntu focal/universe amd64 libomnithread4 amd64 4.2.2-0.9build4 [12.2 kB]
Get:4 http://za.archive.ubuntu.com/ubuntu focal/universe amd64 libomniorb4-2 amd64 4.2.2-0.9build4 [1,145 kB]
Get:5 http://za.archive.ubuntu.com/ubuntu focal/universe amd64 libcos4-2 amd64 4.2.2-0.9build4 [1,224 kB]
Get:6 http://za.archive.ubuntu.com/ubuntu focal/universe amd64 libnorm1 amd64 1.5.8+dfsg2-2build1 [290 kB]
Get:7 http://za.archive.ubuntu.com/ubuntu focal/universe amd64 libpgm-5.2-0 amd64 5.2.122~dfsg-3ubuntu1 [158 kB]
Get:8 http://za.archive.ubuntu.com/ubuntu focal/universe amd64 libzmq5 amd64 4.3.2-2ubuntu1 [242 kB]
Get:9 http://za.archive.ubuntu.com/ubuntu focal/universe amd64 liblog4tango5v5 amd64 9.2.5a+dfsg1-2ubuntu1 [43.2 kB]
Get:10 http://za.archive.ubuntu.com/ubuntu focal/universe amd64 tango-common all 9.2.5a+dfsg1-2ubuntu1 [5,728 B]
Get:11 http://za.archive.ubuntu.com/ubuntu focal/universe amd64 libtango9 amd64 9.2.5a+dfsg1-2ubuntu1 [1,702 kB]
Get:12 http://za.archive.ubuntu.com/ubuntu focal/universe amd64 libtango-tools amd64 9.2.5a+dfsg1-2ubuntu1 [25.2 kB]
Get:13 http://za.archive.ubuntu.com/ubuntu focal/universe amd64 tango-db amd64 9.2.5a+dfsg1-2ubuntu1 [213 kB]
Get:14 http://za.archive.ubuntu.com/ubuntu focal/universe amd64 tango-starter amd64 9.2.5a+dfsg1-2ubuntu1 [93.4 kB]
Get:15 http://za.archive.ubuntu.com/ubuntu focal/universe amd64 tango-test amd64 9.2.5a+dfsg1-2ubuntu1 [69.7 kB]
Fetched 5,811 kB in 7s (784 kB/s)
Preconfiguring packages ...
Selecting previously unselected package dbconfig-common.
(Reading database ... 184710 files and directories currently installed.)
Preparing to unpack .../00-dbconfig-common_2.0.13_all.deb ...
Unpacking dbconfig-common (2.0.13) ...
Selecting previously unselected package dbconfig-mysql.
Preparing to unpack .../01-dbconfig-mysql_2.0.13_all.deb ...
Unpacking dbconfig-mysql (2.0.13) ...
Selecting previously unselected package libomnithread4:amd64.
Preparing to unpack .../02-libomnithread4_4.2.2-0.9build4_amd64.deb ...
Unpacking libomnithread4:amd64 (4.2.2-0.9build4) ...
Selecting previously unselected package libomniorb4-2:amd64.
Preparing to unpack .../03-libomniorb4-2_4.2.2-0.9build4_amd64.deb ...
Unpacking libomniorb4-2:amd64 (4.2.2-0.9build4) ...
Selecting previously unselected package libcos4-2:amd64.
Preparing to unpack .../04-libcos4-2_4.2.2-0.9build4_amd64.deb ...
Unpacking libcos4-2:amd64 (4.2.2-0.9build4) ...
Selecting previously unselected package libnorm1:amd64.
Preparing to unpack .../05-libnorm1_1.5.8+dfsg2-2build1_amd64.deb ...
Unpacking libnorm1:amd64 (1.5.8+dfsg2-2build1) ...
Selecting previously unselected package libpgm-5.2-0:amd64.
Preparing to unpack .../06-libpgm-5.2-0_5.2.122~dfsg-3ubuntu1_amd64.deb ...
Unpacking libpgm-5.2-0:amd64 (5.2.122~dfsg-3ubuntu1) ...
Selecting previously unselected package libzmq5:amd64.
Preparing to unpack .../07-libzmq5_4.3.2-2ubuntu1_amd64.deb ...
Unpacking libzmq5:amd64 (4.3.2-2ubuntu1) ...
Selecting previously unselected package liblog4tango5v5:amd64.
Preparing to unpack .../08-liblog4tango5v5_9.2.5a+dfsg1-2ubuntu1_amd64.deb ...
Unpacking liblog4tango5v5:amd64 (9.2.5a+dfsg1-2ubuntu1) ...
Selecting previously unselected package tango-common.
Preparing to unpack .../09-tango-common_9.2.5a+dfsg1-2ubuntu1_all.deb ...
Unpacking tango-common (9.2.5a+dfsg1-2ubuntu1) ...
Selecting previously unselected package libtango9:amd64.
Preparing to unpack .../10-libtango9_9.2.5a+dfsg1-2ubuntu1_amd64.deb ...
Unpacking libtango9:amd64 (9.2.5a+dfsg1-2ubuntu1) ...
Selecting previously unselected package libtango-tools.
Preparing to unpack .../11-libtango-tools_9.2.5a+dfsg1-2ubuntu1_amd64.deb ...
Unpacking libtango-tools (9.2.5a+dfsg1-2ubuntu1) ...
Selecting previously unselected package tango-db.
Preparing to unpack .../12-tango-db_9.2.5a+dfsg1-2ubuntu1_amd64.deb ...
Unpacking tango-db (9.2.5a+dfsg1-2ubuntu1) ...
Selecting previously unselected package tango-starter.
Preparing to unpack .../13-tango-starter_9.2.5a+dfsg1-2ubuntu1_amd64.deb ...
Unpacking tango-starter (9.2.5a+dfsg1-2ubuntu1) ...
Selecting previously unselected package tango-test.
Preparing to unpack .../14-tango-test_9.2.5a+dfsg1-2ubuntu1_amd64.deb ...
Unpacking tango-test (9.2.5a+dfsg1-2ubuntu1) ...
Setting up libnorm1:amd64 (1.5.8+dfsg2-2build1) ...
Setting up dbconfig-common (2.0.13) ...
Creating config file /etc/dbconfig-common/config with new version
Setting up liblog4tango5v5:amd64 (9.2.5a+dfsg1-2ubuntu1) ...
Setting up libomnithread4:amd64 (4.2.2-0.9build4) ...
Setting up libomniorb4-2:amd64 (4.2.2-0.9build4) ...
Setting up libcos4-2:amd64 (4.2.2-0.9build4) ...
Setting up tango-common (9.2.5a+dfsg1-2ubuntu1) ...
usermod: user tango is currently used by process 1328
dpkg: error processing package tango-common (--configure):
installed tango-common package post-installation script subprocess returned error exit status 8
Setting up libpgm-5.2-0:amd64 (5.2.122~dfsg-3ubuntu1) ...
Setting up libzmq5:amd64 (4.3.2-2ubuntu1) ...
Setting up dbconfig-mysql (2.0.13) ...
dpkg: dependency problems prevent configuration of libtango9:amd64:
libtango9:amd64 depends on tango-common; however:
Package tango-common is not configured yet.
dpkg: error processing package libtango9:amd64 (--configure):
dependency problems - leaving unconfigured
dpkg: dependency problems prevent configuration of tango-starter:
tango-starter depends on libtango9; however:
Package libtango9:amd64 is not configured yet.
dpkg: error processing package tango-starter (--configure):
dependency problems - leaving unconfigured
dpkg: dependency problems prevent configuration of tango-db:
tango-db depends on libtango9; however:
Package libtango9:amd64 is not configured yet.
dpkg: error processing package tango-db (--configure):
dependency problems - leaving unconfigured
dpkg: dependencNo apport report written because the error message indicates its a followup error from a previous failure.
No apport report written because the error message indicates its a followup error from a previous failure.
No apport report written because MaxReports is reached already
No apport report written because MaxReports is reached already
No apport report written because MaxReports is reached already
y problems prevent configuration of tango-test:
tango-test depends on libtango9; however:
Package libtango9:amd64 is not configured yet.
tango-test depends on tango-starter; however:
Package tango-starter is not configured yet.
dpkg: error processing package tango-test (--configure):
dependency problems - leaving unconfigured
dpkg: dependency problems prevent configuration of libtango-tools:
libtango-tools depends on libtango9; however:
Package libtango9:amd64 is not configured yet.
dpkg: error processing package libtango-tools (--configure):
dependency problems - leaving unconfigured
Processing triggers for systemd (245.4-4ubuntu3.15) ...
Processing triggers for man-db (2.9.1-1) ...
Processing triggers for libc-bin (2.31-0ubuntu9.2) ...
Errors were encountered while processing:
tango-common
libtango9:amd64
tango-starter
tango-db
tango-test
libtango-tools
E: Sub-process /usr/bin/dpkg returned an error code (1)
Should I rather get the latest source code from github?
It looks like you encountered the following error during the installation of the tango-common package:
usermod: user tango is currently used by process 1328
It looks like tango-common package install script is trying to run usermod command to modify something in the configuration of a user named tango.
According to the CAVEATS section of usermod man page:
So it looks like you were using the user named tango when installing the packages or at least this user was executing a process.
Could you please retry the install, but ensuring the tango user is not executing any process while you do that?
If this does not work, maybe you’ll need to reconfigure tango-common package explicitely:
It seems that configure could not detect or use the latest version of Java, but I don’t need it at the moment. I just need the tango server database for now.
# tango start
Starting TANGO database
Starting TANGO Database Server
main(): arrived
main(): export DataBase as named servant (name=database)
Ready to accept request
# /usr/local/bin/TangoTest test
Ready to accept request
device tango/admin/tangoserver not defined in the database !
Should the HOST_NAME(tangoserver) be defined in the database?
This is the standard name for the Starter device.
If you’re not using the starter and astor to start and stop your devices, I think you can ignore this message.