Examples: query, "exact match", wildcard*, wild?ard, wild*rd
Fuzzy search: cake~ (finds cakes, bake)
Term boost: "red velvet"^4, chocolate^2
Field grouping: tags:(+work -"fun-stuff")
Escape special characters +-&|!(){}[]^"~*?:\ - e.g. \+ \* \!
Range search: properties.timestamp:[1587729413488 TO *] (inclusive), properties.title:{A TO Z}(excluding A and Z)
Combinations: chocolate AND vanilla, chocolate OR vanilla, (chocolate OR vanilla) NOT "vanilla pudding"
Field search: properties.title:"The Title" AND text
Unanswered
Expand the case of `commit()` phases?

According to the documentation, we find the commit() FunC code described as follows:

Commits the current state of registers c4 (“persistent data”) and c5 (“actions”) so that 

the current execution is considered “successful” with the saved values, even if an exception is thrown later.

https://docs.ton.org/develop/func/stdlib#commit

The description may be confusing. Here are some questions to clarify:

  • What will we receive in terms of an exception or error if we have already committed the code to the smart contract?
  • Why do we need to commit the data or status to the smart contract code even if it will result in an error in the end?
  • What will be the consequence if the smart contract receives an "unknown error status"?
  
  
Posted one year ago
Edited one year ago
Votes Newest

Answers