Error updating virtuoso version

Good morning,

We are trying to update Virtuoso to the last available version, we have tried to install this version virtuoso-opensource-7.2.5 downloaded from the following link: https://sourceforge.net/projects/virtuoso/files/virtuoso/7.2.5/virtuoso-opensource-7.2.5.tar.gz/download.

We have done all the steps described in the readme file and during the installations the following errors have been showed.


apt-get update

Err http://cloudfront.debian.net jessie-backports/main Sources
  404  Not Found [IP: 13.224.77.60 80]
Err http://cloudfront.debian.net jessie-backports/main amd64 Packages
  404  Not Found [IP: 13.224.77.60 80]
Fetched 12.8 MB in 2s (5,682 kB/s)
W: There is no public key available for the following key IDs:
AA8E81B4331F7F50
W: Failed to fetch http://cloudfront.debian.net/debian/dists/jessie-backports/main/source/Sources  404  Not Found [IP: 13.224.77.60 80]

W: Failed to fetch http://cloudfront.debian.net/debian/dists/jessie-backports/main/binary-amd64/Packages  404  Not Found [IP: 13.224.77.60 80]

make install

make[2]: Entering directory '/home/admin/virtuoso-opensource-7.2.5/libsrc/Wi'
/bin/bash: ./mkgit_head.sh: No such file or directory
Makefile:3099: recipe for target 'git_head.c' failed
make[2]: [git_head.c] Error 127 (ignored)
* Generating sql_code_ws.c using GNU Awk 4.1.1, API: 1.1 (GNU MPFR 3.1.2-p3, GNU MP 6.0.0)
make  install-am
make[3]: Entering directory '/home/admin/virtuoso-opensource-7.2.5/libsrc/Wi'
/bin/bash: ./mkgit_head.sh: No such file or directory
Makefile:3099: recipe for target 'git_head.c' failed
make[3]: [git_head.c] Error 127 (ignored)
  CC       libwi_la-sql_code_ws.lo
  CCLD     libwi.la
copying selected object files to avoid basename conflicts...

