Package: virtuoso-opensource-6.1 Severity: critical Justification: causes serious data loss
Dear Maintainer. When calling '/etc/init.d/virtuoso-opensource-6.1 stop', virtuoso may still be running after the script completes. This might lead to database corruption, e.g. on system reboot. Seemingly, the script fails to wait for a clean exit of the server in this section: <quote> stop) log_daemon_msg "Stopping $DESC" "$NAME" if running ; then # Only stop the server if we see it running errcode=0 stop_server || errcode=$? log_end_msg $errcode else # If it's not running don't do anything log_progress_msg "apparently not running" log_end_msg 0 exit 0 fi ;; </quote> I have modified the script to temporarily circumvent the situation on my system by enclosing part of this snippet in a while-loop, as below: <quote> stop) log_daemon_msg "Stopping $DESC" "$NAME" # keep stopping the server if it fails to stop while running; do if running ; then # Only stop the server if we see it running errcode=0 stop_server || errcode=$? log_end_msg $errcode else # If it's not running don't do anything log_progress_msg "apparently not running" log_end_msg 0 exit 0 fi sleep 2 # wait two seconds before looping done ;; </quote> As my knowledge of rc.d scripts is limited, this was a quick hack to prevent my database to suffer corruption. My solution does not cater for the need to force-stop virtuoso. If the server does not exit cleanly at some point, I have effectively created an infinite loop. Please fix this situation in a more proper fashion. Regards ;)Frode Frode Severin Hatlevik -- System Information: Debian Release: 7.0 APT prefers testing APT policy: (500, 'testing') Architecture: amd64 (x86_64) Foreign Architectures: i386 Kernel: Linux 3.2.0-4-amd64 (SMP w/2 CPU cores) Locale: LANG=nb_NO.UTF-8, LC_CTYPE=nb_NO.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash -- To UNSUBSCRIBE, email to debian-bugs-rc-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org