{"action":"closed","number":205,"pull_request":{"url":"https://api.github.com/repos/OCA/OCB/pulls/205","id":33690347,"html_url":"https://github.com/OCA/OCB/pull/205","diff_url":"https://github.com/OCA/OCB/pull/205.diff","patch_url":"https://github.com/OCA/OCB/pull/205.patch","issue_url":"https://api.github.com/repos/OCA/OCB/issues/205","number":205,"state":"closed","locked":false,"title":"[7.0][FIX] prevent polynomial time filtering on document ids","user":{"login":"veloutin","id":356233,"avatar_url":"https://avatars.githubusercontent.com/u/356233?v=3","gravatar_id":"","url":"https://api.github.com/users/veloutin","html_url":"https://github.com/veloutin","followers_url":"https://api.github.com/users/veloutin/followers","following_url":"https://api.github.com/users/veloutin/following{/other_user}","gists_url":"https://api.github.com/users/veloutin/gists{/gist_id}","starred_url":"https://api.github.com/users/veloutin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/veloutin/subscriptions","organizations_url":"https://api.github.com/users/veloutin/orgs","repos_url":"https://api.github.com/users/veloutin/repos","events_url":"https://api.github.com/users/veloutin/events{/privacy}","received_events_url":"https://api.github.com/users/veloutin/received_events","type":"User","site_admin":false},"body":"Upstream 7.0: https://github.com/odoo/odoo/pull/6397\r\n\r\nThis fix prevents the request from taking polynomial time when searching for a lot of documents. At 160k documents, this takes > 1 minute. With this change it is < 25ms.\r\n\r\nNote that since the web interface does a search_count when loading a page to get the total count, a search will always be done on all documents, triggering this.\r\n","created_at":"2015-04-20T18:03:33Z","updated_at":"2015-04-22T19:58:47Z","closed_at":"2015-04-22T19:58:47Z","merged_at":null,"merge_commit_sha":"d32f6a04e04ea164a44817ae3e34124fca742022","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/OCA/OCB/pulls/205/commits","review_comments_url":"https://api.github.com/repos/OCA/OCB/pulls/205/comments","review_comment_url":"https://api.github.com/repos/OCA/OCB/pulls/comments{/number}","comments_url":"https://api.github.com/repos/OCA/OCB/issues/205/comments","statuses_url":"https://api.github.com/repos/OCA/OCB/statuses/51fc0aafefa2855da628fe4e29734a65e5e1ccd2","head":{"label":"savoirfairelinux:7.0_fix_document_search","ref":"7.0_fix_document_search","sha":"51fc0aafefa2855da628fe4e29734a65e5e1ccd2","user":{"login":"savoirfairelinux","id":2735545,"avatar_url":"https://avatars.githubusercontent.com/u/2735545?v=3","gravatar_id":"","url":"https://api.github.com/users/savoirfairelinux","html_url":"https://github.com/savoirfairelinux","followers_url":"https://api.github.com/users/savoirfairelinux/followers","following_url":"https://api.github.com/users/savoirfairelinux/following{/other_user}","gists_url":"https://api.github.com/users/savoirfairelinux/gists{/gist_id}","starred_url":"https://api.github.com/users/savoirfairelinux/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/savoirfairelinux/subscriptions","organizations_url":"https://api.github.com/users/savoirfairelinux/orgs","repos_url":"https://api.github.com/users/savoirfairelinux/repos","events_url":"https://api.github.com/users/savoirfairelinux/events{/privacy}","received_events_url":"https://api.github.com/users/savoirfairelinux/received_events","type":"Organization","site_admin":false},"repo":{"id":19869835,"name":"odoo","full_name":"savoirfairelinux/odoo","owner":{"login":"savoirfairelinux","id":2735545,"avatar_url":"https://avatars.githubusercontent.com/u/2735545?v=3","gravatar_id":"","url":"https://api.github.com/users/savoirfairelinux","html_url":"https://github.com/savoirfairelinux","followers_url":"https://api.github.com/users/savoirfairelinux/followers","following_url":"https://api.github.com/users/savoirfairelinux/following{/other_user}","gists_url":"https://api.github.com/users/savoirfairelinux/gists{/gist_id}","starred_url":"https://api.github.com/users/savoirfairelinux/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/savoirfairelinux/subscriptions","organizations_url":"https://api.github.com/users/savoirfairelinux/orgs","repos_url":"https://api.github.com/users/savoirfairelinux/repos","events_url":"https://api.github.com/users/savoirfairelinux/events{/privacy}","received_events_url":"https://api.github.com/users/savoirfairelinux/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/savoirfairelinux/odoo","description":"Odoo (formerly OpenERP). Open Source Business Apps.","fork":true,"url":"https://api.github.com/repos/savoirfairelinux/odoo","forks_url":"https://api.github.com/repos/savoirfairelinux/odoo/forks","keys_url":"https://api.github.com/repos/savoirfairelinux/odoo/keys{/key_id}","collaborators_url":"https://api.github.com/repos/savoirfairelinux/odoo/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/savoirfairelinux/odoo/teams","hooks_url":"https://api.github.com/repos/savoirfairelinux/odoo/hooks","issue_events_url":"https://api.github.com/repos/savoirfairelinux/odoo/issues/events{/number}","events_url":"https://api.github.com/repos/savoirfairelinux/odoo/events","assignees_url":"https://api.github.com/repos/savoirfairelinux/odoo/assignees{/user}","branches_url":"https://api.github.com/repos/savoirfairelinux/odoo/branches{/branch}","tags_url":"https://api.github.com/repos/savoirfairelinux/odoo/tags","blobs_url":"https://api.github.com/repos/savoirfairelinux/odoo/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/savoirfairelinux/odoo/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/savoirfairelinux/odoo/git/refs{/sha}","trees_url":"https://api.github.com/repos/savoirfairelinux/odoo/git/trees{/sha}","statuses_url":"https://api.github.com/repos/savoirfairelinux/odoo/statuses/{sha}","languages_url":"https://api.github.com/repos/savoirfairelinux/odoo/languages","stargazers_url":"https://api.github.com/repos/savoirfairelinux/odoo/stargazers","contributors_url":"https://api.github.com/repos/savoirfairelinux/odoo/contributors","subscribers_url":"https://api.github.com/repos/savoirfairelinux/odoo/subscribers","subscription_url":"https://api.github.com/repos/savoirfairelinux/odoo/subscription","commits_url":"https://api.github.com/repos/savoirfairelinux/odoo/commits{/sha}","git_commits_url":"https://api.github.com/repos/savoirfairelinux/odoo/git/commits{/sha}","comments_url":"https://api.github.com/repos/savoirfairelinux/odoo/comments{/number}","issue_comment_url":"https://api.github.com/repos/savoirfairelinux/odoo/issues/comments{/number}","contents_url":"https://api.github.com/repos/savoirfairelinux/odoo/contents/{+path}","compare_url":"https://api.github.com/repos/savoirfairelinux/odoo/compare/{base}...{head}","merges_url":"https://api.github.com/repos/savoirfairelinux/odoo/merges","archive_url":"https://api.github.com/repos/savoirfairelinux/odoo/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/savoirfairelinux/odoo/downloads","issues_url":"https://api.github.com/repos/savoirfairelinux/odoo/issues{/number}","pulls_url":"https://api.github.com/repos/savoirfairelinux/odoo/pulls{/number}","milestones_url":"https://api.github.com/repos/savoirfairelinux/odoo/milestones{/number}","notifications_url":"https://api.github.com/repos/savoirfairelinux/odoo/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/savoirfairelinux/odoo/labels{/name}","releases_url":"https://api.github.com/repos/savoirfairelinux/odoo/releases{/id}","created_at":"2014-05-16T20:30:05Z","updated_at":"2015-01-16T19:46:38Z","pushed_at":"2015-04-22T12:23:23Z","git_url":"git://github.com/savoirfairelinux/odoo.git","ssh_url":"git@github.com:savoirfairelinux/odoo.git","clone_url":"https://github.com/savoirfairelinux/odoo.git","svn_url":"https://github.com/savoirfairelinux/odoo","homepage":"https://www.odoo.com","size":617261,"stargazers_count":1,"watchers_count":1,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":1,"default_branch":"master"}},"base":{"label":"OCA:7.0","ref":"7.0","sha":"0d3971a575adef0d87b34755cd571ac141c66860","user":{"login":"OCA","id":7600578,"avatar_url":"https://avatars.githubusercontent.com/u/7600578?v=3","gravatar_id":"","url":"https://api.github.com/users/OCA","html_url":"https://github.com/OCA","followers_url":"https://api.github.com/users/OCA/followers","following_url":"https://api.github.com/users/OCA/following{/other_user}","gists_url":"https://api.github.com/users/OCA/gists{/gist_id}","starred_url":"https://api.github.com/users/OCA/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/OCA/subscriptions","organizations_url":"https://api.github.com/users/OCA/orgs","repos_url":"https://api.github.com/users/OCA/repos","events_url":"https://api.github.com/users/OCA/events{/privacy}","received_events_url":"https://api.github.com/users/OCA/received_events","type":"Organization","site_admin":false},"repo":{"id":20558462,"name":"OCB","full_name":"OCA/OCB","owner":{"login":"OCA","id":7600578,"avatar_url":"https://avatars.githubusercontent.com/u/7600578?v=3","gravatar_id":"","url":"https://api.github.com/users/OCA","html_url":"https://github.com/OCA","followers_url":"https://api.github.com/users/OCA/followers","following_url":"https://api.github.com/users/OCA/following{/other_user}","gists_url":"https://api.github.com/users/OCA/gists{/gist_id}","starred_url":"https://api.github.com/users/OCA/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/OCA/subscriptions","organizations_url":"https://api.github.com/users/OCA/orgs","repos_url":"https://api.github.com/users/OCA/repos","events_url":"https://api.github.com/users/OCA/events{/privacy}","received_events_url":"https://api.github.com/users/OCA/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/OCA/OCB","description":"Odoo Community Backports","fork":true,"url":"https://api.github.com/repos/OCA/OCB","forks_url":"https://api.github.com/repos/OCA/OCB/forks","keys_url":"https://api.github.com/repos/OCA/OCB/keys{/key_id}","collaborators_url":"https://api.github.com/repos/OCA/OCB/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/OCA/OCB/teams","hooks_url":"https://api.github.com/repos/OCA/OCB/hooks","issue_events_url":"https://api.github.com/repos/OCA/OCB/issues/events{/number}","events_url":"https://api.github.com/repos/OCA/OCB/events","assignees_url":"https://api.github.com/repos/OCA/OCB/assignees{/user}","branches_url":"https://api.github.com/repos/OCA/OCB/branches{/branch}","tags_url":"https://api.github.com/repos/OCA/OCB/tags","blobs_url":"https://api.github.com/repos/OCA/OCB/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/OCA/OCB/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/OCA/OCB/git/refs{/sha}","trees_url":"https://api.github.com/repos/OCA/OCB/git/trees{/sha}","statuses_url":"https://api.github.com/repos/OCA/OCB/statuses/{sha}","languages_url":"https://api.github.com/repos/OCA/OCB/languages","stargazers_url":"https://api.github.com/repos/OCA/OCB/stargazers","contributors_url":"https://api.github.com/repos/OCA/OCB/contributors","subscribers_url":"https://api.github.com/repos/OCA/OCB/subscribers","subscription_url":"https://api.github.com/repos/OCA/OCB/subscription","commits_url":"https://api.github.com/repos/OCA/OCB/commits{/sha}","git_commits_url":"https://api.github.com/repos/OCA/OCB/git/commits{/sha}","comments_url":"https://api.github.com/repos/OCA/OCB/comments{/number}","issue_comment_url":"https://api.github.com/repos/OCA/OCB/issues/comments{/number}","contents_url":"https://api.github.com/repos/OCA/OCB/contents/{+path}","compare_url":"https://api.github.com/repos/OCA/OCB/compare/{base}...{head}","merges_url":"https://api.github.com/repos/OCA/OCB/merges","archive_url":"https://api.github.com/repos/OCA/OCB/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/OCA/OCB/downloads","issues_url":"https://api.github.com/repos/OCA/OCB/issues{/number}","pulls_url":"https://api.github.com/repos/OCA/OCB/pulls{/number}","milestones_url":"https://api.github.com/repos/OCA/OCB/milestones{/number}","notifications_url":"https://api.github.com/repos/OCA/OCB/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/OCA/OCB/labels{/name}","releases_url":"https://api.github.com/repos/OCA/OCB/releases{/id}","created_at":"2014-06-06T09:33:16Z","updated_at":"2015-04-22T01:58:14Z","pushed_at":"2015-04-22T15:56:01Z","git_url":"git://github.com/OCA/OCB.git","ssh_url":"git@github.com:OCA/OCB.git","clone_url":"https://github.com/OCA/OCB.git","svn_url":"https://github.com/OCA/OCB","homepage":"http://odoo-community.org","size":783790,"stargazers_count":42,"watchers_count":42,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":43,"mirror_url":null,"open_issues_count":64,"forks":43,"open_issues":64,"watchers":42,"default_branch":"8.0"}},"_links":{"self":{"href":"https://api.github.com/repos/OCA/OCB/pulls/205"},"html":{"href":"https://github.com/OCA/OCB/pull/205"},"issue":{"href":"https://api.github.com/repos/OCA/OCB/issues/205"},"comments":{"href":"https://api.github.com/repos/OCA/OCB/issues/205/comments"},"review_comments":{"href":"https://api.github.com/repos/OCA/OCB/pulls/205/comments"},"review_comment":{"href":"https://api.github.com/repos/OCA/OCB/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/OCA/OCB/pulls/205/commits"},"statuses":{"href":"https://api.github.com/repos/OCA/OCB/statuses/51fc0aafefa2855da628fe4e29734a65e5e1ccd2"}},"merged":false,"mergeable":true,"mergeable_state":"clean","merged_by":null,"comments":4,"review_comments":1,"commits":2,"additions":5,"deletions":2,"changed_files":1}}