Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Graph LR does not adhere to LR direction #4790

Closed
Nixxen opened this issue Aug 30, 2023 · 1 comment
Closed

Graph LR does not adhere to LR direction #4790

Nixxen opened this issue Aug 30, 2023 · 1 comment
Labels
Status: Triage Needs to be verified, categorized, etc Type: Bug / Error Something isn't working or is incorrect

Comments

@Nixxen
Copy link

Nixxen commented Aug 30, 2023

Description

When writing a graph LR using the following syntax, I expect the subgraphs to follow the direction of the main graph (left to right).
However, as seen in the example, the Databases do not go to the right of services and instead get pushed down.
The same issue applies to the graph TD, where everything is TD, except the Databases, which end up to the right of services.

The expected result for graph LR is a graph with System A to the left, followed by Other Internal or Databases, then the remaining one (Databases or Other Internal - whichever was not picked first earlier). Since Databases has more connections, it would be cleaner to have that first. Finally, insert the External subgraph.

Steps to reproduce

  1. Make a graph with subgraphs
  2. Have subgraph nodes pointing to nodes in other subgraphs.
  3. Make enough subgraphs and internal nodes to skew the intended direction of the graph.

Screenshots

graph LR
image

graph TD
image

Code Sample

graph LR
    subgraph SystemA["System A"]
        subgraph Services
            Service1
            Service2
            Service3
        end
        
        subgraph databases["Databases"]
            Database1
            Database2
            Database3
            Database4
        end

        subgraph Other["Other Internal"]
            Server1
        end

        Service1 -->|"Fetch data from"| Server1["Server 1"]
    end

    subgraph External
        Server1 -->|Reads selective data from| ExternalSystem
    end

    subgraph Service1["Service 1"]
        CacheData["Cache data from Server 1"]
        
    end

    subgraph Service2["Service 2"]
        ParseData["Parse data and create events"]
    end

    subgraph Service3["Service 3"]
        ParseEvents["Parse Events and create:
        - Operations
        - Suboperations
        - Components
        - Data"]
    end

    Service2 -->|Fetch cached data from| Service1
    Service2 -->|Store Events in| Database1["DB Events"]
    Service3 -->|Get Events from| Database1
    Service3 -->|Store Operations in| Database2["DB Operations"]
    Service3 -->|Store Suboperations in| Database3["DB Suboperations"]
    Service3 -->|Store Components in| Database4["DB Components"]

Setup

Suggested Solutions

No response

Additional Context

No response

@Nixxen Nixxen added Status: Triage Needs to be verified, categorized, etc Type: Bug / Error Something isn't working or is incorrect labels Aug 30, 2023
@sidharthv96
Copy link
Member

Duplicate #2509

@sidharthv96 sidharthv96 closed this as not planned Won't fix, can't repro, duplicate, stale Sep 2, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Status: Triage Needs to be verified, categorized, etc Type: Bug / Error Something isn't working or is incorrect
Projects
None yet
Development

No branches or pull requests

2 participants