{"issue":{"created_at":"2011-11-01T22:07:04Z","state":"closed","updated_at":"2011-11-25T18:35:44Z","comments":1,"user":{"gravatar_id":"581c3b13b0f209b3bb3be992d61f7c10","id":315457,"url":"https://api.github.com/users/my-flow","login":"my-flow","avatar_url":"https://secure.gravatar.com/avatar/581c3b13b0f209b3bb3be992d61f7c10?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"body":"The Mail Trends project uses this algorithm for threading IMAP mail messages. With 8000+ messages or so the thread analysis goes on the fritz (see http://code.google.com/p/mail-trends/wiki/GettingStarted). One of the reasons is the \"has_descendant\" method, which calls itself too often. This patch implements DFS by iteration to solve the issue with the growing call stack.","assignee":null,"id":2115777,"pull_request":{"patch_url":"https://github.com/akuchling/jwzthreading/pull/1.patch","html_url":"https://github.com/akuchling/jwzthreading/pull/1","diff_url":"https://github.com/akuchling/jwzthreading/pull/1.diff"},"number":1,"labels":[],"title":"BUGFIX: maximum recursion depth exceeded ","closed_at":"2011-11-25T17:43:13Z","html_url":"https://github.com/akuchling/jwzthreading/issues/1","url":"https://api.github.com/repos/akuchling/jwzthreading/issues/1","milestone":null},"action":"created","comment":{"created_at":"2011-11-25T18:35:44Z","updated_at":"2011-11-25T18:35:44Z","user":{"gravatar_id":"e2cb0083d4d61cebb1325281f88f3843","id":204654,"url":"https://api.github.com/users/akuchling","login":"akuchling","avatar_url":"https://secure.gravatar.com/avatar/e2cb0083d4d61cebb1325281f88f3843?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"body":"Thanks for the patch!  I've accepted the change, added a test, and modified it to use a set() to track the nodes that have already been seen; the .visitedBy attribute fails if you call .has_descendant(X), modify the tree, and then call .has_descendant(X).","id":2877074,"url":"https://api.github.com/repos/akuchling/jwzthreading/issues/comments/2877074"}}