Skip to content

Support for cyclic SO references #80966

@Dosant

Description

@Dosant

In scope of this issue we need to make sure that features that rely on saved object references support cyclic references.

Cyclic reference use-case came up in: #71409 (comment), where dashboards can link to each other via drilldowns.

From a quick poc it became clear that saved object reference system isn't implemented or wasn't tested to gracefully support cyclic references.

Example setup:

  • Dashboard A is linking to Dashboard B via dashboard drilldown
  • Dashboard B is linking to Dashboard A via dashboard drilldown

SO Relations UI:

(Looks good)

Screenshot 2020-10-19 at 14 02 13

Export Dashboard A with related objects:

Error:

{"statusCode":400,"error":"Bad Request","message":"circular reference: [dashboard:09599400-0fa8-11eb-9974-3fd3df6ee7d4] ref-> [dashboard:f61a0eb0-0fa7-11eb-9974-3fd3df6ee7d4] ref-> [dashboard:09599400-0fa8-11eb-9974-3fd3df6ee7d4]"}

Copy Dashboard A to different space:

Error:

{"statusCode":500,"error":"Internal Server Error","message":"An internal server error occurred."}

TODO: check other features that rely on references (no sure what else...)


Needed for #71409

Metadata

Metadata

Assignees

No one assigned

    Labels

    Feature:Saved ObjectsTeam:CorePlatform Core services: plugins, logging, config, saved objects, http, ES client, i18n, etc t//enhancementNew value added to drive a business result

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions