Get the App
SLTechnology News&Howtos  ›  Servers  › 

What collections are included in RecoveryQueue

Shulou Source: shulou.com Published: 2022-05-31 18:13:17 09月21日 Update

This article mainly introduces which collections are included in RecoveryQueue. It is very detailed and has a certain reference value. Friends who are interested must read it!

RecoveryQueue contains three collections: file_recover_queue (saving CInode collections for recover operations), file_recover_queue_front (saving CInode collections for recover operations), and file_recovering (saving CInode collections for ongoing recover operations). A Filter class that is used to perform the actual recover operation.

RecoveryQueue::prioritize ()

| | _ _ the CInode of the recover to be performed is already in the file_recovering collection |

| | _ _ return directly |

| | _ _ the CInode of the recover to be performed is already in the file_recover_queue collection |

| | _ _ insert CInode into the file_recover_queue_front collection |

RecoveryQueue::enqueue ()

| | _ _ insert CInode to be recover into the file_recover_queue collection |

RecoveryQueue::advance ()

| | _ _ check whether the size of the file_recovering collection is drizzle mds_max_file_recover |

| | _ _ get the CInode to be recover from the file_recover_queue_front collection |

| | _ RecoveryQueue::_start () |

| | _ _ get the CInode to be recover from the file_recover_queue collection |

| | _ RecoveryQueue::_start () |

RecoveryQueue::_start ()

| | _ _ get projected inode information from CInode |

| | _ _ insert CInode into the file_recovering collection |

| | _ _ create a C_MDC_Recover class object, which executes the RecoveryQueue::_recovered () callback function in the finish () function |

| | _ _ Filter::probe () calls the probe () function of Filter to perform the actual Recovery operation and calls the C_MDC_Recover::finish () function after the execution is completed |

RecoveryQueue::_recovered ()

| | _ _ delete the recovered CInode from the file_recovering collection |

| | _ CInode::state_clear (STATE_RECOVERING) |

| | _ _ RecoveryQueue::advance () finds the CInode of the next recovery to be executed |

The above is all the contents of the article "what collections does RecoveryQueue contain". Thank you for reading! Hope to share the content to help you, more related knowledge, welcome to follow the industry information channel!

Tags: Function content actual object article three value information interest size partner Xiaoyu more being knowledge industry information information channel channel Apple Docker Huawei Linux macOS MariaDB Microsoft MySQL NVidia OPPO Reno Shulou Information Xiaomi NVidia MySQL Shulou Technology