Hacktoberfest 2026: die Issues, die Maintainer für den Oktober markiert haben – offen und einsteigerfreundlich. Hacktoberfest-Issues durchsuchen

LargeFileUploadTask.upload throws PassThrough.

Offen
#1,895 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Bewertung

Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Anfängerfreundlichkeit
30/100
Issue-Typ
Bug
Klarheit
Muss geklärt werden
Aktivitätsstatus
Veraltet
Tech-Stack
node.js, typescript
Bereich
api

Rechercherichtung

Start with LargeFileUploadTask.upload, the FileUpload construction, and createUploadSession call shown in the report; reproduce the intermittent failure with Node 20 and the 30 one-megabyte OneDrive uploads. Done means identifying why PassThrough is surfaced and documenting or fixing prevention or handling, with the behavior verified against the supplied scenario.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

status:waiting-for-triage type:bug
Describe the bug

When uploading 30 1MB files to OneDrive, LargeFileUploadTask.upload occasionally (about once in 5 times) throws PassThrough.

Expected behavior

I want to know how to prevent PassThrough from being thrown. Or, I want to know how to handle PassThrough when it is caught.

How to reproduce

The src is as follows:

const uploadSession = await LargeFileUploadTask.createUploadSession(
  graphClient,
  uploadSessionUrl,
  {
    item: {
      '@microsoft.graph.conflictBehavior': 'rename',
      name: filename,
    },
  },
);

const fileUpload = new FileUpload(
  fileContent,
  filename,
  fileContent.length,
);

const uploadTask = new LargeFileUploadTask(graphClient, fileUpload, uploadSession, {
  rangeSize: 1048576,
});

try {
  const uploadResult = await uploadTask.upload();

  return uploadResult?.responseBody
    ? (uploadResult.responseBody as DriveItem)
    : null;
} catch (e) {
  this.logger.error({
    message: e.constructor?.name+' '+JSON.stringify(e),
  });
  throw e;
}
SDK Version

3.0.7

Latest version known to work for scenario above?

No response

Known Workarounds

No response

Debug output
Click to expand log ``` PassThrough { "_events": {}, "_readableState": { "highWaterMark": 16384, "buffer": [ { "type": "Buffer", "data": [・・・] } ], "bufferIndex": 0, "length": 8062, "pipes": [], "awaitDrainWriters": null }, "_writableState": { "highWaterMark": 16384, "length": 0, "corked": 0, "writelen": 0, "bufferedIndex": 0, "pendingcb": 0 }, "allowHalfOpen": true, "_eventsCount": 2 } ```
Configuration
  • node:20-alpine3.19
  • node.version v20.18.0
Other information

No response

Vorherrschende Sprache
TypeScript
Sterne
834
Forks
240
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Entwicklungsumgebung

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus microsoftgraph/msgraph-sdk-javascript

Alle Issues in microsoftgraph/msgraph-sdk-javascript

Ähnliche Issues

Weitere Issues zu TypeScript

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.