← Back to context

Comment by mixdup

1 day ago

>To me that seems to create a window where it might route to the wrong cell due to an outdated routing state.

But if the router sends to the wrong cell the cell will either send it back to be rerouted or it will fail and the router will try again (or report back the failure so upstream can try again I assume)

That would be the good case.

But what if the cell doesn't know that, and it's holding, for example, a stale account number?

  • Generally with a credit card, or many banking systems more generally, because they predate computers, it's possible that a charge might be accepted even if there's no knowledge whether the money is in the account. As long as the person who was supposed to have paid is identifiable, the money is taken from their account anyway in the end, and if they don't have it, they get sued and their wages garnished, and if they also don't have wages, that's a small enough percentage of people that it's part of the cost of doing business.

    • Too true. We all think these payment systems are 'strongly consistent' and RDBMS vendors and projects since time immemorial love to talk about their ACID suitability for payments. In reality, zoom out enough and it's all eventually consistent and resolved through the legal system if the computers failed.