From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on dcvr.yhbt.net X-Spam-Level: X-Spam-Status: No, score=-4.1 required=3.0 tests=BAYES_00,MAILING_LIST_MULTI, RCVD_IN_DNSWL_MED,SPF_HELO_NONE,SPF_PASS,UNPARSEABLE_RELAY shortcircuit=no autolearn=ham autolearn_force=no version=3.4.2 Received: from neon.ruby-lang.org (neon.ruby-lang.org [221.186.184.75]) by dcvr.yhbt.net (Postfix) with ESMTP id 274501F4B4 for ; Mon, 25 Jan 2021 00:42:19 +0000 (UTC) Received: from neon.ruby-lang.org (localhost [IPv6:::1]) by neon.ruby-lang.org (Postfix) with ESMTP id 31EDD120926; Mon, 25 Jan 2021 09:41:26 +0900 (JST) Received: from xtrwkhkc.outbound-mail.sendgrid.net (xtrwkhkc.outbound-mail.sendgrid.net [167.89.16.28]) by neon.ruby-lang.org (Postfix) with ESMTPS id 720131208FE for ; Mon, 25 Jan 2021 09:41:24 +0900 (JST) Received: by filterdrecv-p3las1-5d6fd766bd-czdkd with SMTP id filterdrecv-p3las1-5d6fd766bd-czdkd-21-600E13E1-1F 2021-01-25 00:42:09.440315271 +0000 UTC m=+437978.954412706 Received: from herokuapp.com (unknown) by geopod-ismtpd-2-7 (SG) with ESMTP id mIQis8C_RYiP-sJZoChAfA for ; Mon, 25 Jan 2021 00:42:09.266 +0000 (UTC) Date: Mon, 25 Jan 2021 00:42:09 +0000 (UTC) From: shyouhei@ruby-lang.org Message-ID: References: Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Redmine-MailingListIntegration-Message-Ids: 78138 X-Redmine-Project: ruby-master X-Redmine-Issue-Tracker: Bug X-Redmine-Issue-Id: 17494 X-Redmine-Issue-Author: sue445 X-Redmine-Sender: shyouhei X-Mailer: Redmine X-Redmine-Host: bugs.ruby-lang.org X-Redmine-Site: Ruby Issue Tracking System X-Auto-Response-Suppress: All Auto-Submitted: auto-generated X-SG-EID: =?us-ascii?Q?jcfQDMoo=2FMGCmP3uu1SeyLQUxUPXq5PjHpHz3xSFn16ch6A74mM48oNP7ktnGg?= =?us-ascii?Q?JBHKEOBsbn3LqDBVGskRdBjYbSQvmOloiw1HGmT?= =?us-ascii?Q?cQKtTtviwUB2I5n0nZxu=2Fv+vmyWh=2FQYVzo2YHxa?= =?us-ascii?Q?eQ1skR=2F9l+RcZ5l1VYeRWn7vgCLYIZ+GgbrrOPm?= =?us-ascii?Q?LTpefDScXs4z6ZlHokyWEyCZVSVqNg36DZAAnCB?= =?us-ascii?Q?M+COXTc7rWn+eLlTg=3D?= To: ruby-dev@ruby-lang.org X-Entity-ID: b/2+PoftWZ6GuOu3b0IycA== X-ML-Name: ruby-dev X-Mail-Count: 50996 Subject: [ruby-dev:50996] [Ruby master Bug#17494] ruby is hanged when using activesupport + rspec + rspec-parameterized X-BeenThere: ruby-dev@ruby-lang.org X-Mailman-Version: 2.1.15 Precedence: list Reply-To: "Ruby developers \(Japanese\)" List-Id: "Ruby developers \(Japanese\)" List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: ruby-dev-bounces@ruby-lang.org Sender: "ruby-dev" Issue #17494 has been updated by shyouhei (Shyouhei Urabe). @alpaca-pc Thannk you, I can reproduce that also. ``` zsh % LC_ALL=C gdb --args ./miniruby ~/tmp.rb GNU gdb (Ubuntu 8.2-0ubuntu1~18.04) 8.2 Copyright (C) 2018 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Type "show copying" and "show warranty" for details. This GDB was configured as "x86_64-linux-gnu". Type "show configuration" for configuration details. For bug reporting instructions, please see: . Find the GDB manual and other documentation resources online at: . For help, type "help". Type "apropos word" to search for commands related to "word"... Reading symbols from ./miniruby...done. (gdb) run Starting program: /miniruby /tmp.rb [Thread debugging using libthread_db enabled] Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1". # <<<<<<< Yes, I can reproduce ^C Program received signal SIGINT, Interrupt. search_method_protect (defined_class_ptr=0x0, id=30865, klass=93824998598240) at vm_method.c:986 warning: Source file is more recent than executable. 986 if (defined_class_ptr) *defined_class_ptr = klass; (gdb) bt #0 search_method_protect (defined_class_ptr=0x0, id=30865, klass=93824998598240) at vm_method.c:986 #1 resolve_refined_method (refinements=8, me=, defined_class_ptr=0x0) at vm_method.c:1256 #2 0x00005555555ad1fe in method_entry_i (key=30865, value=93824998597680, data=0x7fffffffc3d0) at class.c:1365 #3 0x00005555557b6f90 in rb_id_table_foreach (tbl=0x555555c97120, func=func@entry=0x5555555ad1b0 , data=data@entry=0x7fffffffc3d0) at symbol.c:493 #4 0x00005555555adbf7 in add_instance_method_list (me_arg=0x7fffffffc3d0, mod=93824999286960) at class.c:1386 #5 class_instance_method_list (argc=, argv=, mod=93824999286960, obj=, func=0x5555555ad2e0 ) at class.c:1422 #6 0x00005555558025c0 in vm_call_cfunc_with_frame (ec=0x555555b51790, reg_cfp=0x7ffff7fcafa0, calling=) at vm_insnhelper.c:2898 #7 0x0000555555810806 in vm_sendish (method_explorer=, block_handler=, cd=, reg_cfp=, ec=) at vm_callinfo.h:336 #8 vm_exec_core (ec=0x3, initial=93824998597000) at insns.def:789 #9 0x0000555555805ddf in rb_vm_exec (ec=0x555555b51790, mjit_enable_p=true) at vm.c:2163 #10 0x0000555555622006 in rb_ec_exec_node (ec=ec@entry=0x555555b51790, n=n@entry=0x555555b66b10) at eval.c:317 #11 0x00005555556269f9 in ruby_run_node (n=0x555555b66b10) at eval.c:375 #12 0x000055555558125f in main (argc=, argv=) at main.c:50 (gdb) ``` ---------------------------------------- Bug #17494: ruby is hanged when using activesupport + rspec + rspec-parameterized https://bugs.ruby-lang.org/issues/17494#change-90080 * Author: sue445 (Go Sueyoshi) * Status: Open * Priority: Normal * ruby -v: ruby 3.0.0p0 * Backport: 2.5: UNKNOWN, 2.6: UNKNOWN, 2.7: UNKNOWN ---------------------------------------- # Example code ## Gemfile ```ruby # frozen_string_literal: true source "https://rubygems.org" git_source(:github) {|repo_name| "https://github.com/#{repo_name}" } gem "activesupport", "6.1.0" gem "rspec", "3.10.0" gem "rspec-parameterized", "0.4.2" ``` ## spec file ``` ruby require "active_support/all" require "rspec-parameterized" describe "CLI" do subject do # Expected error, but actual hunged here cli.foo # <- hunged here end it { expect { subject }.to raise_error } end xdescribe "GitlabMrRelease::Project" do describe "#api_version" do using RSpec::Parameterized::TableSyntax where(:api_endpoint, :expected) do "http://example.com/api/v4/" | 4 end with_them do # it { should eq expected } end end end ``` all codes are here. https://github.com/sue445/ruby_3_0_0_bug_report_20201231 # Expected spec is successful (This is the behavior up to ruby 2.7.2) # Actual hunged at line 7 -- https://bugs.ruby-lang.org/