denoland / denoland/deploy_feedback

[KV Feedback]: Dequeue is not working

Open
#704 1 comment 1 reaction 0 assignees View on GitHub
kv
Dominant language
No language data
Stars
79
Forks
5
PR merge metrics
No merged PRs in 30d

Description

### 🔍

- [X] Did you search for existing issues?

### Type of feedback

Bug report

### Description

We're facing an issue where events are not de-queued in our Deno Deploy environment for the past 24 hours

Screenshot 2024-08-19 at 19 28 15

We have not changed anything specific to the queue or dequeue logic

### Steps to reproduce (if applicable)

```

const db = await Deno.openKv();
//...
const result = await db
.atomic()
.check({ key: keys.WEBHOOK_LOCK(txHash, webhookId), versionstamp: null }) //ensure not queued before
.set(keys.WEBHOOK_LOCK(txHash, webhookId), true, {
expireIn: Number(Deno.env.get("WEBHOOK_LOCK_EXPIRE_IN_MILLIS")!),
})
.enqueue({ ...event, timestampMillis: Date.now() })
.commit();
console.log(`Webhook for tx ${txHash} queued`, result);
if (!result.ok) {
console.log(`Webhook for tx ${txHash} already queued`);
}

```

### Expected behavior (if applicable)

For the same DB instance, we have the following

```
db.listenQueue(callback);
```

but the callback never gets triggered, and in the analytics dashboard we don't see any dequeue count

### Possible solution (if applicable)

_No response_

### Additional context

We did previously see `gep-us-east4 Error: txnproxy call timed out`

Contributor guide

No contributing guide indexed for this repository

Research direction

Start with the Deno.openKv(), atomic().enqueue(), and db.listenQueue(callback) calls in the report, then compare the enqueue result with the missing callback and dequeue count in Deno Deploy analytics. Reproduce the behavior in the reported environment and determine whether the queue is accepted but not delivered; done means the callback runs and dequeue activity is recorded for the same DB instance.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript
Domain
backend, databases
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.