Live data from Hacker News

This Message Does Not Exist

kmjn.org

1–10 of 278 posts

Re: This Message Does Not Exist

#6
I've had similar philosophical thoughts about a transaction rollback.

Consider this definition from go's database/sql package.

    func (tx *Tx) Rollback() error
Rollback can fail, indicated as such by it can return an error. What are the cases where rollback could fail and what's the recovery mechanism? Does a failed rollback mean (logically) that the transaction is still open and uncommitted? But really, invoking rollback can never fail to abort the transaction, so the error result has little use.

Now, obviously the error isn't totally useless as an error can be returned to indicate, say, the connection to the database was dropped. But even in that case, the definition of a transaction's validity/lifetime means that even if rollback fails, the transaction is in the same state as if rollback had succeeded.

Re: This Message Does Not Exist

#7
It's very easy.

"This message does not exist" can be taken to be a false statement, without introducing any contradiction.

It is not like "this message is false" (Liar's Paradox) or "this sentence has no proof" (Gödel's sentence).

Unfortunately, just because "this message does not exist" is a false statement, contradicted by existential evidence, doesn't mean that the remaining claims next to it can be dismissed as false.

Re: This Message Does Not Exist

#8
post #6

I've had similar philosophical thoughts about a transaction rollback. Consider this definition from go's database/sql package. func (tx *Tx) Rollback() error Rollback can fail, indicated as such by it can return an error. What are the cases where rollback could fail and what's the recovery mechanism? Does a failed rollback mean (logically) that the transaction is still open and uncommitted? But really, invoking rollb…

Obviously, transaction may fail to be rolled back and leave dangling locks. Not sure about the specifics.

Re: This Message Does Not Exist

#9
post #6

I've had similar philosophical thoughts about a transaction rollback. Consider this definition from go's database/sql package. func (tx *Tx) Rollback() error Rollback can fail, indicated as such by it can return an error. What are the cases where rollback could fail and what's the recovery mechanism? Does a failed rollback mean (logically) that the transaction is still open and uncommitted? But really, invoking rollb…

Or the Java SQL connection interface, that can throw SQLException on close(). Yes, if your connection throws an error when closing, I guess it stops being usable.

Has anybody ever did something useful with that exception?

Re: This Message Does Not Exist

#10
I find the message self explanatory.

Outlook is server authoritative. Message does not exist on server and thus it can't be saved.

But it is available on that client - client was able to load it before it was removed from server - and such it can be copied out or discarded from client.

Post reply on HN