From OpenSimulator

Revision as of 06:13, 11 February 2009 by Justincc (Talk | contribs)

Jump to: navigation, search

Contents

Reporting Bugs

OpenSim is alpha software, this means that there are frequent bugs in the codebase, and many features that still need implementing. You can help us find and fix these problems by reporting bugs to us or submitting patches.

The mantis tool is one of the main channels of communication between opensim users and opensim developers for purposes of reporting bugs. It is NOT a costumer support tool, because there is no costumer support within the opensim project beyond that provided by volunteers in the opensim IRC and mailing list. It is also not a feedback tool like a forum. Please use assorted forums for that kind of contribution. If you want to use mantis you have to be willing to learn how Mantis is to be used in the OpenSim project, which is very different from other organizations' report systems.

This explains how to file a mantis that really helps the development of opensim.

If your main interest is to have your problem solved, or send informal feedback, rather than help the development of opensim, mantis is the wrong tool for you. Try signing on to #opensim IRC for that kind of help, where you can talk to other opensim users, exchange experiences and get personalized volunteer help.

If, however, you are willing to invest time to investigate the problem you are experiencing, your effort will be very much appreciated. You should look at mantis as half-way between your effort to solve the problem and the developers effort to do the same. For everything else, there's the several IRC channels, mailing lists, and assorted grid-specific forums.

When you encounter a problem, before filling a mantis, ask yourself the following questions:

  • Are you the only one experiencing this problem or are there other people experiencing it? The fastest way to find an answer to this question is to sign on to the #opensim IRC channel and exchange a few words with other opensim users there. Another way is to browse/search this mantis tool. If you're not the only one, then chances are it's a real issue. If you're the only one, chances are you're doing something wrong. The mantis is the wrong place to report it, you're better signing on to #opensim. In any case,
    • Is there something broken in your setup?
    • Look at the OpenSim.log file. Is there something informative in there that will help you understand what's going on with your setup? An exception perhaps?
  • Can you reproduce the problem systematically? Take time to understand the steps that lead to the problem. The more reproducible and understood the problem is, the higher the chances it will be fixed. If you can't reproduce it, there is very little chance that the issue will be fixed. But reproducibility to you is not enough. Read on.
  • Can you describe the problem to developers so they can reproduce it without being you?
    • The best way to do this is to try to reproduce the problem in a standalone setup. This eliminates all the extra noise that adds fuzzyness to the issue. So try it in standalone first. If you are able to reproduce it like that, the chances of the problem being fixed soon increase dramatically. If the problem is related to the Hypergrid and distributed setups, try to reproduce the problem in only one machine with 2 opensim instances. From a developer's perspective, it will be easy to take your good description, reproduce it on their own standalones, and then fix it.
    • If you can't reproduce it in standalone mode, try to reproduce it in grid mode using the simplest possible grid -- something that a developer can also set up in one machine without much work.
    • If you can't reproduce it that way, and the problem only occurs within your special grid environment, chances are there's something wrong with your special setup. Furthermore, the chances of a developer being able to fix the problem soon decrease dramatically. You may try to hire someone for a fee in order for him/her to take their time to investigate the issue on your grid.

Bug Description

Once you understand how to reproduce the problem, describe it on mantis, along with a step-by-step recipe for a developer to reproduce it. In an ideal bug report, the description should be something like this:

Setup (standalone/grid/...), as detailed as possible

1) Do A

2) Do B

3) Do C

...

==> bang! problem

In every step, be as specific as possible, leaving no room for interpretation. For example, saying

"x) crash the client by pulling up the task bar and killing the SecondLife process" is MUCH better than

"x) crash the client";

and

"y) create a new region by using a command like this on the console: create region ..." is MUCH better than

"y) create a region".

Remember, the purpose of your description is to help a developer experience the steps that lead to the problem, so that he/she can then fix it.

When not to file a bug report

Simply reporting a problem that you are experiencing is ok but it's completely ineffective for purposes of problem fixing. Mantis should not be used for that. Instead, report generic and/or non-reproducible and/or special setup problems informally in #opensim and/or #opensim-dev. Here are two examples:

- "TPs seem to be broken in OSGrid with r1234": report that in osgrid-related forums and #opensim

- "TPs seem to be broken altogether with r1234, and lots of ppl are seeing this too": let the developers know about it in #opensim-dev, maybe. They probably already know.

If all you can say about an issue is it's brief description or "This is happening to me, please help" or "Here's my informal feedback", mantis is the wrong tool for it. Don't file a bug report, it will be closed promptly.

Please review the mantis procedures/states etc.. on Bugs


Steps for reporting a bug

  • Visit opensimulator.org/mantis and search to see if your bug already exists. If it does, please add a note with any technical assistance such as steps to reproduce, symptoms, etc.
  • A good bug report has the following properties
    • Succinct and to the point, IE: "Duplicating a primitive while sitting on it, crashes the region.".
    • Contains as much debug information as possible, if OpenSim threw an error before crashing it, a copy of this error is helpful. If not, pasting the last 50 lines from your opensim.log when appropriate is also potentially helpful.
    • If you can reproduce the bug, steps to reproducing it is a must.
    • Please do not submit bugs such as "OpenSim eats a lot of CPU time" without including information about your setup, and anything you or we may have done to trigger this, unfortunately we are not psychic and cannot guess what may have happened.
  • Create an account on the opensim mantis website, and hit 'Report new issue'. Please note that some free email providers may take a while for the confirmation email to appear.

Bug States in Mantis

One of the goals is to get as many issues out of the new state as possible and get turned into good bugs that can be acted upon. Below is a lightweight state diagram that should help in deciding what state is appropriate for bugs in mantis.

BugStates.png

Some comments on states:

  • Bugs don't have to flow through all states to land somewhere. For instance, if a bug starts with a well written up description, and the person triaging the bug has seen the same issue, it can be moved straight to confirmed. As with everything, these are rough guidelines, use your judgement.
  • A bug will be marked Resolved if the person working the bug believes it is fixed even if there isn't final confirmation from the reporter. If the reporter finds it is not fixed, please just reopen the bug and add comments accordingly.
  • Please leave closing of bugs to core team. A closed bug means we think it's gone forever, or the bug report is invalid.
  • A bug in resolved or closed states can be reopened. Please read the bug report and the attached notes carefully before doing this.

UNIQ5f9c044d67b054c1-cleanpage-00000000-QINU

Personal tools
General
About This Wiki