Page 1 of 1

Servern kraschar efter ny regel (skiljd från)

Posted: Sat 16 Mar 2013, 22:38
by carlgustavoberg
Efter att tidigare idag ha uppdaterat servern till senaste versionen skulle jag nu göra litet ändringar - bland annat lade jag till ett nytt scenario, som jag valde att det skulle startas av att en datakällas värde var "skild från" 1,0. Precis efter att ha sparat det nya scenariot kraschade servern, och om jag försöker starta om SK-serverns services så dör dem igen, och i Windows-loggen hittar jag följande av intresse:

Error processing device events. Exception:
System.ArgumentException

Level 1) Hysteresis can not be set for operator NotEqual. Rule: [ID:34]

StackTrace for Level 1:
vid SwitchKing.Server.BusinessAccess.DataCollection.Engines.RuleSetEvaluatorEngine.EvaluateRuleByDataSourceValuesForSingleValueInRule(EntityRule& er, List`1& dsValues)
vid SwitchKing.Server.BusinessAccess.DataCollection.Engines.RuleSetEvaluatorEngine.EvaluateRuleByDataSourceValues(EntityRule& er, List`1& dsValues)
vid SwitchKing.Server.BusinessAccess.DataCollection.Engines.RuleSetEvaluatorEngine.EvaluateRule(EntityRule er, DateTime reference)
vid SwitchKing.Server.BusinessAccess.DataCollection.Engines.RuleSetEvaluatorEngine.EvaluateRules(EntityRuleSet ruleSet, List`1 rules, LogicalOperation operation, DateTime reference)
vid SwitchKing.Server.BusinessAccess.DataCollection.Engines.RuleSetEvaluatorEngine.EvaluateRuleSet(EntityRuleSet ers, DateTime reference)
vid SwitchKing.Server.BusinessAccess.DataCollection.RuleSetEvaluationAccess.Evaluate(EntityRuleSet ers, DateTime reference, DataSourceEntity& dsAccess, DataSourceValueEntity& dsvAccess)
vid SwitchKing.Server.BusinessAccess.Invocation.Helpers.RuleTriggerHelper.IsEligibleForActivation(Scenario s, DateTime reference, Nullable`1& timeStampForActivation)
vid SwitchKing.Server.BusinessAccess.Invocation.Engines.StateValidatorEngine.ValidateScenarioStates()
vid SwitchKing.Server.BusinessAccess.Invocation.EventQueueAccess.DeviceEventEntity.PullAndExecuteEventStackV2(DeviceEntity& devAccess, DeviceTypeEntity& devTypeAccess, DeviceModeEntity& devModeAccess, DeviceActionEntity& devActionAccess, InvocationEngine& engine, ScenarioEntity& scenarioAccess, SystemStateEntity& stateAccess, ScenariosDevicesEntity& scenariosDevicesAccess, ScheduleEntity& calcAccess, ExecutionQueueAccess& execAccess, DataSourceEntity& dsAccess, DataSourceValueEntity& dsvAccess, RuleSetEvaluationAccess& evalAccess, EntityRuleSetEntity& ruleAccess)
vid SwitchKing.Server.WinSvcServiceHost.InvocationService.ProcessDeviceEvents()



Det verkar vara något i stil med att hysteres inte kan användas i kombination med "skild från"/NotEqual. Jag lät hysteres-fältet vara orört när jag skapade regeln, och det har väl något default-värde som därför följde med.

Vad fasen gör jag nu? Lamporna är tända och jag behöver sova! ;) Taklampan ovanför sängen går faktiskt dumt nog bara att styra via Tellsticken...

Re: Servern kraschar efter ny regel (skiljd från)

Posted: Mon 18 Mar 2013, 19:14
by tomas
Aj då :? Vi får kolla upp hur detta kan uppstå.

I samband med att du gjorde uppgraderingen till senaste versionen så sparade Switch King en kopia på din databas som du hade innan uppgraderingen. Den ligger i mappen Backup där du installerat servern (ligger typiskt här: C:\Program\Switch King\Switch King Server\Backup).

För att lösa ditt akuta problem så kan du göra följande:
  • Se till att alla tjänster för Switch King är stoppade
  • Döp om databasen som används nu (ligger typiskt här: C:\Program\Switch King\Switch King Server\DB\switchKing.server.db3) till t ex "switchKing.server.old.db3"
  • Kopiera den "nyaste" databasen (.db3) i Backup-mappen till DB-mappen
  • Döp om backup-databasen (som nu ligger i DB-mappen) till "switchKing.server.db3"
  • Starta tjänsterna för Switch King igen (eller starta om datorn)
Du förlorar de inställningar du hann göra innan du fick problemet, men bör åtminstone kunna få igång systemet igen.

Re: Servern kraschar efter ny regel (skiljd från)

Posted: Mon 18 Mar 2013, 20:29
by tomas
Har återskapat problemet i version 3.2.1.0 av servern. Default-värdet för Hysteres är 0,1 och det leder till felet i servern när man sparar regeln. För gruppscheman så kraschar dock inte servern utan fortsätter snurra (fast regeln fungerar inte som tänkt), men för scenarion är det just nu så här. :(

Om du sätter Hysteres = 0 för regeln så fungerar det. (Gäller bara att komma ihåg det...)

Vi kommer att åtgärda detta när vi släpper ny version av klienten.

Re: Servern kraschar efter ny regel (skiljd från)

Posted: Sat 23 Mar 2013, 10:07
by carlgustavoberg
Sorry för sent svar! Strax efter inlägget hittade jag backupen och fick det återställt - så mitt problem är löst! Gött att ni åtgärdar det!