While we always aim to release DataNucleus with as few bugs as possible, it is possible that
during the release cycle some issues will come up. Our release process uses more than 1500
unit tests aimed at reproducing the majority of situations that users may come across, though
clearly we can never cover all situations with these tests. We also run the JDO3/JPA1 TCKs
before each release to provide extra checks to reduce the chance of regressions. The process
for reporting issues is defined below :-
- Check your input classes, MetaData and persistence code against the JDO/JPA spec and the
DataNucleus documentation. The majority of situations are errors in input relative to what
- Search the DataNucleus Forum for a similar
situation to see if someone else has had the same issue and maybe resolved it.
- Try the
latest Nightly Build.
Things are usually fixed soon after being reported so the issue may no longer be an issue.
- Search DataNucleus JIRA for an issue describing
your situation. If there is one then you can always check the status of the issue and post
against it in JIRA.
- Start a thread on the DataNucleus Forum.
- If there is nothing obvious incorrect in your situation and it happens in a released
version of DataNucleus then you can raise an issue in
You should then create a testcase and attach it to the JIRA issue (using "Attach File"
on the issue) - see below.
Bugs can only be raised against released versions of DataNucleus. If you
encounter a bug that only appears in SVN trunk then you should either report it against
a JIRA issue related to that item in the current work-in-progress release, or otherwise
report it to developers. This is since something can hardly be a bug if it hasn't been
Please don't take the attitude that this testcase requirement somehow doesn't apply to
you. It is there to demonstrate a problem, so others can see it. Obviously any such
problem is not present in all of our tests so yours is different, we aren't psychic
so require a testcase.
This guide can also be used for providing testcases that demonstrate the need for new
Creating a test case
A test case is needed to be able to reproduce possible issues. We require something that
we can simply take and run ourselves. For this reason we have defined a standard for
simplified testcases, for JDO and for
JPA. Please write your testcases using these