Skip to content

Commit

Permalink
Merge pull request #155 from crobox/feature/query_executor
Browse files Browse the repository at this point in the history
Feature/query executor
  • Loading branch information
lwolters authored Nov 3, 2023
2 parents 4181bcd + dc3e9ec commit ea1a48b
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 4 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ trait ClickhouseQueryExecutor extends QueryExecutor {
self: TokenizerModule =>
implicit val client: ClickhouseClient

override val serverVersion: clickhouse.ClickhouseServerVersion = client.serverVersion
override lazy val serverVersion: clickhouse.ClickhouseServerVersion = client.serverVersion

override def execute[V: JsonReader](
query: Query
Expand All @@ -23,7 +23,12 @@ trait ClickhouseQueryExecutor extends QueryExecutor {
queryResult.map(_.parseJson.convertTo[QueryResult[V]])
}

// def executeWithProgress[V: JsonReader](
// override def execute[V: JsonReader](
// sql: String
// )(implicit executionContext: ExecutionContext, settings: QuerySettings = QuerySettings()): Future[QueryResult[V]] =
// client.query(sql).map(_.parseJson.convertTo[QueryResult[V]])

// def executeWithProgress[V: JsonReader](
// query: Query
// )(implicit executionContext: ExecutionContext,
// settings: QuerySettings = QuerySettings()): Source[QueryProgress, Future[QueryResult[V]]] = {
Expand All @@ -46,7 +51,7 @@ trait ClickhouseQueryExecutor extends QueryExecutor {

object ClickhouseQueryExecutor {

def default(clickhouseClient: ClickhouseClient): ClickhouseQueryExecutor =
def default(clickhouseClient: ClickhouseClient): QueryExecutor =
new DefaultClickhouseQueryExecutor(clickhouseClient)
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,11 +13,12 @@ import scala.concurrent.{ExecutionContext, Future}
*/
trait QueryExecutor { self: TokenizerModule =>

val serverVersion: ClickhouseServerVersion
def serverVersion: ClickhouseServerVersion

def execute[V: JsonReader](query: Query)(implicit executionContext: ExecutionContext,
settings: QuerySettings = QuerySettings()): Future[QueryResult[V]]

def insert[V: JsonWriter](table: Table, values: Seq[V])(implicit executionContext: ExecutionContext,
settings: QuerySettings = QuerySettings()): Future[String]

}

0 comments on commit ea1a48b

Please sign in to comment.