mandatoryprogrammer / mandatoryprogrammer/theinternetbackup-cli

Problem with huge files

Open
#1 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
JavaScript
Stars
10
Forks
1
PR merge metrics
No merged PRs in 30d

Description

Crash occurs when the target file was not fit into the memory:

TheInternetBackup.com Zone Submission CLI tool, version 1.0.0

✓ Authenticated to TheInternetBackup API successfully.


#
# Fatal error in , line 0
# API fatal error handler returned after process out of memory
#
Illegal instruction

And there is also problem with submitting files large than 4GB:

TheInternetBackup.com Zone Submission CLI tool, version 1.0.0

✓ Authenticated to TheInternetBackup API successfully.
(node:32047) UnhandledPromiseRejectionWarning: RangeError: "size" argument must not be larger than 2147483647
    at Function.Buffer.allocUnsafe (buffer.js:253:3)
    at tryCreateBuffer (fs.js:528:21)
    at Object.fs.readFileSync (fs.js:568:14)
    at upload_domain_list (~/src/theinternetbackup-cli/tib-cli.js:118:22)
    at ~/src/theinternetbackup-cli/tib-cli.js:66:8
    at <anonymous>
    at process._tickCallback (internal/process/next_tick.js:189:7)
(node:32047) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 3)
(node:32047) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start in tib-cli.js at upload_domain_list around line 118 and follow its call from line 66. Reproduce the failure with a file that exceeds available memory and with a file larger than 4GB; done means both uploads complete without the out-of-memory crash or the Buffer.allocUnsafe size error.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript, node.js
Domain
cli
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.