make[3]: Nothing to be done for 'install-exec-am'.
mkdir "/usr/local/virtuoso-opensource/lib/jena"
mkdir: cannot create directory ‘/usr/local/virtuoso-opensource/lib/jena’: File exists
Makefile:598: recipe for target 'install-data-local' failed
make[3]: [install-data-local] Error 1 (ignored)
cp virt_jena.jar "/usr/local/virtuoso-opensource/lib/jena"
make[3]: Leaving directory '/home/admin/virtuoso-opensource-7.2.5/binsrc/jena'
make[2]: Leaving directory '/home/admin/virtuoso-opensource-7.2.5/binsrc/jena'
Making install in jena2
make[2]: Entering directory '/home/admin/virtuoso-opensource-7.2.5/binsrc/jena2'
make[3]: Entering directory '/home/admin/virtuoso-opensource-7.2.5/binsrc/jena2'
make[3]: Nothing to be done for 'install-exec-am'.
mkdir "/usr/local/virtuoso-opensource/lib/jena2"
mkdir: cannot create directory ‘/usr/local/virtuoso-opensource/lib/jena2’: File exists
Makefile:602: recipe for target 'install-data-local' failed
make[3]: [install-data-local] Error 1 (ignored)
cp virt_jena2.jar "/usr/local/virtuoso-opensource/lib/jena2"
make[3]: Leaving directory '/home/admin/virtuoso-opensource-7.2.5/binsrc/jena2'
make[2]: Leaving directory '/home/admin/virtuoso-opensource-7.2.5/binsrc/jena2'
Making install in jena3
make[2]: Entering directory '/home/admin/virtuoso-opensource-7.2.5/binsrc/jena3'
make[3]: Entering directory '/home/admin/virtuoso-opensource-7.2.5/binsrc/jena3'
make[3]: Nothing to be done for 'install-exec-am'.
mkdir "/usr/local/virtuoso-opensource/lib/jena3"
mkdir: cannot create directory ‘/usr/local/virtuoso-opensource/lib/jena3’: File exists
Makefile:602: recipe for target 'install-data-local' failed
make[3]: [install-data-local] Error 1 (ignored)
cp virt_jena3.jar "/usr/local/virtuoso-opensource/lib/jena3"
make[3]: Leaving directory '/home/admin/virtuoso-opensource-7.2.5/binsrc/jena3'
make[2]: Leaving directory '/home/admin/virtuoso-opensource-7.2.5/binsrc/jena3'
Making install in sesame
make[2]: Entering directory '/home/admin/virtuoso-opensource-7.2.5/binsrc/sesame'
make[3]: Entering directory '/home/admin/virtuoso-opensource-7.2.5/binsrc/sesame'
make[3]: Nothing to be done for 'install-exec-am'.
mkdir "/usr/local/virtuoso-opensource/lib/sesame"
mkdir: cannot create directory ‘/usr/local/virtuoso-opensource/lib/sesame’: File exists
Makefile:577: recipe for target 'install-data-local' failed
make[3]: [install-data-local] Error 1 (ignored)
cp virt_sesame.jar "/usr/local/virtuoso-opensource/lib/sesame"
make[3]: Leaving directory '/home/admin/virtuoso-opensource-7.2.5/binsrc/sesame'
make[2]: Leaving directory '/home/admin/virtuoso-opensource-7.2.5/binsrc/sesame'
Making install in sesame2
make[2]: Entering directory '/home/admin/virtuoso-opensource-7.2.5/binsrc/sesame2'
make[3]: Entering directory '/home/admin/virtuoso-opensource-7.2.5/binsrc/sesame2'
make[3]: Nothing to be done for 'install-exec-am'.
mkdir "/usr/local/virtuoso-opensource/lib/sesame"
mkdir: cannot create directory ‘/usr/local/virtuoso-opensource/lib/sesame’: File exists
Makefile:594: recipe for target 'install-data-local' failed
make[3]: [install-data-local] Error 1 (ignored)
cp virt_sesame2.jar "/usr/local/virtuoso-opensource/lib/sesame"
cp create.xsl create-virtuoso.xsl "/usr/local/virtuoso-opensource/lib/sesame"
make[3]: Leaving directory '/home/admin/virtuoso-opensource-7.2.5/binsrc/sesame2'
make[2]: Leaving directory '/home/admin/virtuoso-opensource-7.2.5/binsrc/sesame2'
Making install in sesame3
make[2]: Entering directory '/home/admin/virtuoso-opensource-7.2.5/binsrc/sesame3'
make[3]: Entering directory '/home/admin/virtuoso-opensource-7.2.5/binsrc/sesame3'
make[3]: Nothing to be done for 'install-exec-am'.
mkdir "/usr/local/virtuoso-opensource/lib/sesame"
mkdir: cannot create directory ‘/usr/local/virtuoso-opensource/lib/sesame’: File exists
Makefile:591: recipe for target 'install-data-local' failed
make[3]: [install-data-local] Error 1 (ignored)
cp virt_sesame3.jar "/usr/local/virtuoso-opensource/lib/sesame"
make[3]: Leaving directory '/home/admin/virtuoso-opensource-7.2.5/binsrc/sesame3'
make[2]: Leaving directory '/home/admin/virtuoso-opensource-7.2.5/binsrc/sesame3'
Making install in sesame4
make[2]: Entering directory '/home/admin/virtuoso-opensource-7.2.5/binsrc/sesame4'
make[3]: Entering directory '/home/admin/virtuoso-opensource-7.2.5/binsrc/sesame4'
make[3]: Nothing to be done for 'install-exec-am'.
mkdir "/usr/local/virtuoso-opensource/lib/sesame"
mkdir: cannot create directory ‘/usr/local/virtuoso-opensource/lib/sesame’: File exists
Makefile:594: recipe for target 'install-data-local' failed
make[3]: [install-data-local] Error 1 (ignored)
cp virt_sesame4.jar "/usr/local/virtuoso-opensource/lib/sesame"
cp create.xsl create-virtuoso.xsl "/usr/local/virtuoso-opensource/lib/sesame"
make[3]: Leaving directory '/home/admin/virtuoso-opensource-7.2.5/binsrc/sesame4'
make[2]: Leaving directory '/home/admin/virtuoso-opensource-7.2.5/binsrc/sesame4'
Making install in redland
make[2]: Entering directory '/home/admin/virtuoso-opensource-7.2.5/binsrc/redland'
make[3]: Entering directory '/home/admin/virtuoso-opensource-7.2.5/binsrc/redland'
make[3]: Nothing to be done for 'install-exec-am'.
make[3]: Nothing to be done for 'install-data-am'.
make[3]: Leaving directory '/home/admin/virtuoso-opensource-7.2.5/binsrc/redland'
make[2]: Leaving directory '/home/admin/virtuoso-opensource-7.2.5/binsrc/redland'
Making install in hibernate
make[2]: Entering directory '/home/admin/virtuoso-opensource-7.2.5/binsrc/hibernate'
make[3]: Entering directory '/home/admin/virtuoso-opensource-7.2.5/binsrc/hibernate'
make[3]: Nothing to be done for 'install-exec-am'.
mkdir "/usr/local/virtuoso-opensource/lib/hibernate"
mkdir: cannot create directory ‘/usr/local/virtuoso-opensource/lib/hibernate’: File exists
Makefile:571: recipe for target 'install-data-local' failed
make[3]: [install-data-local] Error 1 (ignored)
cp virt_dialect.jar "/usr/local/virtuoso-opensource/lib/hibernate"
make[3]: Leaving directory '/home/admin/virtuoso-opensource-7.2.5/binsrc/hibernate'
make[2]: Leaving directory '/home/admin/virtuoso-opensource-7.2.5/binsrc/hibernate'
Making install in dbpedia
make[2]: Entering directory '/home/admin/virtuoso-opensource-7.2.5/binsrc/dbpedia'
make[3]: Entering directory '/home/admin/virtuoso-opensource-7.2.5/binsrc/dbpedia'
make[3]: Nothing to be done for 'install-exec-am'.
 /bin/mkdir -p '/usr/local/virtuoso-opensource/share/virtuoso/vad'
 /usr/bin/install -c -m 644 dbpedia_dav.vad '/usr/local/virtuoso-opensource/share/virtuoso/vad'
