Skip to content

Draft: Create abuse training spammables table

Juliet Wanjohi requested to merge jwanjohi-add-abuse-training-data-table into master

What does this MR do and why?

Describe in detail what your merge request does and why.

As per https://gitlab.com/gitlab-org/modelops/anti-abuse/team-tasks/-/issues/247, this MR creates the abuse_spammables table that will be used to store spammy data created by abusive users that is useful for retraining the Spamcheck model to improve its accuracy and precision.

Screenshots or screen recordings

Database Migrations

Up:

rake db:migrate VERSION=20230628115823
WARNING: This version of GitLab depends on gitlab-shell 14.23.0, but you're running 14.18.0. Please update gitlab-shell.
main: == [advisory_lock_connection] object_id: 223680, pg_backend_pid: 98762
main: == 20230628115823 CreateAbuseSpammables: migrating ============================
main: -- create_table(:abuse_spammables)
main: -- quote_column_name(:description)
main:    -> 0.0000s
main: -- quote_column_name(:title)
main:    -> 0.0000s
main: -- quote_column_name(:correlation_id_value)
main:    -> 0.0000s
main: -- quote_column_name(:target_type)
main:    -> 0.0000s
main:    -> 0.0093s
main: == 20230628115823 CreateAbuseSpammables: migrated (0.0696s) ===================

main: == [advisory_lock_connection] object_id: 223680, pg_backend_pid: 98762
ci: == [advisory_lock_connection] object_id: 224020, pg_backend_pid: 98765
ci: == 20230628115823 CreateAbuseSpammables: migrating ============================
ci: -- create_table(:abuse_spammables)
ci: -- quote_column_name(:description)
ci:    -> 0.0000s
ci: -- quote_column_name(:title)
ci:    -> 0.0000s
ci: -- quote_column_name(:correlation_id_value)
ci:    -> 0.0000s
ci: -- quote_column_name(:target_type)
ci:    -> 0.0000s
ci:    -> 0.0081s
I, [2023-06-28T13:37:37.682389 #98590]  INFO -- : Database: 'ci', Table: 'abuse_spammables': Lock Writes
ci: == 20230628115823 CreateAbuseSpammables: migrated (0.0179s) ===================

ci: == [advisory_lock_connection] object_id: 224020, pg_backend_pid: 98765

Down:

rake db:migrate:down:main VERSION=20230628115823
main: == [advisory_lock_connection] object_id: 223220, pg_backend_pid: 99359
main: == 20230628115823 CreateAbuseSpammables: reverting ============================
main: -- drop_table(:abuse_spammables)
main:    -> 0.0021s
main: == 20230628115823 CreateAbuseSpammables: reverted (0.0058s) ===================

main: == [advisory_lock_connection] object_id: 223220, pg_backend_pid: 99359

How to set up and validate locally

Numbered steps to set up and validate the change are strongly suggested.

MR acceptance checklist

This checklist encourages us to confirm any changes have been analyzed to reduce risks in quality, performance, reliability, security, and maintainability.

Edited by Juliet Wanjohi

Merge request reports