A couple questions about the latest state of Motoko

A couple of questions that may have been answered previously, but I know work was happening and I’m curious about the current state. cc @claudio @rossberg @nomeata

  1. Did the happy path ever get rolled out that was discussed in How are awaits handled that don't call an async function? - #2 by nomeata? My understanding of the current state is that awaiting a function in self is fast but does commit state. So we need to be careful of what happens after, but shouldn’t worry about performance?

  2. What happens to the cycle limit after I return from an await call to another server? Since it is in another round of consensus, does my cycle use counter reset to 0 as far as the cycle limit is concerned? In other words, would this run forever if get_status never returned true or hit the cycle limit quickly? or hit some other stack or execution limit eventually?:

label hangout while (1 ==1){
   let result = await other_canister.get_status();
   if( result == "true"){
       break hangout;
   }:
};

2 Likes