2018-07-12 Meeting notes

Date

Attendees

Goals

Discussion items

TimeItemWhoNotes
Detail of what needs to be done
  • If we offer the channel hash, we can query the produces for the COMM events
  • What if a user wants an event that was never in a checkpoint?
    • If the user has the hash of the channel and the hash of the data.
      • If there is a produce from the trace and it was used in the trace, it won't be in any check point.
      • The user wants the data associated with a COMM event, but if it was consumed in the computation by the COMM event, it won't be in the checkpoint.
      • There are COMM events that will involve consumes and produces that were there before, where the data / continuation is waiting in the channel from the prior block.

 Data in the log
  •  Take the COMM events from the trace log, and subtract the consumes and produces that appear in the trace log. 
    • Leaves us with a set of produces and consume and go find the data for these.  Doesn't seem to be enough information for us to go get the data.
  • We need to have a richer hash, so we can retrieve that information.  
  • In the trie these are stored as gnat - it contains all the stuff, the channel, pattern, data at the continuation, channel hash.  Looked up via the channel's hash.
  • Make the trace log slightly richer by including the hash of the channels.  

Trie Merges
  • 2 blocks, both with the same parent.  Contain no conflicting COMM events.  We would like to apply the diff to another state hash (Trie Merge)
  • Eventually we will want to start slowly optimizing when the entire trace doesn't need to be run in order to come to the desired state.

What will be done
  • Channel Hash
  • Arrange such that if there is a message on the channel, send the data.
  • If you want to know about a particular event on a channel, you will need to send a replay request.  (request for intermediate information)
  • Get information from the Trie and seeing if the data is still there, hot in the store.

Client Experience
  • Users will subscribe to a channel, part of the subscription will have to include a destination. 
  • Need to dig into the gRPC api and see how the data exchange would operate.
  • Pair of blockhash and replay data.

Action items

  •