{"action":"created","issue":{"url":"https://api.github.com/repos/brucemiller/LaTeXML/issues/741","repository_url":"https://api.github.com/repos/brucemiller/LaTeXML","labels_url":"https://api.github.com/repos/brucemiller/LaTeXML/issues/741/labels{/name}","comments_url":"https://api.github.com/repos/brucemiller/LaTeXML/issues/741/comments","events_url":"https://api.github.com/repos/brucemiller/LaTeXML/issues/741/events","html_url":"https://github.com/brucemiller/LaTeXML/issues/741","id":153290346,"number":741,"title":"Timeout ignored in pathological math example","user":{"login":"dginev","id":348975,"avatar_url":"https://avatars.githubusercontent.com/u/348975?v=3","gravatar_id":"","url":"https://api.github.com/users/dginev","html_url":"https://github.com/dginev","followers_url":"https://api.github.com/users/dginev/followers","following_url":"https://api.github.com/users/dginev/following{/other_user}","gists_url":"https://api.github.com/users/dginev/gists{/gist_id}","starred_url":"https://api.github.com/users/dginev/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dginev/subscriptions","organizations_url":"https://api.github.com/users/dginev/orgs","repos_url":"https://api.github.com/users/dginev/repos","events_url":"https://api.github.com/users/dginev/events{/privacy}","received_events_url":"https://api.github.com/users/dginev/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/brucemiller/LaTeXML/labels/Authorea","name":"Authorea","color":"fef2c0"},{"url":"https://api.github.com/repos/brucemiller/LaTeXML/labels/enhancement","name":"enhancement","color":"84b6eb"},{"url":"https://api.github.com/repos/brucemiller/LaTeXML/labels/math%20parsing","name":"math parsing","color":"bfdadc"},{"url":"https://api.github.com/repos/brucemiller/LaTeXML/labels/performance","name":"performance","color":"5319e7"}],"state":"open","locked":false,"assignee":{"login":"dginev","id":348975,"avatar_url":"https://avatars.githubusercontent.com/u/348975?v=3","gravatar_id":"","url":"https://api.github.com/users/dginev","html_url":"https://github.com/dginev","followers_url":"https://api.github.com/users/dginev/followers","following_url":"https://api.github.com/users/dginev/following{/other_user}","gists_url":"https://api.github.com/users/dginev/gists{/gist_id}","starred_url":"https://api.github.com/users/dginev/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dginev/subscriptions","organizations_url":"https://api.github.com/users/dginev/orgs","repos_url":"https://api.github.com/users/dginev/repos","events_url":"https://api.github.com/users/dginev/events{/privacy}","received_events_url":"https://api.github.com/users/dginev/received_events","type":"User","site_admin":false},"milestone":{"url":"https://api.github.com/repos/brucemiller/LaTeXML/milestones/9","html_url":"https://github.com/brucemiller/LaTeXML/milestones/%20LaTeXML-0.8.3","labels_url":"https://api.github.com/repos/brucemiller/LaTeXML/milestones/9/labels","id":866149,"number":9,"title":" LaTeXML-0.8.3","description":"Scheduled maintenance release of LaTeXML","creator":{"login":"dginev","id":348975,"avatar_url":"https://avatars.githubusercontent.com/u/348975?v=3","gravatar_id":"","url":"https://api.github.com/users/dginev","html_url":"https://github.com/dginev","followers_url":"https://api.github.com/users/dginev/followers","following_url":"https://api.github.com/users/dginev/following{/other_user}","gists_url":"https://api.github.com/users/dginev/gists{/gist_id}","starred_url":"https://api.github.com/users/dginev/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dginev/subscriptions","organizations_url":"https://api.github.com/users/dginev/orgs","repos_url":"https://api.github.com/users/dginev/repos","events_url":"https://api.github.com/users/dginev/events{/privacy}","received_events_url":"https://api.github.com/users/dginev/received_events","type":"User","site_admin":false},"open_issues":21,"closed_issues":1,"state":"open","created_at":"2014-11-14T05:04:50Z","updated_at":"2016-05-10T14:36:10Z","due_on":"2016-08-31T04:00:00Z","closed_at":null},"comments":7,"created_at":"2016-05-05T18:14:14Z","updated_at":"2016-05-11T22:28:12Z","closed_at":null,"body":"In [this gist](https://gist.github.com/dginev/e83af1f8703adf9ca851ce9ca9cebdc1) I have attached a pathological TeX snippet that fails to terminate in some 70 seconds, even after it hits a 20 second timeout alarm signal.\r\n\r\nIt's an anonymized source from Authorea, where an author made a typo and accidentally turned the rest of a block into a huge formula. Note that this times out without math parsing even enabled, as in Authorea we are using the equivalent of:\r\n\r\n```bash\r\nlatexmlc pathological_math_error.tex  \r\n  --noparse --timeout=20 --format=html5 \r\n  --whatsin=fragment --whatsout=fragment\r\n```\r\n\r\nThere are two separate issues I would like to solve here:\r\n 1. Make the 20 second timeout succeed and truly terminate processing (it seems to interrupt the absorbtion of math boxes)\r\n 2. Try to optimize latexml's processing for this example, so that it takes a magnitude faster, if possible\r\n\r\nIdeas welcome, I'll take a look."},"comment":{"url":"https://api.github.com/repos/brucemiller/LaTeXML/issues/comments/218609228","html_url":"https://github.com/brucemiller/LaTeXML/issues/741#issuecomment-218609228","issue_url":"https://api.github.com/repos/brucemiller/LaTeXML/issues/741","id":218609228,"user":{"login":"dginev","id":348975,"avatar_url":"https://avatars.githubusercontent.com/u/348975?v=3","gravatar_id":"","url":"https://api.github.com/users/dginev","html_url":"https://github.com/dginev","followers_url":"https://api.github.com/users/dginev/followers","following_url":"https://api.github.com/users/dginev/following{/other_user}","gists_url":"https://api.github.com/users/dginev/gists{/gist_id}","starred_url":"https://api.github.com/users/dginev/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dginev/subscriptions","organizations_url":"https://api.github.com/users/dginev/orgs","repos_url":"https://api.github.com/users/dginev/repos","events_url":"https://api.github.com/users/dginev/events{/privacy}","received_events_url":"https://api.github.com/users/dginev/received_events","type":"User","site_admin":false},"created_at":"2016-05-11T22:28:12Z","updated_at":"2016-05-11T22:28:12Z","body":"I also have a pathological recursive example on a very broken snippet using ```\\lx@ams@matrix@``` that also goes into libxml2 crazy land and fails to time out until tens of seconds after the alarm gets triggered.\r\n\r\nBut I'm unsure if the deep recursion has its own part to play. This example doesn't benefit from using ```PERL_SIGNALS=unsafe```, so there may be a slightly different issue."}}