Skip to content

Commit ea8a7f4

Browse files
committed
Update query plans again
1 parent 3a93340 commit ea8a7f4

File tree

8 files changed

+1596
-1661
lines changed

8 files changed

+1596
-1661
lines changed

postgraphile/postgraphile/__tests__/mutations/v4/mutation-delete.mermaid

Lines changed: 79 additions & 80 deletions
Large diffs are not rendered by default.

postgraphile/postgraphile/__tests__/queries/v4/badlyBehavedFunction.mermaid

Lines changed: 38 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -19,20 +19,14 @@ graph TD
1919
__Value2 --> Access9
2020
__Value4["__Value[4∈0] ➊<br />ᐸrootValueᐳ"]:::plan
2121
Constant16{{"Constant[16∈0] ➊<br />ᐸ'people'ᐳ"}}:::plan
22-
PgFromExpression21{{"PgFromExpression[21∈0] ➊"}}:::plan
23-
PgFromExpression38{{"PgFromExpression[38∈0] ➊"}}:::plan
2422
PgSelect12[["PgSelect[12∈1] ➊<br />ᐸbadly_behaved_functionᐳ"]]:::plan
25-
Object10 & Connection11 & PgFromExpression21 --> PgSelect12
26-
PgSelect23[["PgSelect[23∈1] ➊<br />ᐸbadly_behaved_functionᐳ"]]:::plan
27-
Object10 & Connection11 & PgFromExpression38 --> PgSelect23
28-
__ListTransform24[["__ListTransform[24∈1] ➊<br />ᐸeach:23ᐳ"]]:::plan
29-
PgSelectRows25[["PgSelectRows[25∈1] ➊"]]:::plan
30-
PgSelectRows25 & PgSelect23 --> __ListTransform24
23+
Object10 & Connection11 --> PgSelect12
24+
__ListTransform23[["__ListTransform[23∈1] ➊<br />ᐸeach:22ᐳ"]]:::plan
3125
PgSelectRows13[["PgSelectRows[13∈1] ➊"]]:::plan
26+
PgSelectRows13 & PgSelect12 --> __ListTransform23
3227
PgSelect12 --> PgSelectRows13
33-
PgSelect23 --> PgSelectRows25
34-
Access31{{"Access[31∈1] ➊<br />ᐸ23.cursorDetailsᐳ"}}:::plan
35-
PgSelect23 --> Access31
28+
Access30{{"Access[30∈1] ➊<br />ᐸ12.cursorDetailsᐳ"}}:::plan
29+
PgSelect12 --> Access30
3630
__Item14[/"__Item[14∈2]<br />ᐸ13ᐳ"\]:::itemplan
3731
PgSelectRows13 ==> __Item14
3832
PgSelectSingle15{{"PgSelectSingle[15∈2]<br />ᐸbadly_behaved_functionᐳ"}}:::plan
@@ -43,56 +37,56 @@ graph TD
4337
PgSelectSingle15 --> PgClassExpression17
4438
Lambda19{{"Lambda[19∈3]<br />ᐸbase64JSONEncodeᐳ"}}:::plan
4539
List18 --> Lambda19
46-
PgClassExpression22{{"PgClassExpression[22∈3]<br />ᐸ(1/0) /* E...ferred! */"}}:::plan
47-
PgSelectSingle15 --> PgClassExpression22
48-
__Item26[/"__Item[26∈4]<br />ᐸ25ᐳ"\]:::itemplan
49-
PgSelectRows25 -.-> __Item26
50-
PgSelectSingle27{{"PgSelectSingle[27∈4]<br />ᐸbadly_behaved_functionᐳ"}}:::plan
51-
__Item26 --> PgSelectSingle27
52-
Edge30{{"Edge[30∈5]"}}:::plan
53-
PgSelectSingle29{{"PgSelectSingle[29∈5]<br />ᐸbadly_behaved_functionᐳ"}}:::plan
54-
PgCursor32{{"PgCursor[32∈5]"}}:::plan
55-
PgSelectSingle29 & PgCursor32 & Connection11 --> Edge30
56-
PgSelectSingle29 & Access31 --> PgCursor32
57-
__Item28[/"__Item[28∈5]<br />ᐸ24ᐳ"\]:::itemplan
58-
__ListTransform24 ==> __Item28
59-
__Item28 --> PgSelectSingle29
60-
List35{{"List[35∈7]<br />ᐸ16,34ᐳ"}}:::plan
61-
PgClassExpression34{{"PgClassExpression[34∈7]<br />ᐸ__badly_be...ion__.”id”ᐳ"}}:::plan
62-
Constant16 & PgClassExpression34 --> List35
63-
PgSelectSingle29 --> PgClassExpression34
64-
Lambda36{{"Lambda[36∈7]<br />ᐸbase64JSONEncodeᐳ"}}:::plan
65-
List35 --> Lambda36
66-
PgClassExpression39{{"PgClassExpression[39∈7]<br />ᐸ(1/0) /* E...ferred! */"}}:::plan
67-
PgSelectSingle29 --> PgClassExpression39
40+
PgClassExpression21{{"PgClassExpression[21∈3]<br />ᐸ”c”.”perso...unction__)"}}:::plan
41+
PgSelectSingle15 --> PgClassExpression21
42+
__Item25[/"__Item[25∈4]<br />ᐸ13ᐳ"\]:::itemplan
43+
PgSelectRows13 -.-> __Item25
44+
PgSelectSingle26{{"PgSelectSingle[26∈4]<br />ᐸbadly_behaved_functionᐳ"}}:::plan
45+
__Item25 --> PgSelectSingle26
46+
Edge29{{"Edge[29∈5]"}}:::plan
47+
PgSelectSingle28{{"PgSelectSingle[28∈5]<br />ᐸbadly_behaved_functionᐳ"}}:::plan
48+
PgCursor31{{"PgCursor[31∈5]"}}:::plan
49+
PgSelectSingle28 & PgCursor31 & Connection11 --> Edge29
50+
PgSelectSingle28 & Access30 --> PgCursor31
51+
__Item27[/"__Item[27∈5]<br />ᐸ23ᐳ"\]:::itemplan
52+
__ListTransform23 ==> __Item27
53+
__Item27 --> PgSelectSingle28
54+
List34{{"List[34∈7]<br />ᐸ16,33ᐳ"}}:::plan
55+
PgClassExpression33{{"PgClassExpression[33∈7]<br />ᐸ__badly_be...ion__.”id”ᐳ"}}:::plan
56+
Constant16 & PgClassExpression33 --> List34
57+
PgSelectSingle28 --> PgClassExpression33
58+
Lambda35{{"Lambda[35∈7]<br />ᐸbase64JSONEncodeᐳ"}}:::plan
59+
List34 --> Lambda35
60+
PgClassExpression37{{"PgClassExpression[37∈7]<br />ᐸ”c”.”perso...unction__)"}}:::plan
61+
PgSelectSingle28 --> PgClassExpression37
6862

