microsoft / FluidFramework

Library for building distributed, real-time collaborative web applications
https://fluidframework.com
MIT License
4.75k stars 536 forks source link

"Invalid incoming sequence number" errors in telemetry #791

Closed vladsud closed 4 years ago

vladsud commented 4 years ago

packages\runtime\consensus-register-collection\src\consensusRegisterCollection.ts

    assert(
        data.versions.length === 0 ||
        versionUpdate.sequenceNumber > data.versions[data.versions.length - 1].sequenceNumber,
        "Invalid incoming sequence number");

Shows up as fluid:telemetry:Summarizer:Summarizing_cancel event in telemetry 130 hits over 5 days, affecting 5 documents, biggest one has 118 hits

tanviraumi commented 4 years ago

Do we have any log or stack trace? The assert only checks whether the incoming sequence number is strictly greater than the stored sequence number. We can remove the check but I am curious to understand why its failing. Sequence number should always be monotonically increasing.

vladsud commented 4 years ago

We should not remove assert :) This looks (on the surface) identical to sequence asserts, so I think Arin / Tony should continue looking into it, as both issues point out - there is something wrong in summarizing workflow.

vladsud commented 4 years ago

@anthony-murphy - FYI

arinwt commented 4 years ago

Confirmed from telemetry, I believe it is the same as issue #790.