Experimental concept for protecting a hotly contested resource with focus on a SQL table at the moment. Main idea is to take an onslaught of updates to a row and squash them into a single representative.
Each table manager needs to be monitored for health.
If the table manager crashes, the resulting exception should not take down the whole service
The exception needs to be logged
The table manager should try to restart a fixed number of times before staying down
Additionally, if there is a dead lock exception or other type of exception when a transaction is being committed; it needs to be determined how many times this can happen before a partition is considered critical.
Should there be a global metric that handles the over all health of the table manager based on the health of the individual partitions?
Each time a partition is updated, an update statement is created.
It would be beneficial to just store all combinations that are created the first time to not have to generate them again since this is technically an expensive operation.
Benefits are, not using reflection for each commit.