make[3]: Leaving directory '/home/admin/virtuoso-opensource-7.2.5/binsrc/dbpedia'
make[2]: Leaving directory '/home/admin/virtuoso-opensource-7.2.5/binsrc/dbpedia'
Making install in rdb2rdf
make[2]: Entering directory '/home/admin/virtuoso-opensource-7.2.5/binsrc/rdb2rdf'
make[3]: Entering directory '/home/admin/virtuoso-opensource-7.2.5/binsrc/rdb2rdf'
make[3]: Nothing to be done for 'install-exec-am'.
 /bin/mkdir -p '/usr/local/virtuoso-opensource/share/virtuoso/vad'
 /usr/bin/install -c -m 644 rdb2rdf_dav.vad '/usr/local/virtuoso-opensource/share/virtuoso/vad'
make[3]: Leaving directory '/home/admin/virtuoso-opensource-7.2.5/binsrc/rdb2rdf'
make[2]: Leaving directory '/home/admin/virtuoso-opensource-7.2.5/binsrc/rdb2rdf'
Making install in rdf4j
make[2]: Entering directory '/home/admin/virtuoso-opensource-7.2.5/binsrc/rdf4j'
make[3]: Entering directory '/home/admin/virtuoso-opensource-7.2.5/binsrc/rdf4j'
make[3]: Nothing to be done for 'install-exec-am'.
mkdir "/usr/local/virtuoso-opensource/lib/rdf4j"
mkdir: cannot create directory ‘/usr/local/virtuoso-opensource/lib/rdf4j’: File exists
Makefile:594: recipe for target 'install-data-local' failed
make[3]: [install-data-local] Error 1 (ignored)
cp virt_rdf4j.jar "/usr/local/virtuoso-opensource/lib/rdf4j"
cp create.xsl create-virtuoso.xsl "/usr/local/virtuoso-opensource/lib/rdf4j"
make[3]: Leaving directory '/home/admin/virtuoso-opensource-7.2.5/binsrc/rdf4j'
make[2]: Leaving directory '/home/admin/virtuoso-opensource-7.2.5/binsrc/rdf4j'
make[2]: Entering directory '/home/admin/virtuoso-opensource-7.2.5/binsrc'
make[3]: Entering directory '/home/admin/virtuoso-opensource-7.2.5/binsrc'
make[3]: Nothing to be done for 'install-exec-am'.
make[3]: Nothing to be done for 'install-data-am'.

Then we cant start Virtuoso using this command

/usr/local/virtuoso-opensource/bin/virtuoso-t -c /usr/local/virtuoso-opensource/var/lib/virtuoso/db/virtuoso.ini

Can you tell us how to install this version or recommend us another stable version to install?

Best regards,

I cannot address the build errors beyond noting they start with issues with the Debian package distribution, which is beyond our control.

I can offer an alternative upgrade path –

As always, a full backup is recommended to start.

Instead of building from source, you could try using the pre-built VOS 7.2.5.1 virtuoso-t binary and the pre-built VADs for this version.

Upgrading your existing installation primarily requires a clean CHECKPOINT; and SHUTDOWN; of your existing version. The files linked above then replace the binaries by the same names in your existing VOS 6 or VOS 7 deployment, and you should be able to restart as normal.

I will also note that this is a very odd path to the virtuoso.ini
/usr/local/virtuoso-opensource/var/lib/virtuoso/db/virtuoso.ini

