Xuanwo commented on issue #5929:
URL: https://github.com/apache/opendal/issues/5929#issuecomment-2768749242

   > but either ways the same setup is being used for both `object_store` and 
`opendal` so the performance should be comparable no?
   
   The current code of `object_store` in fact maps to set opendal's concurrent 
to a very large value (which means no limitation). We can try use `1024` as 
concurrent for opendal.
   
   To have the same setup with `conurrent(8)`, we need to use:
   
   ```rust
   let mut write = WriteMultipart::new(upload);
   
   stream
       .try_for_each(|chunk| {
           write.wait_for_capacity(8).await?;
           write.put(chunk);
           async move { Ok(()) }
       })
       .await?;
   
   write
       .finish()
       .await
       .context("Failed to upload file with object_store")?;
   
   Ok(())
   ```
   
   Docs for wait_for_capacity can be seen here: 
https://docs.rs/object_store/latest/object_store/struct.WriteMultipart.html#method.wait_for_capacity


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscr...@opendal.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to