@@ -148,26 +148,12 @@ proc cleanUp(
148148
149149 # Re-add items back into the queue to prevent small availabilities from
150150 # draining the queue. Seen items will be ordered last.
151- if data.slotIndex <= uint16 .high.uint64 and reprocessSlot and request =? data.request:
152- let res =
153- await noCancel sales.context.market.slotCollateral (data.requestId, data.slotIndex)
154- if res.isErr:
155- error " Failed to re-add item back to the slot queue: unable to calculate collateral" ,
156- error = res.error.msg
157- else :
158- let collateral = res.get ()
159- let queue = sales.context.slotQueue
160- var seenItem = SlotQueueItem .init (
161- data.requestId,
162- data.slotIndex.uint16 ,
163- data.ask,
164- request.expiry,
165- seen = true ,
166- collateral = collateral,
167- )
168- trace " pushing ignored item to queue, marked as seen"
169- if err =? queue.push (seenItem).errorOption:
170- error " failed to readd slot to queue" , errorType = $ (type err), error = err.msg
151+ if reprocessSlot and request =? data.request and var item =? agent.data.slotQueueItem:
152+ let queue = sales.context.slotQueue
153+ item.seen = true
154+ trace " pushing ignored item to queue, marked as seen"
155+ if err =? queue.push (item).errorOption:
156+ error " failed to readd slot to queue" , errorType = $ (type err), error = err.msg
171157
172158 let fut = sales.remove (agent)
173159 sales.trackedFutures.track (fut)
@@ -181,8 +167,9 @@ proc processSlot(
181167) {.async : (raises: [CancelledError ]).} =
182168 debug " Processing slot from queue" , requestId = item.requestId, slot = item.slotIndex
183169
184- let agent =
185- newSalesAgent (sales.context, item.requestId, item.slotIndex, none StorageRequest )
170+ let agent = newSalesAgent (
171+ sales.context, item.requestId, item.slotIndex, none StorageRequest , some item
172+ )
186173
187174 let completed = newAsyncEvent ()
188175
0 commit comments