Actions
Bug #15270
closed[PATCH] Fix TracePoint for code loaded using ISeq.load_from_binary
    Bug #15270:
    [PATCH] Fix TracePoint for code loaded using ISeq.load_from_binary
  
Description
Hello. This is a patch for Bug #14702, which I don't think is fully addressed.
The tests in the patch should fail on both trunk and ruby_2_5.
    Fix TracePoint for nested iseq loaded from binary [Bug #14702]
    When loading iseq from binary while a TracePoint is on, we need to
    recompile instructions to their "trace_" variant. Before this commit
    we only recompiled instructions in the top level iseq, which meant
    that TracePoint was malfunctioning for code inside module/class/method
    definitions.
    * compile.c: Move rb_iseq_init_trace to rb_ibf_load_iseq_complete.
      It is called on all iseqs during loading.
    * test_iseq.rb: Test that tracepoints fire within children iseq when
      using load_from_binary.
  Files
        
          
          Updated by alanwu (Alan Wu) about 7 years ago
          
          
        
        
      
      - File deleted (
0001-Fix-TracePoint-for-nested-iseq-loaded-from-binary.patch) 
        
          
          Updated by alanwu (Alan Wu) about 7 years ago
          
          
        
        
      
      - Description updated (diff)
 
Typos
        
          
          Updated by ko1 (Koichi Sasada) almost 7 years ago
          
          
        
        
      
      - Status changed from Open to Closed
 - Assignee set to ko1 (Koichi Sasada)
 
Thank you! You are completely right.
applied at r65567 (I forget to add ticket reference on commit log).
        
          
          Updated by rafaelfranca (Rafael França) almost 7 years ago
          
          
        
        
      
      @ko1 (Koichi Sasada) can you mark this issue to be backported to 2.5.x please?
        
          
          Updated by nagachika (Tomoyuki Chikanaga) almost 7 years ago
          
          
        
        
      
      - Backport changed from 2.3: UNKNOWN, 2.4: UNKNOWN, 2.5: UNKNOWN to 2.3: UNKNOWN, 2.4: UNKNOWN, 2.5: REQUIRED
 
        
          
          Updated by nagachika (Tomoyuki Chikanaga) almost 7 years ago
          
          
        
        
      
      - Backport changed from 2.3: UNKNOWN, 2.4: UNKNOWN, 2.5: REQUIRED to 2.3: UNKNOWN, 2.4: UNKNOWN, 2.5: DONE
 
ruby_2_5 r66225 merged revision(s) 64736,65567.
        
          
          Updated by nagachika (Tomoyuki Chikanaga) over 6 years ago
          
          
        
        
      
      - Related to Bug #15717: Backport #15270 to Ruby 2.5.x added
 
        
          
          Updated by nagachika (Tomoyuki Chikanaga) over 6 years ago
          
          
        
        
      
      - Backport changed from 2.3: UNKNOWN, 2.4: UNKNOWN, 2.5: DONE to 2.3: UNKNOWN, 2.4: UNKNOWN, 2.5: REQUIRED
 
I'll set Backport field for 2.5 as REQUIRED since https://bugs.ruby-lang.org/issues/15717 claims the issue was not fixed on ruby_2_5.
Actions