Page 1 of 1

Uppstartsproblem: CalendarDateDefinitions

Posted: Tue 13 Dec 2011, 14:09
by nixi
Hej,

Jag har precis kört in SwitchKing.Server.Linux.2.0.2.7 på en Ubuntu 10.4.3 (32 bitars). Har lite problem med starten. Försökte lägga in som en tjänst men det borde ju fungera i terminalen först ialla fall. Får det här i loggen

Något tips om vad felet kan bero på?

Code: Select all

{BusinessAccess - Pooling} --<Critical> -- 12/13/2011 12:50:22 PM -- Failed to initialize pooling. Exception: 
Mono.Data.Sqlite.SqliteException

Level 1) SQLite error
no such table: CalendarDateDefinitions

StackTrace for Level 1:
  at Mono.Data.Sqlite.SQLite3.Prepare (Mono.Data.Sqlite.SqliteConnection cnn, System.String strSql, Mono.Data.Sqlite.SqliteStatement previous, UInt32 timeoutMS, System.String& strRemain) [0x00000] in <filename unknown>:0 
  at Mono.Data.Sqlite.SqliteCommand.BuildNextCommand () [0x00000] in <filename unknown>:0 
{BusinessAccess - Pooling} --<Critical> -- 12/13/2011 12:50:23 PM -- Failed to initialize pooling. Exception: 
Mono.Data.Sqlite.SqliteException

Level 1) SQLite error
no such table: CalendarDateDefinitions

StackTrace for Level 1:
  at Mono.Data.Sqlite.SQLite3.Prepare (Mono.Data.Sqlite.SqliteConnection cnn, System.String strSql, Mono.Data.Sqlite.SqliteStatement previous, UInt32 timeoutMS, System.String& strRemain) [0x00000] in <filename unknown>:0 
  at Mono.Data.Sqlite.SqliteCommand.BuildNextCommand () [0x00000] in <filename unknown>:0 
{Framework Service - Startup} --<Error> -- 12/13/2011 12:50:23 PM -- 
System.TypeInitializationException

Level 1) An exception was thrown by the type initializer for SwitchKing.Server.BusinessAccess.SettingsAccess 
Level 2) SQLite error
no such table: CalendarDateDefinitions

StackTrace for Level 1:
  at SwitchKing.Server.BusinessAccess.SettingsAccess+SystemSettingEntity..ctor () [0x00000] in <filename unknown>:0 
  at SwitchKing.Server.BusinessAccess.BusinessInstances.get_SystemSetting () [0x00000] in <filename unknown>:0 
  at SwitchKing.Server.WinSvcServiceHost.ServiceInitiator.WriteSystemVersionDataToLog (System.String logCategory) [0x00000] in <filename unknown>:0 
{Framework Service - Startup} --<Status> -- 12/13/2011 12:50:23 PM -- Validating database version and executing upgrade scripts.

Re: Uppstartsproblem: CalendarDateDefinitions

Posted: Tue 13 Dec 2011, 14:41
by nixi
Hoppsan såg visst inte att man skulle packa upp databasen manuellt. Problem löst. Nu är det bara uppstart med skript men det är ett annat problem.

Re: Uppstartsproblem: CalendarDateDefinitions

Posted: Tue 13 Dec 2011, 15:10
by Martin
Att db:n ska packas upp manuellt är en säkerhetsdetalj om det skulle vara så att man redan har en existerande db...

Re: Uppstartsproblem: CalendarDateDefinitions

Posted: Tue 13 Dec 2011, 19:54
by KungenAvPeking
nixi wrote:Nu är det bara uppstart med skript men det är ett annat problem.

Code: Select all

$ sudo nano /etc/init.d/SwitchKing.sh
Lägg in följande:

Code: Select all

#!/bin/sh

### BEGIN INIT INFO
# Provides:             switchking
# Required-Start:       $network $syslog
# Required-Stop:        $network $syslog
# Default-Start:        2 3 4 5
# Default-Stop:         0 1 6
# Short-Description:    Start and stop Switch King
# Description:          Switch King init script. This script starts and stops Switch King daemon.
### END INIT INFO

set -e
export MONO_LOG_LEVEL=info
export MONO_LOG_MASK=dll

