Bug 1501380 - [RGW-Compression] - Compressed object(s) larger than initial size
Summary: [RGW-Compression] - Compressed object(s) larger than initial size
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Ceph Storage
Classification: Red Hat Storage
Component: RGW
Version: 3.0
Hardware: Unspecified
OS: Unspecified
low
high
Target Milestone: rc
: 3.1
Assignee: Casey Bodley
QA Contact: Persona non grata
Aron Gunn
URL:
Whiteboard:
Depends On:
Blocks: 1584264
TreeView+ depends on / blocked
 
Reported: 2017-10-12 13:31 UTC by Manohar Murthy
Modified: 2018-09-26 18:18 UTC (History)
14 users (show)

Fixed In Version: RHEL: ceph-12.2.5-13.el7cp Ubuntu: 12.2.5-4redhat1xenial
Doc Type: Bug Fix
Doc Text:
.Object compression works properly Previously, when using zlib compression with Object Gateway, objects were not being compressed properly. The actual size and used size were listed as the same despite log messages saying compression was in use. This was due to the usage of smaller buffers. With this update to {product}, larger buffers are used and compression works as expected.
Clone Of:
Environment:
Last Closed: 2018-09-26 18:16:44 UTC
Embargoed:


Attachments (Terms of Use)
rgw-log (693.94 KB, text/plain)
2017-10-12 13:31 UTC, Manohar Murthy
no flags Details


Links
System ID Private Priority Status Summary Last Updated
Ceph Project Bug Tracker 23547 0 None None None 2018-05-01 18:16:06 UTC
Red Hat Product Errata RHBA-2018:2819 0 None None None 2018-09-26 18:18:17 UTC

Description Manohar Murthy 2017-10-12 13:31:05 UTC
Created attachment 1337777 [details]
rgw-log

Description of problem:
RGW compression is not working , zlib compression type is specified.
Actual size and used size are same but in the log compression enabled messages are shown.

Version-Release number of selected component (if applicable):
ceph version 12.2.1-10.el7cp (5ba1c3fa606d7bf16f72756b0026f04a40297673) luminous (stable)


How reproducible:
100%

Steps to Reproduce:
1. Created default zone and enabled compression with "zlib" type
2. Created objects and checked used space of bucket.
3. Actual size and used size showing same value, not showing anything like compressed.
4. But in log, compression enabled messages are shown.

Actual results:
No Compression is happened.


Expected results:
Compression should have happened and Used space of the bucket should have been less than the actual bucket space.

Additional info:

Setup details :
10.70.39.1 - root/redhat MON
10.70.39.11 - root/redhat RGW client


Commands output:
root@aircobra bin]# radosgw-admin zone placement modify --rgw-zone=default --placement-id=default-placement --compression=zlib
{
    "id": "553117a8-0822-43ce-a0a0-1ef8cf6ccdda",
    "name": "default",
    "domain_root": "default.rgw.meta:root",
    "control_pool": "default.rgw.control",
    "gc_pool": "default.rgw.log:gc",
    "lc_pool": "default.rgw.log:lc",
    "log_pool": "default.rgw.log",
    "intent_log_pool": "default.rgw.log:intent",
    "usage_log_pool": "default.rgw.log:usage",
    "reshard_pool": "default.rgw.log:reshard",
    "user_keys_pool": "default.rgw.meta:users.keys",
    "user_email_pool": "default.rgw.meta:users.email",
    "user_swift_pool": "default.rgw.meta:users.swift",
    "user_uid_pool": "default.rgw.meta:users.uid",
    "system_key": {
        "access_key": "",
        "secret_key": ""
    },
    "placement_pools": [
        {
            "key": "default-placement",
            "val": {
                "index_pool": "default.rgw.buckets.index",
                "data_pool": "default.rgw.buckets.data",
                "data_extra_pool": "default.rgw.buckets.non-ec",
                "index_type": 0,
                "compression": "zlib"
            }
        }
    ],
    "metadata_heap": "",
    "tier_config": [],
    "realm_id": ""
}



