Changes between Version 16 and Version 17 of ReportBugs


Ignore:
Timestamp:
Oct 17, 2011, 3:39:47 PM (13 years ago)
Author:
davea
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • ReportBugs

    v16 v17  
    11[[PageOutline]]
    22
    3 = Reporting 'hard' bugs =
     3= Reporting bugs =
    44
    5 If a bug can be easily reproduced, it's easy for us to fix.
    6 'Hard' bugs are those that happen rarely or only on specific machines.
    7 The following information tells BOINC Alpha Testers (and anyone else who wants to help) how to report hard bugs,
    8 so that we can fix them even if we can't reproduce them.
    9 
    10 The BOINC client software consists of two programs: the '''core client''',
     5The BOINC client software consists of two programs: the '''client''',
    116which runs applications and does network communication, and the '''Manager''',
    127which provides a graphical user interface (GUI) to the core client.
    13 It's possible to run the core client without a GUI. Each program produces two files in your BOINC directory:
    14 one for messages, one for crash reports.
    15 These files are named as follows:
    16 
    17  * core client
    18   * message log: stdoutdae.txt
    19   * crash reports: stderrdae.txt
    20  * Manager
    21   * message log: stdoutgui.txt
    22   * crash reports: stderrgui.txt
    23 
    24 When BOINC does something wrong, one or more of these files often contain information that allows BOINC developers to easily find and fix the problem.
    25 
    26 Report hard bugs by email, either to the [mlist:boinc_alpha boinc_alpha] email list or directly to [ProjectPeople David and Rom].
    27 '''Note: when you post to boinc_alpha, attachments are stripped from your email; include text inline rather than as attachments.
    28 There's a 1 MB limit.'''
    29 Your bug report should include:
    30 
    31  * The context: what platform, what version of BOINC, anything else that might be relevant.
    32  * What sequence of actions caused the problem.
    33  * The exact nature of the problem.
    34  * All relevant crash reports or message logs (see below). '''If you don't include this information, we probably won't be able to fix the bug.'''
    358
    369In general we're only interested in bug reports for the current public release, or for the latest testing release.
    3710
    38 == Crashes ==
    39 If the Manager suddenly goes blank and says 'not connected', it's almost certainly because the core client has crashed.
    40 You can verify this by
    41  '''Windows'''::
    42  Run the Windows Task Manager (ctrl-shift-esc) and check that there's no process named 'boinc.exe'.
    43  '''Linux / Unix'''::
    44  Run {{{ps}}} and check that there's no process named 'boinc'.
     11== Manager bugs ==
    4512
    46 Each crash appends an entry to the crash-report file (stderrdae.txt for the core client).
    47 Here's [//stderrdae.txt an example of such an entry].
    48 It has a long list of DLLs in use at the time of the crash,
    49 followed by several 'stack traces' showing where the various threads were executing.
     13If the manager crashes, look for the file '''stderrgui.txt''' in the BOINC data directory.
     14It should have information about where the crash occurred.
     15Email [ProjectPeople David and Rom], describing the situation and attaching this file.
    5016
    51 Your bug report email should include the most recent entry from your crash-report file.
    52 Please edit the file to remove old entries, so that we don't get confused by them.
     17For other manager problems, write to the [mlist:boinc_alpha boinc_alpha email list.].
    5318
    54 == The BOINC Client Emulator ==
     19== Client bugs ==
    5520
    56 Problems involving task scheduling typically depend on
    57 the specific computer and the projects to which it's attached.
    58 This makes it hard for BOINC developers to reproduce such problems.
    59 
    60 The best way to report such problems is to reproduce them using the
     21The best way to report client problems is to reproduce them using the
    6122[http://boinc.berkeley.edu/dev/sim_web.php BOINC Client Emulator],
    6223then send us a link to the result.
     24This will allow us to debug the problem on our own computers,
     25which generally makes it easy to fix.
     26
     27If you can't reproduce the problem with the emulator:
     28
     29 * Report it to [ProjectPeople David]; we may need to improve the emulator.
     30 * If the client is crashing,
     31   check for a file '''stderrgui.txt''' in the BOINC data directory.
     32   Email [ProjectPeople David and Rom], describing the situation and attaching this file.
     33   Usually if the Manager shows "not connect" it means the client has crashed.
     34   You can verify this as follows.
     35   Windows: run the Task Manager (ctrl-shift-esc) and check that there's not process named 'boinc.exe'.
     36   Mac/Linux: run {{{ps}}} and check that there's not process named 'boinc'.
     37 * For non-crashing problems, email the [mlist:boinc_alpha boinc_alpha] email list or directly to [ProjectPeople David and Rom].
     38   '''Note: when you post to boinc_alpha, attachments are stripped from your email; include text inline rather than as attachments.
     39   There's a 1 MB limit.'''
     40   Your bug report should include:
     41  * The context: what platform, what version of BOINC, anything else that might be relevant.
     42  * What sequence of actions caused the problem.
     43  * The exact nature of the problem.
     44  * The relevant parts of your message logs (see below). '''If you don't include this information, we probably won't be able to fix the bug.'''.
    6345
    6446== Message logs ==
    65 If BOINC behaves incorrectly, we usually need the core client's message log to figure out what's going on.
    66 The message log describes what the core client is doing.
    67 It's identical to what's shown in the Messages tab of the Manager.
    68 By default the core client writes only a few messages.
    69 More detailed messages are enabled by turning on [ClientMessages logging flags].
    70 This is done by editing the file `cc_config.xml` in your BOINC directory.
    71 For example, the following turns on the `task_debug` and `cpu_sched` flags (1 turns a flag on; 0 or unspecified turns it off):
     47
     48If you find a bug or unexpected behavior in the BOINC client,
     49it will help us if you tell BOINC to generate more detailed messages,
     50and then include the message log in your email.
     51To do this, use a text editor like Notepad to create a file
     52'''cc_config.xml''' in your BOINC data directory.
     53It has the following form:
    7254{{{
    7355<cc_config>
    74     <log_flags>
    75         <task_debug>1</task_debug>
    76         <cpu_sched>1</cpu_sched>
    77         <sched_op_debug>0</sched_op_debug>
    78         <cpu_sched_debug>0</cpu_sched_debug>
    79     </log_flags>
     56   <log_flags>
     57       <work_fetch_debug>1</work_fetch_debug>
     58   </log_flags>
    8059</cc_config>
    8160}}}
     61The '''work_fetch_debug''' flag tells BOINC to generate detailed
     62messages about how it decides when to ask projects for jobs.
    8263
    8364Have a look at this [//stdoutdae.txt message log example]. Note that each line contains