jakartaee / transactions

Welcome to the Jakarta EE Transactions API Project (formerly JTA)
https://jakartaee.github.io/transactions/
Other
29 stars 30 forks source link

[TCK] JTA Transactional tests leaking #185

Open jeanouii opened 3 years ago

jeanouii commented 3 years ago

Hi,

Some methods in the Transactional subset of JTA are implemented like this https://github.com/eclipse-ee4j/jakartaee-tck/blob/master/src/com/sun/ts/tests/jta/ee/transactional/Client.java#L420

Basically a userTransaction.begin() with catch and no finally. No commit()/rollback() seems to happen and therefor the transaction leaks into the ThreadContext and well, if you are lucky next test uses a different thread, all good, if you are not, then a transaction is already associated with the thread and the begin fails.

That creates random failures to me.

As per https://jakarta.ee/committees/specification/tckprocess the 'challenge' label needs to be used for TCK challenges.

scottmarlow commented 3 years ago

@jeanouii Please do supply the required information mentioned in the TCK process document:

Challenges MUST be filed via the specification project’s issue tracker using the label challenge and include the following information:

The relevant specification version and section number(s)

The coordinates of the challenged test(s)

The exact TCK version

The implementation being tested, including name and company

A full description of why the test is invalid and what the correct behavior is believed to be

Any supporting material; debug logs, test output, test logs, run scripts, etc.
tomjenkinson commented 3 years ago

Thanks for providing your follow up @scottmalow and please @jeanouii, if you can follow up with the information that Scott requested that would be great.

On https://jakarta.ee/committees/specification/tckprocess/ I also noted:

Who can file a challenge?

Any implementor may submit a challenge to one or more tests in the TCK as it relates to their implementation. Implementor means the entity as a whole in charge of producing the final certified release. Challenges filed MUST represent the consensus of that entity.

Please can I ask, do you represent the implementation you are raising this for?

Many thanks for raising the topic, Tom

jeanouii commented 2 years ago

@tomjenkinson @scottmarlow I'd like to revive this topic and get it fixed in the TCK I don't think it's a big fix and I'm happy to help providing a PR for it

tomjenkinson commented 2 years ago

@jeanouii are you able to suggest why I don't notice this happening on Eclipse CI?