RocketChat / RocketChat/Rocket.Chat
ENOENT error message, user-data-downloads/cronProcessDownloads.js
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 46.1k
- Forks
- 13.9k
- Avg merge
- 3d 3h
- Merged PRs (30d)
- 130
Description
Description:
These log messages keep appearing, and seem to be related to the user data download. We had this functionality turned on for a bit, and I think a few people may have actually attempted to use it. Eventually, we turned it off. Now, though, we still see this message repeating in the log file, which seems like the cron is trying to process a (stuck?) user data download operation over and over again.
If this is the case, I'd be interested to know how to kill this operation so the log message will not appear any longer. We have restarted the RC service several times, and this message comes back each time.
Steps to reproduce:
- Look in the Rocket.Chat server logs and you will observe this message repeating at regular intervals.
Expected behavior:
I would expect not to see this message.
Actual behavior:
you will observe this message repeating at regular intervals
Server Setup Information:
- Version of Rocket.Chat Server: 3.6.0
- Operating System: RedHat
- Deployment Method: tar
- Number of Running Instances:
- DB Replicaset Oplog:
- NodeJS Version:
- MongoDB Version:
Client Setup Information
- Desktop App or Browser Version: Chrome
- Operating System: OSX
Additional context
Relevant logs:
Oct 21 13:32:00 ip-172-31-43-120 rocketchat: Error: ENOENT: no such file or directory, open '/tmp/userData/ngMZFJPZhQaJqTsMe/user.html'
Oct 21 13:32:00 ip-172-31-43-120 rocketchat: at Object.openSync (fs.js:457:3)
Oct 21 13:32:00 ip-172-31-43-120 rocketchat: at Object.writeFileSync (fs.js:1282:35)
Oct 21 13:32:00 ip-172-31-43-120 rocketchat: at startFile (app/user-data-download/server/cronProcessDownloads.js:35:5)
Oct 21 13:32:00 ip-172-31-43-120 rocketchat: at generateUserFile (app/user-data-download/server/cronProcessDownloads.js:421:2)
Oct 21 13:32:00 ip-172-31-43-120 rocketchat: at app/user-data-download/server/cronProcessDownloads.js:488:4
Oct 21 13:32:00 ip-172-31-43-120 rocketchat: at /opt/Rocket.Chat/programs/server/npm/node_modules/meteor/promise/node_modules/meteor-promise/fiber_pool.js:43:40 {
Oct 21 13:32:00 ip-172-31-43-120 rocketchat: errno: -2,
Oct 21 13:32:00 ip-172-31-43-120 rocketchat: syscall: 'open',
Oct 21 13:32:00 ip-172-31-43-120 rocketchat: code: 'ENOENT',
Oct 21 13:32:00 ip-172-31-43-120 rocketchat: path: '/tmp/userData/ngMZFJPZhQaJqTsMe/user.html'
Oct 21 13:32:00 ip-172-31-43-120 rocketchat: }
Oct 21 13:32:27 ip-172-31-43-120 dhclient[2745]: XMT: Solicit on eth0, interval 110050ms.
Oct 21 13:34:00 ip-172-31-43-120 rocketchat: Error: ENOENT: no such file or directory, open '/tmp/userData/ngMZFJPZhQaJqTsMe/user.html'
Oct 21 13:34:00 ip-172-31-43-120 rocketchat: at Object.openSync (fs.js:457:3)
Oct 21 13:34:00 ip-172-31-43-120 rocketchat: at Object.writeFileSync (fs.js:1282:35)
Oct 21 13:34:00 ip-172-31-43-120 rocketchat: at startFile (app/user-data-download/server/cronProcessDownloads.js:35:5)
Oct 21 13:34:00 ip-172-31-43-120 rocketchat: at generateUserFile (app/user-data-download/server/cronProcessDownloads.js:421:2)
Oct 21 13:34:00 ip-172-31-43-120 rocketchat: at app/user-data-download/server/cronProcessDownloads.js:488:4
Oct 21 13:34:00 ip-172-31-43-120 rocketchat: at /opt/Rocket.Chat/programs/server/npm/node_modules/meteor/promise/node_modules/meteor-promise/fiber_pool.js:43:40 {
Oct 21 13:34:00 ip-172-31-43-120 rocketchat: errno: -2,
Oct 21 13:34:00 ip-172-31-43-120 rocketchat: syscall: 'open',
Oct 21 13:34:00 ip-172-31-43-120 rocketchat: code: 'ENOENT',
Oct 21 13:34:00 ip-172-31-43-120 rocketchat: path: '/tmp/userData/ngMZFJPZhQaJqTsMe/user.html'
Oct 21 13:34:00 ip-172-31-43-120 rocketchat: }
Oct 21 13:34:17 ip-172-31-43-120 dhclient[2745]: XMT: Solicit on eth0, interval 114950ms.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with app/user-data-download/server/cronProcessDownloads.js, especially startFile at line 35, generateUserFile at line 421, and the cron callback near line 488. Reproduce the recurring ENOENT for the reported user-data download and trace why the cron keeps processing it. Done means the stuck operation no longer produces repeated missing-file errors.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- javascript, node.js
- Domain
- backend
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100