92
messageID int64,
93
blob *commonpb.DataBlob,
95
>
query := q.session.Query(templateEnqueueMessageQuery, queueType, messageID, blob.Data, blob.EncodingType.String()).WithContext(ctx)
96
>
previous := make(map[string]any)
97
>
applied, err := query.MapScanCAS(previous)
98
>
if err != nil {
99
return persistence.EmptyQueueMessageID, gocql.ConvertError("tryEnqueue", err)
100
}
101
103
>
return persistence.EmptyQueueMessageID, &persistence.ConditionFailedError{Msg: fmt.Sprintf("message ID %v exists in queue", previous["message_id"])}
104
>
}
105
107
}
108