mirror of
https://github.com/0glabs/0g-storage-node.git
synced 2024-11-10 10:05:17 +00:00
Compare commits
3 Commits
f1a1c39332
...
a79f7bbf12
Author | SHA1 | Date | |
---|---|---|---|
|
a79f7bbf12 | ||
|
aaba4b5da0 | ||
|
5757c98d2a |
@ -1,6 +1,6 @@
|
||||
fn main() {
|
||||
if cfg!(not(feature = "dev")) {
|
||||
println!("cargo:rerun-if-changed=../../0g-storage-contracts/artifacts/");
|
||||
println!("cargo:rerun-if-changed=../../storage-contracts-abis/");
|
||||
} else {
|
||||
println!("cargo:rerun-if-changed=../../0g-storage-contracts-dev/artifacts/");
|
||||
}
|
||||
|
@ -25,6 +25,7 @@ pub struct MinerConfig {
|
||||
pub(crate) cpu_percentage: u64,
|
||||
pub(crate) iter_batch: usize,
|
||||
pub(crate) shard_config: ShardConfig,
|
||||
pub(crate) context_query_interval: Duration,
|
||||
pub(crate) rate_limit_retries: u32,
|
||||
pub(crate) timeout_retries: u32,
|
||||
pub(crate) initial_backoff: u64,
|
||||
@ -43,6 +44,7 @@ impl MinerConfig {
|
||||
submission_gas: Option<U256>,
|
||||
cpu_percentage: u64,
|
||||
iter_batch: usize,
|
||||
context_query_seconds: u64,
|
||||
shard_config: ShardConfig,
|
||||
rate_limit_retries: u32,
|
||||
timeout_retries: u32,
|
||||
@ -58,6 +60,7 @@ impl MinerConfig {
|
||||
cpu_percentage,
|
||||
iter_batch,
|
||||
shard_config,
|
||||
context_query_interval: Duration::from_secs(context_query_seconds),
|
||||
rate_limit_retries,
|
||||
timeout_retries,
|
||||
initial_backoff,
|
||||
|
@ -99,7 +99,7 @@ impl MineRangeConfig {
|
||||
}
|
||||
Some(
|
||||
self_start_position <= recall_position + SECTORS_PER_LOAD as u64
|
||||
|| self_end_position > recall_position,
|
||||
&& self_end_position > recall_position,
|
||||
)
|
||||
}
|
||||
}
|
||||
|
@ -37,6 +37,7 @@ pub(crate) async fn check_and_request_miner_id(
|
||||
d_id, c_id
|
||||
))
|
||||
} else {
|
||||
check_miner_id(&mine_contract, d_id).await?;
|
||||
Ok(d_id)
|
||||
}
|
||||
}
|
||||
|
@ -111,7 +111,7 @@ impl<'a> Miner<'a> {
|
||||
"Find a PoRA valid answer, quality: {}, target_quality {}, scale {:.3}",
|
||||
U256::MAX / quality,
|
||||
U256::MAX / self.target_quality,
|
||||
difficulty_scale_x64.as_u128() as f64 / (u64::MAX as f64 + 1.0)
|
||||
difficulty_scale_x64.as_u128() as f64 / u64::MAX as f64
|
||||
);
|
||||
inc_counter(&HIT_COUNT);
|
||||
// Undo mix data when find a valid solition
|
||||
|
@ -35,6 +35,7 @@ pub struct MineContextWatcher {
|
||||
|
||||
mine_context_sender: broadcast::Sender<MineContextMessage>,
|
||||
last_report: MineContextMessage,
|
||||
query_interval: Duration,
|
||||
|
||||
msg_recv: broadcast::Receiver<MinerMessage>,
|
||||
}
|
||||
@ -60,6 +61,7 @@ impl MineContextWatcher {
|
||||
mine_context_sender,
|
||||
msg_recv,
|
||||
last_report: None,
|
||||
query_interval: config.context_query_interval,
|
||||
};
|
||||
executor.spawn(
|
||||
async move { Box::pin(watcher.start()).await },
|
||||
@ -95,7 +97,7 @@ impl MineContextWatcher {
|
||||
}
|
||||
|
||||
_ = async {}, if mining_enabled && mining_throttle.is_elapsed() => {
|
||||
mining_throttle.as_mut().reset(Instant::now() + Duration::from_secs(1));
|
||||
mining_throttle.as_mut().reset(Instant::now() + self.query_interval);
|
||||
if let Err(err) = self.query_recent_context().await {
|
||||
warn!(err);
|
||||
}
|
||||
|
@ -185,6 +185,7 @@ impl ZgsConfig {
|
||||
let submission_gas = self.miner_submission_gas.map(U256::from);
|
||||
let cpu_percentage = self.miner_cpu_percentage;
|
||||
let iter_batch = self.mine_iter_batch_size;
|
||||
let context_query_seconds = self.mine_context_query_seconds;
|
||||
|
||||
let shard_config = self.shard_config()?;
|
||||
|
||||
@ -197,6 +198,7 @@ impl ZgsConfig {
|
||||
submission_gas,
|
||||
cpu_percentage,
|
||||
iter_batch,
|
||||
context_query_seconds,
|
||||
shard_config,
|
||||
self.rate_limit_retries,
|
||||
self.timeout_retries,
|
||||
|
@ -81,6 +81,8 @@ build_config! {
|
||||
(mine_iter_batch_size, (usize), 100)
|
||||
(reward_contract_address, (String), "".to_string())
|
||||
(shard_position, (Option<String>), None)
|
||||
|
||||
(mine_context_query_seconds, (u64), 5)
|
||||
}
|
||||
|
||||
#[derive(Debug, Default, Deserialize)]
|
||||
|
@ -189,6 +189,18 @@ mine_contract_address = "0x6815F41019255e00D6F34aAB8397a6Af5b6D806f"
|
||||
# transaction gas fee.
|
||||
# miner_key = ""
|
||||
|
||||
# Period for querying mine context on chain (in seconds)
|
||||
#
|
||||
# Note: During each query period, nodes will issue 3 `eth_call` requests.
|
||||
# If your blockchain RPC endpoint is a public or priced node, please be
|
||||
# cautious not to set the period too short.
|
||||
#
|
||||
# mine_context_query_seconds = 5
|
||||
|
||||
# CPU Usage percentage for PoRA mining. 100 means one CPU core is fully loaded.
|
||||
#
|
||||
# miner_cpu_percentage = 100
|
||||
|
||||
#######################################################################
|
||||
### Sharding Config Options ###
|
||||
#######################################################################
|
||||
|
@ -179,9 +179,12 @@
|
||||
### Mine Config Options ###
|
||||
#######################################################################
|
||||
|
||||
# Mine contract address for incentive.
|
||||
# Mine contract address for PoRA.
|
||||
# mine_contract_address = ""
|
||||
|
||||
# Reward contract address for incentive.
|
||||
# reward_contract_address = ""
|
||||
|
||||
# Miner key is used to sign blockchain transaction for incentive.
|
||||
# The value should be a hex string of length 64 without 0x prefix.
|
||||
#
|
||||
@ -189,6 +192,18 @@
|
||||
# transaction gas fee.
|
||||
# miner_key = ""
|
||||
|
||||
# Period for querying mine context on chain (in seconds)
|
||||
#
|
||||
# Note: During each query period, nodes will issue 3 `eth_call` requests.
|
||||
# If your blockchain RPC endpoint is a public or priced node, please be
|
||||
# cautious not to set the period too short.
|
||||
#
|
||||
# mine_context_query_seconds = 5
|
||||
|
||||
# CPU Usage percentage for PoRA mining. 100 means one CPU core is fully loaded.
|
||||
#
|
||||
# miner_cpu_percentage = 100
|
||||
|
||||
#######################################################################
|
||||
### Sharding Config Options ###
|
||||
#######################################################################
|
||||
|
@ -1 +1 @@
|
||||
info
|
||||
info
|
||||
|
@ -1 +1 @@
|
||||
dbeff538b949599c203e43be6ecc05e9e997d09d
|
||||
a0b536c6acff24b5d4bf20d9db4e95c399e61196
|
||||
|
File diff suppressed because one or more lines are too long
@ -27,8 +27,8 @@
|
||||
"type": "function"
|
||||
}
|
||||
],
|
||||
"bytecode": "0x6080604052348015600f57600080fd5b5060a08061001e6000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c8063da6eb36a14602d575b600080fd5b603d6038366004603f565b505050565b005b600080600060608486031215605357600080fd5b50508135936020830135935060409092013591905056fea264697066735822122054eb84b374e7eb5c57b284f82f977fe19500436ef4128d3e147969cefdd4cbcd64736f6c63430008100033",
|
||||
"deployedBytecode": "0x6080604052348015600f57600080fd5b506004361060285760003560e01c8063da6eb36a14602d575b600080fd5b603d6038366004603f565b505050565b005b600080600060608486031215605357600080fd5b50508135936020830135935060409092013591905056fea264697066735822122054eb84b374e7eb5c57b284f82f977fe19500436ef4128d3e147969cefdd4cbcd64736f6c63430008100033",
|
||||
"bytecode": "0x6080604052348015600f57600080fd5b5060a08061001e6000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c8063da6eb36a14602d575b600080fd5b603d6038366004603f565b505050565b005b600080600060608486031215605357600080fd5b50508135936020830135935060409092013591905056fea2646970667358221220fba54ab16c6496385cdd933e87b05b9e545a857b82ffa918f0d0e4a34ae41d7164736f6c63430008100033",
|
||||
"deployedBytecode": "0x6080604052348015600f57600080fd5b506004361060285760003560e01c8063da6eb36a14602d575b600080fd5b603d6038366004603f565b505050565b005b600080600060608486031215605357600080fd5b50508135936020830135935060409092013591905056fea2646970667358221220fba54ab16c6496385cdd933e87b05b9e545a857b82ffa918f0d0e4a34ae41d7164736f6c63430008100033",
|
||||
"linkReferences": {},
|
||||
"deployedLinkReferences": {}
|
||||
}
|
||||
|
@ -70,8 +70,8 @@
|
||||
"type": "function"
|
||||
}
|
||||
],
|
||||
"bytecode": "0x608060405234801561001057600080fd5b5060f18061001f6000396000f3fe60806040526004361060265760003560e01c806359e9670014602b578063b7a3c04c14603c575b600080fd5b603a60363660046058565b5050565b005b348015604757600080fd5b50603a60533660046079565b505050565b60008060408385031215606a57600080fd5b50508035926020909101359150565b600080600060608486031215608d57600080fd5b8335925060208401356001600160a01b038116811460aa57600080fd5b92959294505050604091909101359056fea264697066735822122031a993c3def9ed899c5b5a53bab495d498047e1a8ce262b61e700511cfb9adf164736f6c63430008100033",
|
||||
"deployedBytecode": "0x60806040526004361060265760003560e01c806359e9670014602b578063b7a3c04c14603c575b600080fd5b603a60363660046058565b5050565b005b348015604757600080fd5b50603a60533660046079565b505050565b60008060408385031215606a57600080fd5b50508035926020909101359150565b600080600060608486031215608d57600080fd5b8335925060208401356001600160a01b038116811460aa57600080fd5b92959294505050604091909101359056fea264697066735822122031a993c3def9ed899c5b5a53bab495d498047e1a8ce262b61e700511cfb9adf164736f6c63430008100033",
|
||||
"bytecode": "0x608060405234801561001057600080fd5b5060f18061001f6000396000f3fe60806040526004361060265760003560e01c806359e9670014602b578063b7a3c04c14603c575b600080fd5b603a60363660046058565b5050565b005b348015604757600080fd5b50603a60533660046079565b505050565b60008060408385031215606a57600080fd5b50508035926020909101359150565b600080600060608486031215608d57600080fd5b8335925060208401356001600160a01b038116811460aa57600080fd5b92959294505050604091909101359056fea2646970667358221220ebb4f7274983bea96e7fd68a63e91f4ad67260ff76111312d8c8559b9b5b621064736f6c63430008100033",
|
||||
"deployedBytecode": "0x60806040526004361060265760003560e01c806359e9670014602b578063b7a3c04c14603c575b600080fd5b603a60363660046058565b5050565b005b348015604757600080fd5b50603a60533660046079565b505050565b60008060408385031215606a57600080fd5b50508035926020909101359150565b600080600060608486031215608d57600080fd5b8335925060208401356001600160a01b038116811460aa57600080fd5b92959294505050604091909101359056fea2646970667358221220ebb4f7274983bea96e7fd68a63e91f4ad67260ff76111312d8c8559b9b5b621064736f6c63430008100033",
|
||||
"linkReferences": {},
|
||||
"deployedLinkReferences": {}
|
||||
}
|
||||
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
Loading…
Reference in New Issue
Block a user