RocketChat / Rocket.Chat

The communications platform that puts data protection first.
https://rocket.chat/
Other
39.95k stars 10.29k forks source link

Can't upload file to Ceph RGW S3 API with SigV4 #32849

Open dusatvoj opened 1 month ago

dusatvoj commented 1 month ago

Description:

I did a migration of files to S3. I tried setup before that and I hitted an error, written below.

My setup:

Steps to reproduce:

  1. Setup SigV4 for S3 in RC
  2. Try to upload a file

Expected behavior:

File uploaded

Actual behavior:

File not uploaded / missing

Server Setup Information:

Client Setup Information

Additional context

N/A

Relevant logs:

Log message shown in Reports

{"level":50,"time":"2024-07-20T12:23:24.859Z","pid":1,"hostname":"rocketchat-rocketchat-6df49df4db-c4xxt","name":"System","err":{"type":"Error","message":"Non-file stream objects are not supported with SigV4","stack":"Error: Non-file stream objects are not supported with SigV4<br>    at Object.computeSha256 (/app/bundle/programs/server/npm/node_modules/aws-sdk/lib/util.js:753:23)<br>    at Request.COMPUTE_SHA256 (/app/bundle/programs/server/npm/node_modules/aws-sdk/lib/event_listeners.js:205:18)<br>    at Request.callListeners (/app/bundle/programs/server/npm/node_modules/aws-sdk/lib/sequential_executor.js:102:18)<br>    at Request.emit (/app/bundle/programs/server/npm/node_modules/aws-sdk/lib/sequential_executor.js:78:10)<br>    at Request.emit (/app/bundle/programs/server/npm/node_modules/aws-sdk/lib/request.js:686:14)<br>    at Request.transition (/app/bundle/programs/server/npm/node_modules/aws-sdk/lib/request.js:22:10)<br>    at AcceptorStateMachine.runTo (/app/bundle/programs/server/npm/node_modules/aws-sdk/lib/state_machine.js:14:12)<br>    at /app/bundle/programs/server/npm/node_modules/aws-sdk/lib/state_machine.js:26:10<br>    at Request.<anonymous> (/app/bundle/programs/server/npm/node_modules/aws-sdk/lib/request.js:38:9)<br>    at Request.<anonymous> (/app/bundle/programs/server/npm/node_modules/aws-sdk/lib/request.js:688:12)<br>    at Request.callListeners (/app/bundle/programs/server/npm/node_modules/aws-sdk/lib/sequential_executor.js:116:18)<br>    at Request.emit (/app/bundle/programs/server/npm/node_modules/aws-sdk/lib/sequential_executor.js:78:10)<br>    at Request.emit (/app/bundle/programs/server/npm/node_modules/aws-sdk/lib/request.js:686:14)<br>    at Request.transition (/app/bundle/programs/server/npm/node_modules/aws-sdk/lib/request.js:22:10)<br>    at AcceptorStateMachine.runTo (/app/bundle/programs/server/npm/node_modules/aws-sdk/lib/state_machine.js:14:12)<br>    at /app/bundle/programs/server/npm/node_modules/aws-sdk/lib/state_machine.js:26:10<br>    at Request.<anonymous> (/app/bundle/programs/server/npm/node_modules/aws-sdk/lib/request.js:38:9)<br>    at Request.<anonymous> (/app/bundle/programs/server/npm/node_modules/aws-sdk/lib/request.js:688:12)<br>    at Request.callListeners (/app/bundle/programs/server/npm/node_modules/aws-sdk/lib/sequential_executor.js:116:18)<br>    at callNextListener (/app/bundle/programs/server/npm/node_modules/aws-sdk/lib/sequential_executor.js:96:12)<br>    at /app/bundle/programs/server/npm/node_modules/aws-sdk/lib/event_listeners.js:120:11<br>    at finish (/app/bundle/programs/server/npm/node_modules/aws-sdk/lib/config.js:396:7)<br>    at /app/bundle/programs/server/npm/node_modules/aws-sdk/lib/config.js:414:9<br>    at Credentials.get (/app/bundle/programs/server/npm/node_modules/aws-sdk/lib/credentials.js:127:7)<br>    at getAsyncCredentials (/app/bundle/programs/server/npm/node_modules/aws-sdk/lib/config.js:408:24)<br>    at Config.getCredentials (/app/bundle/programs/server/npm/node_modules/aws-sdk/lib/config.js:428:9)<br>    at Request.VALIDATE_CREDENTIALS (/app/bundle/programs/server/npm/node_modules/aws-sdk/lib/event_listeners.js:111:28)<br>    at Request.callListeners (/app/bundle/programs/server/npm/node_modules/aws-sdk/lib/sequential_executor.js:102:18)<br>    at Request.emit (/app/bundle/programs/server/npm/node_modules/aws-sdk/lib/sequential_executor.js:78:10)<br>    at Request.emit (/app/bundle/programs/server/npm/node_modules/aws-sdk/lib/request.js:686:14)<br>    at Request.transition (/app/bundle/programs/server/npm/node_modules/aws-sdk/lib/request.js:22:10)<br>    at AcceptorStateMachine.runTo (/app/bundle/programs/server/npm/node_modules/aws-sdk/lib/state_machine.js:14:12)<br>    at Request.runTo (/app/bundle/programs/server/npm/node_modules/aws-sdk/lib/request.js:406:15)<br>    at Request.send (/app/bundle/programs/server/npm/node_modules/aws-sdk/lib/request.js:370:10)","code":"Error","time":"2024-07-20T12:23:24.859Z"},"msg":"Non-file stream objects are not supported with SigV4"}
reetp commented 1 month ago

Thanks for reporting.

As an Enterprise client you should contact support directly via your cloud panel.or email support @ rocket.chat

I will ping the team on this anyway.

dusatvoj commented 1 month ago

@reetp , as it's non blocking for us (it work's fine with SigV2 but SigV2 is deprecated so I want to switch to SigV4) I haven't fired a ticket at enterprise helpdesk.

If there there's something which blocks us I will definitely write it at Enterprise desk.

Thank you.

reetp commented 1 month ago

I really would speak to them if it's a breakage, even non-blocking.

It's a much faster route for you to get it looked at than here.