Bug 1891951

Summary: UI should show warning while creating pools with compression on
Product: OpenShift Container Platform Reporter: Kanika Murarka <kmurarka>
Component: Console Storage PluginAssignee: gowtham <gshanmug>
Status: CLOSED ERRATA QA Contact: Shay Rozen <srozen>
Severity: low Docs Contact:
Priority: low    
Version: 4.6CC: aos-bugs, jespy, nberry, nthomas, olakra, ygalanti
Target Milestone: ---   
Target Release: 4.7.0   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2021-02-24 15:28:35 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:

Description Kanika Murarka 2020-10-27 18:21:01 UTC
Description of problem:
Encrypted data cannot be compressed, and so wont give desired results on compression card in persistent dashboard. UI to add warning to make user aware about this while creating compressed pools.

How reproducible:
2/2

Steps to Reproduce:
1. Navigate to Storage class view from left menu
2. Try creating RBD storage class
3. Create new Pool

Actual results:
No warning against compression checkbox.

Expected results:
Warning about effects of compression on data encryption and performance.

Additional info:

Comment 1 Kanika Murarka 2020-12-10 11:18:54 UTC
@Yuval, as per this, we will need a warning message in pool creation modal when user enables compression, please suggest some message, and where in the modal we can keep it?

Comment 2 James Espy 2020-12-10 13:54:58 UTC
Perhaps "warning" is too strong of a word? Is "notice" sufficient? Is there a precedent? See related doc.

Comment 3 Yuval 2020-12-16 11:39:35 UTC
does it make sense to enable compression when encryption is on?
if not, I would disable the compression checkbox if encryption is enabled

Comment 4 gowtham 2021-01-11 13:09:38 UTC
Hi,
 I am working on this issue. I need to clarify one small doubt, Do I need to disable compression when anyone or both (cluster-wide, storage-class-wide) encryption are enabled? 

I mean, This disabling compression checkbox condition is not associated with any particular encryption type, right?

Comment 5 gowtham 2021-01-11 19:07:33 UTC
I have discussed with James Espy about this issue, 
   The issue is when the user tries to write any already encrypted data into a compressed pool would not successfully compress and performance may suffer (comment4 and comment 3 are misunderstandings). So we don't need to disable the compression option here. We need a clear warning message to indicate the user while choosing the compression option.
   


James Espy's explanation:
As I understood it, this BZ message was to be directed to users whose data was already encrypted, e.g. at the client, and hence un-compressible by Ceph. The message to the user would be that if they choose to enable compression when creating a pool, any already encrypted data they expected to write to this pool would not successfully compress and performance may suffer (compute resources would be used for nothing). I had understood that our encryption-at-rest function(s) would occur "after" our compression function and hence not be impacted. 


Also, James needs to extend this warning message to indicate that in general enabling compression could impact performance (well-compressed data means less storage space needed but at an added computational cost).

@Yuval, please suggest some message, and where we can keep it?

Comment 6 James Espy 2021-01-11 19:47:57 UTC
Looking for suggestions as to properly wording this statement.

Comment 7 James Espy 2021-01-29 21:27:45 UTC
Suggested wording: "Before enabling compression for this pool, note that it may have little or no effect on already encrypted or otherwise randomized data. Also, enabling compression for any data may have an impact on performance."

This would need to be run by doc folks for best wording.

OK by Eran (separately for OCS 4.8 but same idea) and that it should be an "info" statement rather than a "warning."

Comment 8 Olive Lakra 2021-02-03 10:40:31 UTC
I would suggest using it as an "Info" statement to inform users what happens when the user selects the checkbox to enable compression. 

Suggested wording: "Enabling compression may impact the performance of already encrypted or otherwise randomized data."

Comment 9 OpenShift Automated Release Tooling 2021-02-03 12:41:03 UTC
Elliott changed bug status from MODIFIED to ON_QA.

Comment 10 Olive Lakra 2021-02-05 06:46:14 UTC
Since this is an alert, in this case, we can say --> "Enabling compression does not have any effect on encrypted or randomized data. Additionally, it can impact storage performance."

WDYT?

Comment 13 Olive Lakra 2021-02-05 08:07:18 UTC
another alternative --> Enabling compression for this pool will have little or no effect on encrypted or randomized data. Additionally, enabling compression for any data may have an impact on performance.

Comment 15 gowtham 2021-02-06 09:44:03 UTC
PR: https://github.com/openshift/console/pull/8066

The finalized message is: 
    Enabling compression may result in little or no space savings for encrypted or random data. Also, enabling compression may have an impact on I/O performance.

Comment 20 errata-xmlrpc 2021-02-24 15:28:35 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 (Moderate: OpenShift Container Platform 4.7.0 security, bug fix, and enhancement 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/RHSA-2020:5633