@@ -114,7 +114,7 @@ def test_bucket_reshard(conn, name, **fault):
114114 # try reshard with fault injection
115115 _ , ret = run_bucket_reshard_cmd (name , num_shards_expected , check_retcode = False , ** fault )
116116
117- if fault .get ('error_code' ) == errno .ECANCELED :
117+ if fault .get ('error_code' ) == errno .ECANCELED or fault . get ( 'error_code' ) == errno . EOPNOTSUPP :
118118 assert (ret == 0 ) # expect ECANCELED to retry and succeed
119119 else :
120120 assert (ret != 0 and ret != errno .EBUSY )
@@ -214,13 +214,27 @@ def main():
214214 log .error ("Resharding failed on bucket {}. Expected number of shards are not created\n " .format (BUCKET_NAME ))
215215
216216 # TESTCASE 'manual bucket resharding','inject error','fail','check bucket accessibility', 'retry reshard'
217+ log .debug ('TEST: reshard bucket with EIO injected at init_index\n ' )
218+ test_bucket_reshard (connection , 'error-at-init-index' , error_at = 'init_index' )
219+ log .debug ('TEST: reshard bucket with EOPNOTSUPP injected at init_index\n ' )
220+ test_bucket_reshard (connection , 'error-at-init-index' , error_at = 'init_index' , error_code = errno .EOPNOTSUPP )
221+ log .debug ('TEST: reshard bucket with abort at init_index\n ' )
222+ test_bucket_reshard (connection , 'abort-at-init-indext' , abort_at = 'init_index' )
223+
217224 log .debug ('TEST: reshard bucket with EIO injected at set_target_layout\n ' )
218225 test_bucket_reshard (connection , 'error-at-set-target-layout' , error_at = 'set_target_layout' )
219226 log .debug ('TEST: reshard bucket with ECANCELED injected at set_target_layout\n ' )
220227 test_bucket_reshard (connection , 'error-at-set-target-layout' , error_at = 'set_target_layout' , error_code = errno .ECANCELED )
221228 log .debug ('TEST: reshard bucket with abort at set_target_layout\n ' )
222229 test_bucket_reshard (connection , 'abort-at-set-target-layout' , abort_at = 'set_target_layout' )
223230
231+ log .debug ('TEST: reshard bucket with EIO injected at trim_reshard_log_entries\n ' )
232+ test_bucket_reshard (connection , 'error-at-trim-reshard-log-entries' , error_at = 'trim_reshard_log_entries' )
233+ log .debug ('TEST: reshard bucket with EOPNOTSUPP injected at trim_reshard_log_entries\n ' )
234+ test_bucket_reshard (connection , 'error-at-trim-reshard-log-entries' , error_at = 'trim_reshard_log_entries' , error_code = errno .EOPNOTSUPP )
235+ log .debug ('TEST: reshard bucket with abort at trim_reshard_log_entries\n ' )
236+ test_bucket_reshard (connection , 'abort-at-trim-reshard-log-entries' , abort_at = 'trim_reshard_log_entries' )
237+
224238 log .debug ('TEST: reshard bucket with EIO injected at block_writes\n ' )
225239 test_bucket_reshard (connection , 'error-at-block-writes' , error_at = 'block_writes' )
226240 log .debug ('TEST: reshard bucket with abort at block_writes\n ' )
0 commit comments