[dancer-users] Debugging sessions

Warren Young warren at etr-usa.com
Fri Nov 23 05:04:31 GMT 2018


On Nov 22, 2018, at 1:37 PM, Nikola Mitev <nik at mitev.eu> wrote:
> 
> it makes a lot of sense for me as the app
> does write to a database

The fact that it does is not a guarantee of corruption in parallel execution, just a risk.  If you’re using an ACID-compliant database and are doing transactions properly, then you’ve removed the risk of multiple parallel writes stomping on each other.

The thing is, you have to do that in *every* such path.  All queries, all file I/O, all network I/O… If there’s a missing lock in any of those paths, there’s a possible data race.

So, you have two choices: 1. Find and fix all the data races, or 2. Construct your app in such a way that data races are impossible.  Choking everything down to a single thread at the HTTP layer is one of the entry points to path #2.


More information about the dancer-users mailing list