Announcement

Collapse
No announcement yet.

HS locks up with DM .89 and up

Collapse
This topic is closed.
X
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    HS locks up with DM .89 and up

    I seem to be having a problem with DM.89 and up. When this version was originally loaded onto my system, HS locked up overnight. I figured it was just a fluke and restarted the system. It happened again the next day, and then I went back to DM.66 as I was going out of town. All was fine while I was gone.

    When I came back, I downloaded .89 again (to get a "fresh" copy - just in case - tried it, and had the same problem. I went back to .66, went out of town again, and all was fine.

    I downloaded .91 thinking it might solve the problem, loaded it last night, and sure enough, the system locked up this afternoon. Since I could run for at least two weeks with .66 (possibly much longer - I restart once / week when I'm home just to keep the sytem stable), it seems this must be something odd happening between my system and DM .89 and up. I'm back on .66 again, but would like to figure this out.

    Is anyone else having similar problems? Any idea why this could be happening? Using HS 2.2.0.11, and have been a long-time DM fan / user. I also have a large number of other plugins, but all seems fine with earlier DM version.
    Madcodger

    This would be a lot easier if I knew what I was doing...

    #2

    Comment


      #3
      Do you have debug mode enabled? Is there any clues in the error.log file in the DATA\DooMotion folder? I will likely need to make the next build include memory and performance monitoring to track this down.
      Jim Doolittle

      My Twitter
      My Hardware & Software

      Comment


        #4
        Originally posted by Jim Doolittle View Post
        Do you have debug mode enabled? Is there any clues in the error.log file in the DATA\DooMotion folder? I will likely need to make the next build include memory and performance monitoring to track this down.
        Jim,

        Let me enable and see what I get. Can test today / tomorrow as we're around the house most of the time over the holiday. Anything in particular I should be looking for in the log, or in DM / HS behavior?

        Thanks,

        Joe
        Madcodger

        This would be a lot easier if I knew what I was doing...

        Comment


          #5
          Current log will only partially help. I need to provide a new build that provides more debug info related to DM resource usage. I think I will arbitrarily have DM write resource info to debug.log every 15 minutes when debug mode is enabled. I just noticed that the debug.log shows "Debug" as log type which is left over from when debug log entries were written to HS log. I will change that to be more descriptive so that the text descriptiong can be searched. For resource usage I will use "Resources".

          I have several items on my TODO list today so I will try to complete a few as quick as I can and then work on completing this new build. Will likely have something later tonight or early tomorrow. Tomorrow is a holiday so I will have some additional time to do some programming.

          Some things to report with .89 that may be helpful:
          • With Debug Mode enabled, estimate the "average" maximum number of status changes in one second. My system has a lot of sensors and devices but not a whole lot of status changes in one second. Mine seems to be about 6 or so.
          • Size of current debug.log file. If Debug Mode was not enabled when your problem occurred, I doubt that this has any bearing on the issue.
          • Size of current error.log. If that file is large, could result in some performance issues.
          • Size of DooMotion.mdb
          • Do you use a lot of external scripts? I use CAC almost exclusively.
          • Possible that some CAC is taking too long to run? Or is most of it rather simple?
          Jim Doolittle

          My Twitter
          My Hardware & Software

          Comment


            #6
            Here is some log info

            Jim,

            Below are logs that I retrieved from past run with .89

            These entries are from homeseer log

            5/10/2007 17:33:25 ~!~DooMotion Error~!~Unable to execute query: EXECUTE InsertSensorActivity. Error in Database.ExecuteNonQuery [System resource exceeded.] {2.2.89.0}
            5/10/2007 17:33:42 ~!~DooMotion Error~!~Unable to set status of Salle de Sejour Det. de Mouvement (Nord) to 2. Error in MotionSensorClass.SetStatus [Exception of type 'System.OutOfMemoryException' was thrown.]
            5/10/2007 17:34:00 ~!~Error~!~Delete (Event1) Error: System resource exceeded.
            5/10/2007 17:34:00 ~!~Error~!~Deleting event with ref 1642
            5/10/2007 17:34:06 ~!~DooMotion Error~!~Unable to run Motion Action Code for Salle de Sejour Det. de Mouvement (Nord) for Salle de Sejour Det. de Mouvement (Nord). Error in HSProcessorObject.RunSensorCode [Creating an instance of the COM component with CLSID {0E59F1D5-1FBE-11D0-8FF2-00A0D10038BC} from the IClassFactory failed due to the following error: 8007000e.] {2.2.89.0}
            5/10/2007 17:34:06 ~!~DooMotion Error~!~Unable to create separate thread to check trigger. Error in HSPI_DOOMOTION.DooMotion.CheckTrigger [Exception of type 'System.OutOfMemoryException' was thrown.] {2.2.89.0}

            And these are from DM log

            5/10/2007 05:33:25.796 PM~!~Error~!~Unable to execute query: EXECUTE InsertSensorActivity. Error in Database.ExecuteNonQuery [System resource exceeded.] {2.2.89.0}
            5/10/2007 05:33:36.171 PM~!~Error~!~Unable to execute query: EXECUTE InsertSensorActivity. Error in Database.ExecuteNonQuery [System resource exceeded.] {2.2.89.0}
            5/10/2007 05:33:42.937 PM~!~Error~!~Unable to execute query: EXECUTE InsertSensorActivity. Error in Database.ExecuteNonQuery [System resource exceeded.] {2.2.89.0}
            5/10/2007 05:33:43.140 PM~!~Error~!~Unable to set status of Salle de Sejour Det. de Mouvement (Nord) to 2. Error in MotionSensorClass.SetStatus [Exception of type 'System.OutOfMemoryException' was thrown.] {2.2.89.0}
            5/10/2007 05:33:57.015 PM~!~Error~!~Unable to set status of Salle de Sejour Det. de Mouvement (Nord) to 2. Error in MotionSensorClass.SetStatus [Exception of type 'System.OutOfMemoryException' was thrown.] {2.2.89.0}
            5/10/2007 05:33:57.125 PM~!~Error~!~Unable to execute query: EXECUTE InsertSensorActivity. Error in Database.ExecuteNonQuery [System resource exceeded.] {2.2.89.0}
            5/10/2007 05:34:06.906 PM~!~Error~!~Unable to run Motion Action Code for Salle de Sejour Det. de Mouvement (Nord) for Salle de Sejour Det. de Mouvement (Nord). Error in HSProcessorObject.RunSensorCode [Creating an instance of the COM component with CLSID {0E59F1D5-1FBE-11D0-8FF2-00A0D10038BC} from the IClassFactory failed due to the following error: 8007000e.] {2.2.89.0}

            5/10/2007 05:34:07.093 PM~!~Error~!~Unable to create separate thread to check trigger. Error in HSPI_DOOMOTION.DooMotion.CheckTrigger [Exception of type 'System.OutOfMemoryException' was thrown.] {2.2.89.0}
            5/10/2007 05:34:07.234 PM~!~Error~!~Unable to set status of Salle de Sejour Det. de Mouvement (Nord) to 2. Error in MotionSensorClass.SetStatus [Exception of type 'System.OutOfMemoryException' was thrown.] {2.2.89.0}
            5/10/2007 05:34:07.375 PM~!~Error~!~Unable to execute query: EXECUTE InsertSensorActivity. Error in Database.ExecuteNonQuery [System resource exceeded.] {2.2.89.0}

            Hope this help!

            Let me know if you need more info.

            Claude

            Comment


              #7
              Logs

              Jim,

              Here are the DM and HS logs. Things were going along beautifully, and then I noticed a DM error a little after 6 (didn't notice at the time, but via the logs). Then it all just sort of broke loose with trouble at 8:33:20. Wow! Error after error, and HS locked up. Had to kill the .exe file with a ctrol-alt-del, as I couldn't even stop the program.

              I'm not using any CAC or external scripts, for motion. Everything is event based.

              I'll watch this board and run the new build tomorrow and even Tuesday. If not resolved by then, will have to go back to .66 W - F, though, as we have a house sitter while out of town on business (family with me this trip).

              Thanks again,

              Joe
              Attached Files
              Madcodger

              This would be a lot easier if I knew what I was doing...

              Comment


                #8
                I did some reading on Out Of Memory errors. One possible cause is large log file sizes. Try deleting or renaming debug.log and error.log in DATA\DooMotion folder. I am working on next build now that contains more error detail. I will also set a max log file size and store the logs when they get too big. For now, I want the user to decide when to delete old logs.
                Jim Doolittle

                My Twitter
                My Hardware & Software

                Comment


                  #9
                  OK, deleted both. Debug was about 4.4 MB, error about 4.1 MB. Will report back as I notice anything. HS logs showing lots of DM error this a.m., but system remained up overnight. Will see what happens with smaller debug and error files.

                  BTW, running .91 if that helps.

                  UPDATE: After HS restart and after deleting the logs, still got this:

                  5/28/2007 11:32:46 AM Info Event Trigger "NO Motion Turns Upstairs Hall Lights OFF"
                  5/28/2007 11:32:46 AM DooMotion Error Unable to check trigger. Error in DooMotion.CheckTrigger [Index was outside the bounds of the array.] {2.2.91.0}
                  5/28/2007 11:32:46 AM Info Device: Upper Story Hall Lights (%98) OFF

                  Joe
                  Last edited by Madcodger; May 28, 2007, 10:40 AM.
                  Madcodger

                  This would be a lot easier if I knew what I was doing...

                  Comment


                    #10
                    Nothing was changed in the CheckTrigger area since 2.2.65. Might be a "bad" event. Am testing next build now that I will not wait to mess with CheckTrigger at the moment.
                    Jim Doolittle

                    My Twitter
                    My Hardware & Software

                    Comment


                      #11
                      2.2.92 is posted with HSEvent fix, 1M log file limit (files are renamed when they reach 1M), and some log entry enhancements.
                      Jim Doolittle

                      My Twitter
                      My Hardware & Software

                      Comment


                        #12
                        Loaded 2.2.92, and then deleted occupancy sensor that was giving me problems (removed it as sensor, then deleted it, then recreated it). Changes to occupied status, but then never goes back to vacant. Just sits with zero minutes occupied.
                        Madcodger

                        This would be a lot easier if I knew what I was doing...

                        Comment


                          #13
                          Now we are back to that again .

                          What is the device code of that OS and what motion sensor codes control it? And refresh my memory on what type of MS you are using.

                          To prevent the HSEvent string error which resulted from an empty device value being passed, I set the device value to a "null" value of -32768 which causes one of two actions to be taken for setting sensor status depending whether custom device status/value relationships are defined.
                          Jim Doolittle

                          My Twitter
                          My Hardware & Software

                          Comment


                            #14
                            Jim,

                            After updating to .92 I get this error each time Homeseer starts

                            5/29/2007 4:47:27 PM - Info - Initializing Plug-in: DooMotion
                            5/29/2007 4:47:27 PM - Error - Initializing interface: DooMotion->Error encountered initializing DooMotion. Error occurred on line 0 of hspi.InitIO [Object reference not set to an instance of an object.].
                            5/29/2007 4:47:27 PM - Info - Finished initializing plug-in DooMotion

                            Thanks

                            Thom

                            Comment


                              #15
                              OS device code is z10. MS codes (virtual devices) connected to it are _23 through _28 (four doors, and two sets of windows, one for each floor). Each of these is triggered by an input on the Elk M1G, so ON = 4, OFF = 2, UNKNOWN = Value <>2 AND Value <>4. The device codes on the Elk itself are "\n", with n being a number (3 is the first one, and they're not sequential).

                              For now, I reverted back to 2.0.131 as I needed it to be rock solid if I was going to keep the events in place. It seems to work perfectly now with that, so don't knock yourself out with it. I can't test until Friday evening anyway, as I'm out of town with the family and the house sitters will go nuts.

                              If it matters as to how I'm using this, here it is:

                              I'm using this to monitor the status of doors / windows and then to shut down the HVAC system after a set length of time if any are left open. Works like this:

                              If any of these doors / windows is left open for exactly 5 minutes, it triggers an event that sends out an audible warning, telling you which door / window is open and warning that the HVAC will shut down in 5 minutes if they are not closed. No OS involvement in the events themselves, but obviously it starts the "occupied" state counting up when any of these sensors are triggered and left open. I have a separate event for EACH sensor (six in all, as that allows me to announce the name of the door / window open). A second set of six events gives another warning at 10 minutes, and shuts down the HVAC. A third set of six events triggers if the appropriate sensor is left open at least (as opposed to exactly) 15 minutes, but the "do not retrigger" filter is set to 900 seconds. Thus, it repeats a warning with the name of the open door / window every 15 minutes until it is closed. For all of this, though, there is no OS involvement except that the "occupied counter" starts counting upward is the door / window is open.

                              The OS involvement comes into play when the door / window has been shut. Since there is no need to know what, specifically, was shut I just have the HVAC go back into cool mode when the OS changes back to vacant, with a condition that the thermostat is in "off" mode. When it works (it does, using 2.0.131), it's fantastic! AC running much less thanks to family control!


                              Thanks!

                              Joe
                              Madcodger

                              This would be a lot easier if I knew what I was doing...

                              Comment

                              Working...
                              X