Seems like an interesting effort. A developer is building an alternative Java-based backend to Lemmy’s Rust-based one, with the goal of building in a handful of different features. The dev is looking at using this compatibility to migrate their instance over to the new platform, while allowing the community to use their apps of choice.

  • @kameecoding@lemmy.world
    link
    fedilink
    English
    111 months ago

    But like, what kind of error are you gonna handle that’s coming from the DB, if it’s something like a connection error because the DB is down, then you are shit out of luck you can’t handle that anyway, and you probably shouldn’t, not from the layer you are calling your DB from, that’s a higher level logic, so bubbling Errors there make sense.

    and if it’s an “error” like findById doesn’t always return something, that’s what the Optional pattern is for.

    what you have described to me seems like a worse version of the checked/unchecked exception system.

    • @mea_rah@lemmy.world
      link
      fedilink
      English
      111 months ago

      But like, what kind of error are you gonna handle that’s coming from the DB, if it’s something like a connection error because the DB is down

      I could return 500 (getting Error) instead of 404 (getting None) or 200 (getting Some(results)) from my web app.

      Or DB just timed out. The code that did the query is very likely the only code that can reasonably decide to retry for example.