Comment 3 for bug 1110807

Revision history for this message
Spatialist (fsluiter) wrote :

We used the dashboard to boot up a cluster of 50 VMs, all identical and small images. We recently installed quantum 2012-1, and upgraded this week to 2012-2. Both versions are affected.

As seen from the logs, the error is in File "/usr/lib/python2.7/dist-packages/quantum/db/db_base_plugin_v2.py", line 1216, in create_port.
This function is probably called simultaneously for two different ports.
In postgresql, two simultaneous selects on the table ipavailabilityranges will give the same results for a free ip adres, even when protected by a transaction. A better, but non-portable way would be "select for update".
However, to make it portable this part should run as a single thread and might probably better be protected by a semaphore or a similar construct.

If any additional info or testing is needed, don hesitate to ask. To get this working is really important to us.