| 137 | } |
| 138 | |
| 139 | bool db_query_prepared_canfail(struct db_stmt *stmt) |
| 140 | { |
| 141 | /* Make sure we don't accidentally execute a modifying query using a |
| 142 | * read-only path. */ |
| 143 | bool ret; |
| 144 | assert(stmt->query->readonly); |
| 145 | trace_span_start("db_query_prepared", stmt); |
| 146 | trace_span_tag(stmt, "query", stmt->query->query); |
| 147 | ret = stmt->db->config->query_fn(stmt); |
| 148 | stmt->executed = true; |
| 149 | list_del_from(&stmt->db->pending_statements, &stmt->list); |
| 150 | trace_span_end(stmt); |
| 151 | return ret; |
| 152 | } |
| 153 | |
| 154 | void db_query_prepared(struct db_stmt *stmt) |
| 155 | { |