Fix auto_scrubs not starting because of < vs <= =))
Test / test_minsize_1 (push) Successful in 12s
Details
Test / buildenv (push) Successful in 9s
Details
Test / build (push) Successful in 2m36s
Details
Test / make_test (push) Successful in 33s
Details
Test / test_add_osd (push) Successful in 2m58s
Details
Test / test_cas (push) Successful in 11s
Details
Test / test_change_pg_count (push) Successful in 41s
Details
Test / test_change_pg_count_ec (push) Successful in 36s
Details
Test / test_change_pg_size (push) Successful in 9s
Details
Test / test_create_nomaxid (push) Successful in 9s
Details
Test / test_etcd_fail (push) Successful in 1m20s
Details
Test / test_failure_domain (push) Successful in 12s
Details
Test / test_interrupted_rebalance (push) Successful in 2m1s
Details
Test / test_interrupted_rebalance_imm (push) Successful in 1m55s
Details
Test / test_interrupted_rebalance_ec (push) Successful in 1m48s
Details
Test / test_interrupted_rebalance_ec_imm (push) Successful in 1m32s
Details
Test / test_move_reappear (push) Successful in 51s
Details
Test / test_rebalance_verify (push) Successful in 3m19s
Details
Test / test_rebalance_verify_imm (push) Successful in 3m9s
Details
Test / test_rebalance_verify_ec (push) Successful in 3m21s
Details
Test / test_rebalance_verify_ec_imm (push) Successful in 3m4s
Details
Test / test_rm (push) Successful in 17s
Details
Test / test_snapshot (push) Successful in 23s
Details
Test / test_snapshot_ec (push) Successful in 26s
Details
Test / test_splitbrain (push) Successful in 14s
Details
Test / test_write (push) Successful in 1m35s
Details
Test / test_write_xor (push) Successful in 2m29s
Details
Test / test_write_no_same (push) Successful in 29s
Details
Test / test_heal_pg_size_2 (push) Successful in 4m11s
Details
Test / test_heal_ec (push) Successful in 5m4s
Details
Test / test_scrub (push) Successful in 55s
Details
Test / test_scrub_zero_osd_2 (push) Successful in 41s
Details
Test / test_scrub_xor (push) Successful in 37s
Details
Test / test_scrub_pg_size_3 (push) Successful in 57s
Details
Test / test_scrub_pg_size_6_pg_minsize_4_osd_count_6_ec (push) Successful in 46s
Details
Test / test_scrub_ec (push) Successful in 31s
Details
Test / test_minsize_1 (push) Successful in 12s
Details
Test / buildenv (push) Successful in 9s
Details
Test / build (push) Successful in 2m36s
Details
Test / make_test (push) Successful in 33s
Details
Test / test_add_osd (push) Successful in 2m58s
Details
Test / test_cas (push) Successful in 11s
Details
Test / test_change_pg_count (push) Successful in 41s
Details
Test / test_change_pg_count_ec (push) Successful in 36s
Details
Test / test_change_pg_size (push) Successful in 9s
Details
Test / test_create_nomaxid (push) Successful in 9s
Details
Test / test_etcd_fail (push) Successful in 1m20s
Details
Test / test_failure_domain (push) Successful in 12s
Details
Test / test_interrupted_rebalance (push) Successful in 2m1s
Details
Test / test_interrupted_rebalance_imm (push) Successful in 1m55s
Details
Test / test_interrupted_rebalance_ec (push) Successful in 1m48s
Details
Test / test_interrupted_rebalance_ec_imm (push) Successful in 1m32s
Details
Test / test_move_reappear (push) Successful in 51s
Details
Test / test_rebalance_verify (push) Successful in 3m19s
Details
Test / test_rebalance_verify_imm (push) Successful in 3m9s
Details
Test / test_rebalance_verify_ec (push) Successful in 3m21s
Details
Test / test_rebalance_verify_ec_imm (push) Successful in 3m4s
Details
Test / test_rm (push) Successful in 17s
Details
Test / test_snapshot (push) Successful in 23s
Details
Test / test_snapshot_ec (push) Successful in 26s
Details
Test / test_splitbrain (push) Successful in 14s
Details
Test / test_write (push) Successful in 1m35s
Details
Test / test_write_xor (push) Successful in 2m29s
Details
Test / test_write_no_same (push) Successful in 29s
Details
Test / test_heal_pg_size_2 (push) Successful in 4m11s
Details
Test / test_heal_ec (push) Successful in 5m4s
Details
Test / test_scrub (push) Successful in 55s
Details
Test / test_scrub_zero_osd_2 (push) Successful in 41s
Details
Test / test_scrub_xor (push) Successful in 37s
Details
Test / test_scrub_pg_size_3 (push) Successful in 57s
Details
Test / test_scrub_pg_size_6_pg_minsize_4_osd_count_6_ec (push) Successful in 46s
Details
Test / test_scrub_ec (push) Successful in 31s
Details
parent
1c2df841c2
commit
3ad16b9a1a
|
@ -485,6 +485,10 @@ void osd_t::report_pg_state(pg_t & pg)
|
|||
{
|
||||
pg.print_state();
|
||||
this->pg_state_dirty.insert({ .pool_id = pg.pool_id, .pg_num = pg.pg_num });
|
||||
if (pg.state & PG_ACTIVE)
|
||||
{
|
||||
plan_scrub(pg, false);
|
||||
}
|
||||
if (pg.state == PG_ACTIVE && (pg.target_history.size() > 0 || pg.all_peers.size() > pg.target_set.size()))
|
||||
{
|
||||
// Clear history of active+clean PGs
|
||||
|
@ -493,7 +497,6 @@ void osd_t::report_pg_state(pg_t & pg)
|
|||
pg.all_peers = pg.target_set;
|
||||
std::sort(pg.all_peers.begin(), pg.all_peers.end());
|
||||
pg.cur_peers = pg.target_set;
|
||||
plan_scrub(pg, false);
|
||||
// Change pg_config at the same time, otherwise our PG reconciling loop may try to apply the old metadata
|
||||
auto & pg_cfg = st_cli.pool_config[pg.pool_id].pg_config[pg.pg_num];
|
||||
pg_cfg.target_history = pg.target_history;
|
||||
|
@ -537,7 +540,6 @@ void osd_t::report_pg_state(pg_t & pg)
|
|||
pg.cur_peers.push_back(pg_osd);
|
||||
}
|
||||
}
|
||||
plan_scrub(pg, false);
|
||||
auto & pg_cfg = st_cli.pool_config[pg.pool_id].pg_config[pg.pg_num];
|
||||
pg_cfg.target_history = pg.target_history;
|
||||
pg_cfg.all_peers = pg.all_peers;
|
||||
|
|
|
@ -131,7 +131,7 @@ int osd_t::pick_next_scrub(object_id & next_oid)
|
|||
}
|
||||
while (pg_it != pgs.end())
|
||||
{
|
||||
if ((pg_it->second.state & PG_ACTIVE) && pg_it->second.next_scrub && pg_it->second.next_scrub < tv_now.tv_sec)
|
||||
if ((pg_it->second.state & PG_ACTIVE) && pg_it->second.next_scrub && pg_it->second.next_scrub <= tv_now.tv_sec)
|
||||
{
|
||||
// Continue scrubbing from the next object
|
||||
if (scrub_last_pg == pg_it->first)
|
||||
|
@ -350,7 +350,7 @@ void osd_t::schedule_scrub(pg_t & pg)
|
|||
tfd->clear_timer(scrub_timer_id);
|
||||
scrub_timer_id = -1;
|
||||
}
|
||||
if (tv_now.tv_sec > scrub_nearest_ts)
|
||||
if (tv_now.tv_sec >= scrub_nearest_ts)
|
||||
{
|
||||
scrub_nearest_ts = 0;
|
||||
peering_state = peering_state | OSD_SCRUBBING;
|
||||
|
|
Loading…
Reference in New Issue