Instream.Connection behaviour
Connection (pool) definition.
All database connections will be made using a user-defined extension of this module.
Example Module
defmodule MyConnection do
use Instream.Connection, otp_app: :my_application
end
Example Configuration
config :my_application, MyConnection,
hosts: [ "primary.example.com", "secondary.example.com" ],
password: "pass",
pool: [ max_overflow: 10, size: 5 ],
port: 8086,
scheme: "http",
username: "root"
Callbacks
Specs:
- __pool__ :: module
Returns the (internal) pool module.
Specs:
- child_spec :: Supervisor.Spec.spec
Returns a supervisable pool child_spec.
Specs:
- config :: Keyword.t
Returns the connection configuration.
Specs:
- execute(query :: Instream.Query.t, opts :: Keyword.t) :: any
Executes a query.
Passing [async: true]
in the options always returns :ok.
The command will be executed asynchronously.