I would expect something more like –
/usr/local/virtuoso-opensource/db/virtuoso.ini
– or –
/usr/local/virtuoso-opensource/database/virtuoso.ini

First of all thank you very much for the reply.

Errors that had to do with debian repositories are resolved.

Now we are facing the following problem when running the command:

sudo virtuoso-t -f &

An error message appears saying:

There is no configuration file virtuoso.ini

And the file exists in /usr/local/virtuoso-opensource/var/lib/virtuoso/db/

Any idea on how to fix this?

Thanks in advace

From what Directory is the sudo virtuoso-t -f & command being run ?

Why are you specifying -f & as both cancel other out ie -f run in foreground mode and then & return to shell prompt ?

You can pass the -c <config-file> option on startup to specify the location and filename of the Virtuoso config file to use on startup ie

sudo virtuoso-t -f -c /usr/local/virtuoso-opensource/var/lib/virtuoso/db/virtuoso.ini  &

such that the file location is specifically specified rather then depending on the system being able to locate it …

Thanks for your answer. It was very helpful, but now we are facing the following problem while running the command you suggested above:

 admin@:~$ sudo virtuoso-t -f -c /usr/local/virtuoso-opensource/var/lib/virtuoso/db/virtuoso.ini  &
    [1] 7096
    admin@:~$
                Wed Feb 05 2020
    12:57:41 { Loading plugin 1: Type `plain', file `wikiv' in `/usr/local/virtuoso-opensource/lib/virtuoso/hosting'
    12:57:41   WikiV version 0.6 from OpenLink Software
    12:57:41   Support functions for WikiV collaboration tool
    12:57:41   FAILED  plugin 1: Loaded plugin requires core functionality not provided by main application }
    12:57:41 { Loading plugin 2: Type `plain', file `mediawiki' in `/usr/local/virtuoso-opensource/lib/virtuoso/hosting'
    12:57:41   MediaWiki version 0.1 from OpenLink Software
    12:57:41   Support functions for MediaWiki collaboration tool
    12:57:41   FAILED  plugin 2: Loaded plugin requires core functionality not provided by main application }
    12:57:41 { Loading plugin 3: Type `plain', file `creolewiki' in `/usr/local/virtuoso-opensource/lib/virtuoso/hosting'
    12:57:41   CreoleWiki version 0.1 from OpenLink Software
    12:57:41   Support functions for CreoleWiki collaboration tool
    12:57:41   FAILED  plugin 3: Loaded plugin requires core functionality not provided by main application }
    12:57:41 OpenLink Virtuoso Universal Server
    12:57:41 Version 06.01.3127-pthreads for Linux as of Sep 15 2014
    12:57:41 uses parts of OpenSSL, PCRE, Html Tidy
    12:57:41 Database version 3126
    12:57:41 SQL Optimizer enabled (max 1000 layouts)
    12:57:42 Compiler unit is timed at 0.000399 msec
    12:57:42 row with bad kv in RDF_QUAD
    12:57:42 virtuoso-t() [0x7b0aed]


    ....
    ....
    ....

    12:57:43 virtuoso-t() [0x40f3cb]
    12:57:43 /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xf5) [0x7faeaa563b45]
    12:57:43 virtuoso-t() [0x40f96e]
    12:57:43 GPF: page.c:110 key with bad key version
    GPF: page.c:110 key with bad key version
    admin@:~$

Thank you again

From your log the Virtuoso binary is Version 06.01.3127-pthreads for Linux as of Sep 15 2014 , whereas I thought you were seeking to upgrade to Virtuoso 7.2 ?

Thus where is your Virtuoso 7.2 binary located as just running the virtuoso command you are picking up the old Virtuoso 6.x binary.

The command which virtuoso will show where the Virtuoso 6.x binary is being picked up from.

You should either ensure the Virtuoso 7.2 binary is in your $PATH environment variable so it is picked up or specify the full path and file name to the Virtuoso 7.2 binary so you know that is definitely the binary being used.

Hello,

Thanks for your quick comment. While running which virtuoso and nothing happens. We are both triying to change the enviroment variable and reinstalling virtuoso-opensource-7.2.5 with sudo make install --environment-overrides but the problem stays.

Could you specify a little more or give us some clue to solve this issue?

Thanks in advance,

You are running the above command, so either virtuoso-t is somewhere in your $PATH environment variable or it is in the directory you are running the command from (assume . is in your $PATH env var to search current directory); and is a Virtuoso 6 binary.

Have you actually built or installed a Virtuoso 7.2 binary and if so what is its physical location on the server ?

If you type the command locate virtuoso-t it should show the location of all the virtuoso-t files on the OS.

