recoverd.c (4b77f2c93d052adca8cc8690b9b5e7f8798f4ddd) recoverd.c (2896ee37ccc1f9acb244c9b02becb74a43661009)
1/******************************************************************************
2*******************************************************************************
3**
4** Copyright (C) Sistina Software, Inc. 1997-2003 All rights reserved.
5** Copyright (C) 2004-2005 Red Hat, Inc. All rights reserved.
6**
7** This copyrighted material is made available to anyone wishing to use,
8** modify, copy, or redistribute it subject to the terms and conditions

--- 80 unchanged lines hidden (view full) ---

89
90 error = dlm_recover_directory(ls);
91 if (error) {
92 log_error(ls, "recover_directory failed %d", error);
93 goto fail;
94 }
95
96 /*
1/******************************************************************************
2*******************************************************************************
3**
4** Copyright (C) Sistina Software, Inc. 1997-2003 All rights reserved.
5** Copyright (C) 2004-2005 Red Hat, Inc. All rights reserved.
6**
7** This copyrighted material is made available to anyone wishing to use,
8** modify, copy, or redistribute it subject to the terms and conditions

--- 80 unchanged lines hidden (view full) ---

89
90 error = dlm_recover_directory(ls);
91 if (error) {
92 log_error(ls, "recover_directory failed %d", error);
93 goto fail;
94 }
95
96 /*
97 * Purge directory-related requests that are saved in requestqueue.
98 * All dir requests from before recovery are invalid now due to the dir
99 * rebuild and will be resent by the requesting nodes.
100 */
101
102 dlm_purge_requestqueue(ls);
103
104 /*
105 * Wait for all nodes to complete directory rebuild.
106 */
107
108 error = dlm_recover_directory_wait(ls);
109 if (error) {
110 log_error(ls, "recover_directory_wait failed %d", error);
111 goto fail;
112 }

--- 63 unchanged lines hidden (view full) ---

176 if (error) {
177 log_error(ls, "recover_locks_wait failed %d", error);
178 goto fail;
179 }
180 }
181
182 dlm_release_root_list(ls);
183
97 * Wait for all nodes to complete directory rebuild.
98 */
99
100 error = dlm_recover_directory_wait(ls);
101 if (error) {
102 log_error(ls, "recover_directory_wait failed %d", error);
103 goto fail;
104 }

--- 63 unchanged lines hidden (view full) ---

168 if (error) {
169 log_error(ls, "recover_locks_wait failed %d", error);
170 goto fail;
171 }
172 }
173
174 dlm_release_root_list(ls);
175
176 /*
177 * Purge directory-related requests that are saved in requestqueue.
178 * All dir requests from before recovery are invalid now due to the dir
179 * rebuild and will be resent by the requesting nodes.
180 */
181
182 dlm_purge_requestqueue(ls);
183
184 dlm_set_recover_status(ls, DLM_RS_DONE);
185 error = dlm_recover_done_wait(ls);
186 if (error) {
187 log_error(ls, "recover_done_wait failed %d", error);
188 goto fail;
189 }
190
191 dlm_clear_members_gone(ls);

--- 117 unchanged lines hidden ---
184 dlm_set_recover_status(ls, DLM_RS_DONE);
185 error = dlm_recover_done_wait(ls);
186 if (error) {
187 log_error(ls, "recover_done_wait failed %d", error);
188 goto fail;
189 }
190
191 dlm_clear_members_gone(ls);

--- 117 unchanged lines hidden ---