always-on / always

Always-On Relational Agents for Social Support of Isolated Older Adults
http://www.cs.wpi.edu/~rich/always
4 stars 7 forks source link

Repeating events still puts the system in infinite loop #371

Closed candysidner closed 10 years ago

candysidner commented 10 years ago

@mbehrooz It may be reasonable just to delete this feature from the Calendar system.

However, the option should not occur until the dead system bug I reported today is resolved. It may fix the repeating event issue too.

https://www.dropbox.com/s/rxn7f9js2a1d98b/User.2014-06-02_12_45_43.txt

https://www.dropbox.com/s/jf07ayjfxy78qd0/User.2014-06-02_12_45_43.owl

mbehrooz commented 10 years ago

Ok so here is my very best guess, getDataPropertyValue method inside Ontology individual either has a complicated nested infinite call for itself, or, as this is a synchronized method - same as many other methods using SAME LOCK - the synchronizations do not play well.

mbehrooz commented 10 years ago

As a second guess, it seems that isConsistent() method in org.mindswap.pellet.KnowledgeBase creates a huge delay every time it is called. I would not dare to say it is an algorithm bug when owl file is big, but it is possible. And since it does come out of the delay at a fine level of single stepping after say 30s every time it is called, it does not sound like a nested call error (in wpi code base or this jar).

charlesrich commented 10 years ago

Yes, of course all the methods accessing the user model are protected by the SAME LOCK.

On Wed, Jun 4, 2014 at 1:19 AM, Morteza Behrooz notifications@github.com wrote:

Ok so here is my very best guess, getDataPropertyValue method inside Ontology individual either has a complicated nested infinite call for itself, or, as this is a synchronized method - same as many other methods using SAME LOCK - the synchronizations do not play well.

— Reply to this email directly or view it on GitHub https://github.com/always-on/always/issues/371#issuecomment-45032807.

Dr. Charles Rich, Professor, Computer Science Department http://www.cs.wpi.edu Interactive Media and Game Development Program http://www.wpi.edu/academics/imgd/ Robotics Engineering Program http://www.wpi.edu/academics/robotics/ Worcester Polytechnic Institute, Fuller Laboratories B25b 100 Institute Road, Worcester, MA 01609-2280

Email: rich@wpi.edu Phone: 508-831-5945 Fax: 508-831-5776 Home: http://www.cs.wpi.edu/~rich

charlesrich commented 10 years ago

Not sure I fully understand what you are saying.

It is indeed hard to tell the difference between a 30sec delay and an infinite loop. It is possible I did not wait long enough.

Are you able to single-step into isConsistent()?

In any case, we have no hope of debugging this unless we can find a reliable way to reproduce it. If we have that, then we can systematically explore the options.

On Wed, Jun 4, 2014 at 1:22 AM, Morteza Behrooz notifications@github.com wrote:

As a second guess, it seems that isConsistent() method in org.mindswap.pellet.KnowledgeBase creates a huge delay every time it is called. I would not dare to say it is an algorithm bug when owl file is big, but it is possible. And since it does come out of the delay at a fine level of single stepping after say 30s every time it is called, it does not sound like a nested call error (in wpi code base or this jar).

— Reply to this email directly or view it on GitHub https://github.com/always-on/always/issues/371#issuecomment-45033039.

Dr. Charles Rich, Professor, Computer Science Department http://www.cs.wpi.edu Interactive Media and Game Development Program http://www.wpi.edu/academics/imgd/ Robotics Engineering Program http://www.wpi.edu/academics/robotics/ Worcester Polytechnic Institute, Fuller Laboratories B25b 100 Institute Road, Worcester, MA 01609-2280

Email: rich@wpi.edu Phone: 508-831-5945 Fax: 508-831-5776 Home: http://www.cs.wpi.edu/~rich