View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0000888XdebugFeature/Change requestpublic2012-09-28 21:232018-04-30 18:16
Assigned Toderick 
PrioritynormalSeverityfeatureReproducibilityhave not tried
PlatformOSOS Version
Product Version 
Target VersionFixed in Version 
Summary0000888: Extend xdebug to support reverse debugging
DescriptionReverse debugging allows you to run a program until there is a problem, then rewind to see why the problem happened. I does this by capturing state information.

Two examples of reverse debuggers are gdb, which has supported it since about 2009, and UndoDB.
Additional InformationOf course there would have to be some protocol extensions to support reverse debugging. Bonus: I don't think any of the competitive languages - Ruby, Python etc, would support this. This is a horrific technical challenge, I know.
TagsNo tags attached.
Operating System
PHP Version5.4.4
Attached Files

- Relationships
has duplicate 0000908resolvedderick Support for set-execution-point 
has duplicate 0001052resolvedderick Allow for stepping backwards 

-  Notes
derick (administrator)
2012-10-01 14:04

This might be possible, but it is going to take an enormous amount of effort. Don't expect this to happen any time soon :-)
jeffv (reporter)
2012-10-02 01:29

Yep, not expecting it soon. Just wanted to put the thought into your mind.

I expect the gdb team would talk to you. And UndoDB is in Cambridge, UK, so not too far from you I think. If you are interested, I can introduce you. It's proprietary, but I expect they would chat.

I don't think you need to maintain full state at every statement. It's enough to keep it at key points, and then to roll forward from that point to the point at which you are debugging. Just saying. If you were starting to mull the idea.
jeffv (reporter)
2016-10-13 22:57 [^] reverse debugging for PHP.
reket (reporter)
2016-10-17 19:58

What about native support?
derick (administrator)
2016-12-11 23:30

I started working on this somewhere last year, but then PHP 7 happened and I had to spend a lot of time working on that. I would still like to do this, but I can't particularly say for which version.
slifin (reporter)
2017-07-29 16:55

I know this would save a lot of work hours in our company alone

Is there anything I can do as a user to help make this happen?
cpriest (reporter)
2018-04-30 18:16

Not sure if this is still in the cards, but I still use PhpED and their debugger for this functionality. Would sure be nice to have it in PhpStorm.

- Issue History
Date Modified Username Field Change
2012-09-28 21:23 jeffv New Issue
2012-10-01 14:04 derick Note Added: 0002350
2012-10-02 01:29 jeffv Note Added: 0002355
2014-02-27 19:42 derick Relationship added related to 0000908
2016-10-13 22:57 jeffv Note Added: 0003720
2016-10-17 19:58 reket Note Added: 0003725
2016-12-11 13:00 derick Relationship replaced has duplicate 0000908
2016-12-11 13:06 derick Relationship added has duplicate 0001052
2016-12-11 23:30 derick Note Added: 0004005
2016-12-11 23:30 derick Assigned To => derick
2016-12-11 23:30 derick Status new => acknowledged
2017-07-29 16:55 slifin Note Added: 0004385
2018-04-30 18:16 cpriest Note Added: 0004642

Copyright © 2000 - 2019 MantisBT Team
Powered by Mantis Bugtracker