{"action":"created","issue":{"url":"https://api.github.com/repos/exercism/exercism.io/issues/3215","repository_url":"https://api.github.com/repos/exercism/exercism.io","labels_url":"https://api.github.com/repos/exercism/exercism.io/issues/3215/labels{/name}","comments_url":"https://api.github.com/repos/exercism/exercism.io/issues/3215/comments","events_url":"https://api.github.com/repos/exercism/exercism.io/issues/3215/events","html_url":"https://github.com/exercism/exercism.io/pull/3215","id":185641394,"number":3215,"title":"Add transaction on team invite","user":{"login":"esparta","id":1037088,"avatar_url":"https://avatars.githubusercontent.com/u/1037088?v=3","gravatar_id":"","url":"https://api.github.com/users/esparta","html_url":"https://github.com/esparta","followers_url":"https://api.github.com/users/esparta/followers","following_url":"https://api.github.com/users/esparta/following{/other_user}","gists_url":"https://api.github.com/users/esparta/gists{/gist_id}","starred_url":"https://api.github.com/users/esparta/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/esparta/subscriptions","organizations_url":"https://api.github.com/users/esparta/orgs","repos_url":"https://api.github.com/users/esparta/repos","events_url":"https://api.github.com/users/esparta/events{/privacy}","received_events_url":"https://api.github.com/users/esparta/received_events","type":"User","site_admin":false},"labels":[{"id":475900886,"url":"https://api.github.com/repos/exercism/exercism.io/labels/changes%20requested","name":"changes requested","color":"cccccc","default":false}],"state":"closed","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":7,"created_at":"2016-10-27T11:23:21Z","updated_at":"2016-11-25T21:23:35Z","closed_at":"2016-11-24T17:49:06Z","pull_request":{"url":"https://api.github.com/repos/exercism/exercism.io/pulls/3215","html_url":"https://github.com/exercism/exercism.io/pull/3215","diff_url":"https://github.com/exercism/exercism.io/pull/3215.diff","patch_url":"https://github.com/exercism/exercism.io/pull/3215.patch"},"body":"When `Team.invite` process the list of users to invite it generates a single transaction\nper `TeamMembershipInvite.create`, this can be problematic on data integrity if for\nsome reason the create method fails (as in adding just 5 of 45 potential members)\n\nThis changes tries to wrap the `users.each` with a transaction, generating a big block\nof inserts.\n\nThis is a simple test code to see the changes on what ActiveRecord will be doing before and after:\n\n``` ruby\nrequire 'active_record'\n\nrequire_relative 'lib/db/connection'\n\nrequire_relative 'lib/exercism/user'\nrequire_relative 'lib/exercism/team'\nrequire_relative 'lib/exercism/team_membership'\n\nActiveRecord::Base.logger = Logger.new(STDOUT)\n\nDB::Connection.establish\ninviter = User.first\npotentials = User.where.not(id: inviter)\n\nteam = Team.first\n\nteam.membership_invites.delete_all\nteam.invite(potentials, inviter)\n```\n\nBefore change\n\n``` log\nvagrant@rails-dev-box:~/exercism$ time bundle exec ruby benchmakr_transaction.rb\nD, [2016-10-27T10:59:13.372802 #5009] DEBUG -- :   User Load (2.2ms)  SELECT  \"users\".* FROM \"users\"  ORDER BY \"users\".\"id\" ASC LIMIT 1\nD, [2016-10-27T10:59:13.424882 #5009] DEBUG -- :   Team Load (1.3ms)  SELECT  \"teams\".* FROM \"teams\"  ORDER BY \"teams\".\"id\" ASC LIMIT 1\nD, [2016-10-27T10:59:13.443196 #5009] DEBUG -- :   SQL (3.0ms)  DELETE FROM \"team_membership_invites\"\nD, [2016-10-27T10:59:13.453893 #5009] DEBUG -- :   User Load (1.3ms)  SELECT \"users\".* FROM \"users\" WHERE (\"users\".\"id\" != 1)\nD, [2016-10-27T10:59:13.531510 #5009] DEBUG -- :   User Load (0.9ms)  SELECT \"users\".* FROM \"users\" INNER JOIN \"team_memberships\" ON \"users\".\"id\" = \"team_memberships\".\"user_id\" WHERE \"team_memberships\".\"team_id\" = $1 AND \"team_memberships\".\"confirmed\" = $2  [[\"team_id\", 1], [\"confirmed\", \"t\"]]\nD, [2016-10-27T10:59:13.535765 #5009] DEBUG -- :   User Load (1.7ms)  SELECT \"users\".* FROM \"users\" INNER JOIN \"team_membership_invites\" ON \"users\".\"id\" = \"team_membership_invites\".\"user_id\" WHERE \"team_membership_invites\".\"team_id\" = $1 AND \"team_membership_invites\".\"refused\" = $2  [[\"team_id\", 1], [\"refused\", \"f\"]]\nD, [2016-10-27T10:59:13.560088 #5009] DEBUG -- :    (0.5ms)  BEGIN\nD, [2016-10-27T10:59:13.572318 #5009] DEBUG -- :   SQL (1.1ms)  INSERT INTO \"team_membership_invites\" (\"user_id\", \"team_id\", \"inviter_id\", \"created_at\", \"updated_at\") VALUES ($1, $2, $3, $4, $5) RETURNING \"id\"  [[\"user_id\", 6], [\"team_id\", 1], [\"inviter_id\", 1], [\"created_at\", \"2016-10-27 10:59:13.567206\"], [\"updated_at\", \"2016-10-27 10:59:13.567206\"]]\nD, [2016-10-27T10:59:13.576229 #5009] DEBUG -- :    (2.0ms)  COMMIT\nD, [2016-10-27T10:59:13.577799 #5009] DEBUG -- :    (0.3ms)  BEGIN\nD, [2016-10-27T10:59:13.580192 #5009] DEBUG -- :   SQL (0.6ms)  INSERT INTO \"team_membership_invites\" (\"user_id\", \"team_id\", \"inviter_id\", \"created_at\", \"updated_at\") VALUES ($1, $2, $3, $4, $5) RETURNING \"id\"  [[\"user_id\", 10], [\"team_id\", 1], [\"inviter_id\", 1], [\"created_at\", \"2016-10-27 10:59:13.578666\"], [\"updated_at\", \"2016-10-27 10:59:13.578666\"]]\nD, [2016-10-27T10:59:13.583402 #5009] DEBUG -- :    (2.4ms)  COMMIT\nD, [2016-10-27T10:59:13.585566 #5009] DEBUG -- :    (0.4ms)  BEGIN\nD, [2016-10-27T10:59:13.587955 #5009] DEBUG -- :   SQL (0.6ms)  INSERT INTO \"team_membership_invites\" (\"user_id\", \"team_id\", \"inviter_id\", \"created_at\", \"updated_at\") VALUES ($1, $2, $3, $4, $5) RETURNING \"id\"  [[\"user_id\", 13], [\"team_id\", 1], [\"inviter_id\", 1], [\"created_at\", \"2016-10-27 10:59:13.586262\"], [\"updated_at\", \"2016-10-27 10:59:13.586262\"]]\nD, [2016-10-27T10:59:13.592842 #5009] DEBUG -- :    (4.2ms)  COMMIT\nD, [2016-10-27T10:59:13.594636 #5009] DEBUG -- :    (0.3ms)  BEGIN\nD, [2016-10-27T10:59:13.597118 #5009] DEBUG -- :   SQL (0.5ms)  INSERT INTO \"team_membership_invites\" (\"user_id\", \"team_id\", \"inviter_id\", \"created_at\", \"updated_at\") VALUES ($1, $2, $3, $4, $5) RETURNING \"id\"  [[\"user_id\", 14], [\"team_id\", 1], [\"inviter_id\", 1], [\"created_at\", \"2016-10-27 10:59:13.595569\"], [\"updated_at\", \"2016-10-27 10:59:13.595569\"]]\nD, [2016-10-27T10:59:13.602346 #5009] DEBUG -- :    (3.5ms)  COMMIT\nD, [2016-10-27T10:59:13.604138 #5009] DEBUG -- :    (0.3ms)  BEGIN\nD, [2016-10-27T10:59:13.606534 #5009] DEBUG -- :   SQL (0.5ms)  INSERT INTO \"team_membership_invites\" (\"user_id\", \"team_id\", \"inviter_id\", \"created_at\", \"updated_at\") VALUES ($1, $2, $3, $4, $5) RETURNING \"id\"  [[\"user_id\", 16], [\"team_id\", 1], [\"inviter_id\", 1], [\"created_at\", \"2016-10-27 10:59:13.604859\"], [\"updated_at\", \"2016-10-27 10:59:13.604859\"]]\nD, [2016-10-27T10:59:13.608967 #5009] DEBUG -- :    (1.4ms)  COMMIT\nD, [2016-10-27T10:59:13.610427 #5009] DEBUG -- :    (0.4ms)  BEGIN\nD, [2016-10-27T10:59:13.613193 #5009] DEBUG -- :   SQL (0.6ms)  INSERT INTO \"team_membership_invites\" (\"user_id\", \"team_id\", \"inviter_id\", \"created_at\", \"updated_at\") VALUES ($1, $2, $3, $4, $5) RETURNING \"id\"  [[\"user_id\", 17], [\"team_id\", 1], [\"inviter_id\", 1], [\"created_at\", \"2016-10-27 10:59:13.611249\"], [\"updated_at\", \"2016-10-27 10:59:13.611249\"]]\nD, [2016-10-27T10:59:13.615514 #5009] DEBUG -- :    (1.4ms)  COMMIT\nD, [2016-10-27T10:59:13.616901 #5009] DEBUG -- :    (0.4ms)  BEGIN\nD, [2016-10-27T10:59:13.619442 #5009] DEBUG -- :   SQL (0.5ms)  INSERT INTO \"team_membership_invites\" (\"user_id\", \"team_id\", \"inviter_id\", \"created_at\", \"updated_at\") VALUES ($1, $2, $3, $4, $5) RETURNING \"id\"  [[\"user_id\", 19], [\"team_id\", 1], [\"inviter_id\", 1], [\"created_at\", \"2016-10-27 10:59:13.617791\"], [\"updated_at\", \"2016-10-27 10:59:13.617791\"]]\nD, [2016-10-27T10:59:13.621845 #5009] DEBUG -- :    (1.3ms)  COMMIT\nD, [2016-10-27T10:59:13.623187 #5009] DEBUG -- :    (0.4ms)  BEGIN\nD, [2016-10-27T10:59:13.625764 #5009] DEBUG -- :   SQL (0.6ms)  INSERT INTO \"team_membership_invites\" (\"user_id\", \"team_id\", \"inviter_id\", \"created_at\", \"updated_at\") VALUES ($1, $2, $3, $4, $5) RETURNING \"id\"  [[\"user_id\", 20], [\"team_id\", 1], [\"inviter_id\", 1], [\"created_at\", \"2016-10-27 10:59:13.623984\"], [\"updated_at\", \"2016-10-27 10:59:13.623984\"]]\nD, [2016-10-27T10:59:13.629383 #5009] DEBUG -- :    (2.3ms)  COMMIT\nD, [2016-10-27T10:59:13.630629 #5009] DEBUG -- :    (0.3ms)  BEGIN\nD, [2016-10-27T10:59:13.633105 #5009] DEBUG -- :   SQL (0.6ms)  INSERT INTO \"team_membership_invites\" (\"user_id\", \"team_id\", \"inviter_id\", \"created_at\", \"updated_at\") VALUES ($1, $2, $3, $4, $5) RETURNING \"id\"  [[\"user_id\", 21], [\"team_id\", 1], [\"inviter_id\", 1], [\"created_at\", \"2016-10-27 10:59:13.631218\"], [\"updated_at\", \"2016-10-27 10:59:13.631218\"]]\nD, [2016-10-27T10:59:13.636410 #5009] DEBUG -- :    (2.7ms)  COMMIT\nD, [2016-10-27T10:59:13.637964 #5009] DEBUG -- :    (0.6ms)  BEGIN\nD, [2016-10-27T10:59:13.640493 #5009] DEBUG -- :   SQL (0.6ms)  INSERT INTO \"team_membership_invites\" (\"user_id\", \"team_id\", \"inviter_id\", \"created_at\", \"updated_at\") VALUES ($1, $2, $3, $4, $5) RETURNING \"id\"  [[\"user_id\", 24], [\"team_id\", 1], [\"inviter_id\", 1], [\"created_at\", \"2016-10-27 10:59:13.638652\"], [\"updated_at\", \"2016-10-27 10:59:13.638652\"]]\nD, [2016-10-27T10:59:13.644173 #5009] DEBUG -- :    (3.0ms)  COMMIT\nD, [2016-10-27T10:59:13.645436 #5009] DEBUG -- :    (0.4ms)  BEGIN\nD, [2016-10-27T10:59:13.650611 #5009] DEBUG -- :   SQL (3.5ms)  INSERT INTO \"team_membership_invites\" (\"user_id\", \"team_id\", \"inviter_id\", \"created_at\", \"updated_at\") VALUES ($1, $2, $3, $4, $5) RETURNING \"id\"  [[\"user_id\", 25], [\"team_id\", 1], [\"inviter_id\", 1], [\"created_at\", \"2016-10-27 10:59:13.646089\"], [\"updated_at\", \"2016-10-27 10:59:13.646089\"]]\nD, [2016-10-27T10:59:13.652634 #5009] DEBUG -- :    (1.3ms)  COMMIT\nD, [2016-10-27T10:59:13.654050 #5009] DEBUG -- :    (0.4ms)  BEGIN\nD, [2016-10-27T10:59:13.657600 #5009] DEBUG -- :   SQL (0.6ms)  INSERT INTO \"team_membership_invites\" (\"user_id\", \"team_id\", \"inviter_id\", \"created_at\", \"updated_at\") VALUES ($1, $2, $3, $4, $5) RETURNING \"id\"  [[\"user_id\", 26], [\"team_id\", 1], [\"inviter_id\", 1], [\"created_at\", \"2016-10-27 10:59:13.655271\"], [\"updated_at\", \"2016-10-27 10:59:13.655271\"]]\nD, [2016-10-27T10:59:13.659572 #5009] DEBUG -- :    (1.3ms)  COMMIT\nD, [2016-10-27T10:59:13.660965 #5009] DEBUG -- :    (0.4ms)  BEGIN\nD, [2016-10-27T10:59:13.663778 #5009] DEBUG -- :   SQL (0.6ms)  INSERT INTO \"team_membership_invites\" (\"user_id\", \"team_id\", \"inviter_id\", \"created_at\", \"updated_at\") VALUES ($1, $2, $3, $4, $5) RETURNING \"id\"  [[\"user_id\", 27], [\"team_id\", 1], [\"inviter_id\", 1], [\"created_at\", \"2016-10-27 10:59:13.661904\"], [\"updated_at\", \"2016-10-27 10:59:13.661904\"]]\nD, [2016-10-27T10:59:13.667638 #5009] DEBUG -- :    (3.0ms)  COMMIT\nD, [2016-10-27T10:59:13.669396 #5009] DEBUG -- :    (0.4ms)  BEGIN\nD, [2016-10-27T10:59:13.672230 #5009] DEBUG -- :   SQL (0.6ms)  INSERT INTO \"team_membership_invites\" (\"user_id\", \"team_id\", \"inviter_id\", \"created_at\", \"updated_at\") VALUES ($1, $2, $3, $4, $5) RETURNING \"id\"  [[\"user_id\", 32], [\"team_id\", 1], [\"inviter_id\", 1], [\"created_at\", \"2016-10-27 10:59:13.670335\"], [\"updated_at\", \"2016-10-27 10:59:13.670335\"]]\nD, [2016-10-27T10:59:13.674842 #5009] DEBUG -- :    (1.3ms)  COMMIT\nD, [2016-10-27T10:59:13.676237 #5009] DEBUG -- :    (0.4ms)  BEGIN\nD, [2016-10-27T10:59:13.678982 #5009] DEBUG -- :   SQL (0.5ms)  INSERT INTO \"team_membership_invites\" (\"user_id\", \"team_id\", \"inviter_id\", \"created_at\", \"updated_at\") VALUES ($1, $2, $3, $4, $5) RETURNING \"id\"  [[\"user_id\", 34], [\"team_id\", 1], [\"inviter_id\", 1], [\"created_at\", \"2016-10-27 10:59:13.677180\"], [\"updated_at\", \"2016-10-27 10:59:13.677180\"]]\nD, [2016-10-27T10:59:13.681031 #5009] DEBUG -- :    (1.3ms)  COMMIT\nD, [2016-10-27T10:59:13.682398 #5009] DEBUG -- :    (0.4ms)  BEGIN\nD, [2016-10-27T10:59:13.686078 #5009] DEBUG -- :   SQL (0.8ms)  INSERT INTO \"team_membership_invites\" (\"user_id\", \"team_id\", \"inviter_id\", \"created_at\", \"updated_at\") VALUES ($1, $2, $3, $4, $5) RETURNING \"id\"  [[\"user_id\", 35], [\"team_id\", 1], [\"inviter_id\", 1], [\"created_at\", \"2016-10-27 10:59:13.683314\"], [\"updated_at\", \"2016-10-27 10:59:13.683314\"]]\nD, [2016-10-27T10:59:13.689477 #5009] DEBUG -- :    (2.6ms)  COMMIT\nD, [2016-10-27T10:59:13.690691 #5009] DEBUG -- :    (0.3ms)  BEGIN\nD, [2016-10-27T10:59:13.693044 #5009] DEBUG -- :   SQL (0.7ms)  INSERT INTO \"team_membership_invites\" (\"user_id\", \"team_id\", \"inviter_id\", \"created_at\", \"updated_at\") VALUES ($1, $2, $3, $4, $5) RETURNING \"id\"  [[\"user_id\", 37], [\"team_id\", 1], [\"inviter_id\", 1], [\"created_at\", \"2016-10-27 10:59:13.691273\"], [\"updated_at\", \"2016-10-27 10:59:13.691273\"]]\nD, [2016-10-27T10:59:13.697759 #5009] DEBUG -- :    (1.8ms)  COMMIT\nD, [2016-10-27T10:59:13.699219 #5009] DEBUG -- :    (0.3ms)  BEGIN\nD, [2016-10-27T10:59:13.701729 #5009] DEBUG -- :   SQL (0.6ms)  INSERT INTO \"team_membership_invites\" (\"user_id\", \"team_id\", \"inviter_id\", \"created_at\", \"updated_at\") VALUES ($1, $2, $3, $4, $5) RETURNING \"id\"  [[\"user_id\", 39], [\"team_id\", 1], [\"inviter_id\", 1], [\"created_at\", \"2016-10-27 10:59:13.699875\"], [\"updated_at\", \"2016-10-27 10:59:13.699875\"]]\nD, [2016-10-27T10:59:13.706388 #5009] DEBUG -- :    (3.8ms)  COMMIT\nD, [2016-10-27T10:59:13.708351 #5009] DEBUG -- :    (0.4ms)  BEGIN\nD, [2016-10-27T10:59:13.711306 #5009] DEBUG -- :   SQL (0.5ms)  INSERT INTO \"team_membership_invites\" (\"user_id\", \"team_id\", \"inviter_id\", \"created_at\", \"updated_at\") VALUES ($1, $2, $3, $4, $5) RETURNING \"id\"  [[\"user_id\", 41], [\"team_id\", 1], [\"inviter_id\", 1], [\"created_at\", \"2016-10-27 10:59:13.709119\"], [\"updated_at\", \"2016-10-27 10:59:13.709119\"]]\nD, [2016-10-27T10:59:13.713363 #5009] DEBUG -- :    (1.3ms)  COMMIT\nD, [2016-10-27T10:59:13.714661 #5009] DEBUG -- :    (0.3ms)  BEGIN\nD, [2016-10-27T10:59:13.718520 #5009] DEBUG -- :   SQL (1.2ms)  INSERT INTO \"team_membership_invites\" (\"user_id\", \"team_id\", \"inviter_id\", \"created_at\", \"updated_at\") VALUES ($1, $2, $3, $4, $5) RETURNING \"id\"  [[\"user_id\", 42], [\"team_id\", 1], [\"inviter_id\", 1], [\"created_at\", \"2016-10-27 10:59:13.715484\"], [\"updated_at\", \"2016-10-27 10:59:13.715484\"]]\nD, [2016-10-27T10:59:13.720785 #5009] DEBUG -- :    (1.3ms)  COMMIT\nD, [2016-10-27T10:59:13.722452 #5009] DEBUG -- :    (0.4ms)  BEGIN\nD, [2016-10-27T10:59:13.725182 #5009] DEBUG -- :   SQL (0.5ms)  INSERT INTO \"team_membership_invites\" (\"user_id\", \"team_id\", \"inviter_id\", \"created_at\", \"updated_at\") VALUES ($1, $2, $3, $4, $5) RETURNING \"id\"  [[\"user_id\", 43], [\"team_id\", 1], [\"inviter_id\", 1], [\"created_at\", \"2016-10-27 10:59:13.723317\"], [\"updated_at\", \"2016-10-27 10:59:13.723317\"]]\nD, [2016-10-27T10:59:13.727201 #5009] DEBUG -- :    (1.2ms)  COMMIT\nD, [2016-10-27T10:59:13.728754 #5009] DEBUG -- :    (0.4ms)  BEGIN\nD, [2016-10-27T10:59:13.731634 #5009] DEBUG -- :   SQL (0.6ms)  INSERT INTO \"team_membership_invites\" (\"user_id\", \"team_id\", \"inviter_id\", \"created_at\", \"updated_at\") VALUES ($1, $2, $3, $4, $5) RETURNING \"id\"  [[\"user_id\", 45], [\"team_id\", 1], [\"inviter_id\", 1], [\"created_at\", \"2016-10-27 10:59:13.729676\"], [\"updated_at\", \"2016-10-27 10:59:13.729676\"]]\nD, [2016-10-27T10:59:13.733577 #5009] DEBUG -- :    (1.2ms)  COMMIT\nD, [2016-10-27T10:59:13.735067 #5009] DEBUG -- :    (0.3ms)  BEGIN\nD, [2016-10-27T10:59:13.738149 #5009] DEBUG -- :   SQL (0.8ms)  INSERT INTO \"team_membership_invites\" (\"user_id\", \"team_id\", \"inviter_id\", \"created_at\", \"updated_at\") VALUES ($1, $2, $3, $4, $5) RETURNING \"id\"  [[\"user_id\", 47], [\"team_id\", 1], [\"inviter_id\", 1], [\"created_at\", \"2016-10-27 10:59:13.736048\"], [\"updated_at\", \"2016-10-27 10:59:13.736048\"]]\nD, [2016-10-27T10:59:13.740166 #5009] DEBUG -- :    (1.3ms)  COMMIT\nD, [2016-10-27T10:59:13.741777 #5009] DEBUG -- :    (0.6ms)  BEGIN\nD, [2016-10-27T10:59:13.744329 #5009] DEBUG -- :   SQL (0.6ms)  INSERT INTO \"team_membership_invites\" (\"user_id\", \"team_id\", \"inviter_id\", \"created_at\", \"updated_at\") VALUES ($1, $2, $3, $4, $5) RETURNING \"id\"  [[\"user_id\", 4], [\"team_id\", 1], [\"inviter_id\", 1], [\"created_at\", \"2016-10-27 10:59:13.742468\"], [\"updated_at\", \"2016-10-27 10:59:13.742468\"]]\nD, [2016-10-27T10:59:13.747735 #5009] DEBUG -- :    (2.5ms)  COMMIT\nD, [2016-10-27T10:59:13.749683 #5009] DEBUG -- :    (0.3ms)  BEGIN\nD, [2016-10-27T10:59:13.752202 #5009] DEBUG -- :   SQL (0.6ms)  INSERT INTO \"team_membership_invites\" (\"user_id\", \"team_id\", \"inviter_id\", \"created_at\", \"updated_at\") VALUES ($1, $2, $3, $4, $5) RETURNING \"id\"  [[\"user_id\", 40], [\"team_id\", 1], [\"inviter_id\", 1], [\"created_at\", \"2016-10-27 10:59:13.750409\"], [\"updated_at\", \"2016-10-27 10:59:13.750409\"]]\nD, [2016-10-27T10:59:13.755627 #5009] DEBUG -- :    (2.8ms)  COMMIT\nD, [2016-10-27T10:59:13.756779 #5009] DEBUG -- :    (0.3ms)  BEGIN\nD, [2016-10-27T10:59:13.765535 #5009] DEBUG -- :   SQL (0.7ms)  INSERT INTO \"team_membership_invites\" (\"user_id\", \"team_id\", \"inviter_id\", \"created_at\", \"updated_at\") VALUES ($1, $2, $3, $4, $5) RETURNING \"id\"  [[\"user_id\", 12], [\"team_id\", 1], [\"inviter_id\", 1], [\"created_at\", \"2016-10-27 10:59:13.763351\"], [\"updated_at\", \"2016-10-27 10:59:13.763351\"]]\nD, [2016-10-27T10:59:13.768760 #5009] DEBUG -- :    (2.3ms)  COMMIT\nD, [2016-10-27T10:59:13.770461 #5009] DEBUG -- :    (0.5ms)  BEGIN\nD, [2016-10-27T10:59:13.773209 #5009] DEBUG -- :   SQL (0.5ms)  INSERT INTO \"team_membership_invites\" (\"user_id\", \"team_id\", \"inviter_id\", \"created_at\", \"updated_at\") VALUES ($1, $2, $3, $4, $5) RETURNING \"id\"  [[\"user_id\", 5], [\"team_id\", 1], [\"inviter_id\", 1], [\"created_at\", \"2016-10-27 10:59:13.771331\"], [\"updated_at\", \"2016-10-27 10:59:13.771331\"]]\nD, [2016-10-27T10:59:13.775186 #5009] DEBUG -- :    (1.1ms)  COMMIT\nD, [2016-10-27T10:59:13.776532 #5009] DEBUG -- :    (0.4ms)  BEGIN\nD, [2016-10-27T10:59:13.779433 #5009] DEBUG -- :   SQL (0.5ms)  INSERT INTO \"team_membership_invites\" (\"user_id\", \"team_id\", \"inviter_id\", \"created_at\", \"updated_at\") VALUES ($1, $2, $3, $4, $5) RETURNING \"id\"  [[\"user_id\", 9], [\"team_id\", 1], [\"inviter_id\", 1], [\"created_at\", \"2016-10-27 10:59:13.777781\"], [\"updated_at\", \"2016-10-27 10:59:13.777781\"]]\nD, [2016-10-27T10:59:13.781692 #5009] DEBUG -- :    (1.5ms)  COMMIT\nD, [2016-10-27T10:59:13.783046 #5009] DEBUG -- :    (0.4ms)  BEGIN\nD, [2016-10-27T10:59:13.785938 #5009] DEBUG -- :   SQL (0.6ms)  INSERT INTO \"team_membership_invites\" (\"user_id\", \"team_id\", \"inviter_id\", \"created_at\", \"updated_at\") VALUES ($1, $2, $3, $4, $5) RETURNING \"id\"  [[\"user_id\", 44], [\"team_id\", 1], [\"inviter_id\", 1], [\"created_at\", \"2016-10-27 10:59:13.784258\"], [\"updated_at\", \"2016-10-27 10:59:13.784258\"]]\nD, [2016-10-27T10:59:13.788040 #5009] DEBUG -- :    (1.3ms)  COMMIT\nD, [2016-10-27T10:59:13.789431 #5009] DEBUG -- :    (0.4ms)  BEGIN\nD, [2016-10-27T10:59:13.792197 #5009] DEBUG -- :   SQL (0.5ms)  INSERT INTO \"team_membership_invites\" (\"user_id\", \"team_id\", \"inviter_id\", \"created_at\", \"updated_at\") VALUES ($1, $2, $3, $4, $5) RETURNING \"id\"  [[\"user_id\", 29], [\"team_id\", 1], [\"inviter_id\", 1], [\"created_at\", \"2016-10-27 10:59:13.790746\"], [\"updated_at\", \"2016-10-27 10:59:13.790746\"]]\nD, [2016-10-27T10:59:13.794240 #5009] DEBUG -- :    (1.3ms)  COMMIT\nD, [2016-10-27T10:59:13.795917 #5009] DEBUG -- :    (0.4ms)  BEGIN\nD, [2016-10-27T10:59:13.809188 #5009] DEBUG -- :   SQL (1.0ms)  INSERT INTO \"team_membership_invites\" (\"user_id\", \"team_id\", \"inviter_id\", \"created_at\", \"updated_at\") VALUES ($1, $2, $3, $4, $5) RETURNING \"id\"  [[\"user_id\", 46], [\"team_id\", 1], [\"inviter_id\", 1], [\"created_at\", \"2016-10-27 10:59:13.796761\"], [\"updated_at\", \"2016-10-27 10:59:13.796761\"]]\nD, [2016-10-27T10:59:13.812788 #5009] DEBUG -- :    (2.8ms)  COMMIT\nD, [2016-10-27T10:59:13.813796 #5009] DEBUG -- :    (0.3ms)  BEGIN\nD, [2016-10-27T10:59:13.818407 #5009] DEBUG -- :   SQL (2.8ms)  INSERT INTO \"team_membership_invites\" (\"user_id\", \"team_id\", \"inviter_id\", \"created_at\", \"updated_at\") VALUES ($1, $2, $3, $4, $5) RETURNING \"id\"  [[\"user_id\", 28], [\"team_id\", 1], [\"inviter_id\", 1], [\"created_at\", \"2016-10-27 10:59:13.814467\"], [\"updated_at\", \"2016-10-27 10:59:13.814467\"]]\nD, [2016-10-27T10:59:13.820771 #5009] DEBUG -- :    (1.2ms)  COMMIT\nD, [2016-10-27T10:59:13.822309 #5009] DEBUG -- :    (0.4ms)  BEGIN\nD, [2016-10-27T10:59:13.824663 #5009] DEBUG -- :   SQL (0.5ms)  INSERT INTO \"team_membership_invites\" (\"user_id\", \"team_id\", \"inviter_id\", \"created_at\", \"updated_at\") VALUES ($1, $2, $3, $4, $5) RETURNING \"id\"  [[\"user_id\", 3], [\"team_id\", 1], [\"inviter_id\", 1], [\"created_at\", \"2016-10-27 10:59:13.823107\"], [\"updated_at\", \"2016-10-27 10:59:13.823107\"]]\nD, [2016-10-27T10:59:13.826705 #5009] DEBUG -- :    (1.2ms)  COMMIT\nD, [2016-10-27T10:59:13.828511 #5009] DEBUG -- :    (0.3ms)  BEGIN\nD, [2016-10-27T10:59:13.831905 #5009] DEBUG -- :   SQL (0.6ms)  INSERT INTO \"team_membership_invites\" (\"user_id\", \"team_id\", \"inviter_id\", \"created_at\", \"updated_at\") VALUES ($1, $2, $3, $4, $5) RETURNING \"id\"  [[\"user_id\", 49], [\"team_id\", 1], [\"inviter_id\", 1], [\"created_at\", \"2016-10-27 10:59:13.830260\"], [\"updated_at\", \"2016-10-27 10:59:13.830260\"]]\nD, [2016-10-27T10:59:13.835315 #5009] DEBUG -- :    (2.5ms)  COMMIT\nD, [2016-10-27T10:59:13.837496 #5009] DEBUG -- :    (0.6ms)  BEGIN\nD, [2016-10-27T10:59:13.840109 #5009] DEBUG -- :   SQL (0.6ms)  INSERT INTO \"team_membership_invites\" (\"user_id\", \"team_id\", \"inviter_id\", \"created_at\", \"updated_at\") VALUES ($1, $2, $3, $4, $5) RETURNING \"id\"  [[\"user_id\", 2], [\"team_id\", 1], [\"inviter_id\", 1], [\"created_at\", \"2016-10-27 10:59:13.838551\"], [\"updated_at\", \"2016-10-27 10:59:13.838551\"]]\nD, [2016-10-27T10:59:13.842853 #5009] DEBUG -- :    (1.4ms)  COMMIT\nD, [2016-10-27T10:59:13.854609 #5009] DEBUG -- :    (1.4ms)  BEGIN\nD, [2016-10-27T10:59:13.856932 #5009] DEBUG -- :   SQL (0.6ms)  INSERT INTO \"team_membership_invites\" (\"user_id\", \"team_id\", \"inviter_id\", \"created_at\", \"updated_at\") VALUES ($1, $2, $3, $4, $5) RETURNING \"id\"  [[\"user_id\", 48], [\"team_id\", 1], [\"inviter_id\", 1], [\"created_at\", \"2016-10-27 10:59:13.855464\"], [\"updated_at\", \"2016-10-27 10:59:13.855464\"]]\nD, [2016-10-27T10:59:13.863028 #5009] DEBUG -- :    (2.6ms)  COMMIT\nD, [2016-10-27T10:59:13.864225 #5009] DEBUG -- :    (0.3ms)  BEGIN\nD, [2016-10-27T10:59:13.876216 #5009] DEBUG -- :   SQL (9.0ms)  INSERT INTO \"team_membership_invites\" (\"user_id\", \"team_id\", \"inviter_id\", \"created_at\", \"updated_at\") VALUES ($1, $2, $3, $4, $5) RETURNING \"id\"  [[\"user_id\", 33], [\"team_id\", 1], [\"inviter_id\", 1], [\"created_at\", \"2016-10-27 10:59:13.866280\"], [\"updated_at\", \"2016-10-27 10:59:13.866280\"]]\nD, [2016-10-27T10:59:13.878652 #5009] DEBUG -- :    (1.3ms)  COMMIT\nD, [2016-10-27T10:59:13.880917 #5009] DEBUG -- :    (0.9ms)  BEGIN\nD, [2016-10-27T10:59:13.885202 #5009] DEBUG -- :   SQL (1.8ms)  INSERT INTO \"team_membership_invites\" (\"user_id\", \"team_id\", \"inviter_id\", \"created_at\", \"updated_at\") VALUES ($1, $2, $3, $4, $5) RETURNING \"id\"  [[\"user_id\", 38], [\"team_id\", 1], [\"inviter_id\", 1], [\"created_at\", \"2016-10-27 10:59:13.882016\"], [\"updated_at\", \"2016-10-27 10:59:13.882016\"]]\nD, [2016-10-27T10:59:13.888332 #5009] DEBUG -- :    (1.2ms)  COMMIT\n\nreal    0m3.717s\nuser    0m1.260s\nsys 0m2.052s\n```\n\nAfter change\n\n``` log\nvagrant@rails-dev-box:~/exercism$ time bundle exec ruby benchmakr_transaction.rb\nD, [2016-10-27T10:57:34.769980 #4997] DEBUG -- :   User Load (3.2ms)  SELECT  \"users\".* FROM \"users\"  ORDER BY \"users\".\"id\" ASC LIMIT 1\nD, [2016-10-27T10:57:34.831399 #4997] DEBUG -- :   Team Load (1.5ms)  SELECT  \"teams\".* FROM \"teams\"  ORDER BY \"teams\".\"id\" ASC LIMIT 1\nD, [2016-10-27T10:57:34.849242 #4997] DEBUG -- :   SQL (5.1ms)  DELETE FROM \"team_membership_invites\"\nD, [2016-10-27T10:57:34.858920 #4997] DEBUG -- :   User Load (1.4ms)  SELECT \"users\".* FROM \"users\" WHERE (\"users\".\"id\" != 1)\nD, [2016-10-27T10:57:34.931292 #4997] DEBUG -- :   User Load (0.9ms)  SELECT \"users\".* FROM \"users\" INNER JOIN \"team_memberships\" ON \"users\".\"id\" = \"team_memberships\".\"user_id\" WHERE \"team_memberships\".\"team_id\" = $1 AND \"team_memberships\".\"confirmed\" = $2  [[\"team_id\", 1], [\"confirmed\", \"t\"]]\nD, [2016-10-27T10:57:34.937703 #4997] DEBUG -- :   User Load (3.1ms)  SELECT \"users\".* FROM \"users\" INNER JOIN \"team_membership_invites\" ON \"users\".\"id\" = \"team_membership_invites\".\"user_id\" WHERE \"team_membership_invites\".\"team_id\" = $1 AND \"team_membership_invites\".\"refused\" = $2  [[\"team_id\", 1], [\"refused\", \"f\"]]\nD, [2016-10-27T10:57:34.940588 #4997] DEBUG -- :    (0.3ms)  BEGIN\nD, [2016-10-27T10:57:34.971301 #4997] DEBUG -- :   SQL (1.1ms)  INSERT INTO \"team_membership_invites\" (\"user_id\", \"team_id\", \"inviter_id\", \"created_at\", \"updated_at\") VALUES ($1, $2, $3, $4, $5) RETURNING \"id\"  [[\"user_id\", 6], [\"team_id\", 1], [\"inviter_id\", 1], [\"created_at\", \"2016-10-27 10:57:34.965250\"], [\"updated_at\", \"2016-10-27 10:57:34.965250\"]]\nD, [2016-10-27T10:57:34.976566 #4997] DEBUG -- :   SQL (0.6ms)  INSERT INTO \"team_membership_invites\" (\"user_id\", \"team_id\", \"inviter_id\", \"created_at\", \"updated_at\") VALUES ($1, $2, $3, $4, $5) RETURNING \"id\"  [[\"user_id\", 10], [\"team_id\", 1], [\"inviter_id\", 1], [\"created_at\", \"2016-10-27 10:57:34.974962\"], [\"updated_at\", \"2016-10-27 10:57:34.974962\"]]\nD, [2016-10-27T10:57:34.995572 #4997] DEBUG -- :   SQL (0.9ms)  INSERT INTO \"team_membership_invites\" (\"user_id\", \"team_id\", \"inviter_id\", \"created_at\", \"updated_at\") VALUES ($1, $2, $3, $4, $5) RETURNING \"id\"  [[\"user_id\", 13], [\"team_id\", 1], [\"inviter_id\", 1], [\"created_at\", \"2016-10-27 10:57:34.993796\"], [\"updated_at\", \"2016-10-27 10:57:34.993796\"]]\nD, [2016-10-27T10:57:35.003059 #4997] DEBUG -- :   SQL (2.1ms)  INSERT INTO \"team_membership_invites\" (\"user_id\", \"team_id\", \"inviter_id\", \"created_at\", \"updated_at\") VALUES ($1, $2, $3, $4, $5) RETURNING \"id\"  [[\"user_id\", 14], [\"team_id\", 1], [\"inviter_id\", 1], [\"created_at\", \"2016-10-27 10:57:34.999374\"], [\"updated_at\", \"2016-10-27 10:57:34.999374\"]]\nD, [2016-10-27T10:57:35.007189 #4997] DEBUG -- :   SQL (0.5ms)  INSERT INTO \"team_membership_invites\" (\"user_id\", \"team_id\", \"inviter_id\", \"created_at\", \"updated_at\") VALUES ($1, $2, $3, $4, $5) RETURNING \"id\"  [[\"user_id\", 16], [\"team_id\", 1], [\"inviter_id\", 1], [\"created_at\", \"2016-10-27 10:57:35.005549\"], [\"updated_at\", \"2016-10-27 10:57:35.005549\"]]\nD, [2016-10-27T10:57:35.011189 #4997] DEBUG -- :   SQL (0.5ms)  INSERT INTO \"team_membership_invites\" (\"user_id\", \"team_id\", \"inviter_id\", \"created_at\", \"updated_at\") VALUES ($1, $2, $3, $4, $5) RETURNING \"id\"  [[\"user_id\", 17], [\"team_id\", 1], [\"inviter_id\", 1], [\"created_at\", \"2016-10-27 10:57:35.009813\"], [\"updated_at\", \"2016-10-27 10:57:35.009813\"]]\nD, [2016-10-27T10:57:35.015912 #4997] DEBUG -- :   SQL (0.5ms)  INSERT INTO \"team_membership_invites\" (\"user_id\", \"team_id\", \"inviter_id\", \"created_at\", \"updated_at\") VALUES ($1, $2, $3, $4, $5) RETURNING \"id\"  [[\"user_id\", 19], [\"team_id\", 1], [\"inviter_id\", 1], [\"created_at\", \"2016-10-27 10:57:35.014402\"], [\"updated_at\", \"2016-10-27 10:57:35.014402\"]]\nD, [2016-10-27T10:57:35.020259 #4997] DEBUG -- :   SQL (0.8ms)  INSERT INTO \"team_membership_invites\" (\"user_id\", \"team_id\", \"inviter_id\", \"created_at\", \"updated_at\") VALUES ($1, $2, $3, $4, $5) RETURNING \"id\"  [[\"user_id\", 20], [\"team_id\", 1], [\"inviter_id\", 1], [\"created_at\", \"2016-10-27 10:57:35.018615\"], [\"updated_at\", \"2016-10-27 10:57:35.018615\"]]\nD, [2016-10-27T10:57:35.024156 #4997] DEBUG -- :   SQL (0.5ms)  INSERT INTO \"team_membership_invites\" (\"user_id\", \"team_id\", \"inviter_id\", \"created_at\", \"updated_at\") VALUES ($1, $2, $3, $4, $5) RETURNING \"id\"  [[\"user_id\", 21], [\"team_id\", 1], [\"inviter_id\", 1], [\"created_at\", \"2016-10-27 10:57:35.022822\"], [\"updated_at\", \"2016-10-27 10:57:35.022822\"]]\nD, [2016-10-27T10:57:35.057536 #4997] DEBUG -- :   SQL (1.2ms)  INSERT INTO \"team_membership_invites\" (\"user_id\", \"team_id\", \"inviter_id\", \"created_at\", \"updated_at\") VALUES ($1, $2, $3, $4, $5) RETURNING \"id\"  [[\"user_id\", 24], [\"team_id\", 1], [\"inviter_id\", 1], [\"created_at\", \"2016-10-27 10:57:35.053325\"], [\"updated_at\", \"2016-10-27 10:57:35.053325\"]]\nD, [2016-10-27T10:57:35.061126 #4997] DEBUG -- :   SQL (0.5ms)  INSERT INTO \"team_membership_invites\" (\"user_id\", \"team_id\", \"inviter_id\", \"created_at\", \"updated_at\") VALUES ($1, $2, $3, $4, $5) RETURNING \"id\"  [[\"user_id\", 25], [\"team_id\", 1], [\"inviter_id\", 1], [\"created_at\", \"2016-10-27 10:57:35.059412\"], [\"updated_at\", \"2016-10-27 10:57:35.059412\"]]\nD, [2016-10-27T10:57:35.071720 #4997] DEBUG -- :   SQL (2.2ms)  INSERT INTO \"team_membership_invites\" (\"user_id\", \"team_id\", \"inviter_id\", \"created_at\", \"updated_at\") VALUES ($1, $2, $3, $4, $5) RETURNING \"id\"  [[\"user_id\", 26], [\"team_id\", 1], [\"inviter_id\", 1], [\"created_at\", \"2016-10-27 10:57:35.069159\"], [\"updated_at\", \"2016-10-27 10:57:35.069159\"]]\nD, [2016-10-27T10:57:35.074133 #4997] DEBUG -- :   SQL (0.6ms)  INSERT INTO \"team_membership_invites\" (\"user_id\", \"team_id\", \"inviter_id\", \"created_at\", \"updated_at\") VALUES ($1, $2, $3, $4, $5) RETURNING \"id\"  [[\"user_id\", 27], [\"team_id\", 1], [\"inviter_id\", 1], [\"created_at\", \"2016-10-27 10:57:35.073149\"], [\"updated_at\", \"2016-10-27 10:57:35.073149\"]]\nD, [2016-10-27T10:57:35.077764 #4997] DEBUG -- :   SQL (0.8ms)  INSERT INTO \"team_membership_invites\" (\"user_id\", \"team_id\", \"inviter_id\", \"created_at\", \"updated_at\") VALUES ($1, $2, $3, $4, $5) RETURNING \"id\"  [[\"user_id\", 32], [\"team_id\", 1], [\"inviter_id\", 1], [\"created_at\", \"2016-10-27 10:57:35.075979\"], [\"updated_at\", \"2016-10-27 10:57:35.075979\"]]\nD, [2016-10-27T10:57:35.082648 #4997] DEBUG -- :   SQL (2.3ms)  INSERT INTO \"team_membership_invites\" (\"user_id\", \"team_id\", \"inviter_id\", \"created_at\", \"updated_at\") VALUES ($1, $2, $3, $4, $5) RETURNING \"id\"  [[\"user_id\", 34], [\"team_id\", 1], [\"inviter_id\", 1], [\"created_at\", \"2016-10-27 10:57:35.079353\"], [\"updated_at\", \"2016-10-27 10:57:35.079353\"]]\nD, [2016-10-27T10:57:35.089862 #4997] DEBUG -- :   SQL (0.6ms)  INSERT INTO \"team_membership_invites\" (\"user_id\", \"team_id\", \"inviter_id\", \"created_at\", \"updated_at\") VALUES ($1, $2, $3, $4, $5) RETURNING \"id\"  [[\"user_id\", 35], [\"team_id\", 1], [\"inviter_id\", 1], [\"created_at\", \"2016-10-27 10:57:35.088435\"], [\"updated_at\", \"2016-10-27 10:57:35.088435\"]]\nD, [2016-10-27T10:57:35.093075 #4997] DEBUG -- :   SQL (0.5ms)  INSERT INTO \"team_membership_invites\" (\"user_id\", \"team_id\", \"inviter_id\", \"created_at\", \"updated_at\") VALUES ($1, $2, $3, $4, $5) RETURNING \"id\"  [[\"user_id\", 37], [\"team_id\", 1], [\"inviter_id\", 1], [\"created_at\", \"2016-10-27 10:57:35.091760\"], [\"updated_at\", \"2016-10-27 10:57:35.091760\"]]\nD, [2016-10-27T10:57:35.097369 #4997] DEBUG -- :   SQL (0.9ms)  INSERT INTO \"team_membership_invites\" (\"user_id\", \"team_id\", \"inviter_id\", \"created_at\", \"updated_at\") VALUES ($1, $2, $3, $4, $5) RETURNING \"id\"  [[\"user_id\", 39], [\"team_id\", 1], [\"inviter_id\", 1], [\"created_at\", \"2016-10-27 10:57:35.095350\"], [\"updated_at\", \"2016-10-27 10:57:35.095350\"]]\nD, [2016-10-27T10:57:35.101452 #4997] DEBUG -- :   SQL (0.6ms)  INSERT INTO \"team_membership_invites\" (\"user_id\", \"team_id\", \"inviter_id\", \"created_at\", \"updated_at\") VALUES ($1, $2, $3, $4, $5) RETURNING \"id\"  [[\"user_id\", 41], [\"team_id\", 1], [\"inviter_id\", 1], [\"created_at\", \"2016-10-27 10:57:35.099773\"], [\"updated_at\", \"2016-10-27 10:57:35.099773\"]]\nD, [2016-10-27T10:57:35.104651 #4997] DEBUG -- :   SQL (0.5ms)  INSERT INTO \"team_membership_invites\" (\"user_id\", \"team_id\", \"inviter_id\", \"created_at\", \"updated_at\") VALUES ($1, $2, $3, $4, $5) RETURNING \"id\"  [[\"user_id\", 42], [\"team_id\", 1], [\"inviter_id\", 1], [\"created_at\", \"2016-10-27 10:57:35.103331\"], [\"updated_at\", \"2016-10-27 10:57:35.103331\"]]\nD, [2016-10-27T10:57:35.107958 #4997] DEBUG -- :   SQL (0.5ms)  INSERT INTO \"team_membership_invites\" (\"user_id\", \"team_id\", \"inviter_id\", \"created_at\", \"updated_at\") VALUES ($1, $2, $3, $4, $5) RETURNING \"id\"  [[\"user_id\", 43], [\"team_id\", 1], [\"inviter_id\", 1], [\"created_at\", \"2016-10-27 10:57:35.106686\"], [\"updated_at\", \"2016-10-27 10:57:35.106686\"]]\nD, [2016-10-27T10:57:35.111676 #4997] DEBUG -- :   SQL (0.6ms)  INSERT INTO \"team_membership_invites\" (\"user_id\", \"team_id\", \"inviter_id\", \"created_at\", \"updated_at\") VALUES ($1, $2, $3, $4, $5) RETURNING \"id\"  [[\"user_id\", 45], [\"team_id\", 1], [\"inviter_id\", 1], [\"created_at\", \"2016-10-27 10:57:35.110147\"], [\"updated_at\", \"2016-10-27 10:57:35.110147\"]]\nD, [2016-10-27T10:57:35.115710 #4997] DEBUG -- :   SQL (0.5ms)  INSERT INTO \"team_membership_invites\" (\"user_id\", \"team_id\", \"inviter_id\", \"created_at\", \"updated_at\") VALUES ($1, $2, $3, $4, $5) RETURNING \"id\"  [[\"user_id\", 47], [\"team_id\", 1], [\"inviter_id\", 1], [\"created_at\", \"2016-10-27 10:57:35.114349\"], [\"updated_at\", \"2016-10-27 10:57:35.114349\"]]\nD, [2016-10-27T10:57:35.119173 #4997] DEBUG -- :   SQL (0.5ms)  INSERT INTO \"team_membership_invites\" (\"user_id\", \"team_id\", \"inviter_id\", \"created_at\", \"updated_at\") VALUES ($1, $2, $3, $4, $5) RETURNING \"id\"  [[\"user_id\", 4], [\"team_id\", 1], [\"inviter_id\", 1], [\"created_at\", \"2016-10-27 10:57:35.117562\"], [\"updated_at\", \"2016-10-27 10:57:35.117562\"]]\nD, [2016-10-27T10:57:35.123627 #4997] DEBUG -- :   SQL (0.6ms)  INSERT INTO \"team_membership_invites\" (\"user_id\", \"team_id\", \"inviter_id\", \"created_at\", \"updated_at\") VALUES ($1, $2, $3, $4, $5) RETURNING \"id\"  [[\"user_id\", 40], [\"team_id\", 1], [\"inviter_id\", 1], [\"created_at\", \"2016-10-27 10:57:35.121219\"], [\"updated_at\", \"2016-10-27 10:57:35.121219\"]]\nD, [2016-10-27T10:57:35.128095 #4997] DEBUG -- :   SQL (0.6ms)  INSERT INTO \"team_membership_invites\" (\"user_id\", \"team_id\", \"inviter_id\", \"created_at\", \"updated_at\") VALUES ($1, $2, $3, $4, $5) RETURNING \"id\"  [[\"user_id\", 12], [\"team_id\", 1], [\"inviter_id\", 1], [\"created_at\", \"2016-10-27 10:57:35.126575\"], [\"updated_at\", \"2016-10-27 10:57:35.126575\"]]\nD, [2016-10-27T10:57:35.140663 #4997] DEBUG -- :   SQL (8.6ms)  INSERT INTO \"team_membership_invites\" (\"user_id\", \"team_id\", \"inviter_id\", \"created_at\", \"updated_at\") VALUES ($1, $2, $3, $4, $5) RETURNING \"id\"  [[\"user_id\", 5], [\"team_id\", 1], [\"inviter_id\", 1], [\"created_at\", \"2016-10-27 10:57:35.129438\"], [\"updated_at\", \"2016-10-27 10:57:35.129438\"]]\nD, [2016-10-27T10:57:35.144301 #4997] DEBUG -- :   SQL (1.1ms)  INSERT INTO \"team_membership_invites\" (\"user_id\", \"team_id\", \"inviter_id\", \"created_at\", \"updated_at\") VALUES ($1, $2, $3, $4, $5) RETURNING \"id\"  [[\"user_id\", 9], [\"team_id\", 1], [\"inviter_id\", 1], [\"created_at\", \"2016-10-27 10:57:35.142243\"], [\"updated_at\", \"2016-10-27 10:57:35.142243\"]]\nD, [2016-10-27T10:57:35.149390 #4997] DEBUG -- :   SQL (0.9ms)  INSERT INTO \"team_membership_invites\" (\"user_id\", \"team_id\", \"inviter_id\", \"created_at\", \"updated_at\") VALUES ($1, $2, $3, $4, $5) RETURNING \"id\"  [[\"user_id\", 44], [\"team_id\", 1], [\"inviter_id\", 1], [\"created_at\", \"2016-10-27 10:57:35.147384\"], [\"updated_at\", \"2016-10-27 10:57:35.147384\"]]\nD, [2016-10-27T10:57:35.153049 #4997] DEBUG -- :   SQL (0.5ms)  INSERT INTO \"team_membership_invites\" (\"user_id\", \"team_id\", \"inviter_id\", \"created_at\", \"updated_at\") VALUES ($1, $2, $3, $4, $5) RETURNING \"id\"  [[\"user_id\", 29], [\"team_id\", 1], [\"inviter_id\", 1], [\"created_at\", \"2016-10-27 10:57:35.151734\"], [\"updated_at\", \"2016-10-27 10:57:35.151734\"]]\nD, [2016-10-27T10:57:35.156577 #4997] DEBUG -- :   SQL (0.5ms)  INSERT INTO \"team_membership_invites\" (\"user_id\", \"team_id\", \"inviter_id\", \"created_at\", \"updated_at\") VALUES ($1, $2, $3, $4, $5) RETURNING \"id\"  [[\"user_id\", 46], [\"team_id\", 1], [\"inviter_id\", 1], [\"created_at\", \"2016-10-27 10:57:35.155021\"], [\"updated_at\", \"2016-10-27 10:57:35.155021\"]]\nD, [2016-10-27T10:57:35.160123 #4997] DEBUG -- :   SQL (0.5ms)  INSERT INTO \"team_membership_invites\" (\"user_id\", \"team_id\", \"inviter_id\", \"created_at\", \"updated_at\") VALUES ($1, $2, $3, $4, $5) RETURNING \"id\"  [[\"user_id\", 28], [\"team_id\", 1], [\"inviter_id\", 1], [\"created_at\", \"2016-10-27 10:57:35.158750\"], [\"updated_at\", \"2016-10-27 10:57:35.158750\"]]\nD, [2016-10-27T10:57:35.163435 #4997] DEBUG -- :   SQL (0.5ms)  INSERT INTO \"team_membership_invites\" (\"user_id\", \"team_id\", \"inviter_id\", \"created_at\", \"updated_at\") VALUES ($1, $2, $3, $4, $5) RETURNING \"id\"  [[\"user_id\", 3], [\"team_id\", 1], [\"inviter_id\", 1], [\"created_at\", \"2016-10-27 10:57:35.162114\"], [\"updated_at\", \"2016-10-27 10:57:35.162114\"]]\nD, [2016-10-27T10:57:35.166998 #4997] DEBUG -- :   SQL (0.5ms)  INSERT INTO \"team_membership_invites\" (\"user_id\", \"team_id\", \"inviter_id\", \"created_at\", \"updated_at\") VALUES ($1, $2, $3, $4, $5) RETURNING \"id\"  [[\"user_id\", 49], [\"team_id\", 1], [\"inviter_id\", 1], [\"created_at\", \"2016-10-27 10:57:35.165672\"], [\"updated_at\", \"2016-10-27 10:57:35.165672\"]]\nD, [2016-10-27T10:57:35.170315 #4997] DEBUG -- :   SQL (0.5ms)  INSERT INTO \"team_membership_invites\" (\"user_id\", \"team_id\", \"inviter_id\", \"created_at\", \"updated_at\") VALUES ($1, $2, $3, $4, $5) RETURNING \"id\"  [[\"user_id\", 2], [\"team_id\", 1], [\"inviter_id\", 1], [\"created_at\", \"2016-10-27 10:57:35.168894\"], [\"updated_at\", \"2016-10-27 10:57:35.168894\"]]\nD, [2016-10-27T10:57:35.175269 #4997] DEBUG -- :   SQL (2.2ms)  INSERT INTO \"team_membership_invites\" (\"user_id\", \"team_id\", \"inviter_id\", \"created_at\", \"updated_at\") VALUES ($1, $2, $3, $4, $5) RETURNING \"id\"  [[\"user_id\", 48], [\"team_id\", 1], [\"inviter_id\", 1], [\"created_at\", \"2016-10-27 10:57:35.172110\"], [\"updated_at\", \"2016-10-27 10:57:35.172110\"]]\nD, [2016-10-27T10:57:35.179511 #4997] DEBUG -- :   SQL (0.8ms)  INSERT INTO \"team_membership_invites\" (\"user_id\", \"team_id\", \"inviter_id\", \"created_at\", \"updated_at\") VALUES ($1, $2, $3, $4, $5) RETURNING \"id\"  [[\"user_id\", 33], [\"team_id\", 1], [\"inviter_id\", 1], [\"created_at\", \"2016-10-27 10:57:35.177261\"], [\"updated_at\", \"2016-10-27 10:57:35.177261\"]]\nD, [2016-10-27T10:57:35.193739 #4997] DEBUG -- :   SQL (1.4ms)  INSERT INTO \"team_membership_invites\" (\"user_id\", \"team_id\", \"inviter_id\", \"created_at\", \"updated_at\") VALUES ($1, $2, $3, $4, $5) RETURNING \"id\"  [[\"user_id\", 38], [\"team_id\", 1], [\"inviter_id\", 1], [\"created_at\", \"2016-10-27 10:57:35.184918\"], [\"updated_at\", \"2016-10-27 10:57:35.184918\"]]\nD, [2016-10-27T10:57:35.198643 #4997] DEBUG -- :    (3.5ms)  COMMIT\n\nreal    0m3.696s\nuser    0m1.392s\nsys     0m1.920s\n```\n"},"comment":{"url":"https://api.github.com/repos/exercism/exercism.io/issues/comments/263023831","html_url":"https://github.com/exercism/exercism.io/pull/3215#issuecomment-263023831","issue_url":"https://api.github.com/repos/exercism/exercism.io/issues/3215","id":263023831,"user":{"login":"kytrinyx","id":276834,"avatar_url":"https://avatars.githubusercontent.com/u/276834?v=3","gravatar_id":"","url":"https://api.github.com/users/kytrinyx","html_url":"https://github.com/kytrinyx","followers_url":"https://api.github.com/users/kytrinyx/followers","following_url":"https://api.github.com/users/kytrinyx/following{/other_user}","gists_url":"https://api.github.com/users/kytrinyx/gists{/gist_id}","starred_url":"https://api.github.com/users/kytrinyx/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kytrinyx/subscriptions","organizations_url":"https://api.github.com/users/kytrinyx/orgs","repos_url":"https://api.github.com/users/kytrinyx/repos","events_url":"https://api.github.com/users/kytrinyx/events{/privacy}","received_events_url":"https://api.github.com/users/kytrinyx/received_events","type":"User","site_admin":true},"created_at":"2016-11-25T21:23:35Z","updated_at":"2016-11-25T21:23:35Z","body":"@esparta also feel free to holler if you need help."}}
{"actor":{"display_login":"kytrinyx"}}