Skip to content

Commit a75dbd5

Browse files
authored
Merge pull request #639 from qtomlinson/qt/support_visibility
Add support for visibility timeout in AzureQueueStore
2 parents 489728c + f7dac4f commit a75dbd5

File tree

2 files changed

+5
-2
lines changed

2 files changed

+5
-2
lines changed

config/cdConfig.js

+3-1
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ const cd_file = {
1919
const crawlerStoreProvider = config.get('CRAWLER_STORE_PROVIDER') || 'cd(file)'
2020
const maxRequeueAttemptCount = config.get('CRAWLER_MAX_REQUEUE_ATTEMPTS') || 5
2121
const fetchedCacheTtlSeconds = config.get('CRAWLER_FETCHED_CACHE_TTL_SECONDS') || 60 * 60 * 8 //8 hours
22+
const azqueueVisibilityTimeoutSeconds = parseInt(config.get('CRAWLER_HARVESTS_QUEUE_VISIBILITY_TIMEOUT_SECONDS'))
2223

2324
module.exports = {
2425
provider: 'memory', // change this to redis if/when we want distributed config
@@ -117,7 +118,8 @@ module.exports = {
117118
account: cd_azblob.account,
118119
queueName: config.get('CRAWLER_HARVESTS_QUEUE_NAME') || 'harvests',
119120
spnAuth: config.get('CRAWLER_HARVESTS_QUEUE_SPN_AUTH'),
120-
isSpnAuth: config.get('CRAWLER_HARVESTS_QUEUE_IS_SPN_AUTH') || false
121+
isSpnAuth: config.get('CRAWLER_HARVESTS_QUEUE_IS_SPN_AUTH') || false,
122+
visibilityTimeout: isNaN(azqueueVisibilityTimeoutSeconds) ? 5 * 60 : azqueueVisibilityTimeoutSeconds // 5 minutes default
121123
},
122124
'cd(azblob)': cd_azblob,
123125
'cd(file)': cd_file

providers/store/azureQueueStore.js

+2-1
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,8 @@ class AzureStorageQueue {
5454

5555
async upsert(document) {
5656
const message = Buffer.from(JSON.stringify({ _metadata: document._metadata })).toString('base64')
57-
return await this.queueService.sendMessage(message)
57+
const options = { visibilityTimeout: this.options.visibilityTimeout || 0 }
58+
return await this.queueService.sendMessage(message, options)
5859
}
5960

6061
get() {

0 commit comments

Comments
 (0)