[root@aircobra ~]# radosgw-admin bucket stats --bucket=another
{
    "bucket": "another",
    "zonegroup": "e8064b98-933e-4505-89de-e9379c0b0397",
    "placement_rule": "default-placement",
    "explicit_placement": {
        "data_pool": "",
        "data_extra_pool": "",
        "index_pool": ""
    },
    "id": "553117a8-0822-43ce-a0a0-1ef8cf6ccdda.54824.2",
    "marker": "553117a8-0822-43ce-a0a0-1ef8cf6ccdda.54824.2",
    "index_type": "Normal",
    "owner": "testuser",
    "ver": "0#41",
    "master_ver": "0#0",
    "mtime": "2017-10-12 18:30:27.666754",
    "max_marker": "0#",
    "usage": {
        "rgw.main": {
            "size": 2097152000,
            "size_actual": 2097152000,
            "size_utilized": 2097792500,
            "size_kb": 2048000,
            "size_kb_actual": 2048000,
            "size_kb_utilized": 2048626,
            "num_objects": 20
        }
    },
    "bucket_quota": {
        "enabled": false,
        "check_on_raw": false,
        "max_size": -1,
        "max_size_kb": 0,
        "max_objects": -1
    }
}
[root@aircobra ~]#

2017-10-12 18:57:43.806650 7ff8a358bc40  0 could not get bucket info for bucket=another_bucket
[root@aircobra ~]# radosgw-admin bucket stats --bucket=anotherbucket
{
    "bucket": "anotherbucket",
    "zonegroup": "e8064b98-933e-4505-89de-e9379c0b0397",
    "placement_rule": "default-placement",
    "explicit_placement": {
        "data_pool": "",
        "data_extra_pool": "",
        "index_pool": ""
    },
    "id": "553117a8-0822-43ce-a0a0-1ef8cf6ccdda.54824.1",
    "marker": "553117a8-0822-43ce-a0a0-1ef8cf6ccdda.54824.1",
    "index_type": "Normal",
    "owner": "testuser",
    "ver": "0#41",
    "master_ver": "0#0",
    "mtime": "2017-10-12 18:27:03.858794",
    "max_marker": "0#",
    "usage": {
        "rgw.main": {
            "size": 2097152000,
            "size_actual": 2097152000,
            "size_utilized": 2097792500,
            "size_kb": 2048000,
            "size_kb_actual": 2048000,
            "size_kb_utilized": 2048626,
            "num_objects": 20
        }
    },
    "bucket_quota": {
        "enabled": false,
        "check_on_raw": false,
        "max_size": -1,
        "max_size_kb": 0,
        "max_objects": -1
    }
}
[root@aircobra ~]#

log message:
2017-10-12 18:31:39.574276 7f38f9ab2700 15 supplied_md5=582115a1d5a76a2310078c104ca2499f
2017-10-12 18:31:39.585219 7f38f9ab2700 10 Compression for rgw is enabled, compress part 4194304
2017-10-12 18:31:39.714062 7f38f9ab2700 10 Compression for rgw is enabled, compress part 4194304
2017-10-12 18:31:39.845051 7f38f9ab2700 10 Compression for rgw is enabled, compress part 4194304
2017-10-12 18:31:39.975912 7f38f9ab2700 10 Compression for rgw is enabled, compress part 4194304
2017-10-12 18:31:40.069652 7f391418a700  2 RGWDataChangesLog::ChangesRenewThread: start
2017-10-12 18:31:40.107108 7f38f9ab2700 10 Compression for rgw is enabled, compress part 4194304
2017-10-12 18:31:40.238016 7f38f9ab2700 10 Compression for rgw is enabled, compress part 4194304
2017-10-12 18:31:40.369106 7f38f9ab2700 10 Compression for rgw is enabled, compress part 4194304
2017-10-12 18:31:40.500294 7f38f9ab2700 10 Compression for rgw is enabled, compress part 4194304
2017-10-12 18:31:40.631460 7f38f9ab2700 10 Compression for rgw is enabled, compress part 4194304
2017-10-12 18:31:40.762104 7f38f9ab2700 10 Compression for rgw is enabled, compress part 4194304
2017-10-12 18:31:40.892794 7f38f9ab2700 10 Compression for rgw is enabled, compress part 4194304
2017-10-12 18:31:41.023302 7f38f9ab2700 10 Compression for rgw is enabled, compress part 4194304
2017-10-12 18:31:41.154234 7f38f9ab2700 10 Compression for rgw is enabled, compress part 4194304

Comment 19 John Brier 2018-08-31 16:46:17 UTC
Thanks Casey!

Comment 21 errata-xmlrpc 2018-09-26 18:16:44 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHBA-2018:2819


Note You need to log in before you can comment on or make changes to this bug.