Re: Draft "Causeway: A message-oriented distributed debugger" -- please comment

Mike Samuel <[email protected]>
Newsgroups gmane.comp.lang.e.general
Message-ID <[email protected]>
2009/2/21 Terry Stanley <[email protected]>:
> On Fri, Feb 20, 2009 at 5:28 PM, Mike Samuel <[email protected]> wrote:
>>
>> Re causway,
>>
>> When I'm looking at a debugging framework, my first question is
>> usually, can I still use my debugger of last resort, printf (ok, first
>> resort)?
>>
>> You seem to have a _.log() construct.
>
> Yes, it's part of the Waterken ref_send library.
>
>>
>> Is there any way to find an association between a log entry related to
>> a message in the source vat, and log entries related to a message in
>> the target vat?
>
> Yes. For example, Figure 7 (in the paper) shows that the product vat logged
> a "can deliver" comment before sending the run(true) to the callback in the
> buyer vat. On receiving that message, the buyer vat logged a "happened: all
> true" comment.
>
>> I.e., if I'm investigating a message that originated in turn t1 in vat
>> a and was handled in turn t2 in vat b, is there a view that lets me
>> see log messages in t1 and t2 in sequence?
>
>
>>
>> Also, if I do the following,
>>    vat A logs L1
>>    vat A sends message M1 to vat B
>>    vat B handles message M1
>>    vat B logs L2
>>    ...
>>    vat A logs L3
>>    vat A sends message M2 to vat B
>>    vat B handles message M2
>>    vat B logs L4
>>
>> If I'm debugging a problem with the handling of M2 but have ruled out
>> handling of M! as a problem, I have two theories to consider
>>  (1) something is wrong in vat A that caused it to send a bad M2 so I
>> need to look at the messages in A between L1 and L2
>>  (2) something is wrong in vat B that caused it to mishandle M2, so I
>> need to look at the log messages in B between L3 and L4.
>>
>> Is there a view that lets me find those intervening sequences of events?
>
> Before answering, let me make sure I understand the question. Did you get L2
> and L3 swapped in your example?

Yep.

>> Also, if I have a large system, I may have lose some log entries due
>> to bad disk sectors, lost disks, or chewed tape.  If logs have holes
>> due to storage degradation, how does that affect debugging?
>
> Causeway works with partial logs -- it builds a graph from whatever log
> records it has available. Partial logs are fine. Currently, Causeway does
> not indicate in the user interface that there are holes in the log
> information. It probably should (and could). Thanks -- good question!
>
> --Terry
>
>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.