Bug 2225434
Summary: | rgw crashes seen for s3select json query with "where" clause | ||
---|---|---|---|
Product: | [Red Hat Storage] Red Hat Ceph Storage | Reporter: | Hemanth Sai <hmaheswa> |
Component: | RGW | Assignee: | gal salomon <gsalomon> |
Status: | CLOSED ERRATA | QA Contact: | Hemanth Sai <hmaheswa> |
Severity: | high | Docs Contact: | Rivka Pollack <rpollack> |
Priority: | unspecified | ||
Version: | 7.0 | CC: | akraj, ceph-eng-bugs, cephqe-warriors, gsalomon, kdreyer, mbenjamin, mkasturi, tserlin |
Target Milestone: | --- | Flags: | gsalomon:
needinfo-
gsalomon: needinfo- |
Target Release: | 7.0 | ||
Hardware: | Unspecified | ||
OS: | Unspecified | ||
Whiteboard: | |||
Fixed In Version: | ceph-18.2.0-105.el9cp | Doc Type: | Bug Fix |
Doc Text: |
.Ceph Object Gateway daemon no longer crashes with “where” clause in an `s3select` JSON query.
Previously, due to a syntax error, an `s3select` JSON query with a “where” clause would cause the the Ceph Object Gateway daemon to crash.
With this fix the wrong syntax is identified and reported, no longer causing the daemon to crash.
|
Story Points: | --- |
Clone Of: | Environment: | ||
Last Closed: | 2023-12-13 15:21:03 UTC | Type: | Bug |
Regression: | --- | Mount Type: | --- |
Documentation: | --- | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: | |||
Bug Depends On: | |||
Bug Blocks: | 2237662 |
Description
Hemanth Sai
2023-07-25 10:05:23 UTC
the JSON query syntax is *wrong*. please review the s3select-tests, it provides many use-cases. you can easily observe the query, input, and output. bellow a link to tests in the s3select-repo. https://github.com/ceph/s3select/blob/45e29caeea37d6f34fad516cbe7fd8f8bd4d68a9/test/s3select_test.cpp#L2967 [ --output-serialization '{"JSON": {}}' ] as for output-serialization, the engine support only CSV as output. the wrong input is actually a negative test, and it detects a wrong flow per wrong input. it crashed before query processing. no, it should not crash. it failed on a negative test, and there could be a lot of combinations for that. will generate more cases of that type. the input-serialization(AWS-CLI) indicates the s3select-request as a JSON statement while the statement itself does not align with the JSON statement syntax(the from clause) it creates conflict, that is not handled correctly, and that lead to the crash. it is fixed on https://github.com/ceph/ceph/pull/52651 `An error occurred (s3select-Syntax-Error) when calling the SelectObjectContent operation: engine_version function not found` with that returns the correct value there is no point in testing `18.2.0-102.el9cp` `An error occurred (s3select-Syntax-Error) when calling the SelectObjectContent operation: engine_version function not found` with that returns the correct value there is no point in testing `18.2.0-102.el9cp` 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 (Red Hat Ceph Storage 7.0 Bug Fix update), 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-2023:7780 |