Chat Logs

  1. * jreicher joined #java
  2. * metalmaniac joined #java
  3. * NeXeN joined #java
  4. * ferdna joined #java
  5. * Ragnor joined #java
  6. * Aedil joined #java
  7. * NeXeN_ joined #java
  8. * NeXeN_ joined #java
  9. * NeXeN_ joined #java
  10. * sponkz joined #java
  11. * zorone joined #java
  12. * stfstfm_ joined #java
  13. * kcomhnall joined #java
  14. * julemand101 joined #java
  15. * MikeBux joined #java
  16. * TomyWork joined #java
  17. * stewi joined #java
  18. * zorone joined #java
  19. * mwnaylor joined #java
  20. * nevet joined #java
  21. * CodeGeek!~codegeek@about/java/CodeGeek changed the topic to: Welcome! || Read Channel Rules at https://javachannel.org/ before participating. || Paste limit is two lines; ~pastebin lists options. || No applets, please. || Minecraft, Android, and Javascript all have their own channel. || You are being logged.
  22. Parahttps://bytecode.news/posts/2026/03/kafka-offset-commit-with-spring-boot
  23. dreamrealPara: ++
  24. nevetPara now has karma of 1.
  25. dreamrealthe kafka commit semantics are ... interesting, and how spring boot interacts with them can be unexpected
  26. dreamrealit treats the *read* as a transaction
  27. jreicherWhy wouldn't it?
  28. jreicherIt probably shouldn't be called a "read". It's a really a consume.
  29. dreamrealWell, it doesn't consume the content, it IS a read
  30. jreicherIt does consume the content. The commit offset is committed back, so you don't re-consume the same message by mistake.
  31. dreamrealbut treating the read as a transaction can have odd semantics because the transaction doesn't necessarily propagate unless you take steps
  32. dreamrealit only consumes the content from that client-id's perspective, though
  33. dreamrealso I'd say it's still a read
  34. jreicherI'm happy to use the word read, but the offset is how the "consume effect" is implemented.
  35. dreamrealterminology is a drag, yeah, I get that
  36. jreicherSo because there's a mutation taking place, it needs to be a transaction.
  37. ParaKafka is built to synchronize on write acks, so that's one factor to consider as well. For the most part it doesn't matter much.
  38. ParaOne wild choice was using Zookeeper ephmeral nodes for consumer group topic offset tracking, although I think they got rid of that, as there's no zk dependency anymore.
  39. Para(or something similar, my brains a bit extra mushy right now)
  40. jreicherI never took the time to understand zookeeper, but yeah I think it's gone.
  41. Paragraphy thing with awesome features and nanosecond-scale latency as long as the hardware doesn't suck or behave erradically.
  42. dreamrealzk isn't gone but you can deploy without it, I think
  43. ParaIt never survived the cloud that well, CPU steal basically was like a gutpunch to ZK and then it would get into split brain dance, among other issues :D
  44. ParaKafka was built in Linkedin's in-house data centers originally with all the hardware they wanted running on bare metal, so they obviously hadn't considered things like CPU steal initially.
  45. jreicherWhenever I see split brain I have visions of some developer somewhere thinking how easy it was to write that automatic failover function...
  46. ParaAs a thingy I do like the ideas of Zookeeper though. Hierarchical configuration management with clustering, synchronization, several persistence levels etc.
  47. ParaKinda like what Hashicorp's Consul would then do a bit later.
  48. * michele joined #java
  49. * akaWolf joined #java
  50. * polarian joined #java
  51. deebonever knew kafka was from linkedin
  52. ParaYeh, pre-Microsoft
  53. ParaThen forked to Confluent.
  54. dreamreallife is a highway, man
  55. dreamrealsigns everywhere
  56. deebotom cochrane time
  57. dreamrealIt's a great song! And it's incredibly fun to play.
  58. * P1RATEZ joined #java
  59. * kcomhnall joined #java
  60. * jamezp joined #java
  61. * metalmaniac joined #java
  62. * sa02irc joined #java
  63. * zorone joined #java
  64. * kcomhnall joined #java
  65. * sponkz joined #java
  66. * sponkz69 joined #java
  67. * metalmaniac joined #java
  68. * kcomhnall joined #java
  69. * sa02irc joined #java
  70. * sa02irc joined #java
  71. * kathadris joined #java
  72. * mindCrime joined #java
  73. * magla joined #java
  74. * sa02irc joined #java
  75. * stfstfm joined #java
  76. * ferdna joined #java
  77. * MikeBux joined #java
  78. * kcomhnall joined #java
  79. * mindCrime joined #java
  80. * ChaiTRex joined #java
  81. * ChaiTRex joined #java
  82. * MikeBux joined #java
  83. * stfstfm_ joined #java
  84. * MikeBux joined #java
  85. * Drixtan joined #java
  86. * ChaiTRex joined #java