> So if I understand this correctly, if I receive a NodeDataChanged event, and
> then attempt do do a read of that node, there's a race condition where the
> server could crash and I would be disconnected and my read would hit an
> Or, the ACL could change and I no longer have permission to read the file
> (though I did for a short window).
> ..... now I have to add all this logic to retry. Are there any other race
> conditions I wonder.
I think you have mentioned all of them.
> Why not just send the byte data during the NodeDataChanged or NodeCreated
> event from the server? This would avoid all these issues.
> It's almost certainly what the user wants anyway.
Its just that the watches are pretty lightweight and sending bytes around is
just more work to do at the server. Though we should experiment with how
much more load it generates and how useful would it be to send out the bytes
with the event of nodedatachanged and nodecreated.