P
Repo.exists?
не будет гарантировать тебе консистентность без UNIQUE
индекса в БД. А если у тебя UNIQUE
индекс, то проще сделать Repo.insert/2
с on_confict: :nothing
Size: a a a
P
Repo.exists?
не будет гарантировать тебе консистентность без UNIQUE
индекса в БД. А если у тебя UNIQUE
индекс, то проще сделать Repo.insert/2
с on_confict: :nothing
S
SM
on_conflict
?LL
LL
PG
ŹR
[
header
| data
|> Enum.sort_by(&(&1.fcm_id))
|> Enum.map(&csv_formatter(metric, &1))
]
|> Enum.join()
ŹR
ŹR
[
header
| data
|> Enum.sort_by(& &1.fcm_id)
|> Enum.map(&csv_formatter(metric, &1))
]
|> Enum.join()
ŹR
LL
join
, а хедер потом приписать. Тогда итерации стало бы двеŹR
join
, а хедер потом приписать. Тогда итерации стало бы двеSM
[
header
| data
|> Enum.sort_by(& &1.fcm_id)
|> Enum.map(&csv_formatter(metric, &1))
]
|> Enum.join()
Enum.join([
header
| data
|> Enum.sort_by(& &1.fcm_id)
|> Enum.map(&csv_formatter(metric, &1))
])
SM
ŹR
Enum.join([
header
| data
|> Enum.sort_by(& &1.fcm_id)
|> Enum.map(&csv_formatter(metric, &1))
])
LL
header <> Enum.join(data, &csv_formatter(metric, &1))
LL
ŹR
LL
Enum.map
, а потом Enum.join
- это не бесплатноLL