Project

General

Profile

Actions

Bug #45099

closed

"s3cmd info s3://bucket" An unexpected error has occurred.

Added by Yoann Moulin about 4 years ago. Updated almost 4 years ago.

Status:
Resolved
Priority:
Normal
Assignee:
Target version:
% Done:

0%

Source:
Community (user)
Tags:
radosgw,
Backport:
Regression:
Yes
Severity:
3 - minor
Reviewed:
Affected Versions:
ceph-qa-suite:
Pull request ID:
Crash signature (v1):
Crash signature (v2):

Description

Hello,

I have a new fresh ceph cluster in Nautilus and I cannot get s3cmd info on buckets. It works on my older cluster in Luminous. I only change URL endpoint, access_key and secret_key in the .s3cfg file.


$ s3cmd -v info s3://image-net
s3://image-net/ (bucket):
   Location:  us-east-1
   Payer:     None

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    An unexpected error has occurred.
  Please try reproducing the error using
  the latest s3cmd code from the git master
  branch found at:
    https://github.com/s3tools/s3cmd
  and have a look at the known issues list:
    https://github.com/s3tools/s3cmd/wiki/Common-known-issues-and-their-solutions
  If the error persists, please report the
  following lines (removing any private
  info as necessary) to:
   s3tools-bugs@lists.sourceforge.net

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

Invoked as: /usr/local/bin/s3cmd -v info s3://image-net
Problem: <class 'TypeError: must be str, not NoneType
S3cmd:   2.0.2
python:   3.6.9 (default, Nov  7 2019, 10:44:02) 
[GCC 8.3.0]
environment LANG=fr_CH.UTF-8

Traceback (most recent call last):
  File "/usr/local/lib/python3.6/dist-packages/s3cmd-2.0.2-py3.6.egg/EGG-INFO/scripts/s3cmd", line 3092, in <module>
  File "/usr/local/lib/python3.6/dist-packages/s3cmd-2.0.2-py3.6.egg/EGG-INFO/scripts/s3cmd", line 3001, in main
  File "/usr/local/lib/python3.6/dist-packages/s3cmd-2.0.2-py3.6.egg/EGG-INFO/scripts/s3cmd", line 944, in cmd_info
TypeError: must be str, not NoneType

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    An unexpected error has occurred.
  Please try reproducing the error using
  the latest s3cmd code from the git master
  branch found at:
    https://github.com/s3tools/s3cmd
  and have a look at the known issues list:
    https://github.com/s3tools/s3cmd/wiki/Common-known-issues-and-their-solutions
  If the error persists, please report the
  above lines (removing any private
  info as necessary) to:
   s3tools-bugs@lists.sourceforge.net
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

debut log in attachment.

Thanks for your help.

Best regards,

Yoann


Files

image-net_KO.log (31.7 KB) image-net_KO.log s3cmd info s3://bucket debug log from Nautilus cluster Yoann Moulin, 04/15/2020 02:32 PM
image-net_OK.log (26.1 KB) image-net_OK.log s3cmd info s3://bucket debug log from Luminous cluster Yoann Moulin, 04/15/2020 02:32 PM
Actions #1

Updated by Or Friedmann about 4 years ago

  • Assignee set to Or Friedmann
Actions #2

Updated by Casey Bodley about 4 years ago

  • Status changed from New to Need More Info

it looks like your new radosgw isn't configured for virtual hosted buckets. s3cmd is sending requests to 'http://image-net.datasets.cluster.local.domain/' and they're being interpreted as RGWListBuckets requests, rather than requests to list a specific bucket resource

try adding this configuration to your ceph.conf:

rgw dns name = datasets.cluster.local.domain

Actions #3

Updated by Yoann Moulin about 4 years ago

looks good now thanks.

it looks like ceph-ansible does not set rgw dns name by default :

https://github.com/ceph/ceph-ansible/pull/4321

Thanks

Yoann

Actions #4

Updated by Or Friedmann almost 4 years ago

  • Status changed from Need More Info to Resolved
Actions #5

Updated by Yoann Moulin almost 4 years ago

Hello,

I just share a comment from a s3cmd dev from the issue I previously openned on github:

https://github.com/s3tools/s3cmd/issues/1090#issuecomment-616563704

Ok, I see, it is just a side effect of something unrelated.
If you want to follow up on the Ceph issue, you can transmit my remark that:
despite the configuration issue redirecting the request to RGWListBuckets, for safety, it should detect that a sub-ressource was asked, and that it does not make any sense in the context of RGWListBuckets and so to throw any error: 404, 500, ...

Best regards,

Yoann

Actions

Also available in: Atom PDF