From f2c888a64a526bce9921ecef890d79c668bc8050 Mon Sep 17 00:00:00 2001 From: Jordan Dominion Date: Fri, 15 Aug 2025 16:34:10 -0400 Subject: [PATCH 1/2] Sort nodes alphabetically when generating selection expressions This helps prevent differences when the expression hash is later used to branch data loaders if queries only differ in the order their fields are listed in. --- .../src/Execution.Projections/SelectionExpressionBuilder.cs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/HotChocolate/Core/src/Execution.Projections/SelectionExpressionBuilder.cs b/src/HotChocolate/Core/src/Execution.Projections/SelectionExpressionBuilder.cs index 02b8a4ba0b2..bc293bc2bc8 100644 --- a/src/HotChocolate/Core/src/Execution.Projections/SelectionExpressionBuilder.cs +++ b/src/HotChocolate/Core/src/Execution.Projections/SelectionExpressionBuilder.cs @@ -169,7 +169,8 @@ private void CollectTypes(Context context, ISelection selection, TypeContainer p { var assignments = ImmutableArray.CreateBuilder(); - foreach (var property in parent.Nodes) + // order by property name so expressions evalutate to the same hash regardless of selection order + foreach (var property in parent.Nodes.OrderBy(node => node.Property.Name)) { var assignment = BuildAssignmentExpression(property, context); if (assignment is not null) From 01b27d5ed99bcfd131b1b73476b42d68f7b46ef7 Mon Sep 17 00:00:00 2001 From: Michael Staib Date: Mon, 18 Aug 2025 13:12:32 +0200 Subject: [PATCH 2/2] Updated Test Snapshots --- ...t_2_And_Products_First_2_Name_Desc_Brand_Name_NET10_0.md | 6 +++--- ...st_2_And_Products_First_2_Name_Desc_Brand_Name_NET8_0.md | 6 +++--- ...st_2_And_Products_First_2_Name_Desc_Brand_Name_NET9_0.md | 6 +++--- ...rands_First_2_Products_First_2_ForwardCursors_NET10_0.md | 2 +- ...Brands_First_2_Products_First_2_ForwardCursors_NET8_0.md | 2 +- ...Brands_First_2_Products_First_2_ForwardCursors_NET9_0.md | 2 +- ...grationTests.Query_Products_First_2_And_Brand_NET10_0.md | 2 +- ...egrationTests.Query_Products_First_2_And_Brand_NET8_0.md | 2 +- ...egrationTests.Query_Products_First_2_And_Brand_NET9_0.md | 2 +- ...ests.Query_Products_First_2_With_4_EndCursors_NET10_0.md | 2 +- ...Tests.Query_Products_First_2_With_4_EndCursors_NET8_0.md | 2 +- ...Tests.Query_Products_First_2_With_4_EndCursors_NET9_0.md | 2 +- ...ery_Products_First_2_With_4_EndCursors_Skip_4_NET10_0.md | 2 +- ...uery_Products_First_2_With_4_EndCursors_Skip_4_NET8_0.md | 2 +- ...uery_Products_First_2_With_4_EndCursors_Skip_4_NET9_0.md | 2 +- ...ests.Ensure_Nullable_Connections_Dont_Throw_2_NET10_0.md | 4 ++-- ...Tests.Ensure_Nullable_Connections_Dont_Throw_2_NET8_0.md | 4 ++-- ...Tests.Ensure_Nullable_Connections_Dont_Throw_2_NET9_0.md | 4 ++-- ...nTests.Ensure_Nullable_Connections_Dont_Throw_NET10_0.md | 4 ++-- ...onTests.Ensure_Nullable_Connections_Dont_Throw_NET8_0.md | 4 ++-- ...onTests.Ensure_Nullable_Connections_Dont_Throw_NET9_0.md | 4 ++-- .../ProjectableDataLoaderTests.Branches_Are_Merged.md | 2 +- ...rojectableDataLoaderTests.Branches_Are_Merged_NET10_0.md | 2 +- ...ProjectableDataLoaderTests.Brand_Details_Country_Name.md | 2 +- ...bleDataLoaderTests.Brand_Details_Country_Name_NET10_0.md | 2 +- .../ProjectableDataLoaderTests.Force_A_Branch.md | 4 ++-- .../ProjectableDataLoaderTests.Force_A_Branch_NET10_0.md | 4 ++-- ...DataLoaderTests.Product_With_Name_And_Brand_With_Name.md | 2 +- ...erTests.Product_With_Name_And_Brand_With_Name_NET10_0.md | 2 +- 29 files changed, 43 insertions(+), 43 deletions(-) diff --git a/src/HotChocolate/Data/test/Data.PostgreSQL.Tests/__snapshots__/IntegrationTests.Query_Brands_First_2_And_Products_First_2_Name_Desc_Brand_Name_NET10_0.md b/src/HotChocolate/Data/test/Data.PostgreSQL.Tests/__snapshots__/IntegrationTests.Query_Brands_First_2_And_Products_First_2_Name_Desc_Brand_Name_NET10_0.md index 35937ce4331..856efc7c83f 100644 --- a/src/HotChocolate/Data/test/Data.PostgreSQL.Tests/__snapshots__/IntegrationTests.Query_Brands_First_2_And_Products_First_2_Name_Desc_Brand_Name_NET10_0.md +++ b/src/HotChocolate/Data/test/Data.PostgreSQL.Tests/__snapshots__/IntegrationTests.Query_Brands_First_2_And_Products_First_2_Name_Desc_Brand_Name_NET10_0.md @@ -69,7 +69,7 @@ LIMIT @p ```sql -- @brandIds={ '11', '13' } (DbType = Object) -SELECT p1."BrandId", p3."Id", p3."Name", p3."BrandId" +SELECT p1."BrandId", p3."BrandId", p3."Id", p3."Name" FROM ( SELECT p."BrandId" FROM "Products" AS p @@ -77,9 +77,9 @@ FROM ( GROUP BY p."BrandId" ) AS p1 LEFT JOIN ( - SELECT p2."Id", p2."Name", p2."BrandId" + SELECT p2."BrandId", p2."Id", p2."Name" FROM ( - SELECT p0."Id", p0."Name", p0."BrandId", ROW_NUMBER() OVER(PARTITION BY p0."BrandId" ORDER BY p0."Name" DESC, p0."Id") AS row + SELECT p0."BrandId", p0."Id", p0."Name", ROW_NUMBER() OVER(PARTITION BY p0."BrandId" ORDER BY p0."Name" DESC, p0."Id") AS row FROM "Products" AS p0 WHERE p0."BrandId" = ANY (@brandIds) ) AS p2 diff --git a/src/HotChocolate/Data/test/Data.PostgreSQL.Tests/__snapshots__/IntegrationTests.Query_Brands_First_2_And_Products_First_2_Name_Desc_Brand_Name_NET8_0.md b/src/HotChocolate/Data/test/Data.PostgreSQL.Tests/__snapshots__/IntegrationTests.Query_Brands_First_2_And_Products_First_2_Name_Desc_Brand_Name_NET8_0.md index 5dfd0017038..f43a67a81d5 100644 --- a/src/HotChocolate/Data/test/Data.PostgreSQL.Tests/__snapshots__/IntegrationTests.Query_Brands_First_2_And_Products_First_2_Name_Desc_Brand_Name_NET8_0.md +++ b/src/HotChocolate/Data/test/Data.PostgreSQL.Tests/__snapshots__/IntegrationTests.Query_Brands_First_2_And_Products_First_2_Name_Desc_Brand_Name_NET8_0.md @@ -69,7 +69,7 @@ LIMIT @__p_0 ```sql -- @__brandIds_0={ '11', '13' } (DbType = Object) -SELECT t."BrandId", t0."Id", t0."Name", t0."BrandId" +SELECT t."BrandId", t0."BrandId", t0."Id", t0."Name" FROM ( SELECT p."BrandId" FROM "Products" AS p @@ -77,9 +77,9 @@ FROM ( GROUP BY p."BrandId" ) AS t LEFT JOIN ( - SELECT t1."Id", t1."Name", t1."BrandId" + SELECT t1."BrandId", t1."Id", t1."Name" FROM ( - SELECT p0."Id", p0."Name", p0."BrandId", ROW_NUMBER() OVER(PARTITION BY p0."BrandId" ORDER BY p0."Name" DESC, p0."Id") AS row + SELECT p0."BrandId", p0."Id", p0."Name", ROW_NUMBER() OVER(PARTITION BY p0."BrandId" ORDER BY p0."Name" DESC, p0."Id") AS row FROM "Products" AS p0 WHERE p0."BrandId" = ANY (@__brandIds_0) ) AS t1 diff --git a/src/HotChocolate/Data/test/Data.PostgreSQL.Tests/__snapshots__/IntegrationTests.Query_Brands_First_2_And_Products_First_2_Name_Desc_Brand_Name_NET9_0.md b/src/HotChocolate/Data/test/Data.PostgreSQL.Tests/__snapshots__/IntegrationTests.Query_Brands_First_2_And_Products_First_2_Name_Desc_Brand_Name_NET9_0.md index a61d56c2869..a8b18c76529 100644 --- a/src/HotChocolate/Data/test/Data.PostgreSQL.Tests/__snapshots__/IntegrationTests.Query_Brands_First_2_And_Products_First_2_Name_Desc_Brand_Name_NET9_0.md +++ b/src/HotChocolate/Data/test/Data.PostgreSQL.Tests/__snapshots__/IntegrationTests.Query_Brands_First_2_And_Products_First_2_Name_Desc_Brand_Name_NET9_0.md @@ -69,7 +69,7 @@ LIMIT @__p_0 ```sql -- @__brandIds_0={ '11', '13' } (DbType = Object) -SELECT p1."BrandId", p3."Id", p3."Name", p3."BrandId" +SELECT p1."BrandId", p3."BrandId", p3."Id", p3."Name" FROM ( SELECT p."BrandId" FROM "Products" AS p @@ -77,9 +77,9 @@ FROM ( GROUP BY p."BrandId" ) AS p1 LEFT JOIN ( - SELECT p2."Id", p2."Name", p2."BrandId" + SELECT p2."BrandId", p2."Id", p2."Name" FROM ( - SELECT p0."Id", p0."Name", p0."BrandId", ROW_NUMBER() OVER(PARTITION BY p0."BrandId" ORDER BY p0."Name" DESC, p0."Id") AS row + SELECT p0."BrandId", p0."Id", p0."Name", ROW_NUMBER() OVER(PARTITION BY p0."BrandId" ORDER BY p0."Name" DESC, p0."Id") AS row FROM "Products" AS p0 WHERE p0."BrandId" = ANY (@__brandIds_0) ) AS p2 diff --git a/src/HotChocolate/Data/test/Data.PostgreSQL.Tests/__snapshots__/IntegrationTests.Query_Brands_First_2_Products_First_2_ForwardCursors_NET10_0.md b/src/HotChocolate/Data/test/Data.PostgreSQL.Tests/__snapshots__/IntegrationTests.Query_Brands_First_2_Products_First_2_ForwardCursors_NET10_0.md index 43096472334..65d1b1bfd0e 100644 --- a/src/HotChocolate/Data/test/Data.PostgreSQL.Tests/__snapshots__/IntegrationTests.Query_Brands_First_2_Products_First_2_ForwardCursors_NET10_0.md +++ b/src/HotChocolate/Data/test/Data.PostgreSQL.Tests/__snapshots__/IntegrationTests.Query_Brands_First_2_Products_First_2_ForwardCursors_NET10_0.md @@ -42,7 +42,7 @@ ```sql -- @p='2' -SELECT b."Name", b."Id" +SELECT b."Id", b."Name" FROM "Brands" AS b ORDER BY b."Name" DESC, b."Id" LIMIT @p diff --git a/src/HotChocolate/Data/test/Data.PostgreSQL.Tests/__snapshots__/IntegrationTests.Query_Brands_First_2_Products_First_2_ForwardCursors_NET8_0.md b/src/HotChocolate/Data/test/Data.PostgreSQL.Tests/__snapshots__/IntegrationTests.Query_Brands_First_2_Products_First_2_ForwardCursors_NET8_0.md index dd4de596661..071fe055e94 100644 --- a/src/HotChocolate/Data/test/Data.PostgreSQL.Tests/__snapshots__/IntegrationTests.Query_Brands_First_2_Products_First_2_ForwardCursors_NET8_0.md +++ b/src/HotChocolate/Data/test/Data.PostgreSQL.Tests/__snapshots__/IntegrationTests.Query_Brands_First_2_Products_First_2_ForwardCursors_NET8_0.md @@ -42,7 +42,7 @@ ```sql -- @__p_0='2' -SELECT b."Name", b."Id" +SELECT b."Id", b."Name" FROM "Brands" AS b ORDER BY b."Name" DESC, b."Id" LIMIT @__p_0 diff --git a/src/HotChocolate/Data/test/Data.PostgreSQL.Tests/__snapshots__/IntegrationTests.Query_Brands_First_2_Products_First_2_ForwardCursors_NET9_0.md b/src/HotChocolate/Data/test/Data.PostgreSQL.Tests/__snapshots__/IntegrationTests.Query_Brands_First_2_Products_First_2_ForwardCursors_NET9_0.md index 8ea463f6b9a..9081ed0aa63 100644 --- a/src/HotChocolate/Data/test/Data.PostgreSQL.Tests/__snapshots__/IntegrationTests.Query_Brands_First_2_Products_First_2_ForwardCursors_NET9_0.md +++ b/src/HotChocolate/Data/test/Data.PostgreSQL.Tests/__snapshots__/IntegrationTests.Query_Brands_First_2_Products_First_2_ForwardCursors_NET9_0.md @@ -42,7 +42,7 @@ ```sql -- @__p_0='2' -SELECT b."Name", b."Id" +SELECT b."Id", b."Name" FROM "Brands" AS b ORDER BY b."Name" DESC, b."Id" LIMIT @__p_0 diff --git a/src/HotChocolate/Data/test/Data.PostgreSQL.Tests/__snapshots__/IntegrationTests.Query_Products_First_2_And_Brand_NET10_0.md b/src/HotChocolate/Data/test/Data.PostgreSQL.Tests/__snapshots__/IntegrationTests.Query_Products_First_2_And_Brand_NET10_0.md index ed4f2c36da7..f8ddf620eb7 100644 --- a/src/HotChocolate/Data/test/Data.PostgreSQL.Tests/__snapshots__/IntegrationTests.Query_Products_First_2_And_Brand_NET10_0.md +++ b/src/HotChocolate/Data/test/Data.PostgreSQL.Tests/__snapshots__/IntegrationTests.Query_Products_First_2_And_Brand_NET10_0.md @@ -29,7 +29,7 @@ ```sql -- @p='3' -SELECT p."Name", p."BrandId", p."Id" +SELECT p."BrandId", p."Name", p."Id" FROM "Products" AS p ORDER BY p."Name" DESC, p."Id" LIMIT @p diff --git a/src/HotChocolate/Data/test/Data.PostgreSQL.Tests/__snapshots__/IntegrationTests.Query_Products_First_2_And_Brand_NET8_0.md b/src/HotChocolate/Data/test/Data.PostgreSQL.Tests/__snapshots__/IntegrationTests.Query_Products_First_2_And_Brand_NET8_0.md index b2aa54ef6a3..3fed6b4bfba 100644 --- a/src/HotChocolate/Data/test/Data.PostgreSQL.Tests/__snapshots__/IntegrationTests.Query_Products_First_2_And_Brand_NET8_0.md +++ b/src/HotChocolate/Data/test/Data.PostgreSQL.Tests/__snapshots__/IntegrationTests.Query_Products_First_2_And_Brand_NET8_0.md @@ -29,7 +29,7 @@ ```sql -- @__p_0='3' -SELECT p."Name", p."BrandId", p."Id" +SELECT p."BrandId", p."Name", p."Id" FROM "Products" AS p ORDER BY p."Name" DESC, p."Id" LIMIT @__p_0 diff --git a/src/HotChocolate/Data/test/Data.PostgreSQL.Tests/__snapshots__/IntegrationTests.Query_Products_First_2_And_Brand_NET9_0.md b/src/HotChocolate/Data/test/Data.PostgreSQL.Tests/__snapshots__/IntegrationTests.Query_Products_First_2_And_Brand_NET9_0.md index b2aa54ef6a3..3fed6b4bfba 100644 --- a/src/HotChocolate/Data/test/Data.PostgreSQL.Tests/__snapshots__/IntegrationTests.Query_Products_First_2_And_Brand_NET9_0.md +++ b/src/HotChocolate/Data/test/Data.PostgreSQL.Tests/__snapshots__/IntegrationTests.Query_Products_First_2_And_Brand_NET9_0.md @@ -29,7 +29,7 @@ ```sql -- @__p_0='3' -SELECT p."Name", p."BrandId", p."Id" +SELECT p."BrandId", p."Name", p."Id" FROM "Products" AS p ORDER BY p."Name" DESC, p."Id" LIMIT @__p_0 diff --git a/src/HotChocolate/Data/test/Data.PostgreSQL.Tests/__snapshots__/IntegrationTests.Query_Products_First_2_With_4_EndCursors_NET10_0.md b/src/HotChocolate/Data/test/Data.PostgreSQL.Tests/__snapshots__/IntegrationTests.Query_Products_First_2_With_4_EndCursors_NET10_0.md index 890631d19a4..6ac436cdeb0 100644 --- a/src/HotChocolate/Data/test/Data.PostgreSQL.Tests/__snapshots__/IntegrationTests.Query_Products_First_2_With_4_EndCursors_NET10_0.md +++ b/src/HotChocolate/Data/test/Data.PostgreSQL.Tests/__snapshots__/IntegrationTests.Query_Products_First_2_With_4_EndCursors_NET10_0.md @@ -37,7 +37,7 @@ -- @p='3' SELECT ( SELECT count(*)::int - FROM "Products" AS p0) AS "TotalCount", p."Name", p."BrandId", p."Id" + FROM "Products" AS p0) AS "TotalCount", p."BrandId", p."Name", p."Id" FROM "Products" AS p ORDER BY p."Name" DESC, p."Id" LIMIT @p diff --git a/src/HotChocolate/Data/test/Data.PostgreSQL.Tests/__snapshots__/IntegrationTests.Query_Products_First_2_With_4_EndCursors_NET8_0.md b/src/HotChocolate/Data/test/Data.PostgreSQL.Tests/__snapshots__/IntegrationTests.Query_Products_First_2_With_4_EndCursors_NET8_0.md index c66d723c5c4..97f0f7752f8 100644 --- a/src/HotChocolate/Data/test/Data.PostgreSQL.Tests/__snapshots__/IntegrationTests.Query_Products_First_2_With_4_EndCursors_NET8_0.md +++ b/src/HotChocolate/Data/test/Data.PostgreSQL.Tests/__snapshots__/IntegrationTests.Query_Products_First_2_With_4_EndCursors_NET8_0.md @@ -36,7 +36,7 @@ ```sql -- @__Count_1='101' -- @__p_0='3' -SELECT @__Count_1 AS "TotalCount", p."Name", p."BrandId", p."Id" +SELECT @__Count_1 AS "TotalCount", p."BrandId", p."Name", p."Id" FROM "Products" AS p ORDER BY p."Name" DESC, p."Id" LIMIT @__p_0 diff --git a/src/HotChocolate/Data/test/Data.PostgreSQL.Tests/__snapshots__/IntegrationTests.Query_Products_First_2_With_4_EndCursors_NET9_0.md b/src/HotChocolate/Data/test/Data.PostgreSQL.Tests/__snapshots__/IntegrationTests.Query_Products_First_2_With_4_EndCursors_NET9_0.md index ff84dd11dd3..d73cdfa0bc9 100644 --- a/src/HotChocolate/Data/test/Data.PostgreSQL.Tests/__snapshots__/IntegrationTests.Query_Products_First_2_With_4_EndCursors_NET9_0.md +++ b/src/HotChocolate/Data/test/Data.PostgreSQL.Tests/__snapshots__/IntegrationTests.Query_Products_First_2_With_4_EndCursors_NET9_0.md @@ -37,7 +37,7 @@ -- @__p_0='3' SELECT ( SELECT count(*)::int - FROM "Products" AS p0) AS "TotalCount", p."Name", p."BrandId", p."Id" + FROM "Products" AS p0) AS "TotalCount", p."BrandId", p."Name", p."Id" FROM "Products" AS p ORDER BY p."Name" DESC, p."Id" LIMIT @__p_0 diff --git a/src/HotChocolate/Data/test/Data.PostgreSQL.Tests/__snapshots__/IntegrationTests.Query_Products_First_2_With_4_EndCursors_Skip_4_NET10_0.md b/src/HotChocolate/Data/test/Data.PostgreSQL.Tests/__snapshots__/IntegrationTests.Query_Products_First_2_With_4_EndCursors_Skip_4_NET10_0.md index 8559d97e196..90a7f0b6ec1 100644 --- a/src/HotChocolate/Data/test/Data.PostgreSQL.Tests/__snapshots__/IntegrationTests.Query_Products_First_2_With_4_EndCursors_Skip_4_NET10_0.md +++ b/src/HotChocolate/Data/test/Data.PostgreSQL.Tests/__snapshots__/IntegrationTests.Query_Products_First_2_With_4_EndCursors_Skip_4_NET10_0.md @@ -38,7 +38,7 @@ -- @value1='46' -- @p0='3' -- @p='6' -SELECT p."Name", p."BrandId", p."Id" +SELECT p."BrandId", p."Name", p."Id" FROM "Products" AS p WHERE p."Name" < @value OR (p."Name" = @value AND p."Id" > @value1) ORDER BY p."Name" DESC, p."Id" diff --git a/src/HotChocolate/Data/test/Data.PostgreSQL.Tests/__snapshots__/IntegrationTests.Query_Products_First_2_With_4_EndCursors_Skip_4_NET8_0.md b/src/HotChocolate/Data/test/Data.PostgreSQL.Tests/__snapshots__/IntegrationTests.Query_Products_First_2_With_4_EndCursors_Skip_4_NET8_0.md index 73cefd4e6cd..86af7d43f67 100644 --- a/src/HotChocolate/Data/test/Data.PostgreSQL.Tests/__snapshots__/IntegrationTests.Query_Products_First_2_With_4_EndCursors_Skip_4_NET8_0.md +++ b/src/HotChocolate/Data/test/Data.PostgreSQL.Tests/__snapshots__/IntegrationTests.Query_Products_First_2_With_4_EndCursors_Skip_4_NET8_0.md @@ -38,7 +38,7 @@ -- @__value_1='46' -- @__p_3='3' -- @__p_2='6' -SELECT p."Name", p."BrandId", p."Id" +SELECT p."BrandId", p."Name", p."Id" FROM "Products" AS p WHERE p."Name" < @__value_0 OR (p."Name" = @__value_0 AND p."Id" > @__value_1) ORDER BY p."Name" DESC, p."Id" diff --git a/src/HotChocolate/Data/test/Data.PostgreSQL.Tests/__snapshots__/IntegrationTests.Query_Products_First_2_With_4_EndCursors_Skip_4_NET9_0.md b/src/HotChocolate/Data/test/Data.PostgreSQL.Tests/__snapshots__/IntegrationTests.Query_Products_First_2_With_4_EndCursors_Skip_4_NET9_0.md index 73cefd4e6cd..86af7d43f67 100644 --- a/src/HotChocolate/Data/test/Data.PostgreSQL.Tests/__snapshots__/IntegrationTests.Query_Products_First_2_With_4_EndCursors_Skip_4_NET9_0.md +++ b/src/HotChocolate/Data/test/Data.PostgreSQL.Tests/__snapshots__/IntegrationTests.Query_Products_First_2_With_4_EndCursors_Skip_4_NET9_0.md @@ -38,7 +38,7 @@ -- @__value_1='46' -- @__p_3='3' -- @__p_2='6' -SELECT p."Name", p."BrandId", p."Id" +SELECT p."BrandId", p."Name", p."Id" FROM "Products" AS p WHERE p."Name" < @__value_0 OR (p."Name" = @__value_0 AND p."Id" > @__value_1) ORDER BY p."Name" DESC, p."Id" diff --git a/src/HotChocolate/Data/test/Data.Tests/__snapshots__/PagingHelperIntegrationTests.Ensure_Nullable_Connections_Dont_Throw_2_NET10_0.md b/src/HotChocolate/Data/test/Data.Tests/__snapshots__/PagingHelperIntegrationTests.Ensure_Nullable_Connections_Dont_Throw_2_NET10_0.md index 20fbdcd1fd5..514d54ebe19 100644 --- a/src/HotChocolate/Data/test/Data.Tests/__snapshots__/PagingHelperIntegrationTests.Ensure_Nullable_Connections_Dont_Throw_2_NET10_0.md +++ b/src/HotChocolate/Data/test/Data.Tests/__snapshots__/PagingHelperIntegrationTests.Ensure_Nullable_Connections_Dont_Throw_2_NET10_0.md @@ -4,7 +4,7 @@ ```sql -- @p='11' -SELECT f0."Id", f0."Name", b."Id" IS NULL, b."Id", b."Description", b."SomeField1", b."SomeField2" +SELECT b."Id" IS NULL, b."Description", b."Id", b."SomeField1", b."SomeField2", f0."Id", f0."Name" FROM ( SELECT f."Id", f."BarId", f."Name" FROM "Foos" AS f @@ -18,7 +18,7 @@ ORDER BY f0."Name", f0."Id" ## Expression 0 ```text -[Microsoft.EntityFrameworkCore.Query.EntityQueryRootExpression].OrderBy(t => t.Name).ThenBy(t => t.Id).Select(root => new Foo() {Id = root.Id, Name = root.Name, Bar = IIF((root.Bar == null), null, new Bar() {Id = root.Bar.Id, Description = IIF((root.Bar.Description == null), null, root.Bar.Description), SomeField1 = root.Bar.SomeField1, SomeField2 = IIF((root.Bar.SomeField2 == null), null, root.Bar.SomeField2)})}).Take(11) +[Microsoft.EntityFrameworkCore.Query.EntityQueryRootExpression].OrderBy(t => t.Name).ThenBy(t => t.Id).Select(root => new Foo() {Bar = IIF((root.Bar == null), null, new Bar() {Description = IIF((root.Bar.Description == null), null, root.Bar.Description), Id = root.Bar.Id, SomeField1 = root.Bar.SomeField1, SomeField2 = IIF((root.Bar.SomeField2 == null), null, root.Bar.SomeField2)}), Id = root.Id, Name = root.Name}).Take(11) ``` ## Result diff --git a/src/HotChocolate/Data/test/Data.Tests/__snapshots__/PagingHelperIntegrationTests.Ensure_Nullable_Connections_Dont_Throw_2_NET8_0.md b/src/HotChocolate/Data/test/Data.Tests/__snapshots__/PagingHelperIntegrationTests.Ensure_Nullable_Connections_Dont_Throw_2_NET8_0.md index 5ed68a9ddbd..8e45f8d6151 100644 --- a/src/HotChocolate/Data/test/Data.Tests/__snapshots__/PagingHelperIntegrationTests.Ensure_Nullable_Connections_Dont_Throw_2_NET8_0.md +++ b/src/HotChocolate/Data/test/Data.Tests/__snapshots__/PagingHelperIntegrationTests.Ensure_Nullable_Connections_Dont_Throw_2_NET8_0.md @@ -4,7 +4,7 @@ ```sql -- @__p_0='11' -SELECT t."Id", t."Name", b."Id" IS NULL, b."Id", b."Description", b."SomeField1", b."SomeField2" +SELECT b."Id" IS NULL, b."Description", b."Id", b."SomeField1", b."SomeField2", t."Id", t."Name" FROM ( SELECT f."Id", f."BarId", f."Name" FROM "Foos" AS f @@ -18,7 +18,7 @@ ORDER BY t."Name", t."Id" ## Expression 0 ```text -[Microsoft.EntityFrameworkCore.Query.EntityQueryRootExpression].OrderBy(t => t.Name).ThenBy(t => t.Id).Select(root => new Foo() {Id = root.Id, Name = root.Name, Bar = IIF((root.Bar == null), null, new Bar() {Id = root.Bar.Id, Description = IIF((root.Bar.Description == null), null, root.Bar.Description), SomeField1 = root.Bar.SomeField1, SomeField2 = IIF((root.Bar.SomeField2 == null), null, root.Bar.SomeField2)})}).Take(11) +[Microsoft.EntityFrameworkCore.Query.EntityQueryRootExpression].OrderBy(t => t.Name).ThenBy(t => t.Id).Select(root => new Foo() {Bar = IIF((root.Bar == null), null, new Bar() {Description = IIF((root.Bar.Description == null), null, root.Bar.Description), Id = root.Bar.Id, SomeField1 = root.Bar.SomeField1, SomeField2 = IIF((root.Bar.SomeField2 == null), null, root.Bar.SomeField2)}), Id = root.Id, Name = root.Name}).Take(11) ``` ## Result diff --git a/src/HotChocolate/Data/test/Data.Tests/__snapshots__/PagingHelperIntegrationTests.Ensure_Nullable_Connections_Dont_Throw_2_NET9_0.md b/src/HotChocolate/Data/test/Data.Tests/__snapshots__/PagingHelperIntegrationTests.Ensure_Nullable_Connections_Dont_Throw_2_NET9_0.md index 0710a2f2465..cddc506cd81 100644 --- a/src/HotChocolate/Data/test/Data.Tests/__snapshots__/PagingHelperIntegrationTests.Ensure_Nullable_Connections_Dont_Throw_2_NET9_0.md +++ b/src/HotChocolate/Data/test/Data.Tests/__snapshots__/PagingHelperIntegrationTests.Ensure_Nullable_Connections_Dont_Throw_2_NET9_0.md @@ -4,7 +4,7 @@ ```sql -- @__p_0='11' -SELECT f0."Id", f0."Name", b."Id" IS NULL, b."Id", b."Description", b."SomeField1", b."SomeField2" +SELECT b."Id" IS NULL, b."Description", b."Id", b."SomeField1", b."SomeField2", f0."Id", f0."Name" FROM ( SELECT f."Id", f."BarId", f."Name" FROM "Foos" AS f @@ -18,7 +18,7 @@ ORDER BY f0."Name", f0."Id" ## Expression 0 ```text -[Microsoft.EntityFrameworkCore.Query.EntityQueryRootExpression].OrderBy(t => t.Name).ThenBy(t => t.Id).Select(root => new Foo() {Id = root.Id, Name = root.Name, Bar = IIF((root.Bar == null), null, new Bar() {Id = root.Bar.Id, Description = IIF((root.Bar.Description == null), null, root.Bar.Description), SomeField1 = root.Bar.SomeField1, SomeField2 = IIF((root.Bar.SomeField2 == null), null, root.Bar.SomeField2)})}).Take(11) +[Microsoft.EntityFrameworkCore.Query.EntityQueryRootExpression].OrderBy(t => t.Name).ThenBy(t => t.Id).Select(root => new Foo() {Bar = IIF((root.Bar == null), null, new Bar() {Description = IIF((root.Bar.Description == null), null, root.Bar.Description), Id = root.Bar.Id, SomeField1 = root.Bar.SomeField1, SomeField2 = IIF((root.Bar.SomeField2 == null), null, root.Bar.SomeField2)}), Id = root.Id, Name = root.Name}).Take(11) ``` ## Result diff --git a/src/HotChocolate/Data/test/Data.Tests/__snapshots__/PagingHelperIntegrationTests.Ensure_Nullable_Connections_Dont_Throw_NET10_0.md b/src/HotChocolate/Data/test/Data.Tests/__snapshots__/PagingHelperIntegrationTests.Ensure_Nullable_Connections_Dont_Throw_NET10_0.md index 343da20b2a7..ef538b94a39 100644 --- a/src/HotChocolate/Data/test/Data.Tests/__snapshots__/PagingHelperIntegrationTests.Ensure_Nullable_Connections_Dont_Throw_NET10_0.md +++ b/src/HotChocolate/Data/test/Data.Tests/__snapshots__/PagingHelperIntegrationTests.Ensure_Nullable_Connections_Dont_Throw_NET10_0.md @@ -4,7 +4,7 @@ ```sql -- @p='11' -SELECT f0."Id", f0."Name", b."Id" IS NULL, b."Id", b."Description" +SELECT b."Id" IS NULL, b."Description", b."Id", f0."Id", f0."Name" FROM ( SELECT f."Id", f."BarId", f."Name" FROM "Foos" AS f @@ -18,7 +18,7 @@ ORDER BY f0."Name", f0."Id" ## Expression 0 ```text -[Microsoft.EntityFrameworkCore.Query.EntityQueryRootExpression].OrderBy(t => t.Name).ThenBy(t => t.Id).Select(root => new Foo() {Id = root.Id, Name = root.Name, Bar = IIF((root.Bar == null), null, new Bar() {Id = root.Bar.Id, Description = IIF((root.Bar.Description == null), null, root.Bar.Description)})}).Take(11) +[Microsoft.EntityFrameworkCore.Query.EntityQueryRootExpression].OrderBy(t => t.Name).ThenBy(t => t.Id).Select(root => new Foo() {Bar = IIF((root.Bar == null), null, new Bar() {Description = IIF((root.Bar.Description == null), null, root.Bar.Description), Id = root.Bar.Id}), Id = root.Id, Name = root.Name}).Take(11) ``` ## Result diff --git a/src/HotChocolate/Data/test/Data.Tests/__snapshots__/PagingHelperIntegrationTests.Ensure_Nullable_Connections_Dont_Throw_NET8_0.md b/src/HotChocolate/Data/test/Data.Tests/__snapshots__/PagingHelperIntegrationTests.Ensure_Nullable_Connections_Dont_Throw_NET8_0.md index d2b2d9cec25..753513db41e 100644 --- a/src/HotChocolate/Data/test/Data.Tests/__snapshots__/PagingHelperIntegrationTests.Ensure_Nullable_Connections_Dont_Throw_NET8_0.md +++ b/src/HotChocolate/Data/test/Data.Tests/__snapshots__/PagingHelperIntegrationTests.Ensure_Nullable_Connections_Dont_Throw_NET8_0.md @@ -4,7 +4,7 @@ ```sql -- @__p_0='11' -SELECT t."Id", t."Name", b."Id" IS NULL, b."Id", b."Description" +SELECT b."Id" IS NULL, b."Description", b."Id", t."Id", t."Name" FROM ( SELECT f."Id", f."BarId", f."Name" FROM "Foos" AS f @@ -18,7 +18,7 @@ ORDER BY t."Name", t."Id" ## Expression 0 ```text -[Microsoft.EntityFrameworkCore.Query.EntityQueryRootExpression].OrderBy(t => t.Name).ThenBy(t => t.Id).Select(root => new Foo() {Id = root.Id, Name = root.Name, Bar = IIF((root.Bar == null), null, new Bar() {Id = root.Bar.Id, Description = IIF((root.Bar.Description == null), null, root.Bar.Description)})}).Take(11) +[Microsoft.EntityFrameworkCore.Query.EntityQueryRootExpression].OrderBy(t => t.Name).ThenBy(t => t.Id).Select(root => new Foo() {Bar = IIF((root.Bar == null), null, new Bar() {Description = IIF((root.Bar.Description == null), null, root.Bar.Description), Id = root.Bar.Id}), Id = root.Id, Name = root.Name}).Take(11) ``` ## Result diff --git a/src/HotChocolate/Data/test/Data.Tests/__snapshots__/PagingHelperIntegrationTests.Ensure_Nullable_Connections_Dont_Throw_NET9_0.md b/src/HotChocolate/Data/test/Data.Tests/__snapshots__/PagingHelperIntegrationTests.Ensure_Nullable_Connections_Dont_Throw_NET9_0.md index 93ad35a9590..1c77be0f958 100644 --- a/src/HotChocolate/Data/test/Data.Tests/__snapshots__/PagingHelperIntegrationTests.Ensure_Nullable_Connections_Dont_Throw_NET9_0.md +++ b/src/HotChocolate/Data/test/Data.Tests/__snapshots__/PagingHelperIntegrationTests.Ensure_Nullable_Connections_Dont_Throw_NET9_0.md @@ -4,7 +4,7 @@ ```sql -- @__p_0='11' -SELECT f0."Id", f0."Name", b."Id" IS NULL, b."Id", b."Description" +SELECT b."Id" IS NULL, b."Description", b."Id", f0."Id", f0."Name" FROM ( SELECT f."Id", f."BarId", f."Name" FROM "Foos" AS f @@ -18,7 +18,7 @@ ORDER BY f0."Name", f0."Id" ## Expression 0 ```text -[Microsoft.EntityFrameworkCore.Query.EntityQueryRootExpression].OrderBy(t => t.Name).ThenBy(t => t.Id).Select(root => new Foo() {Id = root.Id, Name = root.Name, Bar = IIF((root.Bar == null), null, new Bar() {Id = root.Bar.Id, Description = IIF((root.Bar.Description == null), null, root.Bar.Description)})}).Take(11) +[Microsoft.EntityFrameworkCore.Query.EntityQueryRootExpression].OrderBy(t => t.Name).ThenBy(t => t.Id).Select(root => new Foo() {Bar = IIF((root.Bar == null), null, new Bar() {Description = IIF((root.Bar.Description == null), null, root.Bar.Description), Id = root.Bar.Id}), Id = root.Id, Name = root.Name}).Take(11) ``` ## Result diff --git a/src/HotChocolate/Data/test/Data.Tests/__snapshots__/ProjectableDataLoaderTests.Branches_Are_Merged.md b/src/HotChocolate/Data/test/Data.Tests/__snapshots__/ProjectableDataLoaderTests.Branches_Are_Merged.md index 4be19358ab3..9d4b4a26356 100644 --- a/src/HotChocolate/Data/test/Data.Tests/__snapshots__/ProjectableDataLoaderTests.Branches_Are_Merged.md +++ b/src/HotChocolate/Data/test/Data.Tests/__snapshots__/ProjectableDataLoaderTests.Branches_Are_Merged.md @@ -4,7 +4,7 @@ ```text -- @__keys_0={ '1', '2' } (DbType = Object) -SELECT p."Name", FALSE, b."Name", p."Id" +SELECT FALSE, b."Name", p."Name", p."Id" FROM "Products" AS p INNER JOIN "Brands" AS b ON p."BrandId" = b."Id" WHERE p."Id" = ANY (@__keys_0) diff --git a/src/HotChocolate/Data/test/Data.Tests/__snapshots__/ProjectableDataLoaderTests.Branches_Are_Merged_NET10_0.md b/src/HotChocolate/Data/test/Data.Tests/__snapshots__/ProjectableDataLoaderTests.Branches_Are_Merged_NET10_0.md index 61286b464f2..7bfcf4a5b62 100644 --- a/src/HotChocolate/Data/test/Data.Tests/__snapshots__/ProjectableDataLoaderTests.Branches_Are_Merged_NET10_0.md +++ b/src/HotChocolate/Data/test/Data.Tests/__snapshots__/ProjectableDataLoaderTests.Branches_Are_Merged_NET10_0.md @@ -4,7 +4,7 @@ ```text -- @keys={ '1', '2' } (DbType = Object) -SELECT p."Name", FALSE, b."Name", p."Id" +SELECT FALSE, b."Name", p."Name", p."Id" FROM "Products" AS p INNER JOIN "Brands" AS b ON p."BrandId" = b."Id" WHERE p."Id" = ANY (@keys) diff --git a/src/HotChocolate/Data/test/Data.Tests/__snapshots__/ProjectableDataLoaderTests.Brand_Details_Country_Name.md b/src/HotChocolate/Data/test/Data.Tests/__snapshots__/ProjectableDataLoaderTests.Brand_Details_Country_Name.md index 3706863ab34..9b1cb01f651 100644 --- a/src/HotChocolate/Data/test/Data.Tests/__snapshots__/ProjectableDataLoaderTests.Brand_Details_Country_Name.md +++ b/src/HotChocolate/Data/test/Data.Tests/__snapshots__/ProjectableDataLoaderTests.Brand_Details_Country_Name.md @@ -4,7 +4,7 @@ ```text -- @__keys_0={ '1' } (DbType = Object) -SELECT b."Name", b."Details_Country_Name" AS "Name", b."Id" +SELECT b."Details_Country_Name" AS "Name", b."Name", b."Id" FROM "Brands" AS b WHERE b."Id" = ANY (@__keys_0) ``` diff --git a/src/HotChocolate/Data/test/Data.Tests/__snapshots__/ProjectableDataLoaderTests.Brand_Details_Country_Name_NET10_0.md b/src/HotChocolate/Data/test/Data.Tests/__snapshots__/ProjectableDataLoaderTests.Brand_Details_Country_Name_NET10_0.md index 362043ef3ab..c4326d174a6 100644 --- a/src/HotChocolate/Data/test/Data.Tests/__snapshots__/ProjectableDataLoaderTests.Brand_Details_Country_Name_NET10_0.md +++ b/src/HotChocolate/Data/test/Data.Tests/__snapshots__/ProjectableDataLoaderTests.Brand_Details_Country_Name_NET10_0.md @@ -4,7 +4,7 @@ ```text -- @keys={ '1' } (DbType = Object) -SELECT b."Name", b."Details_Country_Name" AS "Name", b."Id" +SELECT b."Details_Country_Name" AS "Name", b."Name", b."Id" FROM "Brands" AS b WHERE b."Id" = ANY (@keys) ``` diff --git a/src/HotChocolate/Data/test/Data.Tests/__snapshots__/ProjectableDataLoaderTests.Force_A_Branch.md b/src/HotChocolate/Data/test/Data.Tests/__snapshots__/ProjectableDataLoaderTests.Force_A_Branch.md index 81bfdc331cf..66fd6cd00c5 100644 --- a/src/HotChocolate/Data/test/Data.Tests/__snapshots__/ProjectableDataLoaderTests.Force_A_Branch.md +++ b/src/HotChocolate/Data/test/Data.Tests/__snapshots__/ProjectableDataLoaderTests.Force_A_Branch.md @@ -4,12 +4,12 @@ ```text -- @__keys_0={ '1' } (DbType = Object) -SELECT p."Name", FALSE, b."Name", p."Id" +SELECT FALSE, b."Name", p."Name", p."Id" FROM "Products" AS p INNER JOIN "Brands" AS b ON p."BrandId" = b."Id" WHERE p."Id" = ANY (@__keys_0) -- @__keys_0={ '1' } (DbType = Object) -SELECT p."Id", FALSE, b."Id" +SELECT FALSE, b."Id", p."Id" FROM "Products" AS p INNER JOIN "Brands" AS b ON p."BrandId" = b."Id" WHERE p."Id" = ANY (@__keys_0) diff --git a/src/HotChocolate/Data/test/Data.Tests/__snapshots__/ProjectableDataLoaderTests.Force_A_Branch_NET10_0.md b/src/HotChocolate/Data/test/Data.Tests/__snapshots__/ProjectableDataLoaderTests.Force_A_Branch_NET10_0.md index de5e9fcd52e..8fc69ae52a4 100644 --- a/src/HotChocolate/Data/test/Data.Tests/__snapshots__/ProjectableDataLoaderTests.Force_A_Branch_NET10_0.md +++ b/src/HotChocolate/Data/test/Data.Tests/__snapshots__/ProjectableDataLoaderTests.Force_A_Branch_NET10_0.md @@ -4,12 +4,12 @@ ```text -- @keys={ '1' } (DbType = Object) -SELECT p."Name", FALSE, b."Name", p."Id" +SELECT FALSE, b."Name", p."Name", p."Id" FROM "Products" AS p INNER JOIN "Brands" AS b ON p."BrandId" = b."Id" WHERE p."Id" = ANY (@keys) -- @keys={ '1' } (DbType = Object) -SELECT p."Id", FALSE, b."Id" +SELECT FALSE, b."Id", p."Id" FROM "Products" AS p INNER JOIN "Brands" AS b ON p."BrandId" = b."Id" WHERE p."Id" = ANY (@keys) diff --git a/src/HotChocolate/Data/test/Data.Tests/__snapshots__/ProjectableDataLoaderTests.Product_With_Name_And_Brand_With_Name.md b/src/HotChocolate/Data/test/Data.Tests/__snapshots__/ProjectableDataLoaderTests.Product_With_Name_And_Brand_With_Name.md index e1538e6d6fd..0238cd46695 100644 --- a/src/HotChocolate/Data/test/Data.Tests/__snapshots__/ProjectableDataLoaderTests.Product_With_Name_And_Brand_With_Name.md +++ b/src/HotChocolate/Data/test/Data.Tests/__snapshots__/ProjectableDataLoaderTests.Product_With_Name_And_Brand_With_Name.md @@ -4,7 +4,7 @@ ```text -- @__keys_0={ '1' } (DbType = Object) -SELECT p."Name", FALSE, b."Name", p."Id" +SELECT FALSE, b."Name", p."Name", p."Id" FROM "Products" AS p INNER JOIN "Brands" AS b ON p."BrandId" = b."Id" WHERE p."Id" = ANY (@__keys_0) diff --git a/src/HotChocolate/Data/test/Data.Tests/__snapshots__/ProjectableDataLoaderTests.Product_With_Name_And_Brand_With_Name_NET10_0.md b/src/HotChocolate/Data/test/Data.Tests/__snapshots__/ProjectableDataLoaderTests.Product_With_Name_And_Brand_With_Name_NET10_0.md index 893a8280745..92205067567 100644 --- a/src/HotChocolate/Data/test/Data.Tests/__snapshots__/ProjectableDataLoaderTests.Product_With_Name_And_Brand_With_Name_NET10_0.md +++ b/src/HotChocolate/Data/test/Data.Tests/__snapshots__/ProjectableDataLoaderTests.Product_With_Name_And_Brand_With_Name_NET10_0.md @@ -4,7 +4,7 @@ ```text -- @keys={ '1' } (DbType = Object) -SELECT p."Name", FALSE, b."Name", p."Id" +SELECT FALSE, b."Name", p."Name", p."Id" FROM "Products" AS p INNER JOIN "Brands" AS b ON p."BrandId" = b."Id" WHERE p."Id" = ANY (@keys)