Skip to content

Commit c36c6e1

Browse files
committed
Update error code change
1 parent 187915d commit c36c6e1

2 files changed

Lines changed: 40 additions & 37 deletions

File tree

components/spider-execution-manager/src/client/grpc/liveness.rs

Lines changed: 18 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,9 @@ use async_trait::async_trait;
66
use spider_core::types::id::{ExecutionManagerId, SessionId};
77
use spider_proto_rust::storage::{
88
self,
9+
execution_manager_liveness_error,
910
execution_manager_liveness_service_client::ExecutionManagerLivenessServiceClient,
1011
register_execution_manager_response,
11-
storage_error,
1212
update_execution_manager_heartbeat_response,
1313
};
1414
use tonic::transport::{Channel, Endpoint};
@@ -125,19 +125,23 @@ fn heartbeat_response_to_result(
125125
/// # Returns
126126
///
127127
/// The corresponding [`LivenessResponseError`].
128-
fn storage_error_to_liveness_error(error: storage::StorageError) -> LivenessResponseError {
129-
match storage_error::ErrCode::try_from(error.err_code) {
130-
Ok(storage_error::ErrCode::CacheStale) => LivenessResponseError::MarkedDead,
131-
Ok(storage_error::ErrCode::InvalidInput) => LivenessResponseError::IllegalId(error.message),
128+
fn storage_error_to_liveness_error(
129+
error: storage::ExecutionManagerLivenessError,
130+
) -> LivenessResponseError {
131+
match execution_manager_liveness_error::ErrCode::try_from(error.err_code) {
132+
Ok(execution_manager_liveness_error::ErrCode::MarkedDead) => {
133+
LivenessResponseError::MarkedDead
134+
}
135+
Ok(execution_manager_liveness_error::ErrCode::InvalidInput) => {
136+
LivenessResponseError::IllegalId(error.message)
137+
}
132138
Ok(
133-
storage_error::ErrCode::Transport
134-
| storage_error::ErrCode::Server
135-
| storage_error::ErrCode::StaleSession
136-
| storage_error::ErrCode::Unspecified,
139+
execution_manager_liveness_error::ErrCode::Server
140+
| execution_manager_liveness_error::ErrCode::Unspecified,
137141
) => LivenessResponseError::Transport(error.message),
138-
Err(error) => {
139-
LivenessResponseError::Transport(format!("unknown storage error kind: {error}"))
140-
}
142+
Err(error) => LivenessResponseError::Transport(format!(
143+
"unknown execution manager liveness error kind: {error}"
144+
)),
141145
}
142146
}
143147

@@ -194,10 +198,9 @@ mod tests {
194198

195199
#[test]
196200
fn liveness_storage_error_maps_invalid_input_to_illegal_id() {
197-
let error = storage::StorageError {
198-
err_code: storage_error::ErrCode::InvalidInput.into(),
201+
let error = storage::ExecutionManagerLivenessError {
202+
err_code: execution_manager_liveness_error::ErrCode::InvalidInput.into(),
199203
message: "bad em id".to_owned(),
200-
storage_session: 0,
201204
};
202205

203206
match storage_error_to_liveness_error(error) {

components/spider-execution-manager/src/client/grpc/storage.rs

Lines changed: 22 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -11,9 +11,9 @@ use spider_core::types::{
1111
use spider_proto_rust::storage::{
1212
self,
1313
register_task_instance_response,
14-
storage_error,
15-
storage_operation_response,
14+
task_instance_error,
1615
task_instance_management_service_client::TaskInstanceManagementServiceClient,
16+
task_instance_operation_response,
1717
};
1818
use tonic::transport::{Channel, Endpoint};
1919

@@ -136,32 +136,32 @@ impl StorageClient for GrpcStorageClient {
136136
}
137137
}
138138

139-
impl From<storage::StorageError> for StorageResponseError {
140-
fn from(error: storage::StorageError) -> Self {
141-
match storage_error::ErrCode::try_from(error.err_code) {
142-
Ok(storage_error::ErrCode::StaleSession) => Self::StaleSession {
139+
impl From<storage::TaskInstanceError> for StorageResponseError {
140+
fn from(error: storage::TaskInstanceError) -> Self {
141+
match task_instance_error::ErrCode::try_from(error.err_code) {
142+
Ok(task_instance_error::ErrCode::StaleSession) => Self::StaleSession {
143143
storage_session: error.storage_session,
144144
},
145-
Ok(storage_error::ErrCode::CacheStale) => Self::CacheStale(error.message),
146-
Ok(storage_error::ErrCode::Transport) => Self::Transport(error.message),
147-
Ok(storage_error::ErrCode::Server | storage_error::ErrCode::Unspecified) => {
148-
Self::Server(error.message)
149-
}
150-
Ok(storage_error::ErrCode::InvalidInput) => Self::InvalidInput(error.message),
151-
Err(error) => Self::Transport(format!("unknown storage error kind: {error}")),
145+
Ok(task_instance_error::ErrCode::CacheStale) => Self::CacheStale(error.message),
146+
Ok(
147+
task_instance_error::ErrCode::Server | task_instance_error::ErrCode::Unspecified,
148+
) => Self::Server(error.message),
149+
Ok(task_instance_error::ErrCode::InvalidInput) => Self::InvalidInput(error.message),
150+
Err(error) => Self::Transport(format!("unknown task instance error kind: {error}")),
152151
}
153152
}
154153
}
155154

156155
/// # Returns
157156
///
158-
/// [`storage::StorageOperationResponse`] converted into [`Result<(), StorageResponseError>`].
157+
/// [`storage::TaskInstanceOperationResponse`] converted into
158+
/// [`Result<(), StorageResponseError>`].
159159
fn storage_operation_response_to_result(
160-
response: storage::StorageOperationResponse,
160+
response: storage::TaskInstanceOperationResponse,
161161
) -> Result<(), StorageResponseError> {
162162
match response.result {
163-
Some(storage_operation_response::Result::Ok(_)) => Ok(()),
164-
Some(storage_operation_response::Result::Error(error)) => Err(error.into()),
163+
Some(task_instance_operation_response::Result::Ok(_)) => Ok(()),
164+
Some(task_instance_operation_response::Result::Error(error)) => Err(error.into()),
165165
None => Err(StorageResponseError::Transport(
166166
"storage operation response missing `result` message".to_owned(),
167167
)),
@@ -183,8 +183,8 @@ mod tests {
183183

184184
#[test]
185185
fn storage_error_maps_stale_session() {
186-
let error = storage::StorageError {
187-
err_code: storage_error::ErrCode::StaleSession.into(),
186+
let error = storage::TaskInstanceError {
187+
err_code: task_instance_error::ErrCode::StaleSession.into(),
188188
message: "stale".to_owned(),
189189
storage_session: 7,
190190
};
@@ -199,23 +199,23 @@ mod tests {
199199

200200
#[test]
201201
fn storage_error_maps_unknown_kind_to_transport_error() {
202-
let error = storage::StorageError {
202+
let error = storage::TaskInstanceError {
203203
err_code: 99,
204204
message: "unknown".to_owned(),
205205
storage_session: 0,
206206
};
207207

208208
match StorageResponseError::from(error) {
209209
StorageResponseError::Transport(message) => {
210-
assert!(message.contains("unknown storage error kind"));
210+
assert!(message.contains("unknown task instance error kind"));
211211
}
212212
error => panic!("unexpected storage response error: {error:?}"),
213213
}
214214
}
215215

216216
#[test]
217217
fn missing_storage_operation_result_is_transport_error() {
218-
match storage_operation_response_to_result(storage::StorageOperationResponse {
218+
match storage_operation_response_to_result(storage::TaskInstanceOperationResponse {
219219
result: None,
220220
}) {
221221
Err(StorageResponseError::Transport(_)) => {}

0 commit comments

Comments
 (0)