-
Sivert Sorumgard authored
This patch does the following: 1. Add a new method to acquire protection against global read lock, and call this (unless it is already done) before storing, updating or dropping dictionary objects, e.g. for resource groups, SRS, etc. 2. Add asserts to the DD API to make sure there is protection against the global read lock when storing, updating or dropping dictionary objects. 3. Implicitly acquire protection against the backup lock and global read lock when exclusive MDL is acquired from a SE. 4. Check for a valid cost_constant_cache before releasing a cost model entry. This is needed since the cost model is accessed from a background thread at a point where the cost model cache does not exist. 5. Introduce a DD api function to commit or rollback a transaction, and release transactional MDL. Change-Id: I8fc7e1b38956f5816ba65cbdd66a996db314ac63
Sivert Sorumgard authoredThis patch does the following: 1. Add a new method to acquire protection against global read lock, and call this (unless it is already done) before storing, updating or dropping dictionary objects, e.g. for resource groups, SRS, etc. 2. Add asserts to the DD API to make sure there is protection against the global read lock when storing, updating or dropping dictionary objects. 3. Implicitly acquire protection against the backup lock and global read lock when exclusive MDL is acquired from a SE. 4. Check for a valid cost_constant_cache before releasing a cost model entry. This is needed since the cost model is accessed from a background thread at a point where the cost model cache does not exist. 5. Introduce a DD api function to commit or rollback a transaction, and release transactional MDL. Change-Id: I8fc7e1b38956f5816ba65cbdd66a996db314ac63
Loading