Description of problem: When a consumer has a null service level and a subscription is attached the system_purpose_compliance event is sent. if the attached subscription provides a service level the event will provide a reason indicating a mismatch Version-Release number of selected component (if applicable): How reproducible: Steps to Reproduce: 1. create a consumer and do not set an sla 2. attach a subscription which provides an SLA 3. observe the system purpose compliance event (probably the same through API but didn't check) Actual results: The compliance event contains a reason, for example: "expected sla is but pool 4028f935658b81450165a5d4ecd50c9b with product RH00003 provides SLA: Premium" Expected results: There should not be a mismatch since we didn't set an SLA on the consumer Additional info: example event: {"id":null,"type":"CREATED","target":"SYSTEM_PURPOSE_COMPLIANCE","targetName":"katello-client.jturel.example.com","principalStore":"{\"type\":\"trusteduser\",\"name\":\"foreman_admin\"}","timestamp":1539785096299,"entityId":"08b35f38-7576-40d9-a235-1f8108252695","ownerId":"4028f93563fc914b0163fe5ab16e0001","consumerUuid":"08b35f38-7576-40d9-a235-1f8108252695","referenceId":null,"referenceType":null,"eventData":"{\"reasons\":[\"expected sla is but pool 4028f935658b81450165a5d4ecd50c9b with product RH00003 provides SLA: Premium\"],\"status\":\"partial\"}","messageText":null,"principal":{"type":"trusteduser","name":"foreman_admin"}}]
Forgot to mention I saw this on 2.5.7
Dev, let's eliminate the legacy handling of empty string in Candlepin.
> Dev, let's eliminate the legacy handling of empty string in Candlepin. receiving empty string for SLA should set the SLA to null.