Skip to content

segv running Rails Simple Benchmark's Rails app #2082

Open
@headius

Description

@headius

I am playing with the Rails Simple Benchmark to get some performance information across Ruby impls. Running TruffleRuby 20.2 today I had the server crash with a segv.

The app was set up using the "common" gemfile from https://github.com/noahgibbs/rsb. Using TruffleRuby from GraalVM 20.2, in --jvm mode, one process with 16 threads, hitting just the "static" text rendering endpoint using the "wrk" benchmark tool with 1 thread and 10 connections.

#
# A fatal error has been detected by the Java Runtime Environment:
#
#  SIGSEGV (0xb) at pc=0x0000000115a1f08f, pid=89642, tid=32527
#
# JRE version: OpenJDK Runtime Environment GraalVM CE 20.2.0 (11.0.8+10) (build 11.0.8+10-jvmci-20.2-b03)
# Java VM: OpenJDK 64-Bit Server VM GraalVM CE 20.2.0 (11.0.8+10-jvmci-20.2-b03, mixed mode, sharing, tiered, jvmci, jvmci compiler, compressed oops, g1 gc, bsd-amd64)
# Problematic frame:
# J 18217 jvmci org.graalvm.compiler.truffle.runtime.OptimizedCallTarget.profiledPERoot([Ljava/lang/Object;)Ljava/lang/Object; jdk.internal.vm.compiler (48 bytes) @ 0x0000000115a1f08f [0x0000000115a1f020+0x000000000000006f] (ActiveSupport::Logger#add#2)

The hs_err file is attached.
hs_err_pid89642.log

The crash came shortly after leaving the server idle for 15-20 minutes and then resuming the benchmark. Performance dropped to a tenth of what it was, continued to degrade and produce read, write, and timeout errors, and then finally the server crashed.

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions