rr-debugger / rr-debugger/rr

Start reverse debugging immediately after record to run long running programs only once

Open
#2,089 5 comments 5 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
C++
Stars
10.7k
Forks
662
Avg merge
2d 3h
Merged PRs (30d)
2

Description

My program takes a long time to reach a failure point which leads the process to exit.

Currently, I'm using:

rr record prog
rr replay

which does the long execution twice up to the failure point.

Is there a way to start reverse debugging from the point it exits immediately after the rr record prog so I don't have to wait twice?

Possibly related to: https://github.com/mozilla/rr/issues/1989 At the limit this could be implemented by periodically snapshotting the running program.

EDIT: or even better: start the program in a reverse-recorde enabled GDB shell like UndoDB does.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reviewing the related issue 1989 and the behavior of the rr record prog and rr replay entry points. Define completion as enabling reverse debugging after recording without repeating the long execution, while considering the proposed periodic snapshots or an integrated GDB workflow.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp, linux
Domain
devtools, operating-systems
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.