51 pointsby whispem7 hours ago6 comments
  • eatonphil2 hours ago
    Great educational project! I'm curious why you are using Raft and also 2PC unless you're sharding data and doing cross-shard transactions? Or is Raft only for cluster membership but 2PC is for replicating data? If that's the case it kind of seems like overkill but I'm not sure.

    Few distributed filesystems/object stores seem to use Raft (or consensus at all) for replicating data because it's unnecessary overhead. Chain replication is one popular way for replicating data (which uses consensus to manage membership but the data path is outside of consensus).

  • LunaSeaan hour ago
    Hello, cool project, did you think about maybe contributing to the key-value store feature of Garage, which is also a Rust project by open source development lab Deux Fleurs?
    • whispeman hour ago
      Hello! Thank you for your message. I don’t know this project, do you have a GitHub link maybe?
  • iryna_kondr2 hours ago
    Hi Emilie, nice project, thanks for sharing. I’m curious whether there were any decisions that you added mainly for educational value even though you wouldn’t make the same call in a production system?
  • kunley2 hours ago
    Looks nice.

    What is the memory consumption under a significant load? That seems to be as much important as the throughput & latency.

  • _s_a_m_3 hours ago
    I there an official docker image? I am looking for something more light-weighted than MinIO. What are the requirements?
  • frwickst2 hours ago
    • whispeman hour ago
      Yes, I know. I had the opportunity to request a review of my first post (which was flagged) following my email to the moderators of HN. After checking, the moderator told me to redo a post because indeed I was wrongly flagged by some people here.
    • forgotpwd162 hours ago
      >All the code, architecture, logic, and design in minikv were written by me, 100% by hand.

      Why people always lie with this? Especially in this case that they uploaded the entire log:

        Date:   Sat Dec 6 16:08:04 2025 +0100
            Add hashing utilities and consistent hash ring
        Date:   Sat Dec 6 16:07:24 2025 +0100
            Create mod.rs for common utilities in minikv
        Date:   Sat Dec 6 16:07:03 2025 +0100
            Add configuration structures for minikv components
        Date:   Sat Dec 6 16:06:26 2025 +0100
            Add error types and conversion methods for minikv
        Date:   Sat Dec 6 16:05:45 2025 +0100
            Add main module for minikv key-value store
      
      And this goes on until project is complete (which probably took 2~3h total if sum all sessions). Doubt learned anything at all. Well, other than that LLMs can solo complete simple projects.

      Comments in previous submission are also obviously AI generated. No wonder was flagged.

      • yes_manan hour ago
        You have never split your working tree changes into separate commits?
        • forgotpwd16an hour ago
          Irrelevant question. In README has:

          >Built in public as a learning-by-doing project

          So, either the entire project was already written and being uploaded one file at the time (first modification since lowest commit mentioned is README update: https://github.com/whispem/minikv/commit/6fa48be1187f596dde8..., clearly AI generated and clearly AI used has codebase/architecture knowledge), and this claim is false, or they're implementing a new component every 30s.

          • whispeman hour ago
            I had the opportunity to request a review of my first post (which was flagged) following my email to the moderators of HN. I didn’t use AI for the codebase, only for .md files & there's no problem with that. My project was reviewed by moderators, don't worry. If the codebase or architecture was AI generated this post would not have been authorized and therefore it would not have been published.
          • johnbellonean hour ago
            I am not going to pretend to know what this person did, but I've definitely modified many things at once and made distinct commits after the fact (within 30s). I do not find it that abnormal.
            • whispeman hour ago
              Thanks a lot! I make distinct commits "every 30s" because I'm focused and I test my project. If the CI is green, I don't touch of anything. If not, I work on the project until the CI is fully green.