Skip to content

Cast object class to string to avoid infinite loop

What does this MR do?

This MR fixes an issue that was introduced in !56197 (merged) where the klass: object.class portion of:

Gitlab::AppLogger.warn(message: "Skipping sending notifications", user: user.id, klass: object.class, object_id: object.id)

was causing an infinite loop because later in the stack, Gitlab::JsonLogger#format_message was attempting to convert object.class into JSON by calling object.class.as_json.

Does this MR meet the acceptance criteria?

Conformity

Availability and Testing

Security

If this MR contains changes to processing or storing of credentials or tokens, authorization and authentication methods and other items described in the security review guidelines:

  • Label as security and @ mention @gitlab-com/gl-security/appsec
  • The MR includes necessary changes to maintain consistency between UI, API, email, or other methods
  • Security reports checked/validated by a reviewer from the AppSec team

Related to #324735 (closed)

Merge request reports

Loading