Packages
pillar
0.10.0
0.40.0
0.39.0
0.38.0
0.37.0
0.36.0
0.35.0
0.34.1
0.34.0
0.33.1
0.33.0
0.32.0
0.31.0
0.30.0
0.29.1
0.29.0
0.28.0
0.27.0
0.26.1
0.26.0
0.25.1
0.25.0
0.24.0
0.23.3
0.23.2
0.23.1
0.23.0
0.22.0
0.21.0
0.20.0
0.19.0
0.18.2
0.18.1
0.18.0
0.17.3
0.17.2
0.17.1
0.17.0
0.16.2
0.16.1
0.16.0
0.15.0
0.14.0
0.13.1
0.13.0
0.12.0
0.11.0
0.10.0
0.9.1
0.9.0
0.8.1
0.8.0
0.7.0
0.6.0
0.5.1
0.5.0
0.4.0
0.3.2
0.3.1
0.3.0
0.2.1
0.2.0
0.1.0
Elixir client for ClickHouse, a fast open-source Online Analytical Processing (OLAP) database management system.
Current section
Files
Jump to
Current section
Files
lib/pillar/pool/worker.ex
defmodule Pillar.Pool.Worker do
use GenServer
def start_link(connection_string) do
GenServer.start_link(__MODULE__, connection_string)
end
def init(connection_string_list) when is_list(connection_string_list) do
connection_string = Enum.random(connection_string_list)
{:ok, Pillar.Connection.new(connection_string)}
end
def handle_call({:query, query, params, options}, _from, state) do
result = Pillar.query(state, query, params, options)
{:reply, result, state}
end
def handle_cast({:query, query, params, options}, state) do
{:ok, _result} = Pillar.query(state, query, params, options)
{:noreply, state}
end
def handle_call({:insert, query, params, options}, _from, state) do
result = Pillar.insert(state, query, params, options)
{:reply, result, state}
end
def handle_cast({:insert, query, params, options}, state) do
{:ok, _result} = Pillar.insert(state, query, params, options)
{:noreply, state}
end
end