{"action":"created","comment":{"url":"https://api.github.com/repos/UM-USElab/gradecraft-development/pulls/comments/57564550","id":57564550,"diff_hunk":"@@ -0,0 +1,6 @@\n+class AddIndexesToUnlockStates < ActiveRecord::Migration\n+  def change\n+    add_index :unlock_states, [:unlockable_id]","path":"db/migrate/20160327135043_add_indexes_to_unlock_states.rb","position":3,"original_position":3,"commit_id":"1012dfb67553669b4875c0e2d182ae11500494bc","original_commit_id":"1012dfb67553669b4875c0e2d182ae11500494bc","user":{"login":"jwright","id":35017,"avatar_url":"https://avatars.githubusercontent.com/u/35017?v=3","gravatar_id":"","url":"https://api.github.com/users/jwright","html_url":"https://github.com/jwright","followers_url":"https://api.github.com/users/jwright/followers","following_url":"https://api.github.com/users/jwright/following{/other_user}","gists_url":"https://api.github.com/users/jwright/gists{/gist_id}","starred_url":"https://api.github.com/users/jwright/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jwright/subscriptions","organizations_url":"https://api.github.com/users/jwright/orgs","repos_url":"https://api.github.com/users/jwright/repos","events_url":"https://api.github.com/users/jwright/events{/privacy}","received_events_url":"https://api.github.com/users/jwright/received_events","type":"User","site_admin":false},"body":"Should we use both `unlockable_id` and `unlockable_type` here since it's polymorphic and ActiveRecord will look it up by id and type in most cases?","created_at":"2016-03-28T11:43:33Z","updated_at":"2016-03-28T11:43:33Z","html_url":"https://github.com/UM-USElab/gradecraft-development/pull/1823#discussion_r57564550","pull_request_url":"https://api.github.com/repos/UM-USElab/gradecraft-development/pulls/1823","_links":{"self":{"href":"https://api.github.com/repos/UM-USElab/gradecraft-development/pulls/comments/57564550"},"html":{"href":"https://github.com/UM-USElab/gradecraft-development/pull/1823#discussion_r57564550"},"pull_request":{"href":"https://api.github.com/repos/UM-USElab/gradecraft-development/pulls/1823"}}},"pull_request":{"url":"https://api.github.com/repos/UM-USElab/gradecraft-development/pulls/1823","id":64266090,"html_url":"https://github.com/UM-USElab/gradecraft-development/pull/1823","diff_url":"https://github.com/UM-USElab/gradecraft-development/pull/1823.diff","patch_url":"https://github.com/UM-USElab/gradecraft-development/pull/1823.patch","issue_url":"https://api.github.com/repos/UM-USElab/gradecraft-development/issues/1823","number":1823,"state":"open","locked":false,"title":"Adding indexes","user":{"login":"chcholman","id":234276,"avatar_url":"https://avatars.githubusercontent.com/u/234276?v=3","gravatar_id":"","url":"https://api.github.com/users/chcholman","html_url":"https://github.com/chcholman","followers_url":"https://api.github.com/users/chcholman/followers","following_url":"https://api.github.com/users/chcholman/following{/other_user}","gists_url":"https://api.github.com/users/chcholman/gists{/gist_id}","starred_url":"https://api.github.com/users/chcholman/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/chcholman/subscriptions","organizations_url":"https://api.github.com/users/chcholman/orgs","repos_url":"https://api.github.com/users/chcholman/repos","events_url":"https://api.github.com/users/chcholman/events{/privacy}","received_events_url":"https://api.github.com/users/chcholman/received_events","type":"User","site_admin":false},"body":"pghero has identified: \r\n\r\nMissing Indexes\r\n\r\n```\r\nThese tables have a large number of rows but indexes are not used often. Add indexes for faster queries.\r\n\r\nTable              % of Time Index Used    Rows in Table\r\nsubmissions           1                               24,906\r\nsubmission_files    17                              20,793\r\nunlock_states     1                                   20,594\r\ncriterion_grades    8                                15,408\r\n```","created_at":"2016-03-27T13:54:30Z","updated_at":"2016-03-28T11:43:33Z","closed_at":null,"merged_at":null,"merge_commit_sha":"c5088dc1956bcbf571a8195cf4d2357909858013","assignee":{"login":"jwright","id":35017,"avatar_url":"https://avatars.githubusercontent.com/u/35017?v=3","gravatar_id":"","url":"https://api.github.com/users/jwright","html_url":"https://github.com/jwright","followers_url":"https://api.github.com/users/jwright/followers","following_url":"https://api.github.com/users/jwright/following{/other_user}","gists_url":"https://api.github.com/users/jwright/gists{/gist_id}","starred_url":"https://api.github.com/users/jwright/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jwright/subscriptions","organizations_url":"https://api.github.com/users/jwright/orgs","repos_url":"https://api.github.com/users/jwright/repos","events_url":"https://api.github.com/users/jwright/events{/privacy}","received_events_url":"https://api.github.com/users/jwright/received_events","type":"User","site_admin":false},"milestone":{"url":"https://api.github.com/repos/UM-USElab/gradecraft-development/milestones/12","html_url":"https://github.com/UM-USElab/gradecraft-development/milestones/Winter%20Development","labels_url":"https://api.github.com/repos/UM-USElab/gradecraft-development/milestones/12/labels","id":1464970,"number":12,"title":"Winter Development","description":"","creator":{"login":"chcholman","id":234276,"avatar_url":"https://avatars.githubusercontent.com/u/234276?v=3","gravatar_id":"","url":"https://api.github.com/users/chcholman","html_url":"https://github.com/chcholman","followers_url":"https://api.github.com/users/chcholman/followers","following_url":"https://api.github.com/users/chcholman/following{/other_user}","gists_url":"https://api.github.com/users/chcholman/gists{/gist_id}","starred_url":"https://api.github.com/users/chcholman/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/chcholman/subscriptions","organizations_url":"https://api.github.com/users/chcholman/orgs","repos_url":"https://api.github.com/users/chcholman/repos","events_url":"https://api.github.com/users/chcholman/events{/privacy}","received_events_url":"https://api.github.com/users/chcholman/received_events","type":"User","site_admin":false},"open_issues":77,"closed_issues":77,"state":"open","created_at":"2015-12-17T13:51:39Z","updated_at":"2016-03-28T02:19:41Z","due_on":"2016-05-08T04:00:00Z","closed_at":null},"commits_url":"https://api.github.com/repos/UM-USElab/gradecraft-development/pulls/1823/commits","review_comments_url":"https://api.github.com/repos/UM-USElab/gradecraft-development/pulls/1823/comments","review_comment_url":"https://api.github.com/repos/UM-USElab/gradecraft-development/pulls/comments{/number}","comments_url":"https://api.github.com/repos/UM-USElab/gradecraft-development/issues/1823/comments","statuses_url":"https://api.github.com/repos/UM-USElab/gradecraft-development/statuses/1012dfb67553669b4875c0e2d182ae11500494bc","head":{"label":"UM-USElab:add-indexes","ref":"add-indexes","sha":"1012dfb67553669b4875c0e2d182ae11500494bc","user":{"login":"UM-USElab","id":4459066,"avatar_url":"https://avatars.githubusercontent.com/u/4459066?v=3","gravatar_id":"","url":"https://api.github.com/users/UM-USElab","html_url":"https://github.com/UM-USElab","followers_url":"https://api.github.com/users/UM-USElab/followers","following_url":"https://api.github.com/users/UM-USElab/following{/other_user}","gists_url":"https://api.github.com/users/UM-USElab/gists{/gist_id}","starred_url":"https://api.github.com/users/UM-USElab/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/UM-USElab/subscriptions","organizations_url":"https://api.github.com/users/UM-USElab/orgs","repos_url":"https://api.github.com/users/UM-USElab/repos","events_url":"https://api.github.com/users/UM-USElab/events{/privacy}","received_events_url":"https://api.github.com/users/UM-USElab/received_events","type":"Organization","site_admin":false},"repo":{"id":8105769,"name":"gradecraft-development","full_name":"UM-USElab/gradecraft-development","owner":{"login":"UM-USElab","id":4459066,"avatar_url":"https://avatars.githubusercontent.com/u/4459066?v=3","gravatar_id":"","url":"https://api.github.com/users/UM-USElab","html_url":"https://github.com/UM-USElab","followers_url":"https://api.github.com/users/UM-USElab/followers","following_url":"https://api.github.com/users/UM-USElab/following{/other_user}","gists_url":"https://api.github.com/users/UM-USElab/gists{/gist_id}","starred_url":"https://api.github.com/users/UM-USElab/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/UM-USElab/subscriptions","organizations_url":"https://api.github.com/users/UM-USElab/orgs","repos_url":"https://api.github.com/users/UM-USElab/repos","events_url":"https://api.github.com/users/UM-USElab/events{/privacy}","received_events_url":"https://api.github.com/users/UM-USElab/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/UM-USElab/gradecraft-development","description":"GradeCraft is a gameful learning management system, intended to help motivate students to be more engaged in their own learning.","fork":false,"url":"https://api.github.com/repos/UM-USElab/gradecraft-development","forks_url":"https://api.github.com/repos/UM-USElab/gradecraft-development/forks","keys_url":"https://api.github.com/repos/UM-USElab/gradecraft-development/keys{/key_id}","collaborators_url":"https://api.github.com/repos/UM-USElab/gradecraft-development/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/UM-USElab/gradecraft-development/teams","hooks_url":"https://api.github.com/repos/UM-USElab/gradecraft-development/hooks","issue_events_url":"https://api.github.com/repos/UM-USElab/gradecraft-development/issues/events{/number}","events_url":"https://api.github.com/repos/UM-USElab/gradecraft-development/events","assignees_url":"https://api.github.com/repos/UM-USElab/gradecraft-development/assignees{/user}","branches_url":"https://api.github.com/repos/UM-USElab/gradecraft-development/branches{/branch}","tags_url":"https://api.github.com/repos/UM-USElab/gradecraft-development/tags","blobs_url":"https://api.github.com/repos/UM-USElab/gradecraft-development/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/UM-USElab/gradecraft-development/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/UM-USElab/gradecraft-development/git/refs{/sha}","trees_url":"https://api.github.com/repos/UM-USElab/gradecraft-development/git/trees{/sha}","statuses_url":"https://api.github.com/repos/UM-USElab/gradecraft-development/statuses/{sha}","languages_url":"https://api.github.com/repos/UM-USElab/gradecraft-development/languages","stargazers_url":"https://api.github.com/repos/UM-USElab/gradecraft-development/stargazers","contributors_url":"https://api.github.com/repos/UM-USElab/gradecraft-development/contributors","subscribers_url":"https://api.github.com/repos/UM-USElab/gradecraft-development/subscribers","subscription_url":"https://api.github.com/repos/UM-USElab/gradecraft-development/subscription","commits_url":"https://api.github.com/repos/UM-USElab/gradecraft-development/commits{/sha}","git_commits_url":"https://api.github.com/repos/UM-USElab/gradecraft-development/git/commits{/sha}","comments_url":"https://api.github.com/repos/UM-USElab/gradecraft-development/comments{/number}","issue_comment_url":"https://api.github.com/repos/UM-USElab/gradecraft-development/issues/comments{/number}","contents_url":"https://api.github.com/repos/UM-USElab/gradecraft-development/contents/{+path}","compare_url":"https://api.github.com/repos/UM-USElab/gradecraft-development/compare/{base}...{head}","merges_url":"https://api.github.com/repos/UM-USElab/gradecraft-development/merges","archive_url":"https://api.github.com/repos/UM-USElab/gradecraft-development/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/UM-USElab/gradecraft-development/downloads","issues_url":"https://api.github.com/repos/UM-USElab/gradecraft-development/issues{/number}","pulls_url":"https://api.github.com/repos/UM-USElab/gradecraft-development/pulls{/number}","milestones_url":"https://api.github.com/repos/UM-USElab/gradecraft-development/milestones{/number}","notifications_url":"https://api.github.com/repos/UM-USElab/gradecraft-development/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/UM-USElab/gradecraft-development/labels{/name}","releases_url":"https://api.github.com/repos/UM-USElab/gradecraft-development/releases{/id}","deployments_url":"https://api.github.com/repos/UM-USElab/gradecraft-development/deployments","created_at":"2013-02-09T03:44:54Z","updated_at":"2016-01-27T18:03:56Z","pushed_at":"2016-03-28T02:19:22Z","git_url":"git://github.com/UM-USElab/gradecraft-development.git","ssh_url":"git@github.com:UM-USElab/gradecraft-development.git","clone_url":"https://github.com/UM-USElab/gradecraft-development.git","svn_url":"https://github.com/UM-USElab/gradecraft-development","homepage":"","size":66480,"stargazers_count":27,"watchers_count":27,"language":"Ruby","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":17,"mirror_url":null,"open_issues_count":125,"forks":17,"open_issues":125,"watchers":27,"default_branch":"master"}},"base":{"label":"UM-USElab:master","ref":"master","sha":"9e02ac62760fe0d1e5d894945421de57e7748a4c","user":{"login":"UM-USElab","id":4459066,"avatar_url":"https://avatars.githubusercontent.com/u/4459066?v=3","gravatar_id":"","url":"https://api.github.com/users/UM-USElab","html_url":"https://github.com/UM-USElab","followers_url":"https://api.github.com/users/UM-USElab/followers","following_url":"https://api.github.com/users/UM-USElab/following{/other_user}","gists_url":"https://api.github.com/users/UM-USElab/gists{/gist_id}","starred_url":"https://api.github.com/users/UM-USElab/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/UM-USElab/subscriptions","organizations_url":"https://api.github.com/users/UM-USElab/orgs","repos_url":"https://api.github.com/users/UM-USElab/repos","events_url":"https://api.github.com/users/UM-USElab/events{/privacy}","received_events_url":"https://api.github.com/users/UM-USElab/received_events","type":"Organization","site_admin":false},"repo":{"id":8105769,"name":"gradecraft-development","full_name":"UM-USElab/gradecraft-development","owner":{"login":"UM-USElab","id":4459066,"avatar_url":"https://avatars.githubusercontent.com/u/4459066?v=3","gravatar_id":"","url":"https://api.github.com/users/UM-USElab","html_url":"https://github.com/UM-USElab","followers_url":"https://api.github.com/users/UM-USElab/followers","following_url":"https://api.github.com/users/UM-USElab/following{/other_user}","gists_url":"https://api.github.com/users/UM-USElab/gists{/gist_id}","starred_url":"https://api.github.com/users/UM-USElab/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/UM-USElab/subscriptions","organizations_url":"https://api.github.com/users/UM-USElab/orgs","repos_url":"https://api.github.com/users/UM-USElab/repos","events_url":"https://api.github.com/users/UM-USElab/events{/privacy}","received_events_url":"https://api.github.com/users/UM-USElab/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/UM-USElab/gradecraft-development","description":"GradeCraft is a gameful learning management system, intended to help motivate students to be more engaged in their own learning.","fork":false,"url":"https://api.github.com/repos/UM-USElab/gradecraft-development","forks_url":"https://api.github.com/repos/UM-USElab/gradecraft-development/forks","keys_url":"https://api.github.com/repos/UM-USElab/gradecraft-development/keys{/key_id}","collaborators_url":"https://api.github.com/repos/UM-USElab/gradecraft-development/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/UM-USElab/gradecraft-development/teams","hooks_url":"https://api.github.com/repos/UM-USElab/gradecraft-development/hooks","issue_events_url":"https://api.github.com/repos/UM-USElab/gradecraft-development/issues/events{/number}","events_url":"https://api.github.com/repos/UM-USElab/gradecraft-development/events","assignees_url":"https://api.github.com/repos/UM-USElab/gradecraft-development/assignees{/user}","branches_url":"https://api.github.com/repos/UM-USElab/gradecraft-development/branches{/branch}","tags_url":"https://api.github.com/repos/UM-USElab/gradecraft-development/tags","blobs_url":"https://api.github.com/repos/UM-USElab/gradecraft-development/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/UM-USElab/gradecraft-development/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/UM-USElab/gradecraft-development/git/refs{/sha}","trees_url":"https://api.github.com/repos/UM-USElab/gradecraft-development/git/trees{/sha}","statuses_url":"https://api.github.com/repos/UM-USElab/gradecraft-development/statuses/{sha}","languages_url":"https://api.github.com/repos/UM-USElab/gradecraft-development/languages","stargazers_url":"https://api.github.com/repos/UM-USElab/gradecraft-development/stargazers","contributors_url":"https://api.github.com/repos/UM-USElab/gradecraft-development/contributors","subscribers_url":"https://api.github.com/repos/UM-USElab/gradecraft-development/subscribers","subscription_url":"https://api.github.com/repos/UM-USElab/gradecraft-development/subscription","commits_url":"https://api.github.com/repos/UM-USElab/gradecraft-development/commits{/sha}","git_commits_url":"https://api.github.com/repos/UM-USElab/gradecraft-development/git/commits{/sha}","comments_url":"https://api.github.com/repos/UM-USElab/gradecraft-development/comments{/number}","issue_comment_url":"https://api.github.com/repos/UM-USElab/gradecraft-development/issues/comments{/number}","contents_url":"https://api.github.com/repos/UM-USElab/gradecraft-development/contents/{+path}","compare_url":"https://api.github.com/repos/UM-USElab/gradecraft-development/compare/{base}...{head}","merges_url":"https://api.github.com/repos/UM-USElab/gradecraft-development/merges","archive_url":"https://api.github.com/repos/UM-USElab/gradecraft-development/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/UM-USElab/gradecraft-development/downloads","issues_url":"https://api.github.com/repos/UM-USElab/gradecraft-development/issues{/number}","pulls_url":"https://api.github.com/repos/UM-USElab/gradecraft-development/pulls{/number}","milestones_url":"https://api.github.com/repos/UM-USElab/gradecraft-development/milestones{/number}","notifications_url":"https://api.github.com/repos/UM-USElab/gradecraft-development/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/UM-USElab/gradecraft-development/labels{/name}","releases_url":"https://api.github.com/repos/UM-USElab/gradecraft-development/releases{/id}","deployments_url":"https://api.github.com/repos/UM-USElab/gradecraft-development/deployments","created_at":"2013-02-09T03:44:54Z","updated_at":"2016-01-27T18:03:56Z","pushed_at":"2016-03-28T02:19:22Z","git_url":"git://github.com/UM-USElab/gradecraft-development.git","ssh_url":"git@github.com:UM-USElab/gradecraft-development.git","clone_url":"https://github.com/UM-USElab/gradecraft-development.git","svn_url":"https://github.com/UM-USElab/gradecraft-development","homepage":"","size":66480,"stargazers_count":27,"watchers_count":27,"language":"Ruby","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":17,"mirror_url":null,"open_issues_count":125,"forks":17,"open_issues":125,"watchers":27,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/UM-USElab/gradecraft-development/pulls/1823"},"html":{"href":"https://github.com/UM-USElab/gradecraft-development/pull/1823"},"issue":{"href":"https://api.github.com/repos/UM-USElab/gradecraft-development/issues/1823"},"comments":{"href":"https://api.github.com/repos/UM-USElab/gradecraft-development/issues/1823/comments"},"review_comments":{"href":"https://api.github.com/repos/UM-USElab/gradecraft-development/pulls/1823/comments"},"review_comment":{"href":"https://api.github.com/repos/UM-USElab/gradecraft-development/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/UM-USElab/gradecraft-development/pulls/1823/commits"},"statuses":{"href":"https://api.github.com/repos/UM-USElab/gradecraft-development/statuses/1012dfb67553669b4875c0e2d182ae11500494bc"}}}}