Hi Houda,

I am trying to upgrade my Virtuoso server from version 1.6.2 to version 1.6.3 by simply installing the Version 1.6.3 using ./ configure -prefix=/Path/OldVirtuoso. But, I get this error after several attempts to start server on port1111 (this port is not busy by any application in my machine).

Waiting Virtuoso Server start on port 1111...
***FAILED: Could not start Virtuoso Server within 600 seconds
make[2]: *** [rdf_mappers_dav.vad] Error 1
make[2]: Leaving directory `/home/khrouf/Documents/virtuoso- opensource-6.1.3/binsrc/rdf_mappers'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/khrouf/Documents/virtuoso- opensource-6.1.3/binsrc'
make: *** [all-recursive] Error 1

I think also that there are some persons which have the same problem.


Please go to the following directory: binsrc/rdf_mappers and check the content of the *.log files in this directory as hints on why virtuoso cannot build this vad are in these files.

You can forward me these files if you need assistance in solving the problem.

Yes I need assistance for this problem, you find attached the log files. It seems that it can not connect to port 1111 although I shut down the old Virtuoso instance via SQL Interactive. Also, when I run the command nc -v -l 1111, I find this port not in use.
Thanks for your help


The vad.log actually contains the reason why the server does not want to start:

15:00:46 Checkpoint finished, log reused
15:00:46 Failed to start listening at the unix domain socket for tcp port '1111'
15:00:46 Server exiting


The problem here is when you start virtuoso on a certain port, it creates a Unix Domain socket in /tmp/virt_PORT (in your case /tmp/ virt_1111) with the userid of the user you are logged in as.

If you start virtuoso later as another user, it cannot remove and recreate this Unix Domain socket due to the permissions of the /tmp filesystem. It looks like you are using separate users for building and running the database.

The easiest way to get your build done quickly, is to remove this file from /tmp, so you can continue your make and do a make install. But you will have to remove it again after the make install, else your production version will have the same problem.


In general you should not use the same ports for an installed version and a new build, since the build would then shutdown the installed version so it can start its own instance to make vads and perform testing.

There are 2 options:

1. You change the ports of your installed version so it is not 1111 and 8890

2. You add a flag to configure telling it which port to use for the build as in:

        ./configure --with-port=21111

it will use some additional ports when you perform tasks like make check, but these
   ports are all calculated based on this setting, so should not clash.


Best regards,

Patrick

P.S. There is no need to cross post into both mailing lists, so i limited my reply to the users list.

Reply via email to