To implement our process logs, Hugues used a new API that allows write operations to be streamed without having to go through traditional transactions. As a result, many layers of our middleware are being by-passed, including triggers, workflow, etc. This makes such write operations a lot more efficient, while reducing many side-effects that could potentially snowball when doing a lot of write operations in a very short period of time.
With that in mind, we’re currently considering exposing this API to the
UPDATE() functions of FormulaJS, with some optional parameter. When this parameter would be set to
TRUE, the stream write API would be used instead of the regular one. This could be very useful when using processors for doing things like logging or automated testing. Hugues, Yves, and Pascal will discuss that tomorrow.