diff --git a/Cargo.lock b/Cargo.lock index d7db4ca5d8..21467098cc 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -8737,7 +8737,7 @@ dependencies = [ [[package]] name = "scroll-proving-sdk" version = "0.1.0" -source = "git+https://github.com/scroll-tech/scroll-proving-sdk.git?rev=05648db#05648db3a6bcc19bfe58ff493176714d6a0553db" +source = "git+https://github.com/scroll-tech/scroll-proving-sdk.git?rev=22ad34e#22ad34ebdeb3d9a0ccb2993bb46d8d2522c1e667" dependencies = [ "anyhow", "async-trait", diff --git a/crates/prover-bin/Cargo.toml b/crates/prover-bin/Cargo.toml index 32c77e8142..234780aaaf 100644 --- a/crates/prover-bin/Cargo.toml +++ b/crates/prover-bin/Cargo.toml @@ -9,7 +9,7 @@ edition.workspace = true scroll-zkvm-types.workspace = true scroll-zkvm-prover.workspace = true libzkp = { path = "../libzkp"} -scroll-proving-sdk = { git = "https://github.com/scroll-tech/scroll-proving-sdk.git", rev = "05648db" } +scroll-proving-sdk = { git = "https://github.com/scroll-tech/scroll-proving-sdk.git", rev = "22ad34e" } serde.workspace = true serde_json.workspace = true once_cell.workspace =true diff --git a/crates/prover-bin/src/prover.rs b/crates/prover-bin/src/prover.rs index be7f5fb6ad..4dba5c82c4 100644 --- a/crates/prover-bin/src/prover.rs +++ b/crates/prover-bin/src/prover.rs @@ -201,12 +201,20 @@ impl ProvingService for LocalProver { error: Some(format!("proving task failed: {}", e)), ..Default::default() }, - Err(e) => QueryTaskResponse { - task_id: req.task_id, - status: TaskStatus::Failed, - error: Some(format!("proving task panicked: {}", e)), - ..Default::default() - }, + Err(e) => { + if e.is_panic() { + // simply re-throw panic for any panicking in proving prrocess, + // cause worker loop and the whole prover exit + std::panic::resume_unwind(e.into_panic()); + } + + QueryTaskResponse { + task_id: req.task_id, + status: TaskStatus::Failed, + error: Some(format!("proving task panicked: {}", e)), + ..Default::default() + } + } }; } else { return QueryTaskResponse { diff --git a/crates/prover-bin/src/zk_circuits_handler/universal.rs b/crates/prover-bin/src/zk_circuits_handler/universal.rs index 6c79be22d5..6aed8e1352 100644 --- a/crates/prover-bin/src/zk_circuits_handler/universal.rs +++ b/crates/prover-bin/src/zk_circuits_handler/universal.rs @@ -19,7 +19,7 @@ impl UniversalHandler { pub fn new(workspace_path: impl AsRef, is_openvm_v13: bool) -> Result { let path_app_exe = workspace_path.as_ref().join("app.vmexe"); let path_app_config = workspace_path.as_ref().join("openvm.toml"); - let segment_len = Some((1 << 21) - 100); + let segment_len = Some((1 << 22) - 100); let config = ProverConfig { path_app_config, path_app_exe,