diff options
-rw-r--r-- | bitbake/lib/bb/persist_data.py | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/bitbake/lib/bb/persist_data.py b/bitbake/lib/bb/persist_data.py index de8f87a8bf..7357ab2d44 100644 --- a/bitbake/lib/bb/persist_data.py +++ b/bitbake/lib/bb/persist_data.py | |||
@@ -179,6 +179,9 @@ class SQLTable(collections.MutableMapping): | |||
179 | elif not isinstance(value, str): | 179 | elif not isinstance(value, str): |
180 | raise TypeError('Only string values are supported') | 180 | raise TypeError('Only string values are supported') |
181 | 181 | ||
182 | # Ensure the entire transaction (including SELECT) executes under write lock | ||
183 | cursor.execute("BEGIN EXCLUSIVE") | ||
184 | |||
182 | cursor.execute("SELECT * from %s where key=?;" % self.table, [key]) | 185 | cursor.execute("SELECT * from %s where key=?;" % self.table, [key]) |
183 | row = cursor.fetchone() | 186 | row = cursor.fetchone() |
184 | if row is not None: | 187 | if row is not None: |