EnAccess / EnAccess/micropowermanager
[Feature Request]: Allow to persist failed transaction records
- Dominant language
- PHP
- Stars
- 27
- Forks
- 19
- Avg merge
- 1d 18h
- Merged PRs (30d)
- 27
Description
### Preflight Checklist
- [x] I have read the [Contributing Guidelines](https://github.com/EnAccess/micropowermanager/blob/main/CONTRIBUTING.md) for this project, if it exists.
- [x] I agree to follow the [Code of Conduct](https://github.com/EnAccess/micropowermanager/blob/main/CODE_OF_CONDUCT.md) that this project adheres to.
- [x] I have searched the [issue tracker](https://github.com/EnAccess/micropowermanager/issues) for a feature request that matches the one I want to file, without success.
### Problem Description
We are over using `DB::Transaction`. This make it hard to trace and reproduce error situations. It is totally normal business case that a transaction can be rejected.
It should be possible to persist this information in MPM. However, it's currently hard due to transaction processing being wrapped in a DB transaction
### Proposed Solution
Change the flow to allow persisting of failed transactions.
### Alternatives Considered
N/A
### Additional Information
_No response_
Contributor guide
Research direction
Start by tracing transaction processing and locating where DB::Transaction wraps the flow. Determine how rejected transactions can be recorded without being discarded by the surrounding database transaction; done means failed transaction information is persisted for later tracing and reproduction.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- php
- Domain
- backend, database
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100