temporalio/temporal · error · Unavailable
failed to get last enqueued message id: %v
Error message
failed to get last enqueued message id: %v
What it means
Error "failed to get last enqueued message id: %v" thrown in temporalio/temporal.
Source
Thrown at common/persistence/sql/queue.go:66
func (q *sqlQueue) EnqueueMessage(
ctx context.Context,
blob *commonpb.DataBlob,
) error {
err := q.txExecute(ctx, "EnqueueMessage", func(tx sqlplugin.Tx) error {
lastMessageID, err := tx.GetLastEnqueuedMessageIDForUpdate(ctx, q.queueType)
switch err {
case nil:
_, err = tx.InsertIntoMessages(ctx, []sqlplugin.QueueMessageRow{
newQueueRow(q.queueType, lastMessageID+1, blob),
})
return err
case sql.ErrNoRows:
_, err = tx.InsertIntoMessages(ctx, []sqlplugin.QueueMessageRow{
newQueueRow(q.queueType, persistence.EmptyQueueMessageID+1, blob),
})
return err
default:
return fmt.Errorf("failed to get last enqueued message id: %v", err)
}
})
if err != nil {
return serviceerror.NewUnavailable(err.Error())
}
return nil
}
func (q *sqlQueue) ReadMessages(
ctx context.Context,
lastMessageID int64,
pageSize int,
) ([]*persistence.QueueMessage, error) {
rows, err := q.DB.RangeSelectFromMessages(ctx, sqlplugin.QueueMessagesRangeFilter{
QueueType: q.queueType,
MinMessageID: lastMessageID,
MaxMessageID: persistence.MaxQueueMessageID,
PageSize: pageSize,View on GitHub (pinned to bde624efd1)
When it happens
Trigger: Thrown at common/persistence/sql/queue.go:66 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of temporalio/temporal@bde624efd1 (2026-09-01).
Data as JSON: /api/errors/7c21146b2ba29f8c.
Report an issue: GitHub.