@@ -268,59 +268,53 @@ void alter_cloud_tablet(CloudStorageEngine& engine, const TAgentTaskRequest& age
268
268
// Do not need to adjust delete success or not
269
269
// Because if delete failed create rollup will failed
270
270
TTabletId new_tablet_id = 0 ;
271
- if (status.ok ()) {
272
- new_tablet_id = agent_task_req.alter_tablet_req_v2 .new_tablet_id ;
273
- auto mem_tracker = MemTrackerLimiter::create_shared (
274
- MemTrackerLimiter::Type::SCHEMA_CHANGE,
275
- fmt::format (" EngineAlterTabletTask#baseTabletId={}:newTabletId={}" ,
276
- std::to_string (agent_task_req.alter_tablet_req_v2 .base_tablet_id ),
277
- std::to_string (agent_task_req.alter_tablet_req_v2 .new_tablet_id ),
278
- engine.memory_limitation_bytes_per_thread_for_schema_change ()));
279
- SCOPED_ATTACH_TASK (mem_tracker);
280
- DorisMetrics::instance ()->create_rollup_requests_total ->increment (1 );
281
- Status res = Status::OK ();
282
- try {
283
- LOG_INFO (" start {}" , process_name)
284
- .tag (" signature" , agent_task_req.signature )
285
- .tag (" base_tablet_id" , agent_task_req.alter_tablet_req_v2 .base_tablet_id )
286
- .tag (" new_tablet_id" , new_tablet_id)
287
- .tag (" mem_limit" ,
288
- engine.memory_limitation_bytes_per_thread_for_schema_change ());
289
- DCHECK (agent_task_req.alter_tablet_req_v2 .__isset .job_id );
290
- CloudSchemaChangeJob job (engine,
291
- std::to_string (agent_task_req.alter_tablet_req_v2 .job_id ),
292
- agent_task_req.alter_tablet_req_v2 .expiration );
293
- status = job.process_alter_tablet (agent_task_req.alter_tablet_req_v2 );
294
- } catch (const Exception& e) {
295
- status = e.to_status ();
296
- }
297
- if (!status.ok ()) {
298
- DorisMetrics::instance ()->create_rollup_requests_failed ->increment (1 );
299
- }
300
- }
271
+ new_tablet_id = agent_task_req.alter_tablet_req_v2 .new_tablet_id ;
272
+ auto mem_tracker = MemTrackerLimiter::create_shared (
273
+ MemTrackerLimiter::Type::SCHEMA_CHANGE,
274
+ fmt::format (" EngineAlterTabletTask#baseTabletId={}:newTabletId={}" ,
275
+ std::to_string (agent_task_req.alter_tablet_req_v2 .base_tablet_id ),
276
+ std::to_string (agent_task_req.alter_tablet_req_v2 .new_tablet_id ),
277
+ engine.memory_limitation_bytes_per_thread_for_schema_change ()));
278
+ SCOPED_ATTACH_TASK (mem_tracker);
279
+ DorisMetrics::instance ()->create_rollup_requests_total ->increment (1 );
280
+
281
+ LOG_INFO (" start {}" , process_name)
282
+ .tag (" signature" , agent_task_req.signature )
283
+ .tag (" base_tablet_id" , agent_task_req.alter_tablet_req_v2 .base_tablet_id )
284
+ .tag (" new_tablet_id" , new_tablet_id)
285
+ .tag (" mem_limit" , engine.memory_limitation_bytes_per_thread_for_schema_change ());
286
+ DCHECK (agent_task_req.alter_tablet_req_v2 .__isset .job_id );
287
+ CloudSchemaChangeJob job (engine, std::to_string (agent_task_req.alter_tablet_req_v2 .job_id ),
288
+ agent_task_req.alter_tablet_req_v2 .expiration );
289
+ status = [&]() {
290
+ HANDLE_EXCEPTION_IF_CATCH_EXCEPTION (
291
+ job.process_alter_tablet (agent_task_req.alter_tablet_req_v2 ),
292
+ [&](const doris::Exception& ex) {
293
+ DorisMetrics::instance ()->create_rollup_requests_failed ->increment (1 );
294
+ job.clean_up_on_failed ();
295
+ });
296
+ return Status::OK ();
297
+ }();
301
298
302
299
if (status.ok ()) {
303
300
increase_report_version ();
301
+ LOG_INFO (" successfully {}" , process_name)
302
+ .tag (" signature" , agent_task_req.signature )
303
+ .tag (" base_tablet_id" , agent_task_req.alter_tablet_req_v2 .base_tablet_id )
304
+ .tag (" new_tablet_id" , new_tablet_id);
305
+ } else {
306
+ LOG_WARNING (" failed to {}" , process_name)
307
+ .tag (" signature" , agent_task_req.signature )
308
+ .tag (" base_tablet_id" , agent_task_req.alter_tablet_req_v2 .base_tablet_id )
309
+ .tag (" new_tablet_id" , new_tablet_id)
310
+ .error (status);
304
311
}
305
312
306
313
// Return result to fe
307
314
finish_task_request->__set_backend (BackendOptions::get_local_backend ());
308
315
finish_task_request->__set_report_version (s_report_version);
309
316
finish_task_request->__set_task_type (task_type);
310
317
finish_task_request->__set_signature (signature);
311
-
312
- if (!status.ok () && !status.is <NOT_IMPLEMENTED_ERROR>()) {
313
- LOG_WARNING (" failed to {}" , process_name)
314
- .tag (" signature" , agent_task_req.signature )
315
- .tag (" base_tablet_id" , agent_task_req.alter_tablet_req_v2 .base_tablet_id )
316
- .tag (" new_tablet_id" , new_tablet_id)
317
- .error (status);
318
- } else {
319
- LOG_INFO (" successfully {}" , process_name)
320
- .tag (" signature" , agent_task_req.signature )
321
- .tag (" base_tablet_id" , agent_task_req.alter_tablet_req_v2 .base_tablet_id )
322
- .tag (" new_tablet_id" , new_tablet_id);
323
- }
324
318
finish_task_request->__set_task_status (status.to_thrift ());
325
319
}
326
320
0 commit comments