4 ms·
> The Weblogic servers were configured to enable distributed transactions, so … there was a high degree of assurance that there will be no data corruption nor r
by orf 2y ago
> The Weblogic servers were configured to enable distributed transactions, so … there was a high degree of assurance that there will be no data corruption nor race conditions.
> we have forgotten how to make distributed apps
Have you, really? Did you ever know? It sounds like you just:
- used a framework (I hope the “high assurance” bit is a joke…)
- then forgot to configure it correctly for a new deployment environment.
Honestly, “Engineering excellence” and “we build things with Weblogic distributed transactions” are two things that are not commonly put together.
- sam_lowry_ 2y ago> “high assurance” bit is a joke… OP here. It is not, Weblogic distributed transactions are using two-phase commits under the hood. From the point of view of contemporary Computer Science, two-phase commits give up Availability in the CAP theorem. Deadlocks may still happen. The issue with moving from Weblogic to Kubernetes is that previously, Weblogic enforced consistency and prevented partitioning. With Kubernetes, this responsibility moved from the Weblogic to application developers. Were they prepared or empowered to take over? I think not all of them and not everywhere.
- sriram_malhar 2y agoOuch! I wrote much of the Weblogic server's distributed transactions framework back in the day. Forget EJB (which too I wrote :(, but in my defense it was forced on us by IBM and Oracle, and I personally hated it). The JTA bit was a thin sliver over the various db and messaging product vendors' XA drivers, which differed in important and annoying ways. Some were not thread-safe (SQLServer), some drivers' connections had to be pinned to the same thread (Informix) etc. As a user, if you had to have distributed transactions, you would have done worse than Weblogic, methinks.
- orf 2y agoSorry! I didn’t mean to throw shade on your work. What I mean is that being able to turn a key in a car ignition doesn’t make one a car mechanic.