Add by_category_template_type scope to Security::Attribute

What does this MR do and why?

Add by_category_template_type scope to Security::Attribute. This scope will be used in queries like this one, and this one.

Queries:

  SELECT "security_attributes"."id"                                                                                                                                                                                                                 
  FROM "security_attributes"                                                                                                                                                                                                                        
  INNER JOIN "project_to_security_attributes"                                                                                                                                                                                                       
    ON "security_attributes"."id" = "project_to_security_attributes"."security_attribute_id"                                                                                                                                                        
  INNER JOIN "security_categories"                                                                                                                                                                                                                  
    ON "security_categories"."id" = "security_attributes"."security_category_id"                                                                                                                                                                    
  WHERE "project_to_security_attributes"."project_id" = 80550984                                                                                                                                                                                         
    AND "security_attributes"."deleted_at" IS NULL                                                                                                                                                                                                  
    AND "security_categories"."template_type" = 0                                                                                                                                                                                                   
    AND "security_categories"."deleted_at" IS NULL                                                                                                                                                                                                  
  LIMIT 1000;

https://console.postgres.ai/gitlab/gitlab-production-sec/sessions/50175/commands/148969

  SELECT "security_attributes".*
  FROM "security_attributes"                                                                                                                                                                                                                        
  INNER JOIN "security_categories"                                                                                                                                                                                                                
    ON "security_categories"."id" = "security_attributes"."security_category_id"                                                                                                                                                                    
  WHERE "security_attributes"."deleted_at" IS NULL                                                                                                                                                                                                
    AND "security_attributes"."namespace_id" = 79430960
    AND "security_categories"."template_type" = 0                                                                                                                                                                                                   
    AND "security_categories"."deleted_at" IS NULL
    AND "security_attributes"."id" = 1008095;   

https://console.postgres.ai/gitlab/gitlab-production-sec/sessions/50175/commands/148970

References

Related to: #589342 (closed)

MR acceptance checklist

Evaluate this MR against the MR acceptance checklist. It helps you analyze changes to reduce risks in quality, performance, reliability, security, and maintainability.

Edited by Andy Schoenen

Merge request reports

Loading
Loading