From 43b8dcea23c20d7526a1a934dff427c05ecc7d69 Mon Sep 17 00:00:00 2001 From: Neylix Date: Mon, 13 Mar 2023 14:30:51 +0100 Subject: [PATCH] Add code_change for subset --- lib/archethic/beacon_chain/subset.ex | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/lib/archethic/beacon_chain/subset.ex b/lib/archethic/beacon_chain/subset.ex index 500d7de24..70d4e57fc 100644 --- a/lib/archethic/beacon_chain/subset.ex +++ b/lib/archethic/beacon_chain/subset.ex @@ -411,4 +411,20 @@ defmodule Archethic.BeaconChain.Subset do end defp ensure_p2p_view(slot = %Slot{}, _), do: slot + + def code_change( + "1.0.7", + state = %{postponed: %{transaction_attestations: postponed_attestations}}, + _extra + ) do + new_state = + Enum.reduce(postponed_attestations, state, fn attestation, acc -> + Map.update!(acc, :current_slot, &Slot.add_transaction_attestation(&1, attestation)) + end) + |> Map.delete(:postponed) + + {:ok, new_state} + end + + def code_change(_, state, _), do: {:ok, state} end