Snowpipe Streaming Node.js SDK v1.8.0
    Preparing search index...

    Class SuccessDetail

    The payload handed to an elastic-channel success handler (registered via StreamingIngestElasticChannel.setSuccessHandler) when appends are acknowledged by Snowflake.

    Delivered once per successful acknowledgement, carrying the caller-supplied append tokens of every append acked together in that server-ack batch. There is no error field — unlike ErrorDetail, there is nothing to explain.

    Instances are created by the SDK and frozen; handlers only read this type, so new fields can be added over time without breaking them.

    Index

    Properties

    appendTokens: readonly unknown[]

    The opaque, caller-supplied append tokens of the appends that were acknowledged together. Never empty; a token reused across appends appears once per acknowledged append (not deduplicated). Frozen at construction — the array itself cannot be modified, though the tokens inside it are the caller's own objects.

    requestId: string

    The Snowflake request id of the server response that acknowledged these appends, for support escalation.

    retryCount: number

    How many retries that request took: 0 when the first attempt was acknowledged, N when the SDK retried N times before Snowflake accepted it.

    Use this to decide whether these rows may be duplicated in the table. A retry re-sends the same rowset, and the SDK retries whenever it cannot tell that the previous attempt failed — a timeout or a 5xx may mean the rows were never processed, or that they were processed and only the response was lost. 0 means the SDK sent this rowset once and introduced no duplicate; > 0 means it sent it more than once and an earlier attempt may already have been applied, so the rows may appear more than once. Reconcile or de-duplicate downstream if you need exactly-once.

    The signal is conservative: it counts every re-send, including an authentication refresh, which is rejected before the rows are processed and so cannot have duplicated anything. > 0 means "a duplicate is possible", not "a duplicate happened".

    Read it only when requestId is non-null: an acknowledgement with no originating request reports 0 too. A steadily non-zero count also means the SDK is absorbing retries on your behalf.