{"action":"created","issue":{"url":"https://api.github.com/repos/gramps-project/addons-source/issues/94","repository_url":"https://api.github.com/repos/gramps-project/addons-source","labels_url":"https://api.github.com/repos/gramps-project/addons-source/issues/94/labels{/name}","comments_url":"https://api.github.com/repos/gramps-project/addons-source/issues/94/comments","events_url":"https://api.github.com/repos/gramps-project/addons-source/issues/94/events","html_url":"https://github.com/gramps-project/addons-source/pull/94","id":273007214,"number":94,"title":"Update Descendant Count Gramplet for performance etc.","user":{"login":"prculley","id":18122203,"avatar_url":"https://avatars2.githubusercontent.com/u/18122203?v=4","gravatar_id":"","url":"https://api.github.com/users/prculley","html_url":"https://github.com/prculley","followers_url":"https://api.github.com/users/prculley/followers","following_url":"https://api.github.com/users/prculley/following{/other_user}","gists_url":"https://api.github.com/users/prculley/gists{/gist_id}","starred_url":"https://api.github.com/users/prculley/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/prculley/subscriptions","organizations_url":"https://api.github.com/users/prculley/orgs","repos_url":"https://api.github.com/users/prculley/repos","events_url":"https://api.github.com/users/prculley/events{/privacy}","received_events_url":"https://api.github.com/users/prculley/received_events","type":"User","site_admin":false},"labels":[{"id":211603883,"url":"https://api.github.com/repos/gramps-project/addons-source/labels/bug","name":"bug","color":"fc2929","default":true}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":3,"created_at":"2017-11-10T17:35:39Z","updated_at":"2017-11-17T22:21:49Z","closed_at":null,"author_association":"CONTRIBUTOR","pull_request":{"url":"https://api.github.com/repos/gramps-project/addons-source/pulls/94","html_url":"https://github.com/gramps-project/addons-source/pull/94","diff_url":"https://github.com/gramps-project/addons-source/pull/94.diff","patch_url":"https://github.com/gramps-project/addons-source/pull/94.patch"},"body":"[Fixes #9981](https://gramps-project.org/bugs/view.php?id=9981)\r\nThis Gramplet puts up a list of all people and the number of their descendants.\r\n\r\nThe original version had several problems, the first and most important was that it took a long time to execute with large dbs and during that time Gramps was unresponsive.\r\n\r\nUnder v4.2 the Gramplet also updated with every active-change of the Person view, and due to some non-optimal GUI code was updated multiple times for every change.\r\n\r\nThe algoritm used exhibited a people^2 time function of some sort.  I modified it to operate in approximately linear time with the number of people.  I also modified it to operate only during Gtk 'idle' periods, so the GUI does not go unresponsive, even if it takes some time to run and finish updating the result pane.\r\n\r\nOne downside is that it takes more memory during the update; I spotted a 3.1MB temporary jump with the example.gramps db.  Shouldn't be a problem with modern systems.\r\n\r\nIn testing with the example.gramps db I found the following times:\r\nGramps50 modified: 3.6 sec\r\nGramps50 original: 45.5 sec\r\nGramps42 original: 227.5 sec\r\n\r\nUnder the same conditions (debugger), the #9981 db (6828 dogs) took 14.8 seconds, rather than the 12+ hours reported.\r\n\r\nI also modified it to update with changes of family; the original did not do this."},"comment":{"url":"https://api.github.com/repos/gramps-project/addons-source/issues/comments/345381817","html_url":"https://github.com/gramps-project/addons-source/pull/94#issuecomment-345381817","issue_url":"https://api.github.com/repos/gramps-project/addons-source/issues/94","id":345381817,"user":{"login":"sam-m888","id":8924713,"avatar_url":"https://avatars3.githubusercontent.com/u/8924713?v=4","gravatar_id":"","url":"https://api.github.com/users/sam-m888","html_url":"https://github.com/sam-m888","followers_url":"https://api.github.com/users/sam-m888/followers","following_url":"https://api.github.com/users/sam-m888/following{/other_user}","gists_url":"https://api.github.com/users/sam-m888/gists{/gist_id}","starred_url":"https://api.github.com/users/sam-m888/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sam-m888/subscriptions","organizations_url":"https://api.github.com/users/sam-m888/orgs","repos_url":"https://api.github.com/users/sam-m888/repos","events_url":"https://api.github.com/users/sam-m888/events{/privacy}","received_events_url":"https://api.github.com/users/sam-m888/received_events","type":"User","site_admin":false},"created_at":"2017-11-17T22:21:49Z","updated_at":"2017-11-17T22:21:49Z","author_association":"MEMBER","body":"@prculley Ok, I've made the wiki description simpler and removed that line."}}
{"actor":{"display_login":"sam-m888"}}