Active TopicsActive Topics  Display List of Forum MembersMemberlist  Search The ForumSearch  HelpHelp
  RegisterRegister  LoginLogin
PowerHome General
 PowerHome Messageboard : PowerHome General
Subject Topic: Infinite Loop Detected On Macro Post ReplyPost New Topic
Author
Message << Prev Topic | Next Topic >>
patrickm
Senior Member
Senior Member


Joined: February 22 2007
Location: United States
Online Status: Offline
Posts: 188
Posted: September 21 2010 at 11:09 | IP Logged Quote patrickm

Hello,
This morning I took a look at my event log and I had a couple of Infinite Loop Detected errors. This is quite puzzling since the macros have not been changed for a couple of years and run every night. I looked through the event log and noticed numerous web access entries from a local subnet IP address earlier. This was even more concerning since I do not use the web interface.

I tried deleting the event log and reinitializing. The database was still around 50M is size. I then tried to use the PHUPG.EXE to rebuild the database but it threw a bunch of errors when it ran.

I am getting the impression that the database is probably very messed up.

Any ideas?

-Patrick
Back to Top View patrickm's Profile Search for other posts by patrickm
 
grif091
Super User
Super User


Joined: March 26 2008
Location: United States
Online Status: Offline
Posts: 1357
Posted: September 21 2010 at 12:01 | IP Logged Quote grif091

Use the ph_trimeventlog function to logically reduce the size of the log. Then run the update utility to reduce the physical size.

__________________
Lee G
Back to Top View grif091's Profile Search for other posts by grif091
 
patrickm
Senior Member
Senior Member


Joined: February 22 2007
Location: United States
Online Status: Offline
Posts: 188
Posted: September 22 2010 at 00:47 | IP Logged Quote patrickm

Thanks Lee I will try that.
Back to Top View patrickm's Profile Search for other posts by patrickm
 
dhoward
Admin Group
Admin Group
Avatar

Joined: June 29 2001
Location: United States
Online Status: Offline
Posts: 4447
Posted: September 29 2010 at 12:03 | IP Logged Quote dhoward

Patrick,

Let me know how you've made out. You definitely want to get your database down to 10MB or less. The PHUPG utility should work so just need to know what specific problems you're having.

Infinite loops may not actually be infinite. These settings are controlled by a couple of parameters in the PowerHome Explorer under PowerHome|Setup|Script. You'll see a "Maximum number of Recursive Calls" and a "Macro Jump Limit". MJL is a value that incremented everytime a jump is called within a macro. I typically set this to 0 (unlimited) since I may be jumping within a loop. You may have this value set to something else and if you exceed that number, you'll get an error. MNORC controls how many times a macro can be called. The default value is 30 and may just be low for your particular application. Its intended to catch situation where Macro A may call Macro B which calls Macro C which then calls Macro A type of situations. Its a global value and everytime a macro is called, it gets incremented. Everytime a macro terminates, its decremented. It is not on a per macro basis. So in the above situation, once Macro C is called, this value would be 3. Depending upon your programming style, you may want to increase this value.

Dave.
Back to Top View dhoward's Profile Search for other posts by dhoward Visit dhoward's Homepage
 
patrickm
Senior Member
Senior Member


Joined: February 22 2007
Location: United States
Online Status: Offline
Posts: 188
Posted: September 29 2010 at 13:54 | IP Logged Quote patrickm

Dave,
Things are not "normal" yet. The database size is 3M now but reinitializing takes a very long time (>1 min). Triggers are very quick one minute and very slow the next.

I have a question about the Powerhome status window. There is a sequence number for the waiting macros. Should that number continually increase?

I have a few macros that I use for updating keypads and some data log files and they use a wait followed by a jump to the beginning of the macro. I do this rather than use a timed event to try to keep the event log from filling up with numerous macro calls. If I could filter specific events and macro calls from being entered into the log I would just use a recurring timed event.

How would you do this?

Thanks for your help.

Patrick
Back to Top View patrickm's Profile Search for other posts by patrickm
 

If you wish to post a reply to this topic you must first login
If you are not already registered you must first register

  Post ReplyPost New Topic
Printable version Printable version

Forum Jump
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot delete your posts in this forum
You cannot edit your posts in this forum
You cannot create polls in this forum
You cannot vote in polls in this forum