mirror of
https://github.com/0glabs/0g-storage-node.git
synced 2024-11-10 10:05:17 +00:00
do not fail on prune error (#168)
Some checks are pending
abi-consistent-check / build-and-compare (push) Waiting to run
code-coverage / unittest-cov (push) Waiting to run
rust / check (push) Waiting to run
rust / test (push) Waiting to run
rust / lints (push) Waiting to run
functional-test / test (push) Waiting to run
Some checks are pending
abi-consistent-check / build-and-compare (push) Waiting to run
code-coverage / unittest-cov (push) Waiting to run
rust / check (push) Waiting to run
rust / test (push) Waiting to run
rust / lints (push) Waiting to run
functional-test / test (push) Waiting to run
* do not fail on prune error
This commit is contained in:
parent
1c72607fbc
commit
780865b1b8
@ -15,7 +15,7 @@ use storage::log_store::log_manager::PORA_CHUNK_SIZE;
|
|||||||
use storage_async::Store;
|
use storage_async::Store;
|
||||||
use task_executor::TaskExecutor;
|
use task_executor::TaskExecutor;
|
||||||
use tokio::sync::{broadcast, mpsc};
|
use tokio::sync::{broadcast, mpsc};
|
||||||
use tracing::{debug, info};
|
use tracing::{debug, error, info};
|
||||||
use zgs_spec::SECTORS_PER_PRICING;
|
use zgs_spec::SECTORS_PER_PRICING;
|
||||||
|
|
||||||
// Start pruning when the db directory size exceeds 0.9 * limit.
|
// Start pruning when the db directory size exceeds 0.9 * limit.
|
||||||
@ -116,29 +116,35 @@ impl Pruner {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Check no reward chunks and prune.
|
// Check no reward chunks and prune.
|
||||||
let new_first_rewardable = self.reward_contract.first_rewardable_chunk().call().await?;
|
match self.reward_contract.first_rewardable_chunk().call().await {
|
||||||
if let Some(no_reward_list) = self
|
Ok(new_first_rewardable) => {
|
||||||
.maybe_forward_first_rewardable(new_first_rewardable)
|
if let Some(no_reward_list) = self
|
||||||
.await?
|
.maybe_forward_first_rewardable(new_first_rewardable)
|
||||||
{
|
.await?
|
||||||
info!(
|
{
|
||||||
?new_first_rewardable,
|
info!(
|
||||||
"first rewardable chunk moves forward, start pruning"
|
?new_first_rewardable,
|
||||||
);
|
"first rewardable chunk moves forward, start pruning"
|
||||||
self.prune_tx(
|
);
|
||||||
self.first_rewardable_chunk * SECTORS_PER_PRICING as u64,
|
self.prune_tx(
|
||||||
new_first_rewardable * SECTORS_PER_PRICING as u64,
|
self.first_rewardable_chunk * SECTORS_PER_PRICING as u64,
|
||||||
)
|
new_first_rewardable * SECTORS_PER_PRICING as u64,
|
||||||
.await?;
|
)
|
||||||
self.prune_in_batch(no_reward_list).await?;
|
.await?;
|
||||||
|
self.prune_in_batch(no_reward_list).await?;
|
||||||
|
|
||||||
self.first_rewardable_chunk = new_first_rewardable;
|
self.first_rewardable_chunk = new_first_rewardable;
|
||||||
self.put_first_rewardable_chunk_index(
|
self.put_first_rewardable_chunk_index(
|
||||||
self.first_rewardable_chunk,
|
self.first_rewardable_chunk,
|
||||||
self.first_tx_seq,
|
self.first_tx_seq,
|
||||||
)
|
)
|
||||||
.await?;
|
.await?;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
e => {
|
||||||
|
error!("handle reward contract read fails, e={:?}", e);
|
||||||
|
}
|
||||||
|
};
|
||||||
tokio::time::sleep(self.config.check_time).await;
|
tokio::time::sleep(self.config.check_time).await;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user