Skip to content

Commit

Permalink
🐛 Fix the transfer logic for db_name.
Browse files Browse the repository at this point in the history
  • Loading branch information
langyo committed Jul 10, 2024
1 parent 1aa642c commit 813aea4
Showing 1 changed file with 16 additions and 11 deletions.
27 changes: 16 additions & 11 deletions packages/database/src/providers/cloudflare.rs
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,11 @@ impl std::fmt::Debug for ProxyDb {
}

impl ProxyDb {
async fn do_query(env: Arc<Env>, statement: Statement) -> Result<Vec<ProxyRow>> {
async fn do_query(
env: Arc<Env>,
db_name: String,
statement: Statement,
) -> Result<Vec<ProxyRow>> {
let sql = statement.sql.clone();
let values = match statement.values {
Some(Values(values)) => values
Expand Down Expand Up @@ -62,12 +66,7 @@ impl ProxyDb {
None => Vec::new(),
};

let ret = env
.d1(self.db_name.clone())?
.prepare(sql)
.bind(&values)?
.all()
.await?;
let ret = env.d1(db_name)?.prepare(sql).bind(&values)?.all().await?;
if let Some(message) = ret.error() {
return Err(anyhow!(message.to_string()));
}
Expand Down Expand Up @@ -105,7 +104,11 @@ impl ProxyDb {
Ok(ret)
}

async fn do_execute(env: Arc<Env>, statement: Statement) -> Result<ProxyExecResult> {
async fn do_execute(
env: Arc<Env>,
db_name: String,
statement: Statement,
) -> Result<ProxyExecResult> {
let sql = statement.sql.clone();
let values = match statement.values {
Some(Values(values)) => values
Expand Down Expand Up @@ -147,7 +150,7 @@ impl ProxyDb {
};

let ret = env
.d1(self.db_name.clone())?
.d1(db_name)?
.prepare(sql)
.bind(&values)?
.run()
Expand All @@ -174,9 +177,10 @@ impl ProxyDb {
impl ProxyDatabaseTrait for ProxyDb {
async fn query(&self, statement: Statement) -> Result<Vec<ProxyRow>, DbErr> {
let env = self.env.clone();
let db_name = self.db_name.clone();
let (tx, rx) = oneshot::channel();
wasm_bindgen_futures::spawn_local(async move {
let ret = Self::do_query(env, statement).await;
let ret = Self::do_query(env, db_name, statement).await;
tx.send(ret).unwrap();
});

Expand All @@ -186,9 +190,10 @@ impl ProxyDatabaseTrait for ProxyDb {

async fn execute(&self, statement: Statement) -> Result<ProxyExecResult, DbErr> {
let env = self.env.clone();
let db_name = self.db_name.clone();
let (tx, rx) = oneshot::channel();
wasm_bindgen_futures::spawn_local(async move {
let ret = Self::do_execute(env, statement).await;
let ret = Self::do_execute(env, db_name, statement).await;
tx.send(ret).unwrap();
});

Expand Down

0 comments on commit 813aea4

Please sign in to comment.