I get a number of question about contentions/"stuck in..". So
here comes some explanation to:
- Contention
- Thread Stuck in
- What you can do about it
In 99% of the cases the contentions written out in the out file
of the data nodes (ndb_X_out.log) is nothing to pay attention
to.
sendbufferpool waiting for lock, contentions: 6000 spins:
489200
sendbufferpool waiting for lock, contentions: 6200 spins:
494721
Each spin is read from the L1 cache (4 cycles on a Nehalem
(3.2GHz), so about a nanosecond).
1 spin = 1.25E-09 seconds (1.25ns)
In the above we have:
(494721-489200)/(6200-6000)= 27 spins/contention
Time spent on a contention=27 x 1.25E-09=3.375E-08 seconds
(0.03375 us)
So we don't have a problem..
Another example (here is a lock guarding a job buffer (JBA =
JobBuffer A, in …