@@ -104,8 +104,9 @@ defmodule NervesHub.Devices.UpdateStats do
104104
105105 def log_update ( device , source_firmware_metadata ) do
106106 case get_delta_from_metadata (
107- source_uuid: source_firmware_metadata . uuid ,
108- target_uuid: device . firmware_metadata . uuid
107+ device . product_id ,
108+ source_firmware_metadata . uuid ,
109+ device . firmware_metadata . uuid
109110 ) do
110111 % FirmwareDelta { } = delta ->
111112 log_stat ( device , source_firmware_metadata , delta )
@@ -191,17 +192,19 @@ defmodule NervesHub.Devices.UpdateStats do
191192 end
192193 end
193194
194- @ spec get_delta_from_metadata ( source_uuid: Ecto.UUID . t ( ) , target_uuid: Ecto.UUID . t ( ) ) ::
195+ @ spec get_delta_from_metadata ( product_id :: pos_integer ( ) , source_uuid :: Ecto.UUID . t ( ) , target_uuid : : Ecto.UUID . t ( ) ) ::
195196 FirmwareDelta . t ( ) | nil
196- defp get_delta_from_metadata ( source_uuid: source_uuid , target_uuid: target_uuid ) do
197+ defp get_delta_from_metadata ( product_id , source_uuid , target_uuid ) do
197198 source_query =
198199 Firmware
199200 |> where ( [ f ] , f . uuid == ^ source_uuid )
201+ |> where ( [ f ] , f . product_id == ^ product_id )
200202 |> select ( [ f ] , f . id )
201203
202204 target_query =
203205 Firmware
204206 |> where ( [ f ] , f . uuid == ^ target_uuid )
207+ |> where ( [ f ] , f . product_id == ^ product_id )
205208 |> select ( [ f ] , f . id )
206209
207210 FirmwareDelta
0 commit comments