Skip to content

Commit 4a6016b

Browse files
committed
fix: apply new review comments
1 parent 0bc8a7e commit 4a6016b

File tree

2 files changed

+13
-10
lines changed

2 files changed

+13
-10
lines changed

mithril-aggregator/src/services/prover.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ pub trait ProverService: Sync + Send {
3030
) -> StdResult<Vec<CardanoTransactionsSetProof>>;
3131

3232
/// Compute the cache
33-
async fn compute_cache(&self, _up_to: &CardanoDbBeacon) -> StdResult<()>;
33+
async fn compute_cache(&self, up_to: &CardanoDbBeacon) -> StdResult<()>;
3434
}
3535

3636
/// Transactions retriever

mithril-common/src/resource_pool.rs

Lines changed: 12 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -57,9 +57,12 @@ impl<T: Send + Sync> ResourcePool<T> {
5757
.map_err(|_| ResourcePoolError::PoisonedLock())
5858
.with_context(|| "Resource pool 'acquire_resource' failed locking Mutex")?;
5959
while resources.is_empty() {
60-
let (resources_locked, timeout) =
61-
self.not_empty.wait_timeout(resources, timeout).unwrap();
62-
if timeout.timed_out() {
60+
let (resources_locked, wait_result) = self
61+
.not_empty
62+
.wait_timeout(resources, timeout)
63+
.map_err(|_| ResourcePoolError::PoisonedLock())
64+
.with_context(|| "Resource pool 'acquire_resource' failed waiting for resource")?;
65+
if wait_result.timed_out() {
6366
return Err(ResourcePoolError::AcquireTimeout())
6467
.with_context(|| "Resource pool 'acquire_resource' has timed out");
6568
}
@@ -214,7 +217,7 @@ mod tests {
214217

215218
let mut resources_items = vec![];
216219
for _ in 0..pool_size {
217-
let resource_item = pool.acquire_resource(Duration::from_millis(1000)).unwrap();
220+
let resource_item = pool.acquire_resource(Duration::from_millis(100)).unwrap();
218221
resources_items.push(resource_item);
219222
}
220223
let resources_result = resources_items
@@ -234,7 +237,7 @@ mod tests {
234237

235238
let mut resources_items = vec![];
236239
for _ in 0..pool_size {
237-
let resource_item = pool.acquire_resource(Duration::from_millis(1000)).unwrap();
240+
let resource_item = pool.acquire_resource(Duration::from_millis(100)).unwrap();
238241
resources_items.push(resource_item);
239242
}
240243

@@ -260,7 +263,7 @@ mod tests {
260263
let pool = ResourcePool::<String>::new(pool_size, resources_expected.clone());
261264
assert_eq!(pool.count().unwrap(), pool_size);
262265

263-
let mut resource_item = pool.acquire_resource(Duration::from_millis(1000)).unwrap();
266+
let mut resource_item = pool.acquire_resource(Duration::from_millis(100)).unwrap();
264267
assert_eq!(pool.count().unwrap(), pool_size - 1);
265268
pool.give_back_resource(resource_item.into_inner(), pool.discriminant().unwrap())
266269
.unwrap();
@@ -277,7 +280,7 @@ mod tests {
277280

278281
{
279282
// Resource will be returned when resource item is dropped (will occur when exiting this block scope)
280-
let _resource_item = pool.acquire_resource(Duration::from_millis(1000)).unwrap();
283+
let _resource_item = pool.acquire_resource(Duration::from_millis(100)).unwrap();
281284
assert_eq!(pool.count().unwrap(), pool_size - 1);
282285
}
283286

@@ -298,13 +301,13 @@ mod tests {
298301
}
299302

300303
#[tokio::test]
301-
async fn test_resource_pool_does_not_giev_back_stale_resource() {
304+
async fn test_resource_pool_does_not_give_back_stale_resource() {
302305
let pool_size = 10;
303306
let resources_expected: Vec<String> = (0..pool_size).map(|i| i.to_string()).collect();
304307
let pool = ResourcePool::<String>::new(pool_size, resources_expected.clone());
305308
assert_eq!(pool.count().unwrap(), pool_size);
306309

307-
let mut resource_item = pool.acquire_resource(Duration::from_millis(1000)).unwrap();
310+
let mut resource_item = pool.acquire_resource(Duration::from_millis(100)).unwrap();
308311
assert_eq!(pool.count().unwrap(), pool_size - 1);
309312
let discriminant_stale = pool.discriminant().unwrap();
310313
pool.set_discriminant(pool.discriminant().unwrap() + 1)

0 commit comments

Comments
 (0)