Opened 10 months ago

Closed 10 months ago

Last modified 10 months ago

#6661 closed defect (fixed)

TemporarilyDropReadWriteLock() broken

Reported by: Even Rouault Owned by: Even Rouault
Priority: normal Milestone: 2.0.4
Component: GDAL_Raster Version: 2.0.2
Severity: normal Keywords:
Cc:

Description

GDALDataset::TemporarilyDropReadWriteLock?() added in r31109 uses a nMutexTakenCount integer to count the number of times to drop the mutex. But this counter was global to all threads, whereas it should have been per-thread. Hence multi-threaded writing scenarios are somewhat broken. See https://lists.osgeo.org/pipermail/gdal-dev/2016-September/045220.html

Change History (3)

comment:1 Changed 10 months ago by Even Rouault

Resolution: fixed
Status: newclosed

In 35519:

Fix potential deadlock in multithreaded writing scenarios (fixes #6661)

comment:2 Changed 10 months ago by Even Rouault

In 35520:

Fix potential deadlock in multithreaded writing scenarios (fixes #6661)

comment:3 Changed 10 months ago by Even Rouault

In 35521:

Fix potential deadlock in multithreaded writing scenarios (fixes #6661)

Note: See TracTickets for help on using tickets.