From 1aa8fe43cf9b769ec728b126a6a5c20b6f9d388f Mon Sep 17 00:00:00 2001 From: Konstantin Knizhnik Date: Thu, 31 Mar 2022 15:47:59 +0300 Subject: [PATCH] Fix race condition in image layer (#1440) * Fix race condition in image layer refer #1439 * Add explicit drop(inner) in layer load method * Add explicit drop(inner) in layer load method --- pageserver/src/layered_repository/image_layer.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pageserver/src/layered_repository/image_layer.rs b/pageserver/src/layered_repository/image_layer.rs index ab51c36cae..ed9be913b9 100644 --- a/pageserver/src/layered_repository/image_layer.rs +++ b/pageserver/src/layered_repository/image_layer.rs @@ -267,7 +267,7 @@ impl ImageLayer { // a write lock. (Or rather, release and re-lock in write mode.) drop(inner); let mut inner = self.inner.write().unwrap(); - if inner.book.is_none() { + if !inner.loaded { self.load_inner(&mut inner)?; } else { // Another thread loaded it while we were not holding the lock.