6963
%% define steps
7064

7165
subgraph "Buckets for queries/v4/badlyBehavedFunction"
7266
Bucket0("Bucket 0 (root)"):::bucket
7367
classDef bucket0 stroke:#696969
74-
class Bucket0,__Value2,__Value4,Access8,Access9,Object10,Connection11,Constant16,PgFromExpression21,PgFromExpression38 bucket0
75-
Bucket1("Bucket 1 (nullableBoundary)<br />Deps: 10, 11, 6, 21, 38, 16<br /><br />ROOT Connectionᐸ7ᐳ[11]<br />1: PgSelect[12], PgSelect[23]<br />ᐳ: Access[31]<br />2: PgSelectRows[13], PgSelectRows[25]<br />3: __ListTransform[24]"):::bucket
68+
class Bucket0,__Value2,__Value4,Access8,Access9,Object10,Connection11,Constant16 bucket0
69+
Bucket1("Bucket 1 (nullableBoundary)<br />Deps: 10, 11, 6, 16<br /><br />ROOT Connectionᐸ7ᐳ[11]<br />1: PgSelect[12]<br />ᐳ: Access[30]<br />2: PgSelectRows[13]<br />3: __ListTransform[23]"):::bucket
7670
classDef bucket1 stroke:#00bfff
77-
class Bucket1,PgSelect12,PgSelectRows13,PgSelect23,__ListTransform24,PgSelectRows25,Access31 bucket1
71+
class Bucket1,PgSelect12,PgSelectRows13,__ListTransform23,Access30 bucket1
7872
Bucket2("Bucket 2 (listItem)<br />Deps: 16<br /><br />ROOT __Item{2}ᐸ13ᐳ[14]"):::bucket
7973
classDef bucket2 stroke:#7f007f
8074
class Bucket2,__Item14,PgSelectSingle15 bucket2
8175
Bucket3("Bucket 3 (nullableBoundary)<br />Deps: 15, 16<br /><br />ROOT PgSelectSingle{2}ᐸbadly_behaved_functionᐳ[15]"):::bucket
8276
classDef bucket3 stroke:#ffa500
83-
class Bucket3,PgClassExpression17,List18,Lambda19,PgClassExpression22 bucket3
84-
Bucket4("Bucket 4 (subroutine)<br /><br />ROOT PgSelectSingle{4}ᐸbadly_behaved_functionᐳ[27]"):::bucket
77+
class Bucket3,PgClassExpression17,List18,Lambda19,PgClassExpression21 bucket3
78+
Bucket4("Bucket 4 (subroutine)<br /><br />ROOT PgSelectSingle{4}ᐸbadly_behaved_functionᐳ[26]"):::bucket
8579
classDef bucket4 stroke:#0000ff
86-
class Bucket4,__Item26,PgSelectSingle27 bucket4
87-
Bucket5("Bucket 5 (listItem)<br />Deps: 11, 31, 16<br /><br />ROOT __Item{5}ᐸ24ᐳ[28]"):::bucket
80+
class Bucket4,__Item25,PgSelectSingle26 bucket4
81+
Bucket5("Bucket 5 (listItem)<br />Deps: 11, 30, 16<br /><br />ROOT __Item{5}ᐸ23ᐳ[27]"):::bucket
8882
classDef bucket5 stroke:#7fff00
89-
class Bucket5,__Item28,PgSelectSingle29,Edge30,PgCursor32 bucket5
90-
Bucket6("Bucket 6 (nullableBoundary)<br />Deps: 30, 29, 16, 32<br /><br />ROOT Edge{5}[30]"):::bucket
83+
class Bucket5,__Item27,PgSelectSingle28,Edge29,PgCursor31 bucket5
84+
Bucket6("Bucket 6 (nullableBoundary)<br />Deps: 29, 28, 16, 31<br /><br />ROOT Edge{5}[29]"):::bucket
9185
classDef bucket6 stroke:#ff1493
9286
class Bucket6 bucket6
93-
Bucket7("Bucket 7 (nullableBoundary)<br />Deps: 29, 16<br /><br />ROOT PgSelectSingle{5}ᐸbadly_behaved_functionᐳ[29]"):::bucket
87+
Bucket7("Bucket 7 (nullableBoundary)<br />Deps: 28, 16<br /><br />ROOT PgSelectSingle{5}ᐸbadly_behaved_functionᐳ[28]"):::bucket
9488
classDef bucket7 stroke:#808000
95-
class Bucket7,PgClassExpression34,List35,Lambda36,PgClassExpression39 bucket7
89+
class Bucket7,PgClassExpression33,List34,Lambda35,PgClassExpression37 bucket7
9690
Bucket0 --> Bucket1
9791
Bucket1 --> Bucket2 & Bucket4 & Bucket5
9892
Bucket2 --> Bucket3

0 commit comments

Comments
 (0)