Skip to content

Commit 911ae40

Browse files
committed
(appengine) Edit rooms queries for exandra
Signed-off-by: Eddy Babetto <eddy.babetto@secomind.com>
1 parent f33618c commit 911ae40

File tree

2 files changed

+14
-22
lines changed

2 files changed

+14
-22
lines changed

apps/astarte_appengine_api/lib/astarte_appengine_api/groups/queries.ex

Lines changed: 13 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -314,21 +314,13 @@ defmodule Astarte.AppEngine.API.Groups.Queries do
314314
from(d in GroupedDevice,
315315
prefix: ^keyspace,
316316
where: d.group_name == ^group_name,
317-
select: d.group_name
317+
select: d.group_name,
318+
limit: 1
318319
)
319320

320-
with false <- Repo.all(query) |> Enum.empty?() do
321-
true
322-
else
323-
{:error, reason} ->
324-
_ = Logger.error("Database error: #{inspect(reason)}.", tag: "db_error")
325-
false
326-
327-
[] ->
328-
false
329-
330-
true ->
331-
false
321+
case Repo.fetch_one(query) do
322+
{:ok, _} -> true
323+
_not_found -> false
332324
end
333325
end
334326

@@ -478,12 +470,6 @@ defmodule Astarte.AppEngine.API.Groups.Queries do
478470

479471
def add_to_grouped_device(realm_name, group_name, decoded_device_ids) do
480472
keyspace = DataAccessRealm.keyspace_name(realm_name)
481-
grouped_device_table = GroupedDevice.__schema__(:source)
482-
483-
insert_grouped_device_sql = """
484-
INSERT INTO #{keyspace}.#{grouped_device_table} (group_name, insertion_uuid, device_id)
485-
values (?, ?, ?)
486-
"""
487473

488474
queries =
489475
decoded_device_ids
@@ -499,8 +485,14 @@ defmodule Astarte.AppEngine.API.Groups.Queries do
499485
update_device_groups =
500486
Repo.to_sql(:update_all, query)
501487

502-
insert_grouped_device_params = [group_name, insertion_uuid, device_id]
503-
insert_grouped_device = {insert_grouped_device_sql, insert_grouped_device_params}
488+
grouped_device =
489+
%GroupedDevice{
490+
group_name: group_name,
491+
insertion_uuid: insertion_uuid,
492+
device_id: device_id
493+
}
494+
495+
insert_grouped_device = Repo.insert_to_sql(grouped_device, prefix: keyspace)
504496

505497
[update_device_groups, insert_grouped_device]
506498
end)

apps/astarte_appengine_api/lib/astarte_appengine_api/rooms/room.ex

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ defmodule Astarte.AppEngine.API.Rooms.Room do
2222
alias Astarte.AppEngine.API.Device.DevicesList
2323
alias Astarte.AppEngine.API.Groups
2424
alias Astarte.AppEngine.API.Rooms.WatchRequest
25+
alias Astarte.AppEngine.API.Rooms.Queries
2526
alias Astarte.AppEngine.API.RPC.DataUpdaterPlant
2627
alias Astarte.AppEngine.API.RPC.DataUpdaterPlant.VolatileTrigger
2728
alias Astarte.AppEngine.API.Utils
@@ -32,7 +33,6 @@ defmodule Astarte.AppEngine.API.Rooms.Room do
3233
alias Astarte.Core.Triggers.SimpleTriggersProtobuf.SimpleTriggerContainer
3334
alias Astarte.Core.Triggers.SimpleTriggersProtobuf.TaggedSimpleTrigger
3435
alias Astarte.Core.Triggers.SimpleTriggersProtobuf.TriggerTargetContainer
35-
alias Astarte.AppEngine.API.Rooms.Queries
3636

3737
require Logger
3838

0 commit comments

Comments
 (0)