HNHacker News
TopNewBestAskShowJobs

xuanwo

314 karma · joined September 28, 2018

https://bento.me/xuanwo

ASF Member. Apache OpenDAL PMC Chair.

My VISION: access data freely across services by any method.

submissionscomments
xuanwo··on Finding Shawn Mendes (2019)
We have to invite Shawn Mendes to read this post.
xuanwo··on 63 Chinese Cuisines: The Complete Guide (2024)
If you want to cook Chinese food at home, you can check out this channel: https://www.youtube.com/@chefwang

Please note that he mainly focuses on Sichuan cuisine, which is a bit spicy.

xuanwo··on Calling Rust from Cursed Go
Worth reading: https://www.yuchanns.xyz/posts/bridging-rust-and-native-go/

The Apache OpenDAL community is using PureGo and libffi to create Go bindings for OpenDAL.

xuanwo··on Personal Software Is Becoming a Trend
Oh, that seems like a really good software.
xuanwo··on Build a link blog like Simon Willison
Wow, thank you for this comment and for continuously sharing!
xuanwo··on Build a link blog like Simon Willison
Some quick ideas:

- Multiple links in the same post make it difficult to organize discussions and thoughts.

- Monthly posts require extra effort to maintain and update, which didn't align with our initial goal of sharing more casually and recording our thoughts in real time.

- Modern static site generators support maintaining archive pages by month, so we no longer need to do it manually.

Hoping those ideas make sense to you.

xuanwo··on A letter to open-source maintainers
Thank you for the comments. I agree with you as well. That's why I always show great appreciation for the heroes who stepped up to fix the bugs. I want to motivate people to do the same, but with an established baseline: don't burn out, don't overwork, and prioritize self-care.
xuanwo··on A letter to open-source maintainers
Thank you for pointing that out. MIT is not a good example to convey my opinion. I will add an update at the end of the post.
xuanwo··on Show HN: OpenDAL, one API to access all the storages (S3, Azblob, HDFS, etc.)
Yes, opendal supports seek.

For example:

  use std::io;
  use std::io::SeekFrom;
  use futures::io::AsyncReadExt;
  use opendal::Operator;
  use opendal::Result;
  async fn test(op: Operator) -> io::Result<()> {
      let mut r = op
          .reader("hello.txt")
          .await?
          // Only access range (0, 8*1024*1024 )
          .into_futures_async_read(0..8*1024*1024)
          .await?;

      // Seek to 1024.
      r.seek(SeekFrom::Start(1024)).await?;
      let mut bs = Vec::new();

      r.read_to_end(&mut bs).await?;
      Ok(())
  }
xuanwo··on KQIR: A query engine for Apache Kvrocks that supports both SQL and RediSearch
I'm not familiar with the Redis ecosystem. Is this the first open and free (in Apache v2 and controled by the ASF) implementation of Redis search?
xuanwo··on Pg_lakehouse: Query Any Data Lake from Postgres
Hi, OpenDAL's maintainer here. I'm not sure what "Snowflake as an object store" means since Snowflake is a cloud data warehouse service and not intended for storage services.
xuanwo··on Welcome to Apache OpenDAL
Could you offer some guidance? This slogan is the clearest explanation I've come across. I'm open to better suggestions! Thanks in advance.
xuanwo··on Welcome to Apache OpenDAL
Addressed in https://github.com/apache/incubator-opendal/pull/3805
xuanwo··on Welcome to Apache OpenDAL
Thanks a lot! I will fix those spelling issues ASAP.
xuanwo··on Welcome to Apache OpenDAL
Thanks for using OpenDAL!
xuanwo··on Welcome to Apache OpenDAL
I'm an OpenDAL committer. Thank you for your interest! I'm happy to assist with integrating OpenDAL into your project.
xuanwo··on Rust std fs slower than Python? No, it's hardware
FSRM is a CPU feature embedded in the microcode (in this instance, amd-ucode) that software such as glibc cannot interact with. I refer to it as hardware because I consider microcode a part of the hardware.
xuanwo··on Rust std fs slower than Python? No, it's hardware
Thanks for the comments. I have fixed the headers :)
xuanwo··on Rust std fs slower than Python? No, it's hardware
> It does make me wonder why pymallov and jemalloc used page aligned memory, but glibc didn't.

The root cause is not about page alignment. In fact, all allocators are aligned.

The root cause is AMD CPU didn't implement FSRM correctly while copying data from 0x1000 * n ~ 0x1000 * n + 0x10.

> Other questions never answered, why did pyo3 add so much overhead? it was over half the difference between the two.

OpenDAL Python Binding v0.42 does have many place to improve, like we can alloc the buffer in advance or using `read_buf` into uninit vec. I skipped this part since they are not the root cause.

xuanwo··on Rust std fs slower than Python? No, it's hardware
Sorry for the clickbaity title, I have changed it based on others advice.