jan-johansson-mr / OrleansTransactionTest

Example of when Orleans transaction fails consistently

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Orleans transaction test

This is a sample of where Orleans "transaction engine" consistently fails, depending on how you set timing in the execution path.

The sample initially fails with "normal" execution path, where there is no delay when running.

The transaction succeeds when changing the delay to maybe 100ms or more, but will take some additional time to execute due to delays in the transaction handling by Orleans.

The topmost exception in the sample is OrleansTransactionAbortedException. The documentation states that the transaction can be retried when OrleansTransactionAbortedException is detected; but the retry is failing, with ensured correct data [for the test], depending on timing, as the sample illustrates.

About

Example of when Orleans transaction fails consistently

License:MIT License


Languages

Language:C# 100.0%