A flow contains a lookup record action. If the result is 0 it generates an error. As a result the flow goes into error state as well.
The behaviour is as expected. To avoid this , consider using lookup records instead of lookup record. This will not throw an error if no records are returned. You can then add an if-condition after the lookup to deal with the output. If record count is 0 then end flow, if count is greater than 0 move forward.