|
sql
lib/quiz/stats.rb:120
|
61%
|
lib/quiz/stats.rb:120
- Average Self
-
69ms
- Average calls
- 1x
- Total Self
- 69ms
- Total Children
- 0ms
- Total runtime
- 69ms
WITH first_answers AS (
SELECT
qa.user_id,
qa.question_id,
qa.proposition_id,
ROW_NUMBER() OVER (
PARTITION BY qa.user_id, qa.question_id
ORDER BY qa.id ASC
) AS row_number
FROM quiz_answers qa
WHERE qa.question_id IN (?)) OR "quiz_questions"."categorisable_type" = ? AND "quiz_questions"."categorisable_id" IN (?)) OR "quiz_questions"."categorisable_type" = ? AND "quiz_questions"."categorisable_id" IN (?))))
),
points_counts AS (
SELECT
fa.user_id,
COUNT(CASE WHEN qp.correct = true THEN ? ELSE NULL END) AS points_count
FROM first_answers fa
INNER JOIN quiz_propositions qp ON qp.id = fa.proposition_id
WHERE fa.row_number = ?
GROUP BY fa.user_id
)
SELECT
user_id,
points_count,
DENSE_RANK() OVER (ORDER BY points_count DESC) AS rank
FROM points_counts;
|
|
sql
lib/quiz/stats.rb:26
|
9%
|
lib/quiz/stats.rb:26
- Average Self
-
10ms
- Average calls
- 1x
- Total Self
- 10ms
- Total Children
- 0ms
- Total runtime
- 10ms
SELECT COUNT(*) FROM "quiz_questions" WHERE ("quiz_questions"."categorisable_type" = ? AND "quiz_questions"."categorisable_id" IN (?)) OR "quiz_questions"."categorisable_type" = ? AND "quiz_questions"."categorisable_id" IN (?)) OR "quiz_questions"."categorisable_type" = ? AND "quiz_questions"."categorisable_id" IN (?)))
|
|
code
app/controllers/quiz/answers_controller.rb:50
|
6%
|
app/controllers/quiz/answers_controller.rb:50
- Average Self
-
7.1ms
- Average calls
- 1x
- Total Self
- 7.1ms
- Total Children
- 102ms
- Total runtime
- 109ms
Quiz::AnswersController#create
|
|
sql
lib/quiz/stats.rb:21
|
4%
|
lib/quiz/stats.rb:21
- Average Self
-
5ms
- Average calls
- 1x
- Total Self
- 5ms
- Total Children
- 0ms
- Total runtime
- 5ms
SELECT COUNT(*) FROM "quiz_answers" INNER JOIN "quiz_propositions" ON "quiz_propositions"."id" = "quiz_answers"."proposition_id" WHERE "quiz_answers"."question_id" IN (?)) OR "quiz_questions"."categorisable_type" = ? AND "quiz_questions"."categorisable_id" IN (?)) OR "quiz_questions"."categorisable_type" = ? AND "quiz_questions"."categorisable_id" IN (?)))) AND "quiz_answers"."id" IN (?) FROM "quiz_answers" WHERE "quiz_answers"."question_id" IN (?)) OR "quiz_questions"."categorisable_type" = ? AND "quiz_questions"."categorisable_id" IN (?)) OR "quiz_questions"."categorisable_type" = ? AND "quiz_questions"."categorisable_id" IN (?)))) AND "quiz_answers"."user_id" = ? GROUP BY "quiz_answers"."question_id") AND "quiz_propositions"."correct" = ?
|
|
sql
lib/quiz/stats.rb:16
|
4%
|
lib/quiz/stats.rb:16
- Average Self
-
4.4ms
- Average calls
- 1x
- Total Self
- 4.4ms
- Total Children
- 0ms
- Total runtime
- 4.4ms
SELECT COUNT(*) FROM "quiz_answers" WHERE "quiz_answers"."question_id" IN (?)) OR "quiz_questions"."categorisable_type" = ? AND "quiz_questions"."categorisable_id" IN (?)) OR "quiz_questions"."categorisable_type" = ? AND "quiz_questions"."categorisable_id" IN (?)))) AND "quiz_answers"."id" IN (?) FROM "quiz_answers" WHERE "quiz_answers"."question_id" IN (?)) OR "quiz_questions"."categorisable_type" = ? AND "quiz_questions"."categorisable_id" IN (?)) OR "quiz_questions"."categorisable_type" = ? AND "quiz_questions"."categorisable_id" IN (?)))) AND "quiz_answers"."user_id" = ? GROUP BY "quiz_answers"."question_id")
|
|
sql
app/controllers/quiz/answers_controller.rb:53
|
3%
|
app/controllers/quiz/answers_controller.rb:53
- Average Self
-
0.69ms
- Average calls
- 5x
- Total Self
- 3.4ms
- Total Children
- 0.36ms
- Total runtime
- 3.8ms
BEGIN
SELECT "quiz_questions".* FROM "quiz_questions" WHERE "quiz_questions"."id" = ? LIMIT ?
SELECT "quiz_propositions".* FROM "quiz_propositions" WHERE "quiz_propositions"."id" = ? LIMIT ?
INSERT INTO "quiz_answers" ("user_id", "question_id", "proposition_id", "created_at", "updated_at") VALUES (?, ?, ?, ?, ?) RETURNING "id"
COMMIT
|
|
sql
lib/quiz/selection.rb:67
|
3%
|
lib/quiz/selection.rb:67
- Average Self
-
1.7ms
- Average calls
- 2x
- Total Self
- 3.3ms
- Total Children
- 0ms
- Total runtime
- 3.3ms
SELECT ? AS one FROM "quiz_questions" WHERE ("quiz_questions"."categorisable_type" = ? AND "quiz_questions"."categorisable_id" IN (?)) OR "quiz_questions"."categorisable_type" = ? AND "quiz_questions"."categorisable_id" IN (?)) OR "quiz_questions"."categorisable_type" = ? AND "quiz_questions"."categorisable_id" IN (?))) LIMIT ?
|
|
view
app/views/quiz/answers/_stats.html.erb
|
2%
|
app/views/quiz/answers/_stats.html.erb
- Average Self
-
2.6ms
- Average calls
- 1x
- Total Self
- 2.6ms
- Total Children
- 89ms
- Total runtime
- 92ms
|
|
queue
queue
|
1%
|
queue
- Average Self
-
1.5ms
- Average calls
- 1x
- Total Self
- 1.5ms
- Total Children
- 0ms
- Total runtime
- 1.5ms
|
|
view
app/views/quiz/answers/create.turbo_stream.erb
|
<1%
|
app/views/quiz/answers/create.turbo_stream.erb
- Average Self
-
0.97ms
- Average calls
- 1x
- Total Self
- 0.97ms
- Total Children
- 92ms
- Total runtime
- 93ms
|
|
sql
app/controllers/concerns/guest_user.rb:27
|
<1%
|
app/controllers/concerns/guest_user.rb:27
- Average Self
-
0.9ms
- Average calls
- 1x
- Total Self
- 0.9ms
- Total Children
- 0ms
- Total runtime
- 0.9ms
SELECT "users".* FROM "users" WHERE "users"."email" = ? LIMIT ?
|
|
rack
/app/vendor/bundle/ruby/4.0.0/gems/warden-1.2.9/lib/warden/manager.rb:30
|
<1%
|
/app/vendor/bundle/ruby/4.0.0/gems/warden-1.2.9/lib/warden/manager.rb:30
- Average Self
-
0.72ms
- Average calls
- 1x
- Total Self
- 0.72ms
- Total Children
- 109ms
- Total runtime
- 110ms
Warden::Manager
|
|
gc
ruby/gc.c
|
<1%
|
ruby/gc.c
- Average Self
-
2.3ms
- Average calls
- 0.31x
- Total Self
- 0.72ms
- Total Children
- 0ms
- Total runtime
- 0.72ms
GC.start
|
|
sql
app/controllers/quiz/answers_controller.rb:54
|
<1%
|
app/controllers/quiz/answers_controller.rb:54
- Average Self
-
0.64ms
- Average calls
- 1x
- Total Self
- 0.64ms
- Total Children
- 0ms
- Total runtime
- 0.64ms
SELECT COUNT(*) FROM "quiz_answers" WHERE "quiz_answers"."user_id" = ?
|
|
sql
app/controllers/quiz/answers_controller.rb:84
|
<1%
|
app/controllers/quiz/answers_controller.rb:84
- Average Self
-
0.41ms
- Average calls
- 1x
- Total Self
- 0.41ms
- Total Children
- 0ms
- Total runtime
- 0.41ms
SELECT "quiz_propositions".* FROM "quiz_propositions" WHERE "quiz_propositions"."question_id" = ?
|
|
rack
/app/vendor/bundle/ruby/4.0.0/gems/railties-8.1.2/lib/rails/rack/logger.rb:20
|
<1%
|
/app/vendor/bundle/ruby/4.0.0/gems/railties-8.1.2/lib/rails/rack/logger.rb:20
- Average Self
-
0.26ms
- Average calls
- 1x
- Total Self
- 0.26ms
- Total Children
- 111ms
- Total runtime
- 111ms
Rails::Rack::Logger
|
|
rack
/app/vendor/bundle/ruby/4.0.0/gems/rack-session-2.1.1/lib/rack/session/abstract/id.rb:267
|
<1%
|
/app/vendor/bundle/ruby/4.0.0/gems/rack-session-2.1.1/lib/rack/session/abstract/id.rb:267
- Average Self
-
0.23ms
- Average calls
- 1x
- Total Self
- 0.23ms
- Total Children
- 110ms
- Total runtime
- 111ms
ActionDispatch::Session::CookieStore
|
|
view
app/views/quiz/answers/_answer.html.erb
|
<1%
|
app/views/quiz/answers/_answer.html.erb
- Average Self
-
0.21ms
- Average calls
- 1x
- Total Self
- 0.21ms
- Total Children
- 0ms
- Total runtime
- 0.21ms
|
|
rack
/app/vendor/bundle/ruby/4.0.0/gems/actionpack-8.1.2/lib/action_dispatch/middleware/executor.rb:13
|
<1%
|
/app/vendor/bundle/ruby/4.0.0/gems/actionpack-8.1.2/lib/action_dispatch/middleware/executor.rb:13
- Average Self
-
0.15ms
- Average calls
- 1x
- Total Self
- 0.15ms
- Total Children
- 111ms
- Total runtime
- 112ms
ActionDispatch::Executor
|
|
code
/app/vendor/bundle/ruby/4.0.0/gems/railties-8.1.2/lib/rails/engine.rb:532
|
<1%
|
/app/vendor/bundle/ruby/4.0.0/gems/railties-8.1.2/lib/rails/engine.rb:532
- Average Self
-
0.13ms
- Average calls
- 1x
- Total Self
- 0.13ms
- Total Children
- 112ms
- Total runtime
- 112ms
Rails::Engine#call
|
|
rack
/app/vendor/bundle/ruby/4.0.0/gems/rack-3.2.4/lib/rack/etag.rb:28
|
<1%
|
/app/vendor/bundle/ruby/4.0.0/gems/rack-3.2.4/lib/rack/etag.rb:28
- Average Self
-
0.13ms
- Average calls
- 1x
- Total Self
- 0.13ms
- Total Children
- 110ms
- Total runtime
- 110ms
Rack::ETag
|
|
rack
/app/vendor/bundle/ruby/4.0.0/gems/rack-3.2.4/lib/rack/method_override.rb:19
|
<1%
|
/app/vendor/bundle/ruby/4.0.0/gems/rack-3.2.4/lib/rack/method_override.rb:19
- Average Self
-
0.13ms
- Average calls
- 1x
- Total Self
- 0.13ms
- Total Children
- 111ms
- Total runtime
- 111ms
Rack::MethodOverride
|
|
rack
/app/vendor/bundle/ruby/4.0.0/gems/actionpack-8.1.2/lib/action_dispatch/middleware/cookies.rb:706
|
<1%
|
/app/vendor/bundle/ruby/4.0.0/gems/actionpack-8.1.2/lib/action_dispatch/middleware/cookies.rb:706
- Average Self
-
0.1ms
- Average calls
- 1x
- Total Self
- 0.1ms
- Total Children
- 111ms
- Total runtime
- 111ms
ActionDispatch::Cookies
|
|
rack
/app/vendor/bundle/ruby/4.0.0/gems/actionpack-8.1.2/lib/action_dispatch/middleware/request_id.rb:31
|
<1%
|
/app/vendor/bundle/ruby/4.0.0/gems/actionpack-8.1.2/lib/action_dispatch/middleware/request_id.rb:31
- Average Self
-
0.1ms
- Average calls
- 1x
- Total Self
- 0.1ms
- Total Children
- 111ms
- Total runtime
- 111ms
ActionDispatch::RequestId
|
|
rack
/app/vendor/bundle/ruby/4.0.0/gems/rack-3.2.4/lib/rack/tempfile_reaper.rb:16
|
<1%
|
/app/vendor/bundle/ruby/4.0.0/gems/rack-3.2.4/lib/rack/tempfile_reaper.rb:16
- Average Self
-
0.08ms
- Average calls
- 1x
- Total Self
- 0.08ms
- Total Children
- 110ms
- Total runtime
- 110ms
Rack::TempfileReaper
|
|
rack
/app/vendor/bundle/ruby/4.0.0/gems/rack-3.2.4/lib/rack/head.rb:14
|
<1%
|
/app/vendor/bundle/ruby/4.0.0/gems/rack-3.2.4/lib/rack/head.rb:14
- Average Self
-
0.08ms
- Average calls
- 1x
- Total Self
- 0.08ms
- Total Children
- 110ms
- Total runtime
- 110ms
Rack::Head
|
|
rack
ActionDispatch::Flash
|
<1%
|
ActionDispatch::Flash
- Average Self
-
0.08ms
- Average calls
- 1x
- Total Self
- 0.08ms
- Total Children
- 110ms
- Total runtime
- 110ms
|
|
rack
/app/vendor/bundle/ruby/4.0.0/gems/rack-rewrite-1.5.1/lib/rack/rewrite.rb:18
|
<1%
|
/app/vendor/bundle/ruby/4.0.0/gems/rack-rewrite-1.5.1/lib/rack/rewrite.rb:18
- Average Self
-
0.05ms
- Average calls
- 1x
- Total Self
- 0.05ms
- Total Children
- 111ms
- Total runtime
- 111ms
Rack::Rewrite
|
|
sql
app/models/concerns/sluggable.rb:34
|
<1%
|
app/models/concerns/sluggable.rb:34
- Average Self
-
0.25ms
- Average calls
- 0.21x
- Total Self
- 0.05ms
- Total Children
- 0ms
- Total runtime
- 0.05ms
SELECT "categories".* FROM "categories" WHERE "categories"."slug" = ? LIMIT ?
|
|
rack
/app/vendor/bundle/ruby/4.0.0/gems/actionpack-8.1.2/lib/action_dispatch/middleware/remote_ip.rb:95
|
<1%
|
/app/vendor/bundle/ruby/4.0.0/gems/actionpack-8.1.2/lib/action_dispatch/middleware/remote_ip.rb:95
- Average Self
-
0.05ms
- Average calls
- 1x
- Total Self
- 0.05ms
- Total Children
- 111ms
- Total runtime
- 111ms
ActionDispatch::RemoteIp
|
|
rack
/app/vendor/bundle/ruby/4.0.0/gems/rack-3.2.4/lib/rack/conditional_get.rb:28
|
<1%
|
/app/vendor/bundle/ruby/4.0.0/gems/rack-3.2.4/lib/rack/conditional_get.rb:28
- Average Self
-
0.05ms
- Average calls
- 1x
- Total Self
- 0.05ms
- Total Children
- 110ms
- Total runtime
- 110ms
Rack::ConditionalGet
|
|
rack
/app/vendor/bundle/ruby/4.0.0/gems/actionpack-8.1.2/lib/action_dispatch/middleware/static.rb:26
|
<1%
|
/app/vendor/bundle/ruby/4.0.0/gems/actionpack-8.1.2/lib/action_dispatch/middleware/static.rb:26
- Average Self
-
0.05ms
- Average calls
- 1x
- Total Self
- 0.05ms
- Total Children
- 112ms
- Total runtime
- 112ms
ActionDispatch::Static
|
|
rack
/app/vendor/bundle/ruby/4.0.0/gems/actionpack-8.1.2/lib/action_dispatch/middleware/show_exceptions.rb:31
|
<1%
|
/app/vendor/bundle/ruby/4.0.0/gems/actionpack-8.1.2/lib/action_dispatch/middleware/show_exceptions.rb:31
- Average Self
-
0.05ms
- Average calls
- 1x
- Total Self
- 0.05ms
- Total Children
- 111ms
- Total runtime
- 111ms
ActionDispatch::ShowExceptions
|
|
rack
/app/vendor/bundle/ruby/4.0.0/gems/actionpack-8.1.2/lib/action_dispatch/middleware/debug_exceptions.rb:30
|
<1%
|
/app/vendor/bundle/ruby/4.0.0/gems/actionpack-8.1.2/lib/action_dispatch/middleware/debug_exceptions.rb:30
- Average Self
-
0.05ms
- Average calls
- 1x
- Total Self
- 0.05ms
- Total Children
- 111ms
- Total runtime
- 111ms
ActionDispatch::DebugExceptions
|
|
rack
/app/vendor/bundle/ruby/4.0.0/gems/actionpack-8.1.2/lib/action_dispatch/middleware/callbacks.rb:28
|
<1%
|
/app/vendor/bundle/ruby/4.0.0/gems/actionpack-8.1.2/lib/action_dispatch/middleware/callbacks.rb:28
- Average Self
-
0.05ms
- Average calls
- 1x
- Total Self
- 0.05ms
- Total Children
- 111ms
- Total runtime
- 111ms
ActionDispatch::Callbacks
|
|
rack
/app/vendor/bundle/ruby/4.0.0/gems/actionpack-8.1.2/lib/action_dispatch/http/content_security_policy.rb:37
|
<1%
|
/app/vendor/bundle/ruby/4.0.0/gems/actionpack-8.1.2/lib/action_dispatch/http/content_security_policy.rb:37
- Average Self
-
0.05ms
- Average calls
- 1x
- Total Self
- 0.05ms
- Total Children
- 110ms
- Total runtime
- 110ms
ActionDispatch::ContentSecurityPolicy::Middleware
|
|
rack
/app/vendor/bundle/ruby/4.0.0/gems/railties-8.1.2/lib/rails/rack/silence_request.rb:27
|
<1%
|
/app/vendor/bundle/ruby/4.0.0/gems/railties-8.1.2/lib/rails/rack/silence_request.rb:27
- Average Self
-
0.03ms
- Average calls
- 1x
- Total Self
- 0.03ms
- Total Children
- 111ms
- Total runtime
- 111ms
Rails::Rack::SilenceRequest
|
|
rack
/app/vendor/bundle/ruby/4.0.0/gems/rack-3.2.4/lib/rack/runtime.rb:22
|
<1%
|
/app/vendor/bundle/ruby/4.0.0/gems/rack-3.2.4/lib/rack/runtime.rb:22
- Average Self
-
0.03ms
- Average calls
- 1x
- Total Self
- 0.03ms
- Total Children
- 111ms
- Total runtime
- 111ms
Rack::Runtime
|
|
rack
/app/vendor/bundle/ruby/4.0.0/gems/request_store-1.7.0/lib/request_store/middleware.rb:16
|
<1%
|
/app/vendor/bundle/ruby/4.0.0/gems/request_store-1.7.0/lib/request_store/middleware.rb:16
- Average Self
-
0ms
- Average calls
- 1x
- Total Self
- 0ms
- Total Children
- 111ms
- Total runtime
- 111ms
RequestStore::Middleware
|
|
rack
/app/vendor/bundle/ruby/4.0.0/gems/rack-3.2.4/lib/rack/sendfile.rb:130
|
<1%
|
/app/vendor/bundle/ruby/4.0.0/gems/rack-3.2.4/lib/rack/sendfile.rb:130
- Average Self
-
0ms
- Average calls
- 1x
- Total Self
- 0ms
- Total Children
- 112ms
- Total runtime
- 112ms
Rack::Sendfile
|