X-Git-Url: https://feistymeow.org/gitweb/?a=blobdiff_plain;f=scripts%2Fopensim%2Fopensim_utils.sh;h=130e9cddd56dcd34400044721a835535040c957c;hb=e768391ab81b189397f0fd19827999365f8b3e33;hp=d9f4e11cde1d605a6b323f8ea1a4a9454b9fb1ce;hpb=66e60c3527770ae970ff9f82ad6a48b8be2b251b;p=feisty_meow.git diff --git a/scripts/opensim/opensim_utils.sh b/scripts/opensim/opensim_utils.sh index d9f4e11c..130e9cdd 100644 --- a/scripts/opensim/opensim_utils.sh +++ b/scripts/opensim/opensim_utils.sh @@ -2,10 +2,10 @@ # this is a collection of scripts that assist in managing an opensim server. # it uses the "screen" utility to manage opensimulator instances. -source "$FEISTY_MEOW_SCRIPTS/core/functions.sh" +source "$FEISTY_MEOW_SCRIPTS/core/launch_feisty_meow.sh" # set up some parameters that we believe (or have been told) are beneficial. -export MONO_THREADS_PER_CPU=408 +export MONO_THREADS_PER_CPU=1208 # we run the processes with a little cpu de-prioritization. we do not want # them taking over completely if there's a runaway mono tornado. @@ -17,11 +17,11 @@ export LANG=C # this is used as a process startup snooze, to avoid running a dependent # process before the dependency has really started. -export SNOOZE_TIME=7 +export SNOOZE_TIME=6 # lock the limit in for threads, so we don't have any getting out of control. # also make sure we've provided enough space for each thread. -ulimit -s 262144 +ulimit -s 512144 # use more recent versions of mono for opensim if they're available. if [ -d /opt/mono-2.10/bin ]; then @@ -35,12 +35,20 @@ function launch_screen() { screen_name="$1"; shift app_name="$1"; shift - echo "$(date_stringer): starting $screen_name now..." + echo "$(date_stringer ' '): starting $screen_name now..." +#hmmm: version check for if we're using old screen? this -L change was a mistake though for the screen project owners on ubuntu. +local boguslog=$HOME/screen_junk_$(date_stringer).log +#maybe they unbroke it in 17.10? yes, but it requires NO space now. *&@#*&@# +#hmmm: bring back old version but check for ubuntu 17.04 vs 17.10 now. +#actually they made it a new parm. arghhh! screen -L -S "$screen_name" -d -m nice -n $NICENESS_LEVEL mono "$app_name" -##why? --debug -#-console=basic - echo "$(date_stringer): $screen_name started." - sleep $SNOOZE_TIME +#$boguslog + + echo "$(date_stringer ' '): $screen_name started." + # only sleep if we are not at the last process that gets started. + if [ "$app_name" != "OpenSim.exe" ]; then + sleep $SNOOZE_TIME + fi } # finds the opensim process specified or returns a blank string in the @@ -62,13 +70,13 @@ function close_application() { screen_name="$1"; shift process_name="$1"; shift - echo "$(date_stringer): stopping $screen_name now..." + echo "$(date_stringer ' '): stopping $screen_name now..." screen -r -s "$screen_name" -X quit # we don't want to shut any other servers down until this process is really gone. find_opensim_process $process_name if [ ! -z "$OS_PROC_ID" ]; then - echo "$(date_stringer): waiting for $screen_name to really shut down..." + echo "$(date_stringer ' '): waiting for $screen_name to really shut down..." sleep $SNOOZE_TIME # check again after the snooze. find_opensim_process $process_name @@ -76,7 +84,7 @@ function close_application() find_opensim_process $process_name #break out on timed basis. done - echo "$(date_stringer): $screen_name really is shut down now." + echo "$(date_stringer ' '): $screen_name really is shut down now." #do this as last ditch, above in timeout find_opensim_process $process_name @@ -88,6 +96,6 @@ function close_application() fi - echo "$(date_stringer): $screen_name stopped." + echo "$(date_stringer ' '): $screen_name stopped." }