Skip to content

Commit 3e0020d

Browse files
committed
fix(server): silence recovered download stalls
1 parent b7bd10e commit 3e0020d

2 files changed

Lines changed: 9 additions & 4 deletions

File tree

server/src/helpers/network-helper.ts

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -990,9 +990,11 @@ export class NetworkHelper {
990990
throw error
991991
}
992992

993-
LogHelper.warning(
994-
`Download range ${range.start}-${range.end} failed at byte ${writePosition}; retrying: ${String(error)}`
995-
)
993+
if (!madeProgress) {
994+
LogHelper.warning(
995+
`Download connection made no progress; retrying (${consecutiveNoProgressFailures}/${retryOptions.retries}): ${String(error)}`
996+
)
997+
}
996998
await this.sleep(
997999
this.getRetryDelay(
9981000
Math.max(1, consecutiveNoProgressFailures),

test/core/unit/network-helper.spec.ts

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -195,7 +195,9 @@ describe('NetworkHelper', () => {
195195
`${destinationPath}.download`,
196196
Buffer.alloc(existingPrefixBytes, 'b')
197197
)
198-
vi.spyOn(LogHelper, 'warning').mockImplementation(() => {})
198+
const warningSpy = vi
199+
.spyOn(LogHelper, 'warning')
200+
.mockImplementation(() => {})
199201

200202
const modelURL = `http://127.0.0.1:${address.port}/model.gguf`
201203
const downloadOptions = {
@@ -246,6 +248,7 @@ describe('NetworkHelper', () => {
246248
)
247249
expect(fs.statSync(destinationPath).size).toBe(totalBytes)
248250
expect(fs.existsSync(`${destinationPath}.download.state.json`)).toBe(false)
251+
expect(warningSpy).not.toHaveBeenCalled()
249252

250253
const fileHandle = fs.openSync(destinationPath, 'r')
251254
const sample = Buffer.alloc(3)

0 commit comments

Comments
 (0)