Update the block delta when you change the machine readable name of the display.
protected function updateBlockBid($name, $old_delta, $delta) {
$old_hashes = $hashes = state()
->get('views_block_hashes');
$old_delta = $name . '-' . $old_delta;
$delta = $name . '-' . $delta;
if (strlen($old_delta) >= 32) {
$old_delta = md5($old_delta);
unset($hashes[$old_delta]);
}
if (strlen($delta) >= 32) {
$md5_delta = md5($delta);
$hashes[$md5_delta] = $delta;
$delta = $md5_delta;
}
// Maybe people don't have block module installed, so let's skip this.
if (db_table_exists('block')) {
db_update('block')
->fields(array(
'delta' => $delta,
))
->condition('delta', $old_delta)
->execute();
}
// Update the hashes if needed.
if ($hashes != $old_hashes) {
state()
->set('views_block_hashes', $hashes);
}
}