From 69094d9d3cdc62e54754a32fad1e73f0fc129103 Mon Sep 17 00:00:00 2001 From: seven Date: Sat, 15 Oct 2022 10:15:37 +0800 Subject: [PATCH] [index] support all statement --- crates/indexer/src/database.rs | 13 ++++--------- 1 file changed, 4 insertions(+), 9 deletions(-) diff --git a/crates/indexer/src/database.rs b/crates/indexer/src/database.rs index 368a1e75b50fd..265219f9c50e4 100644 --- a/crates/indexer/src/database.rs +++ b/crates/indexer/src/database.rs @@ -61,18 +61,13 @@ pub fn new_db_pool(database_url: &str) -> Result { PgPool::builder().build(manager).map(Arc::new) } -pub fn execute_with_better_error< - T: diesel::Table + diesel::QuerySource + diesel::query_builder::QueryId + 'static, - U: diesel::query_builder::QueryFragment - + diesel::query_builder::QueryId - + diesel::insertable::CanInsertInSingleQuery, ->( +pub fn execute_with_better_error( conn: &mut PgConnection, - query: diesel::query_builder::InsertStatement, + query: U, mut additional_where_clause: Option<&'static str>, -) -> diesel::QueryResult +) -> QueryResult where - ::FromClause: diesel::query_builder::QueryFragment, + U: QueryFragment + diesel::query_builder::QueryId, { let original_query = diesel::debug_query::(&query).to_string(); // This is needed because if we don't insert any row, then diesel makes a call like this