Skip to content

Commit 0c8e47f

Browse files
committed
mongodb
1 parent c1eaeb6 commit 0c8e47f

7 files changed

Lines changed: 862 additions & 1 deletion

File tree

debug-mongo.js

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
import { MongoClient } from 'mongodb';
2+
import { createMongoQueue } from './dist/adapters/mongodb.js';
3+
4+
// Simple debug script to test MongoDB adapter
5+
async function debugMongo() {
6+
const client = new MongoClient('mongodb://localhost:27017');
7+
await client.connect();
8+
9+
const queue = createMongoQueue(client, 'debug_test', 'jobs');
10+
11+
console.log('1. Adding a job...');
12+
const jobId = await queue.addJob('test-job', { payload: { data: 'debug test' } });
13+
console.log('Job added with ID:', jobId);
14+
15+
console.log('2. Checking job status...');
16+
const status = await queue.status(jobId);
17+
console.log('Job status:', status);
18+
19+
console.log('3. Checking database directly...');
20+
const db = client.db('debug_test');
21+
const collection = db.collection('jobs');
22+
const jobs = await collection.find({}).toArray();
23+
console.log('Jobs in database:', jobs.length);
24+
console.log('First job:', JSON.stringify(jobs[0], null, 2));
25+
26+
console.log('4. Trying to reserve a job...');
27+
const adapter = queue.db;
28+
const reserved = await adapter.reserveJob(5);
29+
console.log('Reserved job:', reserved);
30+
31+
await client.close();
32+
}
33+
34+
debugMongo().catch(console.error);

package.json

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,8 +38,10 @@
3838
"devDependencies": {
3939
"@aws-sdk/client-sqs": "^3.831.0",
4040
"@types/better-sqlite3": "7.6.13",
41+
"@types/mongodb": "^4.0.7",
4142
"@types/node": "^20.0.0",
4243
"better-sqlite3": "^12.0.0",
44+
"mongodb": "^6.17.0",
4345
"redis": "^5.5.6",
4446
"testcontainers": "^11.0.3",
4547
"typescript": "^5.0.0",
@@ -61,11 +63,16 @@
6163
"./sqs": {
6264
"import": "./dist/adapters/sqs.js",
6365
"types": "./dist/adapters/sqs.d.ts"
66+
},
67+
"./mongodb": {
68+
"import": "./dist/adapters/mongodb.js",
69+
"types": "./dist/adapters/mongodb.d.ts"
6470
}
6571
},
6672
"peerDependencies": {
6773
"@aws-sdk/client-sqs": "^3.0.0",
6874
"better-sqlite3": "^9.0.0",
75+
"mongodb": "^6.0.0",
6976
"redis": "^4.0.0"
7077
},
7178
"peerDependenciesMeta": {
@@ -75,6 +82,9 @@
7582
"better-sqlite3": {
7683
"optional": true
7784
},
85+
"mongodb": {
86+
"optional": true
87+
},
7888
"redis": {
7989
"optional": true
8090
}

pnpm-lock.yaml

Lines changed: 129 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)