we have used the locate virtuoso-t command and this is what it shows:

admin@ip-:~$ locate virtuoso-t
/home/admin/virtuoso-opensource-7.2.5/binsrc/virtuoso/libvirtuoso-t.la
/home/admin/virtuoso-opensource-7.2.5/binsrc/virtuoso/virtuoso-t
/home/admin/virtuoso-opensource-7.2.5/binsrc/virtuoso/.libs/libvirtuoso-t.a
/home/admin/virtuoso-opensource-7.2.5/binsrc/virtuoso/.libs/libvirtuoso-t.la
/home/admin/virtuoso-opensource-7.2.5/binsrc/virtuoso/.libs/libvirtuoso-t.lai
/opt/virtuoso-opensource-version/bin/virtuoso-t
/opt/virtuoso-opensource-version/lib/libvirtuoso-t.a
/opt/virtuoso-opensource-version/lib/libvirtuoso-t.la
/usr/bin/virtuoso-t
/usr/local/bin/virtuoso-t
/usr/local/lib/libvirtuoso-t.a
/usr/local/lib/libvirtuoso-t.la
/usr/local/virtuoso-opensource/bin/virtuoso-t
/usr/local/virtuoso-opensource/lib/libvirtuoso-t.a
/usr/local/virtuoso-opensource/lib/libvirtuoso-t.la
/usr/local/virtuoso-opensource/var/lib/virtuoso/db/virtuoso-temp.db
/usr/share/man/man1/virtuoso-t.1.gz
/var/lib/virtuoso-opensource-6.1/db/virtuoso-temp.db

after that we removed that last one database directory: sudo rm -r /var/lib/virtuoso-opensource-6.1/

running again this:

admin@ip:~$ sudo virtuoso-t -df -c /usr/local/virtuoso-opensource/var/lib/virtuoso/db/virtuoso.ini  &
[1] 501
admin@ip:~$
                Fri Feb 28 2020
13:50:09 INFO: { Loading plugin 1: Type `plain', file `wikiv' in `/usr/local/virtuoso-opensource/lib/virtuoso/hosting'
13:50:09 INFO:   WikiV version 0.6 from OpenLink Software
13:50:09 INFO:   Support functions for WikiV collaboration tool
13:50:09 ERROR:   FAILED  plugin 1: Loaded plugin requires core functionality not provided by main application }
13:50:09 INFO: { Loading plugin 2: Type `plain', file `mediawiki' in `/usr/local/virtuoso-opensource/lib/virtuoso/hosting'
13:50:09 INFO:   MediaWiki version 0.1 from OpenLink Software
13:50:09 INFO:   Support functions for MediaWiki collaboration tool
13:50:09 ERROR:   FAILED  plugin 2: Loaded plugin requires core functionality not provided by main application }
13:50:09 INFO: { Loading plugin 3: Type `plain', file `creolewiki' in `/usr/local/virtuoso-opensource/lib/virtuoso/hosting'
13:50:09 INFO:   CreoleWiki version 0.1 from OpenLink Software
13:50:09 INFO:   Support functions for CreoleWiki collaboration tool
13:50:09 ERROR:   FAILED  plugin 3: Loaded plugin requires core functionality not provided by main application }
13:50:09 INFO: OpenLink Virtuoso Universal Server
13:50:09 INFO: Version 07.20.3229-pthreads for Linux as of Feb  3 2020
13:50:09 INFO: uses parts of OpenSSL, PCRE, Html Tidy
13:50:09 INFO: Database version 3126
13:50:09 INFO: SQL Optimizer enabled (max 1000 layouts)
13:50:10 INFO: Compiler unit is timed at 0.000141 msec
13:50:11 INFO: Roll forward started
13:50:11 INFO:     3 transactions, 185 bytes replayed (100 %)
13:50:11 INFO: Roll forward complete
13:50:12 INFO: Checkpoint started
13:50:12 INFO: Checkpoint finished, log reused
Failed to start listening: Address already in use
13:50:12 ERROR: Failed to start listening at SQL port '1111'
13:50:12 INFO: Server exiting

how should we continue?

Based on the error ERROR: Failed to start listening at SQL port '1111'

Are you sure there is not already a Virtuoso instance in use on port 1111, which you can check by either:

  1. Making a connection an isql connection to port 1111 to see if it is accessible with the command:
isql 1111

and if it is shutdown the Virtuoso instance and then start the Virtuoso instance you want.

  1. Check if the port 1111 is in use with the command:
netstat -an | grep 1111

which if it is and it is not Virtuoso using it then you need to determine what is, but I assume it must be a Virtuoso instance as you have started Virtuoso on this port before.