# Must be a valid filename
NAME=switchking
PIDFILE=/var/run/$NAME.pid
# This is the command to be run, give the full pathname
DAEMON="/usr/bin/mono /opt/SwitchKing/SwitchKing.exe"
DAEMON_OPTS="daemon 192.168.0.99 8080 192.168.0.99 8800"

case "$1" in
  start)
        echo -n "Starting daemon: "$NAME
        start-stop-daemon --start --quiet --background --make-pidfile --pidfile $PIDFILE --exec $DAEMON -- $DAEMON_OPTS
        echo "."
        ;;
  stop)
        echo -n "Stopping daemon: "$NAME
        start-stop-daemon --stop --quiet --oknodo --pidfile $PIDFILE
        if [ -e $PIDFILE ]; then
          rm $PIDFILE
        fi
        echo "."
        ;;
  restart)
        echo -n "Restarting daemon: "$NAME
        $0 stop
        $0 start
        echo "."
        ;;

  *)
        echo "Usage: "$1" {start|stop|restart}"
        exit 1
esac

exit 0
Det du behöver ändra är följande två rader:

DAEMON="/usr/bin/mono /opt/SwitchKing/SwitchKing.exe"
DAEMON_OPTS="daemon 192.168.0.99 8080 192.168.0.99 8800"

Röda texten ska stämma överens med din installation.

Spara med ctrl-o (kolla filnamnet och enter)
Gå ur editorn med ctrl-x

Code: Select all

$ sudo chmod +x /etc/init.d/SwitchKing.sh
$ sudo update-rc.d SwitchKing.sh defaults 60
Så har jag gjort... Det finns givetvis andra sätt! ;)

För att testa scriptet, kan du skriva:

Code: Select all

$ sudo /etc/init.d/SwitchKing.sh start
För att stoppa SwitchKing (ex. för uppdatering av databas, installation av plugin eller liknande:

Code: Select all

$ sudo /etc/init.d/SwitchKing.sh stop
Eller bara starta om SwitchKing:

Code: Select all

$ sudo /etc/init.d/SwitchKing.sh restart
Hoppas detta ha varit till hjälp, så du slipper uppfinna hjulet på nytt! :wave:

Re: Uppstartsproblem: CalendarDateDefinitions

Posted: Tue 13 Dec 2011, 20:02
by nixi
Tack ska prova. Uppskattas verkligen!

Jag fick igång SK på linuxburken och jag körde lite test med den mot en lampa kopplad på en Nexa switch. Fungerade utmärkt först. Sedan hängde sig SK på linux burken. Startade om tjänsten och det rullade på igen. Provade senare att ändra dimmern (som hade fungerat innan) men inga kommandon gick fram till Nexan. Jag lät det vara och kände sedan att det luktade bränt.

Hmm konstigt för det var typ vad jag upplevde med Windows betan (se tidigare erfarenhet, viewtopic.php?f=21&t=298). Hur är det möjligt?!

Nexa prylarna var likadana och inköpta samtidigt. Nu har jag bara en kvar att bränna;-)

Edit: förra gången hade jag en Duo och nu körde jag den gamla vanliga Telldus stickan.

Re: Uppstartsproblem: CalendarDateDefinitions

Posted: Tue 13 Dec 2011, 20:48
by nilzen
KungenAvPeking wrote:DAEMON="/usr/bin/mono
Jag har eg. för dålig koll på mono, men är det inte bättre att köra med mono-service2 som jag gör här viewtopic.php?f=25&t=506#p3837 ?

När jag körde med "mono" så stoppades exekveringen av resterande init-scrip...

Re: Uppstartsproblem: CalendarDateDefinitions

Posted: Tue 13 Dec 2011, 21:12
by KungenAvPeking
Har inte haft något problem med det, men samtidigt är jag noga med att starta SwitchKing så sent som möjligt:

$ sudo update-rc.d SwitchKing.sh defaults 60

vilket gör att den hamnar bland de sista init-scripten (vill vara säker på att "telldusd" hinner starta innan)

Re: Uppstartsproblem: CalendarDateDefinitions

Posted: Tue 13 Dec 2011, 21:21
by KungenAvPeking
Kollade min /var/log/boot.log och det verkar som att SwitchKing släpper som det ska, har två saker som startats efter: "binfmt-support" och "apache2"

Så för min del funkar det! :)