From dab980b0044e49a73f39946e9be719f3891ed0ba Mon Sep 17 00:00:00 2001 From: MacondoExpress Date: Wed, 6 Dec 2023 16:48:48 +0000 Subject: [PATCH 1/8] initial tooling to generate the workflow --- packages/graphql/package.json | 3 ++- packages/graphql/tests/performance/databaseQuery/TestRunner.ts | 1 - packages/graphql/tests/performance/typedefs.ts | 3 +++ 3 files changed, 5 insertions(+), 2 deletions(-) diff --git a/packages/graphql/package.json b/packages/graphql/package.json index fe1eb964a3..a12f57abae 100644 --- a/packages/graphql/package.json +++ b/packages/graphql/package.json @@ -42,7 +42,8 @@ "test:tck": "jest tests/tck -c jest.minimal.config.js", "test:unit": "jest src --coverage=true -c jest.minimal.config.js", "test": "jest", - "knip": "knip" + "knip": "knip", + "build-benchmark-workflow": "ts-node tests/performance/build-benchmark-workflow.ts" }, "author": "Neo4j Inc.", "devDependencies": { diff --git a/packages/graphql/tests/performance/databaseQuery/TestRunner.ts b/packages/graphql/tests/performance/databaseQuery/TestRunner.ts index 3d3649b6a8..6eae14ae0e 100644 --- a/packages/graphql/tests/performance/databaseQuery/TestRunner.ts +++ b/packages/graphql/tests/performance/databaseQuery/TestRunner.ts @@ -85,7 +85,6 @@ export class TestRunner { const session = this.driver.session(); try { const profiledQuery = this.wrapQueryInProfile(cypher); - const t1 = new Date().getTime(); const result = await session.run(profiledQuery, params); const t2 = new Date().getTime(); diff --git a/packages/graphql/tests/performance/typedefs.ts b/packages/graphql/tests/performance/typedefs.ts index 9f0dba68ed..de6b849273 100644 --- a/packages/graphql/tests/performance/typedefs.ts +++ b/packages/graphql/tests/performance/typedefs.ts @@ -46,6 +46,9 @@ export const typeDefs = `#graphql title: String! tagline: String released: Int + floatScore: Float + intScore: Int + bigIntScore: BigInt actors: [Person!]! @relationship(type: "ACTED_IN", direction: IN) directors: [Person!]! @relationship(type: "DIRECTED", direction: IN) reviewers: [Person!]! @relationship(type: "REVIEWED", direction: IN) From 6098f0b9468496e7f74c717343533e5da7df6468 Mon Sep 17 00:00:00 2001 From: MacondoExpress Date: Wed, 6 Dec 2023 16:51:37 +0000 Subject: [PATCH 2/8] add WorkflowGeneator --- .../performance/build-benchmark-workflow.ts | 36 ++++ .../performance/utils/WorkflowGenerator.ts | 167 ++++++++++++++++++ 2 files changed, 203 insertions(+) create mode 100644 packages/graphql/tests/performance/build-benchmark-workflow.ts create mode 100644 packages/graphql/tests/performance/utils/WorkflowGenerator.ts diff --git a/packages/graphql/tests/performance/build-benchmark-workflow.ts b/packages/graphql/tests/performance/build-benchmark-workflow.ts new file mode 100644 index 0000000000..10179adedc --- /dev/null +++ b/packages/graphql/tests/performance/build-benchmark-workflow.ts @@ -0,0 +1,36 @@ +/* + * Copyright (c) "Neo4j" + * Neo4j Sweden AB [http://neo4j.com] + * + * This file is part of Neo4j. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import path from "path"; + +import { Neo4jGraphQL } from "../../src"; +import { typeDefs } from "./typedefs"; +import type * as Performance from "./types"; +import { WorkflowGenerator } from "./utils/WorkflowGenerator"; +import { collectTests } from "./utils/collect-test-files"; +async function main() { + const neoSchema = new Neo4jGraphQL({ + typeDefs, + experimental: true, + }); + const gqltests: Performance.TestInfo[] = await collectTests(path.join(__dirname, "graphql")); + await new WorkflowGenerator(neoSchema).generateWorkflow(gqltests); +} + +main().catch((err) => console.error(err)); diff --git a/packages/graphql/tests/performance/utils/WorkflowGenerator.ts b/packages/graphql/tests/performance/utils/WorkflowGenerator.ts new file mode 100644 index 0000000000..d545c3933e --- /dev/null +++ b/packages/graphql/tests/performance/utils/WorkflowGenerator.ts @@ -0,0 +1,167 @@ +/* + * Copyright (c) "Neo4j" + * Neo4j Sweden AB [http://neo4j.com] + * + * This file is part of Neo4j. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import { Integer, Date, LocalTime, Duration, Time } from "neo4j-driver"; +import type { Neo4jGraphQL } from "../../../src"; +import type * as Performance from "../types"; +import * as fs from "fs/promises"; +import * as path from "path"; +import { translateQuery } from "../../tck/utils/tck-test-utils"; +import gql from "graphql-tag"; + +type QueryConfig = { + name: string; + description: string; + queryFile: string; + parameters: { + file: string; + }; +}; + +type WorkflowConfig = { + name: string; + queries: QueryConfig[]; +}; + +type WorkflowFile = { + name: string; + path: string; + content: string; +}; + +export class WorkflowGenerator { + private schema: Neo4jGraphQL; + + constructor(schema: Neo4jGraphQL) { + this.schema = schema; + } + public async generateWorkflow(tests: Array): Promise { + const directoryPath = "./benchmark-workflow/"; + const queryConfigs: QueryConfig[] = []; + const queryFiles: WorkflowFile[] = []; + const paramFiles: WorkflowFile[] = []; + try { + for (const test of tests) { + const { cypher, params } = await this.getCypherAndParams(test); + + const queryFile = this.getQueryFile(test, cypher); + queryFiles.push(queryFile); + + const paramFile = this.getParamFile(test, params); + paramFiles.push(paramFile); + + const queryConfig = this.getQueryConfig(queryFile, paramFile, test.name); + queryConfigs.push(queryConfig); + } + + await fs.mkdir(directoryPath, { recursive: true }); + await fs.mkdir(path.join(directoryPath, "queries"), { recursive: true }); + await fs.mkdir(path.join(directoryPath, "params"), { recursive: true }); + + const promises = [...queryFiles, ...paramFiles].map((file: WorkflowFile) => { + return fs.writeFile(path.join(directoryPath, file.path), file.content); + }); + await Promise.all(promises); + const workflowConfig = this.getWorkflowConfig(queryConfigs); + await fs.writeFile(path.join(directoryPath, "query-config.json"), JSON.stringify(workflowConfig, null, 2)); + } catch (err) { + console.error("Error generating workflow"); + console.warn(err); + } + } + + private getQueryFile(test: Performance.TestInfo, cypher: string): WorkflowFile { + const name = test.name; + const fileName = `${name}.cypher`; + return { + name, + path: path.join("queries", fileName), + content: cypher, + }; + } + + private getParamFile(test: Performance.TestInfo, parameters: Record): WorkflowFile { + const name = test.name; + const fileName = `${name}.txt`; + return { + name, + path: path.join("params", fileName), + content: this.convertJSONtoCSV(parameters), + }; + } + + private getQueryConfig(queryFile: WorkflowFile, paramFile: WorkflowFile, queryName: string): QueryConfig { + return { + name: queryName, + description: queryName, + queryFile: queryFile.path, + parameters: { + file: paramFile.path, + }, + }; + } + + private getWorkflowConfig(queries: QueryConfig[]): WorkflowConfig { + return { + name: "graphql", + queries, + }; + } + + private async getCypherAndParams( + test: Performance.TestInfo + ): Promise<{ cypher: string; params: Record }> { + const cypherQuery = await translateQuery(this.schema, gql(test.query)); + return { + cypher: cypherQuery.cypher, + params: cypherQuery.params, + }; + } + /** + * Convert our param format to the benchmarking tool's format + **/ + private convertJSONtoCSV(input: Record): string { + let header = ""; + let row = ""; + const separator = "|"; + + Object.entries(input).forEach(([key, value]) => { + if (header.length) { + header += separator; + } + if (row.length) { + row += separator; + } + header += key; + row += JSON.stringify(value, driverWrapperReplacer); + }); + return `${header}\n${row}`; + } +} + +function driverWrapperReplacer(key: string, value: any) { + if (value instanceof Integer) { + return value.toNumber(); + } + if (value instanceof Date || value instanceof LocalTime || value instanceof Duration || value instanceof Time) { + return value.toString(); + } + + return value; +} From 0e976e90356fa50ffe786b915662015d8394ab40 Mon Sep 17 00:00:00 2001 From: MacondoExpress Date: Thu, 7 Dec 2023 11:42:13 +0000 Subject: [PATCH 3/8] rename workflow to workload --- ...orkflow.ts => build-benchmark-workload.ts} | 4 +- ...kflowGenerator.ts => WorkloadGenerator.ts} | 42 +++++++++++++------ 2 files changed, 32 insertions(+), 14 deletions(-) rename packages/graphql/tests/performance/{build-benchmark-workflow.ts => build-benchmark-workload.ts} (90%) rename packages/graphql/tests/performance/utils/{WorkflowGenerator.ts => WorkloadGenerator.ts} (81%) diff --git a/packages/graphql/tests/performance/build-benchmark-workflow.ts b/packages/graphql/tests/performance/build-benchmark-workload.ts similarity index 90% rename from packages/graphql/tests/performance/build-benchmark-workflow.ts rename to packages/graphql/tests/performance/build-benchmark-workload.ts index 10179adedc..c98ef950ae 100644 --- a/packages/graphql/tests/performance/build-benchmark-workflow.ts +++ b/packages/graphql/tests/performance/build-benchmark-workload.ts @@ -22,7 +22,7 @@ import path from "path"; import { Neo4jGraphQL } from "../../src"; import { typeDefs } from "./typedefs"; import type * as Performance from "./types"; -import { WorkflowGenerator } from "./utils/WorkflowGenerator"; +import { WorkloadGenerator } from "./utils/WorkloadGenerator"; import { collectTests } from "./utils/collect-test-files"; async function main() { const neoSchema = new Neo4jGraphQL({ @@ -30,7 +30,7 @@ async function main() { experimental: true, }); const gqltests: Performance.TestInfo[] = await collectTests(path.join(__dirname, "graphql")); - await new WorkflowGenerator(neoSchema).generateWorkflow(gqltests); + await new WorkloadGenerator(neoSchema).generateWorkload(gqltests); } main().catch((err) => console.error(err)); diff --git a/packages/graphql/tests/performance/utils/WorkflowGenerator.ts b/packages/graphql/tests/performance/utils/WorkloadGenerator.ts similarity index 81% rename from packages/graphql/tests/performance/utils/WorkflowGenerator.ts rename to packages/graphql/tests/performance/utils/WorkloadGenerator.ts index d545c3933e..f6c59f64a2 100644 --- a/packages/graphql/tests/performance/utils/WorkflowGenerator.ts +++ b/packages/graphql/tests/performance/utils/WorkloadGenerator.ts @@ -25,6 +25,7 @@ import * as path from "path"; import { translateQuery } from "../../tck/utils/tck-test-utils"; import gql from "graphql-tag"; +// Initial configuration, add available configuration options here type QueryConfig = { name: string; description: string; @@ -34,30 +35,38 @@ type QueryConfig = { }; }; -type WorkflowConfig = { +type WorkloadConfig = { name: string; queries: QueryConfig[]; }; -type WorkflowFile = { +type DatasetConfig = { + name: string; + format: "aligned"; +}; + +type WorkloadFile = { name: string; path: string; content: string; }; -export class WorkflowGenerator { +export class WorkloadGenerator { private schema: Neo4jGraphQL; constructor(schema: Neo4jGraphQL) { this.schema = schema; } - public async generateWorkflow(tests: Array): Promise { - const directoryPath = "./benchmark-workflow/"; + public async generateWorkload(tests: Array): Promise { + const directoryPath = "./benchmark-workload/"; const queryConfigs: QueryConfig[] = []; - const queryFiles: WorkflowFile[] = []; - const paramFiles: WorkflowFile[] = []; + const queryFiles: WorkloadFile[] = []; + const paramFiles: WorkloadFile[] = []; try { for (const test of tests) { + if (test.name !== "SimpleQuery") { + continue; + } const { cypher, params } = await this.getCypherAndParams(test); const queryFile = this.getQueryFile(test, cypher); @@ -74,19 +83,21 @@ export class WorkflowGenerator { await fs.mkdir(path.join(directoryPath, "queries"), { recursive: true }); await fs.mkdir(path.join(directoryPath, "params"), { recursive: true }); - const promises = [...queryFiles, ...paramFiles].map((file: WorkflowFile) => { + const promises = [...queryFiles, ...paramFiles].map((file: WorkloadFile) => { return fs.writeFile(path.join(directoryPath, file.path), file.content); }); await Promise.all(promises); const workflowConfig = this.getWorkflowConfig(queryConfigs); + const datasetConfig = this.getDatasetConfig(); await fs.writeFile(path.join(directoryPath, "query-config.json"), JSON.stringify(workflowConfig, null, 2)); + await fs.writeFile(path.join(directoryPath, "dataset.json"), JSON.stringify(datasetConfig, null, 2)); } catch (err) { console.error("Error generating workflow"); console.warn(err); } } - private getQueryFile(test: Performance.TestInfo, cypher: string): WorkflowFile { + private getQueryFile(test: Performance.TestInfo, cypher: string): WorkloadFile { const name = test.name; const fileName = `${name}.cypher`; return { @@ -96,7 +107,7 @@ export class WorkflowGenerator { }; } - private getParamFile(test: Performance.TestInfo, parameters: Record): WorkflowFile { + private getParamFile(test: Performance.TestInfo, parameters: Record): WorkloadFile { const name = test.name; const fileName = `${name}.txt`; return { @@ -106,7 +117,7 @@ export class WorkflowGenerator { }; } - private getQueryConfig(queryFile: WorkflowFile, paramFile: WorkflowFile, queryName: string): QueryConfig { + private getQueryConfig(queryFile: WorkloadFile, paramFile: WorkloadFile, queryName: string): QueryConfig { return { name: queryName, description: queryName, @@ -117,13 +128,20 @@ export class WorkflowGenerator { }; } - private getWorkflowConfig(queries: QueryConfig[]): WorkflowConfig { + private getWorkflowConfig(queries: QueryConfig[]): WorkloadConfig { return { name: "graphql", queries, }; } + private getDatasetConfig(): DatasetConfig { + return { + name: "graphql-benchmark-dataset", + format: "aligned", + }; + } + private async getCypherAndParams( test: Performance.TestInfo ): Promise<{ cypher: string; params: Record }> { From cacf951209fd7daf58c38df0eb992e85cb0b6648 Mon Sep 17 00:00:00 2001 From: MacondoExpress Date: Thu, 7 Dec 2023 14:21:55 +0000 Subject: [PATCH 4/8] rename to config.json --- .../graphql/tests/performance/utils/WorkloadGenerator.ts | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/packages/graphql/tests/performance/utils/WorkloadGenerator.ts b/packages/graphql/tests/performance/utils/WorkloadGenerator.ts index f6c59f64a2..7491188905 100644 --- a/packages/graphql/tests/performance/utils/WorkloadGenerator.ts +++ b/packages/graphql/tests/performance/utils/WorkloadGenerator.ts @@ -37,6 +37,7 @@ type QueryConfig = { type WorkloadConfig = { name: string; + dataset: string; queries: QueryConfig[]; }; @@ -89,7 +90,7 @@ export class WorkloadGenerator { await Promise.all(promises); const workflowConfig = this.getWorkflowConfig(queryConfigs); const datasetConfig = this.getDatasetConfig(); - await fs.writeFile(path.join(directoryPath, "query-config.json"), JSON.stringify(workflowConfig, null, 2)); + await fs.writeFile(path.join(directoryPath, "config.json"), JSON.stringify(workflowConfig, null, 2)); await fs.writeFile(path.join(directoryPath, "dataset.json"), JSON.stringify(datasetConfig, null, 2)); } catch (err) { console.error("Error generating workflow"); @@ -130,7 +131,8 @@ export class WorkloadGenerator { private getWorkflowConfig(queries: QueryConfig[]): WorkloadConfig { return { - name: "graphql", + name: "benchmark-workload", + dataset: "dataset.json", queries, }; } From da07ffa6b9a68d3a47ce9761bcf771b049e8d88d Mon Sep 17 00:00:00 2001 From: MacondoExpress Date: Thu, 14 Dec 2023 14:52:22 +0000 Subject: [PATCH 5/8] add possibility to define name of the workload and add empty schema --- .../tests/performance/build-benchmark-workload.ts | 5 +++-- .../tests/performance/utils/WorkloadGenerator.ts | 10 +++++----- 2 files changed, 8 insertions(+), 7 deletions(-) diff --git a/packages/graphql/tests/performance/build-benchmark-workload.ts b/packages/graphql/tests/performance/build-benchmark-workload.ts index c98ef950ae..fd1eb11369 100644 --- a/packages/graphql/tests/performance/build-benchmark-workload.ts +++ b/packages/graphql/tests/performance/build-benchmark-workload.ts @@ -24,13 +24,14 @@ import { typeDefs } from "./typedefs"; import type * as Performance from "./types"; import { WorkloadGenerator } from "./utils/WorkloadGenerator"; import { collectTests } from "./utils/collect-test-files"; + async function main() { const neoSchema = new Neo4jGraphQL({ typeDefs, experimental: true, }); - const gqltests: Performance.TestInfo[] = await collectTests(path.join(__dirname, "graphql")); - await new WorkloadGenerator(neoSchema).generateWorkload(gqltests); + const gqlTests: Performance.TestInfo[] = await collectTests(path.join(__dirname, "graphql")); + await new WorkloadGenerator(neoSchema).generateWorkload(gqlTests); } main().catch((err) => console.error(err)); diff --git a/packages/graphql/tests/performance/utils/WorkloadGenerator.ts b/packages/graphql/tests/performance/utils/WorkloadGenerator.ts index 7491188905..a59fb55850 100644 --- a/packages/graphql/tests/performance/utils/WorkloadGenerator.ts +++ b/packages/graphql/tests/performance/utils/WorkloadGenerator.ts @@ -54,20 +54,19 @@ type WorkloadFile = { export class WorkloadGenerator { private schema: Neo4jGraphQL; + private name: string; constructor(schema: Neo4jGraphQL) { this.schema = schema; + this.name = "graphql-workload"; } public async generateWorkload(tests: Array): Promise { - const directoryPath = "./benchmark-workload/"; + const directoryPath = `./${this.name}/`; const queryConfigs: QueryConfig[] = []; const queryFiles: WorkloadFile[] = []; const paramFiles: WorkloadFile[] = []; try { for (const test of tests) { - if (test.name !== "SimpleQuery") { - continue; - } const { cypher, params } = await this.getCypherAndParams(test); const queryFile = this.getQueryFile(test, cypher); @@ -92,6 +91,7 @@ export class WorkloadGenerator { const datasetConfig = this.getDatasetConfig(); await fs.writeFile(path.join(directoryPath, "config.json"), JSON.stringify(workflowConfig, null, 2)); await fs.writeFile(path.join(directoryPath, "dataset.json"), JSON.stringify(datasetConfig, null, 2)); + await fs.writeFile(path.join(directoryPath, "schema.txt"), ""); } catch (err) { console.error("Error generating workflow"); console.warn(err); @@ -131,7 +131,7 @@ export class WorkloadGenerator { private getWorkflowConfig(queries: QueryConfig[]): WorkloadConfig { return { - name: "benchmark-workload", + name: this.name, dataset: "dataset.json", queries, }; From f88ffa946c07582b28aff3bfae0ae3e744d2045f Mon Sep 17 00:00:00 2001 From: MacondoExpress Date: Fri, 15 Dec 2023 14:09:36 +0000 Subject: [PATCH 6/8] move to empty string for empty Map,Array --- .../performance/utils/WorkloadGenerator.ts | 113 +++++++++++++++--- 1 file changed, 99 insertions(+), 14 deletions(-) diff --git a/packages/graphql/tests/performance/utils/WorkloadGenerator.ts b/packages/graphql/tests/performance/utils/WorkloadGenerator.ts index a59fb55850..5d91578da4 100644 --- a/packages/graphql/tests/performance/utils/WorkloadGenerator.ts +++ b/packages/graphql/tests/performance/utils/WorkloadGenerator.ts @@ -17,7 +17,7 @@ * limitations under the License. */ -import { Integer, Date, LocalTime, Duration, Time } from "neo4j-driver"; +import { Integer, Date, LocalTime, Duration, Time, DateTime } from "neo4j-driver"; import type { Neo4jGraphQL } from "../../../src"; import type * as Performance from "../types"; import * as fs from "fs/promises"; @@ -30,7 +30,7 @@ type QueryConfig = { name: string; description: string; queryFile: string; - parameters: { + parameters?: { file: string; }; }; @@ -73,9 +73,11 @@ export class WorkloadGenerator { queryFiles.push(queryFile); const paramFile = this.getParamFile(test, params); - paramFiles.push(paramFile); + if (paramFile) { + paramFiles.push(paramFile); + } - const queryConfig = this.getQueryConfig(queryFile, paramFile, test.name); + const queryConfig = this.getQueryConfig(test.name, queryFile, paramFile); queryConfigs.push(queryConfig); } @@ -108,7 +110,10 @@ export class WorkloadGenerator { }; } - private getParamFile(test: Performance.TestInfo, parameters: Record): WorkloadFile { + private getParamFile(test: Performance.TestInfo, parameters: Record): WorkloadFile | undefined { + if (Object.keys(parameters).length === 0) { + return; + } const name = test.name; const fileName = `${name}.txt`; return { @@ -118,14 +123,18 @@ export class WorkloadGenerator { }; } - private getQueryConfig(queryFile: WorkloadFile, paramFile: WorkloadFile, queryName: string): QueryConfig { + private getQueryConfig(queryName: string, queryFile: WorkloadFile, paramFile?: WorkloadFile): QueryConfig { return { name: queryName, description: queryName, queryFile: queryFile.path, - parameters: { - file: paramFile.path, - }, + ...(paramFile + ? { + parameters: { + file: paramFile.path, + }, + } + : {}), }; } @@ -168,20 +177,96 @@ export class WorkloadGenerator { if (row.length) { row += separator; } - header += key; - row += JSON.stringify(value, driverWrapperReplacer); + header += headerColumnRewriter(key, value); + row += valueColumnRewriter(value); }); return `${header}\n${row}`; } } -function driverWrapperReplacer(key: string, value: any) { +/** + * Add columnType to header colum, see https://github.com/neo-technology/neo4j/blob/dev/private/benchmarks/macro/macro-common/src/main/java/com/neo4j/bench/macro/workload/parameters/FileParametersReader.java + **/ +function headerColumnRewriter(key: string, value: any) { + return `${key}:${getColumnType(value)}`; +} + +function getColumnType(value: any) { + if (value instanceof Integer) { + return "Integer"; + } + + if (value instanceof Date) { + return "Date"; + } + + if (value instanceof DateTime) { + return "DateTime"; + } + + if (typeof value === "number") { + return "Float"; + } + if (typeof value === "string") { + return "String"; + } + + if (value instanceof LocalTime || value instanceof Time || value instanceof Duration) { + throw new Error("LocalTime, Time, Duration are not supported by the benchmarking tool"); + } + + if (typeof value === "boolean") { + throw new Error("Boolean is not supported by the benchmarking tool"); + } + + if (Array.isArray(value)) { + return `${getColumnType(value[0])}[]`; + } + + if (typeof value === "object" && value !== null) { + return "Map"; + } + + throw new Error(`Unknown type ${typeof value}`); +} + +function valueColumnRewriter(value: any) { if (value instanceof Integer) { return value.toNumber(); } - if (value instanceof Date || value instanceof LocalTime || value instanceof Duration || value instanceof Time) { + + if (value instanceof Date || value instanceof DateTime) { return value.toString(); } - return value; + if (typeof value === "number" || typeof value === "string") { + return value; + } + + if (value instanceof LocalTime || value instanceof Time || value instanceof Duration) { + throw new Error("LocalTime, Time, Duration are not supported by the benchmarking tool"); + } + + if (typeof value === "boolean") { + throw new Error("Boolean is not supported by the benchmarking tool"); + } + + if (Array.isArray(value)) { + if (value.length === 0) { + return ""; + } + return `[${value.map((v) => valueColumnRewriter(v)).join(", ")}]`; + } + + if (typeof value === "object" && value !== null) { + const mapEntries = Object.entries(value).map(([key, value]) => { + return `${key}:${valueColumnRewriter(value)}`; + }); + if (mapEntries.length === 0) { + return ""; + } + return `{${mapEntries.join(", ")}}`; + } + + throw new Error(`Unknown type ${typeof value}`); } From 7ff1745335dbad00ef16401627b1ac994ad4a8b8 Mon Sep 17 00:00:00 2001 From: MacondoExpress Date: Mon, 12 Jan 2026 17:01:11 +0000 Subject: [PATCH 7/8] update script to generate macro workload --- packages/graphql/graphql-workload/config.json | 331 ++++++++++++++++++ .../graphql/graphql-workload/dataset.json | 4 + ...ggregationWhereWithinNestedConnections.txt | 2 + ...regationWhereWithinNestedRelationships.txt | 2 + .../params/AggregationWithWhere.txt | 2 + .../graphql-workload/params/BatchCreate.txt | 2 + .../params/ConnectionWithSort.txt | 2 + .../params/DeeplyNestedConnectionWhere.txt | 2 + .../DeeplyNestedWithRelationshipFilters.txt | 2 + .../graphql-workload/params/Fulltext.txt | 2 + .../params/FulltextWithNestedQuery.txt | 2 + .../graphql-workload/params/Nested.txt | 2 + .../params/NestedConnectionWhere.txt | 2 + .../params/NestedDeleteInUpdate.txt | 2 + .../params/NestedRelationshipFilter.txt | 2 + .../graphql-workload/params/NestedUpdate.txt | 2 + .../NestedWithRelationshipSingleFilters.txt | 2 + .../params/OrFilterOnRelationships.txt | 2 + .../OrFilterOnRelationshipsAndNested.txt | 2 + .../graphql-workload/params/QueryWhere.txt | 2 + .../params/QueryWithNestedIn.txt | 2 + .../params/SimpleMutation.txt | 2 + .../params/SimpleQueryWithNestedWhere.txt | 2 + .../params/SortMultipleTypes.txt | 2 + .../SortMultipleTypesWithCypherWithCypher.txt | 2 + .../TopLevelConnectionSortWithCypher.txt | 2 + ...evelConnectionSortWithCypherWithNested.txt | 2 + ...LevelConnectionSortWithExpensiveCypher.txt | 2 + .../params/TopLevelSortWithCypher.txt | 2 + .../TopLevelSortWithCypherWithNested.txt | 2 + .../TopLevelSortWithExpensiveCypher.txt | 2 + .../params/createAndConnect.txt | 2 + ...egationWhereWithinNestedConnections.cypher | 31 ++ ...ationWhereWithinNestedRelationships.cypher | 31 ++ .../queries/AggregationWithWhere.cypher | 10 + .../queries/BatchCreate.cypher | 10 + .../queries/Connection.cypher | 13 + .../queries/ConnectionWithSort.cypher | 22 ++ .../DeeplyNestedConnectionWhere.cypher | 13 + ...DeeplyNestedWithRelationshipFilters.cypher | 19 + .../graphql-workload/queries/Fulltext.cypher | 11 + .../queries/FulltextWithNestedQuery.cypher | 17 + .../queries/InterfacesAggregations.cypher | 29 ++ ...InterfacesAggregationsWithTwoFields.cypher | 40 +++ .../graphql-workload/queries/Nested.cypher | 22 ++ .../queries/NestedAggregation.cypher | 13 + .../queries/NestedConnection.cypher | 23 ++ .../queries/NestedConnectionWhere.cypher | 10 + .../queries/NestedDeleteInUpdate.cypher | 15 + .../queries/NestedRelationshipFilter.cypher | 10 + .../queries/NestedUnion.cypher | 33 ++ .../NestedUnionWithMissingFields.cypher | 33 ++ .../queries/NestedUpdate.cypher | 14 + ...NestedWithRelationshipSingleFilters.cypher | 4 + .../queries/OrFilterOnRelationships.cypher | 28 ++ .../OrFilterOnRelationshipsAndNested.cypher | 37 ++ .../queries/QueryWhere.cypher | 7 + .../queries/QueryWithNestedIn.cypher | 13 + .../queries/SimpleDelete.cypher | 3 + .../queries/SimpleMutation.cypher | 10 + .../queries/SimpleQuery.cypher | 3 + .../queries/SimpleQueryWithNestedWhere.cypher | 13 + .../SimpleQueryWithRelationship.cypher | 9 + .../queries/SimpleUnionQuery.cypher | 18 + .../SimpleUnionQueryWithMissingFields.cypher | 18 + .../queries/SortDeeplyNestedFields.cypher | 17 + .../queries/SortMultipleTypes.cypher | 26 ++ ...rtMultipleTypesWithCypherWithCypher.cypher | 34 ++ .../queries/SortOnNestedFields.cypher | 10 + ...TopLevelAggregateWithMultipleFields.cypher | 18 + .../TopLevelConnectionSortWithCypher.cypher | 20 ++ ...lConnectionSortWithCypherWithNested.cypher | 30 ++ ...elConnectionSortWithExpensiveCypher.cypher | 32 ++ .../queries/TopLevelMutationDirective.cypher | 8 + .../queries/TopLevelSortWithCypher.cypher | 14 + .../TopLevelSortWithCypherWithNested.cypher | 20 ++ .../TopLevelSortWithExpensiveCypher.cypher | 26 ++ .../queries/createAndConnect.cypher | 19 + .../queries/totalCount.cypher | 4 + packages/graphql/graphql-workload/schema.txt | 0 packages/graphql/package.json | 2 +- .../performance/build-benchmark-workload.ts | 1 - .../performance/utils/WorkloadGenerator.ts | 9 +- 83 files changed, 1260 insertions(+), 7 deletions(-) create mode 100644 packages/graphql/graphql-workload/config.json create mode 100644 packages/graphql/graphql-workload/dataset.json create mode 100644 packages/graphql/graphql-workload/params/AggregationWhereWithinNestedConnections.txt create mode 100644 packages/graphql/graphql-workload/params/AggregationWhereWithinNestedRelationships.txt create mode 100644 packages/graphql/graphql-workload/params/AggregationWithWhere.txt create mode 100644 packages/graphql/graphql-workload/params/BatchCreate.txt create mode 100644 packages/graphql/graphql-workload/params/ConnectionWithSort.txt create mode 100644 packages/graphql/graphql-workload/params/DeeplyNestedConnectionWhere.txt create mode 100644 packages/graphql/graphql-workload/params/DeeplyNestedWithRelationshipFilters.txt create mode 100644 packages/graphql/graphql-workload/params/Fulltext.txt create mode 100644 packages/graphql/graphql-workload/params/FulltextWithNestedQuery.txt create mode 100644 packages/graphql/graphql-workload/params/Nested.txt create mode 100644 packages/graphql/graphql-workload/params/NestedConnectionWhere.txt create mode 100644 packages/graphql/graphql-workload/params/NestedDeleteInUpdate.txt create mode 100644 packages/graphql/graphql-workload/params/NestedRelationshipFilter.txt create mode 100644 packages/graphql/graphql-workload/params/NestedUpdate.txt create mode 100644 packages/graphql/graphql-workload/params/NestedWithRelationshipSingleFilters.txt create mode 100644 packages/graphql/graphql-workload/params/OrFilterOnRelationships.txt create mode 100644 packages/graphql/graphql-workload/params/OrFilterOnRelationshipsAndNested.txt create mode 100644 packages/graphql/graphql-workload/params/QueryWhere.txt create mode 100644 packages/graphql/graphql-workload/params/QueryWithNestedIn.txt create mode 100644 packages/graphql/graphql-workload/params/SimpleMutation.txt create mode 100644 packages/graphql/graphql-workload/params/SimpleQueryWithNestedWhere.txt create mode 100644 packages/graphql/graphql-workload/params/SortMultipleTypes.txt create mode 100644 packages/graphql/graphql-workload/params/SortMultipleTypesWithCypherWithCypher.txt create mode 100644 packages/graphql/graphql-workload/params/TopLevelConnectionSortWithCypher.txt create mode 100644 packages/graphql/graphql-workload/params/TopLevelConnectionSortWithCypherWithNested.txt create mode 100644 packages/graphql/graphql-workload/params/TopLevelConnectionSortWithExpensiveCypher.txt create mode 100644 packages/graphql/graphql-workload/params/TopLevelSortWithCypher.txt create mode 100644 packages/graphql/graphql-workload/params/TopLevelSortWithCypherWithNested.txt create mode 100644 packages/graphql/graphql-workload/params/TopLevelSortWithExpensiveCypher.txt create mode 100644 packages/graphql/graphql-workload/params/createAndConnect.txt create mode 100644 packages/graphql/graphql-workload/queries/AggregationWhereWithinNestedConnections.cypher create mode 100644 packages/graphql/graphql-workload/queries/AggregationWhereWithinNestedRelationships.cypher create mode 100644 packages/graphql/graphql-workload/queries/AggregationWithWhere.cypher create mode 100644 packages/graphql/graphql-workload/queries/BatchCreate.cypher create mode 100644 packages/graphql/graphql-workload/queries/Connection.cypher create mode 100644 packages/graphql/graphql-workload/queries/ConnectionWithSort.cypher create mode 100644 packages/graphql/graphql-workload/queries/DeeplyNestedConnectionWhere.cypher create mode 100644 packages/graphql/graphql-workload/queries/DeeplyNestedWithRelationshipFilters.cypher create mode 100644 packages/graphql/graphql-workload/queries/Fulltext.cypher create mode 100644 packages/graphql/graphql-workload/queries/FulltextWithNestedQuery.cypher create mode 100644 packages/graphql/graphql-workload/queries/InterfacesAggregations.cypher create mode 100644 packages/graphql/graphql-workload/queries/InterfacesAggregationsWithTwoFields.cypher create mode 100644 packages/graphql/graphql-workload/queries/Nested.cypher create mode 100644 packages/graphql/graphql-workload/queries/NestedAggregation.cypher create mode 100644 packages/graphql/graphql-workload/queries/NestedConnection.cypher create mode 100644 packages/graphql/graphql-workload/queries/NestedConnectionWhere.cypher create mode 100644 packages/graphql/graphql-workload/queries/NestedDeleteInUpdate.cypher create mode 100644 packages/graphql/graphql-workload/queries/NestedRelationshipFilter.cypher create mode 100644 packages/graphql/graphql-workload/queries/NestedUnion.cypher create mode 100644 packages/graphql/graphql-workload/queries/NestedUnionWithMissingFields.cypher create mode 100644 packages/graphql/graphql-workload/queries/NestedUpdate.cypher create mode 100644 packages/graphql/graphql-workload/queries/NestedWithRelationshipSingleFilters.cypher create mode 100644 packages/graphql/graphql-workload/queries/OrFilterOnRelationships.cypher create mode 100644 packages/graphql/graphql-workload/queries/OrFilterOnRelationshipsAndNested.cypher create mode 100644 packages/graphql/graphql-workload/queries/QueryWhere.cypher create mode 100644 packages/graphql/graphql-workload/queries/QueryWithNestedIn.cypher create mode 100644 packages/graphql/graphql-workload/queries/SimpleDelete.cypher create mode 100644 packages/graphql/graphql-workload/queries/SimpleMutation.cypher create mode 100644 packages/graphql/graphql-workload/queries/SimpleQuery.cypher create mode 100644 packages/graphql/graphql-workload/queries/SimpleQueryWithNestedWhere.cypher create mode 100644 packages/graphql/graphql-workload/queries/SimpleQueryWithRelationship.cypher create mode 100644 packages/graphql/graphql-workload/queries/SimpleUnionQuery.cypher create mode 100644 packages/graphql/graphql-workload/queries/SimpleUnionQueryWithMissingFields.cypher create mode 100644 packages/graphql/graphql-workload/queries/SortDeeplyNestedFields.cypher create mode 100644 packages/graphql/graphql-workload/queries/SortMultipleTypes.cypher create mode 100644 packages/graphql/graphql-workload/queries/SortMultipleTypesWithCypherWithCypher.cypher create mode 100644 packages/graphql/graphql-workload/queries/SortOnNestedFields.cypher create mode 100644 packages/graphql/graphql-workload/queries/TopLevelAggregateWithMultipleFields.cypher create mode 100644 packages/graphql/graphql-workload/queries/TopLevelConnectionSortWithCypher.cypher create mode 100644 packages/graphql/graphql-workload/queries/TopLevelConnectionSortWithCypherWithNested.cypher create mode 100644 packages/graphql/graphql-workload/queries/TopLevelConnectionSortWithExpensiveCypher.cypher create mode 100644 packages/graphql/graphql-workload/queries/TopLevelMutationDirective.cypher create mode 100644 packages/graphql/graphql-workload/queries/TopLevelSortWithCypher.cypher create mode 100644 packages/graphql/graphql-workload/queries/TopLevelSortWithCypherWithNested.cypher create mode 100644 packages/graphql/graphql-workload/queries/TopLevelSortWithExpensiveCypher.cypher create mode 100644 packages/graphql/graphql-workload/queries/createAndConnect.cypher create mode 100644 packages/graphql/graphql-workload/queries/totalCount.cypher create mode 100644 packages/graphql/graphql-workload/schema.txt diff --git a/packages/graphql/graphql-workload/config.json b/packages/graphql/graphql-workload/config.json new file mode 100644 index 0000000000..7a37381b6d --- /dev/null +++ b/packages/graphql/graphql-workload/config.json @@ -0,0 +1,331 @@ +{ + "name": "graphql-workload", + "dataset": "dataset.json", + "queries": [ + { + "name": "TopLevelAggregateWithMultipleFields", + "description": "TopLevelAggregateWithMultipleFields", + "queryFile": "queries/TopLevelAggregateWithMultipleFields.cypher" + }, + { + "name": "NestedAggregation", + "description": "NestedAggregation", + "queryFile": "queries/NestedAggregation.cypher" + }, + { + "name": "AggregationWithWhere", + "description": "AggregationWithWhere", + "queryFile": "queries/AggregationWithWhere.cypher", + "parameters": { + "file": "params/AggregationWithWhere.txt" + } + }, + { + "name": "AggregationWhereWithinNestedRelationships", + "description": "AggregationWhereWithinNestedRelationships", + "queryFile": "queries/AggregationWhereWithinNestedRelationships.cypher", + "parameters": { + "file": "params/AggregationWhereWithinNestedRelationships.txt" + } + }, + { + "name": "AggregationWhereWithinNestedConnections", + "description": "AggregationWhereWithinNestedConnections", + "queryFile": "queries/AggregationWhereWithinNestedConnections.cypher", + "parameters": { + "file": "params/AggregationWhereWithinNestedConnections.txt" + } + }, + { + "name": "InterfacesAggregations", + "description": "InterfacesAggregations", + "queryFile": "queries/InterfacesAggregations.cypher" + }, + { + "name": "InterfacesAggregationsWithTwoFields", + "description": "InterfacesAggregationsWithTwoFields", + "queryFile": "queries/InterfacesAggregationsWithTwoFields.cypher" + }, + { + "name": "Connection", + "description": "Connection", + "queryFile": "queries/Connection.cypher" + }, + { + "name": "NestedConnection", + "description": "NestedConnection", + "queryFile": "queries/NestedConnection.cypher" + }, + { + "name": "totalCount", + "description": "totalCount", + "queryFile": "queries/totalCount.cypher" + }, + { + "name": "TopLevelMutationDirective", + "description": "TopLevelMutationDirective", + "queryFile": "queries/TopLevelMutationDirective.cypher" + }, + { + "name": "TopLevelSortWithCypher", + "description": "TopLevelSortWithCypher", + "queryFile": "queries/TopLevelSortWithCypher.cypher", + "parameters": { + "file": "params/TopLevelSortWithCypher.txt" + } + }, + { + "name": "TopLevelConnectionSortWithCypher", + "description": "TopLevelConnectionSortWithCypher", + "queryFile": "queries/TopLevelConnectionSortWithCypher.cypher", + "parameters": { + "file": "params/TopLevelConnectionSortWithCypher.txt" + } + }, + { + "name": "TopLevelSortWithCypherWithNested", + "description": "TopLevelSortWithCypherWithNested", + "queryFile": "queries/TopLevelSortWithCypherWithNested.cypher", + "parameters": { + "file": "params/TopLevelSortWithCypherWithNested.txt" + } + }, + { + "name": "TopLevelConnectionSortWithCypherWithNested", + "description": "TopLevelConnectionSortWithCypherWithNested", + "queryFile": "queries/TopLevelConnectionSortWithCypherWithNested.cypher", + "parameters": { + "file": "params/TopLevelConnectionSortWithCypherWithNested.txt" + } + }, + { + "name": "TopLevelSortWithExpensiveCypher", + "description": "TopLevelSortWithExpensiveCypher", + "queryFile": "queries/TopLevelSortWithExpensiveCypher.cypher", + "parameters": { + "file": "params/TopLevelSortWithExpensiveCypher.txt" + } + }, + { + "name": "TopLevelConnectionSortWithExpensiveCypher", + "description": "TopLevelConnectionSortWithExpensiveCypher", + "queryFile": "queries/TopLevelConnectionSortWithExpensiveCypher.cypher", + "parameters": { + "file": "params/TopLevelConnectionSortWithExpensiveCypher.txt" + } + }, + { + "name": "Fulltext", + "description": "Fulltext", + "queryFile": "queries/Fulltext.cypher", + "parameters": { + "file": "params/Fulltext.txt" + } + }, + { + "name": "FulltextWithNestedQuery", + "description": "FulltextWithNestedQuery", + "queryFile": "queries/FulltextWithNestedQuery.cypher", + "parameters": { + "file": "params/FulltextWithNestedQuery.txt" + } + }, + { + "name": "NestedConnectionWhere", + "description": "NestedConnectionWhere", + "queryFile": "queries/NestedConnectionWhere.cypher", + "parameters": { + "file": "params/NestedConnectionWhere.txt" + } + }, + { + "name": "QueryWhere", + "description": "QueryWhere", + "queryFile": "queries/QueryWhere.cypher", + "parameters": { + "file": "params/QueryWhere.txt" + } + }, + { + "name": "NestedRelationshipFilter", + "description": "NestedRelationshipFilter", + "queryFile": "queries/NestedRelationshipFilter.cypher", + "parameters": { + "file": "params/NestedRelationshipFilter.txt" + } + }, + { + "name": "BatchCreate", + "description": "BatchCreate", + "queryFile": "queries/BatchCreate.cypher", + "parameters": { + "file": "params/BatchCreate.txt" + } + }, + { + "name": "createAndConnect", + "description": "createAndConnect", + "queryFile": "queries/createAndConnect.cypher", + "parameters": { + "file": "params/createAndConnect.txt" + } + }, + { + "name": "SimpleMutation", + "description": "SimpleMutation", + "queryFile": "queries/SimpleMutation.cypher", + "parameters": { + "file": "params/SimpleMutation.txt" + } + }, + { + "name": "SimpleDelete", + "description": "SimpleDelete", + "queryFile": "queries/SimpleDelete.cypher" + }, + { + "name": "NestedDeleteInUpdate", + "description": "NestedDeleteInUpdate", + "queryFile": "queries/NestedDeleteInUpdate.cypher", + "parameters": { + "file": "params/NestedDeleteInUpdate.txt" + } + }, + { + "name": "NestedUpdate", + "description": "NestedUpdate", + "queryFile": "queries/NestedUpdate.cypher", + "parameters": { + "file": "params/NestedUpdate.txt" + } + }, + { + "name": "SimpleQuery", + "description": "SimpleQuery", + "queryFile": "queries/SimpleQuery.cypher" + }, + { + "name": "SimpleQueryWithRelationship", + "description": "SimpleQueryWithRelationship", + "queryFile": "queries/SimpleQueryWithRelationship.cypher" + }, + { + "name": "SimpleQueryWithNestedWhere", + "description": "SimpleQueryWithNestedWhere", + "queryFile": "queries/SimpleQueryWithNestedWhere.cypher", + "parameters": { + "file": "params/SimpleQueryWithNestedWhere.txt" + } + }, + { + "name": "Nested", + "description": "Nested", + "queryFile": "queries/Nested.cypher", + "parameters": { + "file": "params/Nested.txt" + } + }, + { + "name": "OrFilterOnRelationships", + "description": "OrFilterOnRelationships", + "queryFile": "queries/OrFilterOnRelationships.cypher", + "parameters": { + "file": "params/OrFilterOnRelationships.txt" + } + }, + { + "name": "OrFilterOnRelationshipsAndNested", + "description": "OrFilterOnRelationshipsAndNested", + "queryFile": "queries/OrFilterOnRelationshipsAndNested.cypher", + "parameters": { + "file": "params/OrFilterOnRelationshipsAndNested.txt" + } + }, + { + "name": "QueryWithNestedIn", + "description": "QueryWithNestedIn", + "queryFile": "queries/QueryWithNestedIn.cypher", + "parameters": { + "file": "params/QueryWithNestedIn.txt" + } + }, + { + "name": "DeeplyNestedConnectionWhere", + "description": "DeeplyNestedConnectionWhere", + "queryFile": "queries/DeeplyNestedConnectionWhere.cypher", + "parameters": { + "file": "params/DeeplyNestedConnectionWhere.txt" + } + }, + { + "name": "DeeplyNestedWithRelationshipFilters", + "description": "DeeplyNestedWithRelationshipFilters", + "queryFile": "queries/DeeplyNestedWithRelationshipFilters.cypher", + "parameters": { + "file": "params/DeeplyNestedWithRelationshipFilters.txt" + } + }, + { + "name": "NestedWithRelationshipSingleFilters", + "description": "NestedWithRelationshipSingleFilters", + "queryFile": "queries/NestedWithRelationshipSingleFilters.cypher", + "parameters": { + "file": "params/NestedWithRelationshipSingleFilters.txt" + } + }, + { + "name": "SortMultipleTypes", + "description": "SortMultipleTypes", + "queryFile": "queries/SortMultipleTypes.cypher", + "parameters": { + "file": "params/SortMultipleTypes.txt" + } + }, + { + "name": "SortMultipleTypesWithCypherWithCypher", + "description": "SortMultipleTypesWithCypherWithCypher", + "queryFile": "queries/SortMultipleTypesWithCypherWithCypher.cypher", + "parameters": { + "file": "params/SortMultipleTypesWithCypherWithCypher.txt" + } + }, + { + "name": "SortOnNestedFields", + "description": "SortOnNestedFields", + "queryFile": "queries/SortOnNestedFields.cypher" + }, + { + "name": "SortDeeplyNestedFields", + "description": "SortDeeplyNestedFields", + "queryFile": "queries/SortDeeplyNestedFields.cypher" + }, + { + "name": "ConnectionWithSort", + "description": "ConnectionWithSort", + "queryFile": "queries/ConnectionWithSort.cypher", + "parameters": { + "file": "params/ConnectionWithSort.txt" + } + }, + { + "name": "SimpleUnionQuery", + "description": "SimpleUnionQuery", + "queryFile": "queries/SimpleUnionQuery.cypher" + }, + { + "name": "SimpleUnionQueryWithMissingFields", + "description": "SimpleUnionQueryWithMissingFields", + "queryFile": "queries/SimpleUnionQueryWithMissingFields.cypher" + }, + { + "name": "NestedUnion", + "description": "NestedUnion", + "queryFile": "queries/NestedUnion.cypher" + }, + { + "name": "NestedUnionWithMissingFields", + "description": "NestedUnionWithMissingFields", + "queryFile": "queries/NestedUnionWithMissingFields.cypher" + } + ] +} \ No newline at end of file diff --git a/packages/graphql/graphql-workload/dataset.json b/packages/graphql/graphql-workload/dataset.json new file mode 100644 index 0000000000..528cb72e14 --- /dev/null +++ b/packages/graphql/graphql-workload/dataset.json @@ -0,0 +1,4 @@ +{ + "name": "graphql-benchmark-dataset", + "format": "aligned" +} \ No newline at end of file diff --git a/packages/graphql/graphql-workload/params/AggregationWhereWithinNestedConnections.txt b/packages/graphql/graphql-workload/params/AggregationWhereWithinNestedConnections.txt new file mode 100644 index 0000000000..cbeaa1c497 --- /dev/null +++ b/packages/graphql/graphql-workload/params/AggregationWhereWithinNestedConnections.txt @@ -0,0 +1,2 @@ +param0:Integer|param1:Integer +1|1 \ No newline at end of file diff --git a/packages/graphql/graphql-workload/params/AggregationWhereWithinNestedRelationships.txt b/packages/graphql/graphql-workload/params/AggregationWhereWithinNestedRelationships.txt new file mode 100644 index 0000000000..cbeaa1c497 --- /dev/null +++ b/packages/graphql/graphql-workload/params/AggregationWhereWithinNestedRelationships.txt @@ -0,0 +1,2 @@ +param0:Integer|param1:Integer +1|1 \ No newline at end of file diff --git a/packages/graphql/graphql-workload/params/AggregationWithWhere.txt b/packages/graphql/graphql-workload/params/AggregationWithWhere.txt new file mode 100644 index 0000000000..375609240d --- /dev/null +++ b/packages/graphql/graphql-workload/params/AggregationWithWhere.txt @@ -0,0 +1,2 @@ +param0:Integer +2 \ No newline at end of file diff --git a/packages/graphql/graphql-workload/params/BatchCreate.txt b/packages/graphql/graphql-workload/params/BatchCreate.txt new file mode 100644 index 0000000000..322124fa7b --- /dev/null +++ b/packages/graphql/graphql-workload/params/BatchCreate.txt @@ -0,0 +1,2 @@ +create_param0:Map[] +[{id:0, title:The Matrix 0}, {id:1, title:The Matrix 1}, {id:2, title:The Matrix 2}, {id:3, title:The Matrix 3}, {id:4, title:The Matrix 4}, {id:5, title:The Matrix 5}, {id:6, title:The Matrix 6}, {id:7, title:The Matrix 7}, {id:8, title:The Matrix 8}, {id:9, title:The Matrix 9}, {id:10, title:The Matrix 10}, {id:11, title:The Matrix 11}, {id:12, title:The Matrix 12}, {id:13, title:The Matrix 13}, {id:14, title:The Matrix 14}, {id:15, title:The Matrix 15}, {id:16, title:The Matrix 16}, {id:17, title:The Matrix 17}, {id:18, title:The Matrix 18}, {id:19, title:The Matrix 19}, {id:20, title:The Matrix 20}, {id:21, title:The Matrix 21}, {id:22, title:The Matrix 22}, {id:23, title:The Matrix 23}, {id:24, title:The Matrix 24}, {id:25, title:The Matrix 25}, {id:26, title:The Matrix 26}, {id:27, title:The Matrix 27}, {id:28, title:The Matrix 28}, {id:29, title:The Matrix 29}, {id:30, title:The Matrix 30}, {id:31, title:The Matrix 31}, {id:32, title:The Matrix 32}, {id:33, title:The Matrix 33}, {id:34, title:The Matrix 34}, {id:35, title:The Matrix 35}, {id:36, title:The Matrix 36}, {id:37, title:The Matrix 37}, {id:38, title:The Matrix 38}, {id:39, title:The Matrix 39}, {id:40, title:The Matrix 40}, {id:41, title:The Matrix 41}, {id:42, title:The Matrix 42}, {id:43, title:The Matrix 43}, {id:44, title:The Matrix 44}, {id:45, title:The Matrix 45}, {id:46, title:The Matrix 46}, {id:47, title:The Matrix 47}, {id:48, title:The Matrix 48}, {id:49, title:The Matrix 49}, {id:50, title:The Matrix 50}, {id:51, title:The Matrix 51}, {id:52, title:The Matrix 52}, {id:53, title:The Matrix 53}, {id:54, title:The Matrix 54}, {id:55, title:The Matrix 55}, {id:56, title:The Matrix 56}, {id:57, title:The Matrix 57}, {id:58, title:The Matrix 58}, {id:59, title:The Matrix 59}, {id:60, title:The Matrix 60}, {id:61, title:The Matrix 61}, {id:62, title:The Matrix 62}, {id:63, title:The Matrix 63}, {id:64, title:The Matrix 64}, {id:65, title:The Matrix 65}, {id:66, title:The Matrix 66}, {id:67, title:The Matrix 67}, {id:68, title:The Matrix 68}, {id:69, title:The Matrix 69}, {id:70, title:The Matrix 70}, {id:71, title:The Matrix 71}, {id:72, title:The Matrix 72}, {id:73, title:The Matrix 73}, {id:74, title:The Matrix 74}, {id:75, title:The Matrix 75}, {id:76, title:The Matrix 76}, {id:77, title:The Matrix 77}, {id:78, title:The Matrix 78}, {id:79, title:The Matrix 79}, {id:80, title:The Matrix 80}, {id:81, title:The Matrix 81}, {id:82, title:The Matrix 82}, {id:83, title:The Matrix 83}, {id:84, title:The Matrix 84}, {id:85, title:The Matrix 85}, {id:86, title:The Matrix 86}, {id:87, title:The Matrix 87}, {id:88, title:The Matrix 88}, {id:89, title:The Matrix 89}, {id:90, title:The Matrix 90}, {id:91, title:The Matrix 91}, {id:92, title:The Matrix 92}, {id:93, title:The Matrix 93}, {id:94, title:The Matrix 94}, {id:95, title:The Matrix 95}, {id:96, title:The Matrix 96}, {id:97, title:The Matrix 97}, {id:98, title:The Matrix 98}, {id:99, title:The Matrix 99}, {id:100, title:The Matrix 100}, {id:101, title:The Matrix 101}, {id:102, title:The Matrix 102}, {id:103, title:The Matrix 103}, {id:104, title:The Matrix 104}, {id:105, title:The Matrix 105}, {id:106, title:The Matrix 106}, {id:107, title:The Matrix 107}, {id:108, title:The Matrix 108}, {id:109, title:The Matrix 109}, {id:110, title:The Matrix 110}, {id:111, title:The Matrix 111}, {id:112, title:The Matrix 112}, {id:113, title:The Matrix 113}, {id:114, title:The Matrix 114}, {id:115, title:The Matrix 115}, {id:116, title:The Matrix 116}, {id:117, title:The Matrix 117}, {id:118, title:The Matrix 118}, {id:119, title:The Matrix 119}, {id:120, title:The Matrix 120}, {id:121, title:The Matrix 121}, {id:122, title:The Matrix 122}, {id:123, title:The Matrix 123}, {id:124, title:The Matrix 124}, {id:125, title:The Matrix 125}, {id:126, title:The Matrix 126}, {id:127, title:The Matrix 127}, {id:128, title:The Matrix 128}, {id:129, title:The Matrix 129}, {id:130, title:The Matrix 130}, {id:131, title:The Matrix 131}, {id:132, title:The Matrix 132}, {id:133, title:The Matrix 133}, {id:134, title:The Matrix 134}, {id:135, title:The Matrix 135}, {id:136, title:The Matrix 136}, {id:137, title:The Matrix 137}, {id:138, title:The Matrix 138}, {id:139, title:The Matrix 139}, {id:140, title:The Matrix 140}, {id:141, title:The Matrix 141}, {id:142, title:The Matrix 142}, {id:143, title:The Matrix 143}, {id:144, title:The Matrix 144}, {id:145, title:The Matrix 145}, {id:146, title:The Matrix 146}, {id:147, title:The Matrix 147}, {id:148, title:The Matrix 148}, {id:149, title:The Matrix 149}, {id:150, title:The Matrix 150}, {id:151, title:The Matrix 151}, {id:152, title:The Matrix 152}, {id:153, title:The Matrix 153}, {id:154, title:The Matrix 154}, {id:155, title:The Matrix 155}, {id:156, title:The Matrix 156}, {id:157, title:The Matrix 157}, {id:158, title:The Matrix 158}, {id:159, title:The Matrix 159}, {id:160, title:The Matrix 160}, {id:161, title:The Matrix 161}, {id:162, title:The Matrix 162}, {id:163, title:The Matrix 163}, {id:164, title:The Matrix 164}, {id:165, title:The Matrix 165}, {id:166, title:The Matrix 166}, {id:167, title:The Matrix 167}, {id:168, title:The Matrix 168}, {id:169, title:The Matrix 169}, {id:170, title:The Matrix 170}, {id:171, title:The Matrix 171}, {id:172, title:The Matrix 172}, {id:173, title:The Matrix 173}, {id:174, title:The Matrix 174}, {id:175, title:The Matrix 175}, {id:176, title:The Matrix 176}, {id:177, title:The Matrix 177}, {id:178, title:The Matrix 178}, {id:179, title:The Matrix 179}, {id:180, title:The Matrix 180}, {id:181, title:The Matrix 181}, {id:182, title:The Matrix 182}, {id:183, title:The Matrix 183}, {id:184, title:The Matrix 184}, {id:185, title:The Matrix 185}, {id:186, title:The Matrix 186}, {id:187, title:The Matrix 187}, {id:188, title:The Matrix 188}, {id:189, title:The Matrix 189}, {id:190, title:The Matrix 190}, {id:191, title:The Matrix 191}, {id:192, title:The Matrix 192}, {id:193, title:The Matrix 193}, {id:194, title:The Matrix 194}, {id:195, title:The Matrix 195}, {id:196, title:The Matrix 196}, {id:197, title:The Matrix 197}, {id:198, title:The Matrix 198}, {id:199, title:The Matrix 199}, {id:200, title:The Matrix 200}, {id:201, title:The Matrix 201}, {id:202, title:The Matrix 202}, {id:203, title:The Matrix 203}, {id:204, title:The Matrix 204}, {id:205, title:The Matrix 205}, {id:206, title:The Matrix 206}, {id:207, title:The Matrix 207}, {id:208, title:The Matrix 208}, {id:209, title:The Matrix 209}, {id:210, title:The Matrix 210}, {id:211, title:The Matrix 211}, {id:212, title:The Matrix 212}, {id:213, title:The Matrix 213}, {id:214, title:The Matrix 214}, {id:215, title:The Matrix 215}, {id:216, title:The Matrix 216}, {id:217, title:The Matrix 217}, {id:218, title:The Matrix 218}, {id:219, title:The Matrix 219}, {id:220, title:The Matrix 220}, {id:221, title:The Matrix 221}, {id:222, title:The Matrix 222}, {id:223, title:The Matrix 223}, {id:224, title:The Matrix 224}, {id:225, title:The Matrix 225}, {id:226, title:The Matrix 226}, {id:227, title:The Matrix 227}, {id:228, title:The Matrix 228}, {id:229, title:The Matrix 229}, {id:230, title:The Matrix 230}, {id:231, title:The Matrix 231}, {id:232, title:The Matrix 232}, {id:233, title:The Matrix 233}, {id:234, title:The Matrix 234}, {id:235, title:The Matrix 235}, {id:236, title:The Matrix 236}, {id:237, title:The Matrix 237}, {id:238, title:The Matrix 238}, {id:239, title:The Matrix 239}, {id:240, title:The Matrix 240}, {id:241, title:The Matrix 241}, {id:242, title:The Matrix 242}, {id:243, title:The Matrix 243}, {id:244, title:The Matrix 244}, {id:245, title:The Matrix 245}, {id:246, title:The Matrix 246}, {id:247, title:The Matrix 247}, {id:248, title:The Matrix 248}, {id:249, title:The Matrix 249}, {id:250, title:The Matrix 250}, {id:251, title:The Matrix 251}, {id:252, title:The Matrix 252}, {id:253, title:The Matrix 253}, {id:254, title:The Matrix 254}, {id:255, title:The Matrix 255}, {id:256, title:The Matrix 256}, {id:257, title:The Matrix 257}, {id:258, title:The Matrix 258}, {id:259, title:The Matrix 259}, {id:260, title:The Matrix 260}, {id:261, title:The Matrix 261}, {id:262, title:The Matrix 262}, {id:263, title:The Matrix 263}, {id:264, title:The Matrix 264}, {id:265, title:The Matrix 265}, {id:266, title:The Matrix 266}, {id:267, title:The Matrix 267}, {id:268, title:The Matrix 268}, {id:269, title:The Matrix 269}, {id:270, title:The Matrix 270}, {id:271, title:The Matrix 271}, {id:272, title:The Matrix 272}, {id:273, title:The Matrix 273}, {id:274, title:The Matrix 274}, {id:275, title:The Matrix 275}, {id:276, title:The Matrix 276}, {id:277, title:The Matrix 277}, {id:278, title:The Matrix 278}, {id:279, title:The Matrix 279}, {id:280, title:The Matrix 280}, {id:281, title:The Matrix 281}, {id:282, title:The Matrix 282}, {id:283, title:The Matrix 283}, {id:284, title:The Matrix 284}, {id:285, title:The Matrix 285}, {id:286, title:The Matrix 286}, {id:287, title:The Matrix 287}, {id:288, title:The Matrix 288}, {id:289, title:The Matrix 289}, {id:290, title:The Matrix 290}, {id:291, title:The Matrix 291}, {id:292, title:The Matrix 292}, {id:293, title:The Matrix 293}, {id:294, title:The Matrix 294}, {id:295, title:The Matrix 295}, {id:296, title:The Matrix 296}, {id:297, title:The Matrix 297}, {id:298, title:The Matrix 298}, {id:299, title:The Matrix 299}, {id:300, title:The Matrix 300}, {id:301, title:The Matrix 301}, {id:302, title:The Matrix 302}, {id:303, title:The Matrix 303}, {id:304, title:The Matrix 304}, {id:305, title:The Matrix 305}, {id:306, title:The Matrix 306}, {id:307, title:The Matrix 307}, {id:308, title:The Matrix 308}, {id:309, title:The Matrix 309}, {id:310, title:The Matrix 310}, {id:311, title:The Matrix 311}, {id:312, title:The Matrix 312}, {id:313, title:The Matrix 313}, {id:314, title:The Matrix 314}, {id:315, title:The Matrix 315}, {id:316, title:The Matrix 316}, {id:317, title:The Matrix 317}, {id:318, title:The Matrix 318}, {id:319, title:The Matrix 319}, {id:320, title:The Matrix 320}, {id:321, title:The Matrix 321}, {id:322, title:The Matrix 322}, {id:323, title:The Matrix 323}, {id:324, title:The Matrix 324}, {id:325, title:The Matrix 325}, {id:326, title:The Matrix 326}, {id:327, title:The Matrix 327}, {id:328, title:The Matrix 328}, {id:329, title:The Matrix 329}, {id:330, title:The Matrix 330}, {id:331, title:The Matrix 331}, {id:332, title:The Matrix 332}, {id:333, title:The Matrix 333}, {id:334, title:The Matrix 334}, {id:335, title:The Matrix 335}, {id:336, title:The Matrix 336}, {id:337, title:The Matrix 337}, {id:338, title:The Matrix 338}, {id:339, title:The Matrix 339}, {id:340, title:The Matrix 340}, {id:341, title:The Matrix 341}, {id:342, title:The Matrix 342}, {id:343, title:The Matrix 343}, {id:344, title:The Matrix 344}, {id:345, title:The Matrix 345}, {id:346, title:The Matrix 346}, {id:347, title:The Matrix 347}, {id:348, title:The Matrix 348}, {id:349, title:The Matrix 349}, {id:350, title:The Matrix 350}, {id:351, title:The Matrix 351}, {id:352, title:The Matrix 352}, {id:353, title:The Matrix 353}, {id:354, title:The Matrix 354}, {id:355, title:The Matrix 355}, {id:356, title:The Matrix 356}, {id:357, title:The Matrix 357}, {id:358, title:The Matrix 358}, {id:359, title:The Matrix 359}, {id:360, title:The Matrix 360}, {id:361, title:The Matrix 361}, {id:362, title:The Matrix 362}, {id:363, title:The Matrix 363}, {id:364, title:The Matrix 364}, {id:365, title:The Matrix 365}, {id:366, title:The Matrix 366}, {id:367, title:The Matrix 367}, {id:368, title:The Matrix 368}, {id:369, title:The Matrix 369}, {id:370, title:The Matrix 370}, {id:371, title:The Matrix 371}, {id:372, title:The Matrix 372}, {id:373, title:The Matrix 373}, {id:374, title:The Matrix 374}, {id:375, title:The Matrix 375}, {id:376, title:The Matrix 376}, {id:377, title:The Matrix 377}, {id:378, title:The Matrix 378}, {id:379, title:The Matrix 379}, {id:380, title:The Matrix 380}, {id:381, title:The Matrix 381}, {id:382, title:The Matrix 382}, {id:383, title:The Matrix 383}, {id:384, title:The Matrix 384}, {id:385, title:The Matrix 385}, {id:386, title:The Matrix 386}, {id:387, title:The Matrix 387}, {id:388, title:The Matrix 388}, {id:389, title:The Matrix 389}, {id:390, title:The Matrix 390}, {id:391, title:The Matrix 391}, {id:392, title:The Matrix 392}, {id:393, title:The Matrix 393}, {id:394, title:The Matrix 394}, {id:395, title:The Matrix 395}, {id:396, title:The Matrix 396}, {id:397, title:The Matrix 397}, {id:398, title:The Matrix 398}, {id:399, title:The Matrix 399}, {id:400, title:The Matrix 400}, {id:401, title:The Matrix 401}, {id:402, title:The Matrix 402}, {id:403, title:The Matrix 403}, {id:404, title:The Matrix 404}, {id:405, title:The Matrix 405}, {id:406, title:The Matrix 406}, {id:407, title:The Matrix 407}, {id:408, title:The Matrix 408}, {id:409, title:The Matrix 409}, {id:410, title:The Matrix 410}, {id:411, title:The Matrix 411}, {id:412, title:The Matrix 412}, {id:413, title:The Matrix 413}, {id:414, title:The Matrix 414}, {id:415, title:The Matrix 415}, {id:416, title:The Matrix 416}, {id:417, title:The Matrix 417}, {id:418, title:The Matrix 418}, {id:419, title:The Matrix 419}, {id:420, title:The Matrix 420}, {id:421, title:The Matrix 421}, {id:422, title:The Matrix 422}, {id:423, title:The Matrix 423}, {id:424, title:The Matrix 424}, {id:425, title:The Matrix 425}, {id:426, title:The Matrix 426}, {id:427, title:The Matrix 427}, {id:428, title:The Matrix 428}, {id:429, title:The Matrix 429}, {id:430, title:The Matrix 430}, {id:431, title:The Matrix 431}, {id:432, title:The Matrix 432}, {id:433, title:The Matrix 433}, {id:434, title:The Matrix 434}, {id:435, title:The Matrix 435}, {id:436, title:The Matrix 436}, {id:437, title:The Matrix 437}, {id:438, title:The Matrix 438}, {id:439, title:The Matrix 439}, {id:440, title:The Matrix 440}, {id:441, title:The Matrix 441}, {id:442, title:The Matrix 442}, {id:443, title:The Matrix 443}, {id:444, title:The Matrix 444}, {id:445, title:The Matrix 445}, {id:446, title:The Matrix 446}, {id:447, title:The Matrix 447}, {id:448, title:The Matrix 448}, {id:449, title:The Matrix 449}, {id:450, title:The Matrix 450}, {id:451, title:The Matrix 451}, {id:452, title:The Matrix 452}, {id:453, title:The Matrix 453}, {id:454, title:The Matrix 454}, {id:455, title:The Matrix 455}, {id:456, title:The Matrix 456}, {id:457, title:The Matrix 457}, {id:458, title:The Matrix 458}, {id:459, title:The Matrix 459}, {id:460, title:The Matrix 460}, {id:461, title:The Matrix 461}, {id:462, title:The Matrix 462}, {id:463, title:The Matrix 463}, {id:464, title:The Matrix 464}, {id:465, title:The Matrix 465}, {id:466, title:The Matrix 466}, {id:467, title:The Matrix 467}, {id:468, title:The Matrix 468}, {id:469, title:The Matrix 469}, {id:470, title:The Matrix 470}, {id:471, title:The Matrix 471}, {id:472, title:The Matrix 472}, {id:473, title:The Matrix 473}, {id:474, title:The Matrix 474}, {id:475, title:The Matrix 475}, {id:476, title:The Matrix 476}, {id:477, title:The Matrix 477}, {id:478, title:The Matrix 478}, {id:479, title:The Matrix 479}, {id:480, title:The Matrix 480}, {id:481, title:The Matrix 481}, {id:482, title:The Matrix 482}, {id:483, title:The Matrix 483}, {id:484, title:The Matrix 484}, {id:485, title:The Matrix 485}, {id:486, title:The Matrix 486}, {id:487, title:The Matrix 487}, {id:488, title:The Matrix 488}, {id:489, title:The Matrix 489}, {id:490, title:The Matrix 490}, {id:491, title:The Matrix 491}, {id:492, title:The Matrix 492}, {id:493, title:The Matrix 493}, {id:494, title:The Matrix 494}, {id:495, title:The Matrix 495}, {id:496, title:The Matrix 496}, {id:497, title:The Matrix 497}, {id:498, title:The Matrix 498}, {id:499, title:The Matrix 499}, {id:500, title:The Matrix 500}, {id:501, title:The Matrix 501}, {id:502, title:The Matrix 502}, {id:503, title:The Matrix 503}, {id:504, title:The Matrix 504}, {id:505, title:The Matrix 505}, {id:506, title:The Matrix 506}, {id:507, title:The Matrix 507}, {id:508, title:The Matrix 508}, {id:509, title:The Matrix 509}, {id:510, title:The Matrix 510}, {id:511, title:The Matrix 511}, {id:512, title:The Matrix 512}, {id:513, title:The Matrix 513}, {id:514, title:The Matrix 514}, {id:515, title:The Matrix 515}, {id:516, title:The Matrix 516}, {id:517, title:The Matrix 517}, {id:518, title:The Matrix 518}, {id:519, title:The Matrix 519}, {id:520, title:The Matrix 520}, {id:521, title:The Matrix 521}, {id:522, title:The Matrix 522}, {id:523, title:The Matrix 523}, {id:524, title:The Matrix 524}, {id:525, title:The Matrix 525}, {id:526, title:The Matrix 526}, {id:527, title:The Matrix 527}, {id:528, title:The Matrix 528}, {id:529, title:The Matrix 529}, {id:530, title:The Matrix 530}, {id:531, title:The Matrix 531}, {id:532, title:The Matrix 532}, {id:533, title:The Matrix 533}, {id:534, title:The Matrix 534}, {id:535, title:The Matrix 535}, {id:536, title:The Matrix 536}, {id:537, title:The Matrix 537}, {id:538, title:The Matrix 538}, {id:539, title:The Matrix 539}, {id:540, title:The Matrix 540}, {id:541, title:The Matrix 541}, {id:542, title:The Matrix 542}, {id:543, title:The Matrix 543}, {id:544, title:The Matrix 544}, {id:545, title:The Matrix 545}, {id:546, title:The Matrix 546}, {id:547, title:The Matrix 547}, {id:548, title:The Matrix 548}, {id:549, title:The Matrix 549}, {id:550, title:The Matrix 550}, {id:551, title:The Matrix 551}, {id:552, title:The Matrix 552}, {id:553, title:The Matrix 553}, {id:554, title:The Matrix 554}, {id:555, title:The Matrix 555}, {id:556, title:The Matrix 556}, {id:557, title:The Matrix 557}, {id:558, title:The Matrix 558}, {id:559, title:The Matrix 559}, {id:560, title:The Matrix 560}, {id:561, title:The Matrix 561}, {id:562, title:The Matrix 562}, {id:563, title:The Matrix 563}, {id:564, title:The Matrix 564}, {id:565, title:The Matrix 565}, {id:566, title:The Matrix 566}, {id:567, title:The Matrix 567}, {id:568, title:The Matrix 568}, {id:569, title:The Matrix 569}, {id:570, title:The Matrix 570}, {id:571, title:The Matrix 571}, {id:572, title:The Matrix 572}, {id:573, title:The Matrix 573}, {id:574, title:The Matrix 574}, {id:575, title:The Matrix 575}, {id:576, title:The Matrix 576}, {id:577, title:The Matrix 577}, {id:578, title:The Matrix 578}, {id:579, title:The Matrix 579}, {id:580, title:The Matrix 580}, {id:581, title:The Matrix 581}, {id:582, title:The Matrix 582}, {id:583, title:The Matrix 583}, {id:584, title:The Matrix 584}, {id:585, title:The Matrix 585}, {id:586, title:The Matrix 586}, {id:587, title:The Matrix 587}, {id:588, title:The Matrix 588}, {id:589, title:The Matrix 589}, {id:590, title:The Matrix 590}, {id:591, title:The Matrix 591}, {id:592, title:The Matrix 592}, {id:593, title:The Matrix 593}, {id:594, title:The Matrix 594}, {id:595, title:The Matrix 595}, {id:596, title:The Matrix 596}, {id:597, title:The Matrix 597}, {id:598, title:The Matrix 598}, {id:599, title:The Matrix 599}] \ No newline at end of file diff --git a/packages/graphql/graphql-workload/params/ConnectionWithSort.txt b/packages/graphql/graphql-workload/params/ConnectionWithSort.txt new file mode 100644 index 0000000000..d6130d579d --- /dev/null +++ b/packages/graphql/graphql-workload/params/ConnectionWithSort.txt @@ -0,0 +1,2 @@ +param0:Integer +5 \ No newline at end of file diff --git a/packages/graphql/graphql-workload/params/DeeplyNestedConnectionWhere.txt b/packages/graphql/graphql-workload/params/DeeplyNestedConnectionWhere.txt new file mode 100644 index 0000000000..9aa4da936b --- /dev/null +++ b/packages/graphql/graphql-workload/params/DeeplyNestedConnectionWhere.txt @@ -0,0 +1,2 @@ +param0:String|param1:String|param2:String +Hugo Weaving|The Matrix|Lana \ No newline at end of file diff --git a/packages/graphql/graphql-workload/params/DeeplyNestedWithRelationshipFilters.txt b/packages/graphql/graphql-workload/params/DeeplyNestedWithRelationshipFilters.txt new file mode 100644 index 0000000000..0f4d797313 --- /dev/null +++ b/packages/graphql/graphql-workload/params/DeeplyNestedWithRelationshipFilters.txt @@ -0,0 +1,2 @@ +param0:String|param1:String|param2:String|param3:String|param4:String|param5:String +T|i|i|non-existent|i|The Matrix \ No newline at end of file diff --git a/packages/graphql/graphql-workload/params/Fulltext.txt b/packages/graphql/graphql-workload/params/Fulltext.txt new file mode 100644 index 0000000000..89afdf959c --- /dev/null +++ b/packages/graphql/graphql-workload/params/Fulltext.txt @@ -0,0 +1,2 @@ +param0:String|param1:String +the real world|Movie \ No newline at end of file diff --git a/packages/graphql/graphql-workload/params/FulltextWithNestedQuery.txt b/packages/graphql/graphql-workload/params/FulltextWithNestedQuery.txt new file mode 100644 index 0000000000..89afdf959c --- /dev/null +++ b/packages/graphql/graphql-workload/params/FulltextWithNestedQuery.txt @@ -0,0 +1,2 @@ +param0:String|param1:String +the real world|Movie \ No newline at end of file diff --git a/packages/graphql/graphql-workload/params/Nested.txt b/packages/graphql/graphql-workload/params/Nested.txt new file mode 100644 index 0000000000..8c01f814d0 --- /dev/null +++ b/packages/graphql/graphql-workload/params/Nested.txt @@ -0,0 +1,2 @@ +param0:String|param1:String +The Matrix|The Replacements \ No newline at end of file diff --git a/packages/graphql/graphql-workload/params/NestedConnectionWhere.txt b/packages/graphql/graphql-workload/params/NestedConnectionWhere.txt new file mode 100644 index 0000000000..d9ffaddbf3 --- /dev/null +++ b/packages/graphql/graphql-workload/params/NestedConnectionWhere.txt @@ -0,0 +1,2 @@ +param0:String|param1:String +Hugo Weaving|No \ No newline at end of file diff --git a/packages/graphql/graphql-workload/params/NestedDeleteInUpdate.txt b/packages/graphql/graphql-workload/params/NestedDeleteInUpdate.txt new file mode 100644 index 0000000000..fca897472e --- /dev/null +++ b/packages/graphql/graphql-workload/params/NestedDeleteInUpdate.txt @@ -0,0 +1,2 @@ +param0:String +Shark \ No newline at end of file diff --git a/packages/graphql/graphql-workload/params/NestedRelationshipFilter.txt b/packages/graphql/graphql-workload/params/NestedRelationshipFilter.txt new file mode 100644 index 0000000000..1e06b79d4f --- /dev/null +++ b/packages/graphql/graphql-workload/params/NestedRelationshipFilter.txt @@ -0,0 +1,2 @@ +param0:String +The Matrix \ No newline at end of file diff --git a/packages/graphql/graphql-workload/params/NestedUpdate.txt b/packages/graphql/graphql-workload/params/NestedUpdate.txt new file mode 100644 index 0000000000..eb00ce0590 --- /dev/null +++ b/packages/graphql/graphql-workload/params/NestedUpdate.txt @@ -0,0 +1,2 @@ +param0:String|param1:String|param2:String +Sharknado|Sharknado|Updated name \ No newline at end of file diff --git a/packages/graphql/graphql-workload/params/NestedWithRelationshipSingleFilters.txt b/packages/graphql/graphql-workload/params/NestedWithRelationshipSingleFilters.txt new file mode 100644 index 0000000000..4c74b0f193 --- /dev/null +++ b/packages/graphql/graphql-workload/params/NestedWithRelationshipSingleFilters.txt @@ -0,0 +1,2 @@ +param0:String|param1:String|param2:String +T|i|i \ No newline at end of file diff --git a/packages/graphql/graphql-workload/params/OrFilterOnRelationships.txt b/packages/graphql/graphql-workload/params/OrFilterOnRelationships.txt new file mode 100644 index 0000000000..1f5392f934 --- /dev/null +++ b/packages/graphql/graphql-workload/params/OrFilterOnRelationships.txt @@ -0,0 +1,2 @@ +param0:Integer|param1:Integer|param2:Integer|param3:Integer|param4:Integer|param5:Integer +1997|1998|1999|1956|1975|1976 \ No newline at end of file diff --git a/packages/graphql/graphql-workload/params/OrFilterOnRelationshipsAndNested.txt b/packages/graphql/graphql-workload/params/OrFilterOnRelationshipsAndNested.txt new file mode 100644 index 0000000000..05ed9a924a --- /dev/null +++ b/packages/graphql/graphql-workload/params/OrFilterOnRelationshipsAndNested.txt @@ -0,0 +1,2 @@ +param0:Integer|param1:Integer|param2:Integer|param3:String|param4:String|param5:String +1997|1998|1956|Matrix|foo|bar \ No newline at end of file diff --git a/packages/graphql/graphql-workload/params/QueryWhere.txt b/packages/graphql/graphql-workload/params/QueryWhere.txt new file mode 100644 index 0000000000..5347cd444e --- /dev/null +++ b/packages/graphql/graphql-workload/params/QueryWhere.txt @@ -0,0 +1,2 @@ +param0:String +Keanu Reeves \ No newline at end of file diff --git a/packages/graphql/graphql-workload/params/QueryWithNestedIn.txt b/packages/graphql/graphql-workload/params/QueryWithNestedIn.txt new file mode 100644 index 0000000000..80b376f648 --- /dev/null +++ b/packages/graphql/graphql-workload/params/QueryWithNestedIn.txt @@ -0,0 +1,2 @@ +param0:Integer[] +[1997, 1998, 1999, 1956, 1975, 1976] \ No newline at end of file diff --git a/packages/graphql/graphql-workload/params/SimpleMutation.txt b/packages/graphql/graphql-workload/params/SimpleMutation.txt new file mode 100644 index 0000000000..2126a18458 --- /dev/null +++ b/packages/graphql/graphql-workload/params/SimpleMutation.txt @@ -0,0 +1,2 @@ +create_param0:Map[] +[{id:1, title:The Matrix}] \ No newline at end of file diff --git a/packages/graphql/graphql-workload/params/SimpleQueryWithNestedWhere.txt b/packages/graphql/graphql-workload/params/SimpleQueryWithNestedWhere.txt new file mode 100644 index 0000000000..5347cd444e --- /dev/null +++ b/packages/graphql/graphql-workload/params/SimpleQueryWithNestedWhere.txt @@ -0,0 +1,2 @@ +param0:String +Keanu Reeves \ No newline at end of file diff --git a/packages/graphql/graphql-workload/params/SortMultipleTypes.txt b/packages/graphql/graphql-workload/params/SortMultipleTypes.txt new file mode 100644 index 0000000000..97739c5847 --- /dev/null +++ b/packages/graphql/graphql-workload/params/SortMultipleTypes.txt @@ -0,0 +1,2 @@ +param0:Integer +10 \ No newline at end of file diff --git a/packages/graphql/graphql-workload/params/SortMultipleTypesWithCypherWithCypher.txt b/packages/graphql/graphql-workload/params/SortMultipleTypesWithCypherWithCypher.txt new file mode 100644 index 0000000000..97739c5847 --- /dev/null +++ b/packages/graphql/graphql-workload/params/SortMultipleTypesWithCypherWithCypher.txt @@ -0,0 +1,2 @@ +param0:Integer +10 \ No newline at end of file diff --git a/packages/graphql/graphql-workload/params/TopLevelConnectionSortWithCypher.txt b/packages/graphql/graphql-workload/params/TopLevelConnectionSortWithCypher.txt new file mode 100644 index 0000000000..d6130d579d --- /dev/null +++ b/packages/graphql/graphql-workload/params/TopLevelConnectionSortWithCypher.txt @@ -0,0 +1,2 @@ +param0:Integer +5 \ No newline at end of file diff --git a/packages/graphql/graphql-workload/params/TopLevelConnectionSortWithCypherWithNested.txt b/packages/graphql/graphql-workload/params/TopLevelConnectionSortWithCypherWithNested.txt new file mode 100644 index 0000000000..d6130d579d --- /dev/null +++ b/packages/graphql/graphql-workload/params/TopLevelConnectionSortWithCypherWithNested.txt @@ -0,0 +1,2 @@ +param0:Integer +5 \ No newline at end of file diff --git a/packages/graphql/graphql-workload/params/TopLevelConnectionSortWithExpensiveCypher.txt b/packages/graphql/graphql-workload/params/TopLevelConnectionSortWithExpensiveCypher.txt new file mode 100644 index 0000000000..d6130d579d --- /dev/null +++ b/packages/graphql/graphql-workload/params/TopLevelConnectionSortWithExpensiveCypher.txt @@ -0,0 +1,2 @@ +param0:Integer +5 \ No newline at end of file diff --git a/packages/graphql/graphql-workload/params/TopLevelSortWithCypher.txt b/packages/graphql/graphql-workload/params/TopLevelSortWithCypher.txt new file mode 100644 index 0000000000..d6130d579d --- /dev/null +++ b/packages/graphql/graphql-workload/params/TopLevelSortWithCypher.txt @@ -0,0 +1,2 @@ +param0:Integer +5 \ No newline at end of file diff --git a/packages/graphql/graphql-workload/params/TopLevelSortWithCypherWithNested.txt b/packages/graphql/graphql-workload/params/TopLevelSortWithCypherWithNested.txt new file mode 100644 index 0000000000..d6130d579d --- /dev/null +++ b/packages/graphql/graphql-workload/params/TopLevelSortWithCypherWithNested.txt @@ -0,0 +1,2 @@ +param0:Integer +5 \ No newline at end of file diff --git a/packages/graphql/graphql-workload/params/TopLevelSortWithExpensiveCypher.txt b/packages/graphql/graphql-workload/params/TopLevelSortWithExpensiveCypher.txt new file mode 100644 index 0000000000..d6130d579d --- /dev/null +++ b/packages/graphql/graphql-workload/params/TopLevelSortWithExpensiveCypher.txt @@ -0,0 +1,2 @@ +param0:Integer +5 \ No newline at end of file diff --git a/packages/graphql/graphql-workload/params/createAndConnect.txt b/packages/graphql/graphql-workload/params/createAndConnect.txt new file mode 100644 index 0000000000..f5a572063f --- /dev/null +++ b/packages/graphql/graphql-workload/params/createAndConnect.txt @@ -0,0 +1,2 @@ +param0:String|param1:String|param2:String +5|My Movie|Shark \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/AggregationWhereWithinNestedConnections.cypher b/packages/graphql/graphql-workload/queries/AggregationWhereWithinNestedConnections.cypher new file mode 100644 index 0000000000..3c6d9984a2 --- /dev/null +++ b/packages/graphql/graphql-workload/queries/AggregationWhereWithinNestedConnections.cypher @@ -0,0 +1,31 @@ +CYPHER 5 +MATCH (this:Person) +CALL (this) { + MATCH (this)-[this0:ACTED_IN]->(this1:Movie) + CALL (this1, this0) { + MATCH (this1)<-[this2:ACTED_IN]-(this3:Person) + CALL (this3) { + MATCH (this3)-[this4:ACTED_IN]->(this5:Movie) + RETURN count(this5) > $param0 AS var6 + } + WITH * + WHERE var6 = true + RETURN count(this3) > 0 AS var7 + } + CALL (this1, this0) { + MATCH (this1)<-[this2:ACTED_IN]-(this3:Person) + CALL (this3) { + MATCH (this3)-[this8:ACTED_IN]->(this9:Movie) + RETURN count(this9) > $param1 AS var10 + } + WITH * + WHERE NOT (var10 = true) + RETURN count(this3) > 0 AS var11 + } + WITH * + WHERE (var11 = false AND var7 = true) + RETURN count(this1) > 0 AS var12 +} +WITH * +WHERE var12 = true +RETURN this { .name } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/AggregationWhereWithinNestedRelationships.cypher b/packages/graphql/graphql-workload/queries/AggregationWhereWithinNestedRelationships.cypher new file mode 100644 index 0000000000..df696d2e50 --- /dev/null +++ b/packages/graphql/graphql-workload/queries/AggregationWhereWithinNestedRelationships.cypher @@ -0,0 +1,31 @@ +CYPHER 5 +MATCH (this:Person) +CALL (this) { + MATCH (this)-[:ACTED_IN]->(this0:Movie) + CALL (this0) { + MATCH (this0)<-[:ACTED_IN]-(this1:Person) + CALL (this1) { + MATCH (this1)-[this2:ACTED_IN]->(this3:Movie) + RETURN count(this3) > $param0 AS var4 + } + WITH * + WHERE var4 = true + RETURN count(this1) > 0 AS var5 + } + CALL (this0) { + MATCH (this0)<-[:ACTED_IN]-(this1:Person) + CALL (this1) { + MATCH (this1)-[this6:ACTED_IN]->(this7:Movie) + RETURN count(this7) > $param1 AS var8 + } + WITH * + WHERE NOT (var8 = true) + RETURN count(this1) > 0 AS var9 + } + WITH * + WHERE (var9 = false AND var5 = true) + RETURN count(this0) > 0 AS var10 +} +WITH * +WHERE var10 = true +RETURN this { .name } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/AggregationWithWhere.cypher b/packages/graphql/graphql-workload/queries/AggregationWithWhere.cypher new file mode 100644 index 0000000000..4d46cd8623 --- /dev/null +++ b/packages/graphql/graphql-workload/queries/AggregationWithWhere.cypher @@ -0,0 +1,10 @@ +CYPHER 5 +MATCH (this:Person) +CALL (this) { + MATCH (this)-[this0:ACTED_IN]->(this1:Movie) + WITH DISTINCT this1 + RETURN count(this1) = $param0 AS var2 +} +WITH * +WHERE var2 = true +RETURN this { .name } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/BatchCreate.cypher b/packages/graphql/graphql-workload/queries/BatchCreate.cypher new file mode 100644 index 0000000000..88cc48287a --- /dev/null +++ b/packages/graphql/graphql-workload/queries/BatchCreate.cypher @@ -0,0 +1,10 @@ +CYPHER 5 +UNWIND $create_param0 AS create_var0 +CALL (create_var0) { + CREATE (create_this1:Movie) + SET + create_this1.id = create_var0.id, + create_this1.title = create_var0.title + RETURN create_this1 +} +RETURN collect(create_this1 { .title }) AS data \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/Connection.cypher b/packages/graphql/graphql-workload/queries/Connection.cypher new file mode 100644 index 0000000000..d8e0052e0e --- /dev/null +++ b/packages/graphql/graphql-workload/queries/Connection.cypher @@ -0,0 +1,13 @@ +CYPHER 5 +MATCH (this:Movie) +CALL (this) { + MATCH (this)<-[this0:ACTED_IN]-(this1:Person) + WITH collect({ node: this1, relationship: this0 }) AS edges + CALL (edges) { + UNWIND edges AS edge + WITH edge.node AS this1, edge.relationship AS this0 + RETURN collect({ node: { name: this1.name, __resolveType: "Person" } }) AS var2 + } + RETURN { edges: var2 } AS var3 +} +RETURN this { actorsConnection: var3 } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/ConnectionWithSort.cypher b/packages/graphql/graphql-workload/queries/ConnectionWithSort.cypher new file mode 100644 index 0000000000..c25265e02b --- /dev/null +++ b/packages/graphql/graphql-workload/queries/ConnectionWithSort.cypher @@ -0,0 +1,22 @@ +CYPHER 5 +MATCH (this0:Movie) +WITH collect({ node: this0 }) AS edges +CALL (edges) { + UNWIND edges AS edge + WITH edge.node AS this0 + WITH * + ORDER BY this0.title ASC + LIMIT $param0 + CALL (this0) { + MATCH (this0)<-[this1:ACTED_IN]-(this2:Person) + WITH collect({ node: this2, relationship: this1 }) AS edges + CALL (edges) { + UNWIND edges AS edge + WITH edge.node AS this2, edge.relationship AS this1 + RETURN collect({ node: { name: this2.name, __resolveType: "Person" } }) AS var3 + } + RETURN { edges: var3 } AS var4 + } + RETURN collect({ node: { title: this0.title, actorsConnection: var4, __resolveType: "Movie" } }) AS var5 +} +RETURN { edges: var5 } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/DeeplyNestedConnectionWhere.cypher b/packages/graphql/graphql-workload/queries/DeeplyNestedConnectionWhere.cypher new file mode 100644 index 0000000000..8a76e9d636 --- /dev/null +++ b/packages/graphql/graphql-workload/queries/DeeplyNestedConnectionWhere.cypher @@ -0,0 +1,13 @@ +CYPHER 5 +MATCH (this:Movie) +WHERE EXISTS { + MATCH (this)<-[this0:ACTED_IN]-(this1:Person) + WHERE (this1.name = $param0 AND NOT (EXISTS { + MATCH (this1)-[this2:ACTED_IN]->(this3:Movie) + WHERE (this3.title = $param1 AND EXISTS { + MATCH (this3)<-[this4:DIRECTED]-(this5:Person) + WHERE this5.name CONTAINS $param2 + }) + })) +} +RETURN this { .title } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/DeeplyNestedWithRelationshipFilters.cypher b/packages/graphql/graphql-workload/queries/DeeplyNestedWithRelationshipFilters.cypher new file mode 100644 index 0000000000..c1b958864b --- /dev/null +++ b/packages/graphql/graphql-workload/queries/DeeplyNestedWithRelationshipFilters.cypher @@ -0,0 +1,19 @@ +CYPHER 5 +MATCH (this:Person) +WHERE (this.name STARTS WITH $param0 AND EXISTS { + MATCH (this)-[:ACTED_IN]->(this0:Movie) + WHERE (this0.title CONTAINS $param1 AND EXISTS { + MATCH (this0)<-[:ACTED_IN]-(this1:Person) + WHERE (this1.name CONTAINS $param2 AND EXISTS { + MATCH (this1)-[:ACTED_IN]->(this2:Movie) + WHERE (NOT (this2.title = $param3) AND EXISTS { + MATCH (this2)<-[:ACTED_IN]-(this3:Person) + WHERE (this3.name CONTAINS $param4 AND NOT (EXISTS { + MATCH (this3)-[:ACTED_IN]->(this4:Movie) + WHERE this4.title = $param5 + })) + }) + }) + }) +}) +RETURN this { .name } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/Fulltext.cypher b/packages/graphql/graphql-workload/queries/Fulltext.cypher new file mode 100644 index 0000000000..ca0d191cac --- /dev/null +++ b/packages/graphql/graphql-workload/queries/Fulltext.cypher @@ -0,0 +1,11 @@ +CYPHER 5 +CALL db.index.fulltext.queryNodes("MovieTaglineFulltextIndex", $param0) YIELD node AS this0, score AS var1 +WHERE $param1 IN labels(this0) +WITH collect({ node: this0, score: var1 }) AS edges +WITH edges, size(edges) AS totalCount +CALL (edges) { + UNWIND edges AS edge + WITH edge.node AS this0, edge.score AS var1 + RETURN collect({ node: { title: this0.title, tagline: this0.tagline, __resolveType: "Movie" }, score: var1 }) AS var2 +} +RETURN { edges: var2 } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/FulltextWithNestedQuery.cypher b/packages/graphql/graphql-workload/queries/FulltextWithNestedQuery.cypher new file mode 100644 index 0000000000..0cb54d40cf --- /dev/null +++ b/packages/graphql/graphql-workload/queries/FulltextWithNestedQuery.cypher @@ -0,0 +1,17 @@ +CYPHER 5 +CALL db.index.fulltext.queryNodes("MovieTaglineFulltextIndex", $param0) YIELD node AS this0, score AS var1 +WHERE $param1 IN labels(this0) +WITH collect({ node: this0, score: var1 }) AS edges +WITH edges, size(edges) AS totalCount +CALL (edges) { + UNWIND edges AS edge + WITH edge.node AS this0, edge.score AS var1 + CALL (this0) { + MATCH (this0)<-[this2:ACTED_IN]-(this3:Person) + WITH DISTINCT this3 + WITH this3 { .name } AS this3 + RETURN collect(this3) AS var4 + } + RETURN collect({ node: { title: this0.title, tagline: this0.tagline, actors: var4, __resolveType: "Movie" }, score: var1 }) AS var5 +} +RETURN { edges: var5 } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/InterfacesAggregations.cypher b/packages/graphql/graphql-workload/queries/InterfacesAggregations.cypher new file mode 100644 index 0000000000..0341deca54 --- /dev/null +++ b/packages/graphql/graphql-workload/queries/InterfacesAggregations.cypher @@ -0,0 +1,29 @@ +CYPHER 5 +CALL () { + CALL () { + MATCH (this0:Movie) + WITH { node: { __resolveType: "Movie", __id: id(this0) } } AS edge + RETURN edge + UNION + MATCH (this1:MovieClone) + WITH { node: { __resolveType: "MovieClone", __id: id(this1) } } AS edge + RETURN edge + } + RETURN collect(edge) AS edges +} +CALL () { + CALL { + MATCH (this2:Movie) + RETURN this2 AS node + UNION + MATCH (this3:MovieClone) + RETURN this3 AS node + } + WITH DISTINCT node + ORDER BY size(node.title) DESC + WITH collect(node.title) AS list + RETURN { longest: head(list), shortest: last(list) } AS this4 +} +WITH edges, { node: { title: this4 } } AS var5 +WITH edges, size(edges) AS totalCount, var5 +RETURN { edges: edges, totalCount: totalCount, aggregate: var5 } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/InterfacesAggregationsWithTwoFields.cypher b/packages/graphql/graphql-workload/queries/InterfacesAggregationsWithTwoFields.cypher new file mode 100644 index 0000000000..4164384350 --- /dev/null +++ b/packages/graphql/graphql-workload/queries/InterfacesAggregationsWithTwoFields.cypher @@ -0,0 +1,40 @@ +CYPHER 5 +CALL () { + CALL () { + MATCH (this0:Movie) + WITH { node: { __resolveType: "Movie", __id: id(this0) } } AS edge + RETURN edge + UNION + MATCH (this1:MovieClone) + WITH { node: { __resolveType: "MovieClone", __id: id(this1) } } AS edge + RETURN edge + } + RETURN collect(edge) AS edges +} +CALL () { + CALL { + MATCH (this2:Movie) + RETURN this2 AS node + UNION + MATCH (this3:MovieClone) + RETURN this3 AS node + } + WITH DISTINCT node + ORDER BY size(node.title) DESC + WITH collect(node.title) AS list + RETURN { longest: head(list), shortest: last(list) } AS this4 +} +CALL () { + CALL { + MATCH (this5:Movie) + RETURN this5 AS node + UNION + MATCH (this6:MovieClone) + RETURN this6 AS node + } + WITH DISTINCT node + RETURN { min: min(node.released), max: max(node.released) } AS this7 +} +WITH edges, { node: { title: this4, released: this7 } } AS var8 +WITH edges, size(edges) AS totalCount, var8 +RETURN { edges: edges, totalCount: totalCount, aggregate: var8 } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/Nested.cypher b/packages/graphql/graphql-workload/queries/Nested.cypher new file mode 100644 index 0000000000..d66191244a --- /dev/null +++ b/packages/graphql/graphql-workload/queries/Nested.cypher @@ -0,0 +1,22 @@ +CYPHER 5 +MATCH (this:Movie) +WHERE (this.title = $param0 OR this.title = $param1) +CALL (this) { + MATCH (this)<-[this0:ACTED_IN]-(this1:Person) + WITH DISTINCT this1 + CALL (this1) { + MATCH (this1)-[this2:ACTED_IN]->(this3:Movie) + WITH DISTINCT this3 + CALL (this3) { + MATCH (this3)<-[this4:ACTED_IN]-(this5:Person) + WITH DISTINCT this5 + WITH this5 { .name } AS this5 + RETURN collect(this5) AS var6 + } + WITH this3 { .title, actors: var6 } AS this3 + RETURN collect(this3) AS var7 + } + WITH this1 { .name, movies: var7 } AS this1 + RETURN collect(this1) AS var8 +} +RETURN this { actors: var8 } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/NestedAggregation.cypher b/packages/graphql/graphql-workload/queries/NestedAggregation.cypher new file mode 100644 index 0000000000..89535b4136 --- /dev/null +++ b/packages/graphql/graphql-workload/queries/NestedAggregation.cypher @@ -0,0 +1,13 @@ +CYPHER 5 +MATCH (this:Person) +CALL (this) { + CALL (this) { + MATCH (this)-[this0:ACTED_IN]->(this1:Movie) + WITH DISTINCT this1 + ORDER BY size(this1.title) DESC + WITH collect(this1.title) AS list + RETURN { longest: head(list) } AS var2 + } + RETURN { aggregate: { node: { title: var2 } } } AS var3 +} +RETURN this { .name, moviesConnection: var3 } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/NestedConnection.cypher b/packages/graphql/graphql-workload/queries/NestedConnection.cypher new file mode 100644 index 0000000000..809c6b4d39 --- /dev/null +++ b/packages/graphql/graphql-workload/queries/NestedConnection.cypher @@ -0,0 +1,23 @@ +CYPHER 5 +MATCH (this:Movie) +CALL (this) { + MATCH (this)<-[this0:ACTED_IN]-(this1:Person) + WITH collect({ node: this1, relationship: this0 }) AS edges + CALL (edges) { + UNWIND edges AS edge + WITH edge.node AS this1, edge.relationship AS this0 + CALL (this1) { + MATCH (this1)-[this2:ACTED_IN]->(this3:Movie) + WITH collect({ node: this3, relationship: this2 }) AS edges + CALL (edges) { + UNWIND edges AS edge + WITH edge.node AS this3, edge.relationship AS this2 + RETURN collect({ node: { title: this3.title, __resolveType: "Movie" } }) AS var4 + } + RETURN { edges: var4 } AS var5 + } + RETURN collect({ node: { name: this1.name, moviesConnection: var5, __resolveType: "Person" } }) AS var6 + } + RETURN { edges: var6 } AS var7 +} +RETURN this { actorsConnection: var7 } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/NestedConnectionWhere.cypher b/packages/graphql/graphql-workload/queries/NestedConnectionWhere.cypher new file mode 100644 index 0000000000..e57a002c5b --- /dev/null +++ b/packages/graphql/graphql-workload/queries/NestedConnectionWhere.cypher @@ -0,0 +1,10 @@ +CYPHER 5 +MATCH (this:Movie) +WHERE EXISTS { + MATCH (this)<-[this0:ACTED_IN]-(this1:Person) + WHERE (this1.name = $param0 AND NOT (EXISTS { + MATCH (this1)-[this2:ACTED_IN]->(this3:Movie) + WHERE this3.title = $param1 + })) +} +RETURN this { .title } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/NestedDeleteInUpdate.cypher b/packages/graphql/graphql-workload/queries/NestedDeleteInUpdate.cypher new file mode 100644 index 0000000000..c13147b504 --- /dev/null +++ b/packages/graphql/graphql-workload/queries/NestedDeleteInUpdate.cypher @@ -0,0 +1,15 @@ +CYPHER 5 +MATCH (this:Movie) +WITH * +WITH * +CALL (*) { + OPTIONAL MATCH (this)<-[this0:ACTED_IN]-(this1:Person) + WHERE this1.name CONTAINS $param0 + WITH this0, collect(DISTINCT this1) AS var2 + CALL (var2) { + UNWIND var2 AS var3 + DETACH DELETE var3 + } +} +WITH this +RETURN this { .title } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/NestedRelationshipFilter.cypher b/packages/graphql/graphql-workload/queries/NestedRelationshipFilter.cypher new file mode 100644 index 0000000000..6f3415d683 --- /dev/null +++ b/packages/graphql/graphql-workload/queries/NestedRelationshipFilter.cypher @@ -0,0 +1,10 @@ +CYPHER 5 +MATCH (this:Movie) +WHERE EXISTS { + MATCH (this)<-[:ACTED_IN]-(this0:Person) + WHERE EXISTS { + MATCH (this0)-[:ACTED_IN]->(this1:Movie) + WHERE this1.title = $param0 + } +} +RETURN this { .title } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/NestedUnion.cypher b/packages/graphql/graphql-workload/queries/NestedUnion.cypher new file mode 100644 index 0000000000..1fa50da066 --- /dev/null +++ b/packages/graphql/graphql-workload/queries/NestedUnion.cypher @@ -0,0 +1,33 @@ +CYPHER 5 +MATCH (this:Person) +CALL (this) { + CALL (*) { + WITH * + MATCH (this)-[this0:LIKES]->(this1:Person) + CALL (this1) { + CALL (*) { + WITH * + MATCH (this1)-[this2:LIKES]->(this3:Person) + WITH this3 { .name, __resolveType: "Person", __id: id(this3) } AS var4 + RETURN var4 + UNION + WITH * + MATCH (this1)-[this5:LIKES]->(this6:Movie) + WITH this6 { .title, __resolveType: "Movie", __id: id(this6) } AS var4 + RETURN var4 + } + WITH var4 + RETURN collect(var4) AS var4 + } + WITH this1 { .name, likes: var4, __resolveType: "Person", __id: id(this1) } AS var7 + RETURN var7 + UNION + WITH * + MATCH (this)-[this8:LIKES]->(this9:Movie) + WITH this9 { .title, __resolveType: "Movie", __id: id(this9) } AS var7 + RETURN var7 + } + WITH var7 + RETURN collect(var7) AS var7 +} +RETURN this { .name, likes: var7 } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/NestedUnionWithMissingFields.cypher b/packages/graphql/graphql-workload/queries/NestedUnionWithMissingFields.cypher new file mode 100644 index 0000000000..4ff54a94f7 --- /dev/null +++ b/packages/graphql/graphql-workload/queries/NestedUnionWithMissingFields.cypher @@ -0,0 +1,33 @@ +CYPHER 5 +MATCH (this:Person) +CALL (this) { + CALL (*) { + WITH * + MATCH (this)-[this0:LIKES]->(this1:Person) + CALL (this1) { + CALL (*) { + WITH * + MATCH (this1)-[this2:LIKES]->(this3:Person) + WITH this3 { .name, __resolveType: "Person", __id: id(this3) } AS var4 + RETURN var4 + UNION + WITH * + MATCH (this1)-[this5:LIKES]->(this6:Movie) + WITH this6 { .title, __resolveType: "Movie", __id: id(this6) } AS var4 + RETURN var4 + } + WITH var4 + RETURN collect(var4) AS var4 + } + WITH this1 { .name, likes: var4, __resolveType: "Person", __id: id(this1) } AS var7 + RETURN var7 + UNION + WITH * + MATCH (this)-[this8:LIKES]->(this9:Movie) + WITH this9 { __resolveType: "Movie", __id: id(this9) } AS var7 + RETURN var7 + } + WITH var7 + RETURN collect(var7) AS var7 +} +RETURN this { .name, likes: var7 } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/NestedUpdate.cypher b/packages/graphql/graphql-workload/queries/NestedUpdate.cypher new file mode 100644 index 0000000000..de206da067 --- /dev/null +++ b/packages/graphql/graphql-workload/queries/NestedUpdate.cypher @@ -0,0 +1,14 @@ +CYPHER 5 +MATCH (this:Movie) +WITH * +WHERE this.title STARTS WITH $param0 +WITH * +CALL (*) { + MATCH (this)<-[this0:ACTED_IN]-(this1:Person) + WITH * + WHERE this1.name STARTS WITH $param1 + SET + this1.name = $param2 +} +WITH this +RETURN this { .title } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/NestedWithRelationshipSingleFilters.cypher b/packages/graphql/graphql-workload/queries/NestedWithRelationshipSingleFilters.cypher new file mode 100644 index 0000000000..26f542dcdd --- /dev/null +++ b/packages/graphql/graphql-workload/queries/NestedWithRelationshipSingleFilters.cypher @@ -0,0 +1,4 @@ +CYPHER 5 +MATCH (this:Person) +WHERE (this.name STARTS WITH $param0 AND single(this0 IN [(this)-[:ACTED_IN]->(this0:Movie) WHERE (this0.title CONTAINS $param1 AND single(this1 IN [(this0)<-[:ACTED_IN]-(this1:Person) WHERE this1.name CONTAINS $param2 | 1] WHERE true)) | 1] WHERE true)) +RETURN this { .name } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/OrFilterOnRelationships.cypher b/packages/graphql/graphql-workload/queries/OrFilterOnRelationships.cypher new file mode 100644 index 0000000000..afa1971288 --- /dev/null +++ b/packages/graphql/graphql-workload/queries/OrFilterOnRelationships.cypher @@ -0,0 +1,28 @@ +CYPHER 5 +MATCH (this:Movie) +WHERE (EXISTS { + MATCH (this)<-[:ACTED_IN]-(this0:Person) + WHERE this0.born = $param0 +} OR EXISTS { + MATCH (this)<-[:ACTED_IN]-(this1:Person) + WHERE this1.born = $param1 +} OR EXISTS { + MATCH (this)<-[:ACTED_IN]-(this2:Person) + WHERE this2.born = $param2 +} OR EXISTS { + MATCH (this)<-[:ACTED_IN]-(this3:Person) + WHERE this3.born = $param3 +} OR EXISTS { + MATCH (this)<-[:ACTED_IN]-(this4:Person) + WHERE this4.born = $param4 +} OR EXISTS { + MATCH (this)<-[:ACTED_IN]-(this5:Person) + WHERE this5.born = $param5 +}) +CALL (this) { + MATCH (this)<-[this6:ACTED_IN]-(this7:Person) + WITH DISTINCT this7 + WITH this7 { .name, .born } AS this7 + RETURN collect(this7) AS var8 +} +RETURN this { .title, actors: var8 } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/OrFilterOnRelationshipsAndNested.cypher b/packages/graphql/graphql-workload/queries/OrFilterOnRelationshipsAndNested.cypher new file mode 100644 index 0000000000..66390ce52e --- /dev/null +++ b/packages/graphql/graphql-workload/queries/OrFilterOnRelationshipsAndNested.cypher @@ -0,0 +1,37 @@ +CYPHER 5 +MATCH (this:Movie) +WHERE (EXISTS { + MATCH (this)<-[:ACTED_IN]-(this0:Person) + WHERE this0.born = $param0 +} OR EXISTS { + MATCH (this)<-[:ACTED_IN]-(this1:Person) + WHERE this1.born = $param1 +} OR EXISTS { + MATCH (this)<-[:ACTED_IN]-(this2:Person) + WHERE this2.born = $param2 +} OR EXISTS { + MATCH (this)<-[:DIRECTED]-(this3:Person) + WHERE EXISTS { + MATCH (this3)-[:ACTED_IN]->(this4:Movie) + WHERE this4.title = $param3 + } +} OR EXISTS { + MATCH (this)<-[:DIRECTED]-(this5:Person) + WHERE EXISTS { + MATCH (this5)-[:ACTED_IN]->(this6:Movie) + WHERE this6.title = $param4 + } +} OR EXISTS { + MATCH (this)<-[:DIRECTED]-(this7:Person) + WHERE EXISTS { + MATCH (this7)-[:ACTED_IN]->(this8:Movie) + WHERE this8.title = $param5 + } +}) +CALL (this) { + MATCH (this)<-[this9:ACTED_IN]-(this10:Person) + WITH DISTINCT this10 + WITH this10 { .name, .born } AS this10 + RETURN collect(this10) AS var11 +} +RETURN this { .title, actors: var11 } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/QueryWhere.cypher b/packages/graphql/graphql-workload/queries/QueryWhere.cypher new file mode 100644 index 0000000000..ac32c59348 --- /dev/null +++ b/packages/graphql/graphql-workload/queries/QueryWhere.cypher @@ -0,0 +1,7 @@ +CYPHER 5 +MATCH (this:Movie) +WHERE EXISTS { + MATCH (this)<-[:ACTED_IN]-(this0:Person) + WHERE this0.name = $param0 +} +RETURN this { .released } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/QueryWithNestedIn.cypher b/packages/graphql/graphql-workload/queries/QueryWithNestedIn.cypher new file mode 100644 index 0000000000..bdffd862c1 --- /dev/null +++ b/packages/graphql/graphql-workload/queries/QueryWithNestedIn.cypher @@ -0,0 +1,13 @@ +CYPHER 5 +MATCH (this:Movie) +WHERE EXISTS { + MATCH (this)<-[:ACTED_IN]-(this0:Person) + WHERE this0.born IN $param0 +} +CALL (this) { + MATCH (this)<-[this1:ACTED_IN]-(this2:Person) + WITH DISTINCT this2 + WITH this2 { .name, .born } AS this2 + RETURN collect(this2) AS var3 +} +RETURN this { .title, actors: var3 } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/SimpleDelete.cypher b/packages/graphql/graphql-workload/queries/SimpleDelete.cypher new file mode 100644 index 0000000000..fba029469c --- /dev/null +++ b/packages/graphql/graphql-workload/queries/SimpleDelete.cypher @@ -0,0 +1,3 @@ +CYPHER 5 +MATCH (this:Movie) +DETACH DELETE this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/SimpleMutation.cypher b/packages/graphql/graphql-workload/queries/SimpleMutation.cypher new file mode 100644 index 0000000000..88cc48287a --- /dev/null +++ b/packages/graphql/graphql-workload/queries/SimpleMutation.cypher @@ -0,0 +1,10 @@ +CYPHER 5 +UNWIND $create_param0 AS create_var0 +CALL (create_var0) { + CREATE (create_this1:Movie) + SET + create_this1.id = create_var0.id, + create_this1.title = create_var0.title + RETURN create_this1 +} +RETURN collect(create_this1 { .title }) AS data \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/SimpleQuery.cypher b/packages/graphql/graphql-workload/queries/SimpleQuery.cypher new file mode 100644 index 0000000000..c2c8f022dc --- /dev/null +++ b/packages/graphql/graphql-workload/queries/SimpleQuery.cypher @@ -0,0 +1,3 @@ +CYPHER 5 +MATCH (this:Movie) +RETURN this { .title } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/SimpleQueryWithNestedWhere.cypher b/packages/graphql/graphql-workload/queries/SimpleQueryWithNestedWhere.cypher new file mode 100644 index 0000000000..86e1731683 --- /dev/null +++ b/packages/graphql/graphql-workload/queries/SimpleQueryWithNestedWhere.cypher @@ -0,0 +1,13 @@ +CYPHER 5 +MATCH (this:Movie) +WHERE EXISTS { + MATCH (this)<-[:ACTED_IN]-(this0:Person) + WHERE this0.name = $param0 +} +CALL (this) { + MATCH (this)<-[this1:ACTED_IN]-(this2:Person) + WITH DISTINCT this2 + WITH this2 { .name } AS this2 + RETURN collect(this2) AS var3 +} +RETURN this { .title, actors: var3 } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/SimpleQueryWithRelationship.cypher b/packages/graphql/graphql-workload/queries/SimpleQueryWithRelationship.cypher new file mode 100644 index 0000000000..c962599565 --- /dev/null +++ b/packages/graphql/graphql-workload/queries/SimpleQueryWithRelationship.cypher @@ -0,0 +1,9 @@ +CYPHER 5 +MATCH (this:Movie) +CALL (this) { + MATCH (this)<-[this0:ACTED_IN]-(this1:Person) + WITH DISTINCT this1 + WITH this1 { .name } AS this1 + RETURN collect(this1) AS var2 +} +RETURN this { .title, actors: var2 } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/SimpleUnionQuery.cypher b/packages/graphql/graphql-workload/queries/SimpleUnionQuery.cypher new file mode 100644 index 0000000000..8d674909bb --- /dev/null +++ b/packages/graphql/graphql-workload/queries/SimpleUnionQuery.cypher @@ -0,0 +1,18 @@ +CYPHER 5 +MATCH (this:User) +CALL (this) { + CALL (*) { + WITH * + MATCH (this)-[this0:LIKES]->(this1:Person) + WITH this1 { .name, __resolveType: "Person", __id: id(this1) } AS var2 + RETURN var2 + UNION + WITH * + MATCH (this)-[this3:LIKES]->(this4:Movie) + WITH this4 { .title, __resolveType: "Movie", __id: id(this4) } AS var2 + RETURN var2 + } + WITH var2 + RETURN collect(var2) AS var2 +} +RETURN this { .name, likes: var2 } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/SimpleUnionQueryWithMissingFields.cypher b/packages/graphql/graphql-workload/queries/SimpleUnionQueryWithMissingFields.cypher new file mode 100644 index 0000000000..0ff7a5c58c --- /dev/null +++ b/packages/graphql/graphql-workload/queries/SimpleUnionQueryWithMissingFields.cypher @@ -0,0 +1,18 @@ +CYPHER 5 +MATCH (this:User) +CALL (this) { + CALL (*) { + WITH * + MATCH (this)-[this0:LIKES]->(this1:Person) + WITH this1 { .name, __resolveType: "Person", __id: id(this1) } AS var2 + RETURN var2 + UNION + WITH * + MATCH (this)-[this3:LIKES]->(this4:Movie) + WITH this4 { __resolveType: "Movie", __id: id(this4) } AS var2 + RETURN var2 + } + WITH var2 + RETURN collect(var2) AS var2 +} +RETURN this { .name, likes: var2 } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/SortDeeplyNestedFields.cypher b/packages/graphql/graphql-workload/queries/SortDeeplyNestedFields.cypher new file mode 100644 index 0000000000..c3e8c2997d --- /dev/null +++ b/packages/graphql/graphql-workload/queries/SortDeeplyNestedFields.cypher @@ -0,0 +1,17 @@ +CYPHER 5 +MATCH (this:Movie) +CALL (this) { + MATCH (this)<-[this0:ACTED_IN]-(this1:Person) + WITH DISTINCT this1 + CALL (this1) { + MATCH (this1)-[this2:ACTED_IN]->(this3:Movie) + WITH DISTINCT this3 + WITH this3 { .released } AS this3 + ORDER BY this3.released DESC + RETURN collect(this3) AS var4 + } + WITH this1 { .name, movies: var4 } AS this1 + ORDER BY this1.name ASC + RETURN collect(this1) AS var5 +} +RETURN this { .title, actors: var5 } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/SortMultipleTypes.cypher b/packages/graphql/graphql-workload/queries/SortMultipleTypes.cypher new file mode 100644 index 0000000000..0f934c4774 --- /dev/null +++ b/packages/graphql/graphql-workload/queries/SortMultipleTypes.cypher @@ -0,0 +1,26 @@ +CYPHER 5 +MATCH (this:Movie) +WITH * +ORDER BY this.title ASC +LIMIT $param0 +CALL (this) { + MATCH (this)<-[this0:ACTED_IN]-(this1:Person) + WITH collect({ node: this1, relationship: this0 }) AS edges + CALL (edges) { + UNWIND edges AS edge + WITH edge.node AS this1, edge.relationship AS this0 + RETURN collect({ node: { name: this1.name, __resolveType: "Person" } }) AS var2 + } + RETURN { edges: var2 } AS var3 +} +CALL (this) { + MATCH (this)<-[this4:DIRECTED]-(this5:Person) + WITH collect({ node: this5, relationship: this4 }) AS edges + CALL (edges) { + UNWIND edges AS edge + WITH edge.node AS this5, edge.relationship AS this4 + RETURN collect({ node: { name: this5.name, __resolveType: "Person" } }) AS var6 + } + RETURN { edges: var6 } AS var7 +} +RETURN this { .title, actorsConnection: var3, directorsConnection: var7 } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/SortMultipleTypesWithCypherWithCypher.cypher b/packages/graphql/graphql-workload/queries/SortMultipleTypesWithCypherWithCypher.cypher new file mode 100644 index 0000000000..42fca91ac1 --- /dev/null +++ b/packages/graphql/graphql-workload/queries/SortMultipleTypesWithCypherWithCypher.cypher @@ -0,0 +1,34 @@ +CYPHER 5 +MATCH (this:Movie) +CALL (this) { + CALL (this) { + WITH this AS this + MATCH (this)<-[:ACTED_IN]-(a:Person) RETURN a.name AS name + } + WITH name AS this0 + RETURN this0 AS var1 +} +WITH * +ORDER BY var1 ASC +LIMIT $param0 +CALL (this) { + MATCH (this)<-[this2:ACTED_IN]-(this3:Person) + WITH collect({ node: this3, relationship: this2 }) AS edges + CALL (edges) { + UNWIND edges AS edge + WITH edge.node AS this3, edge.relationship AS this2 + RETURN collect({ node: { name: this3.name, __resolveType: "Person" } }) AS var4 + } + RETURN { edges: var4 } AS var5 +} +CALL (this) { + MATCH (this)<-[this6:DIRECTED]-(this7:Person) + WITH collect({ node: this7, relationship: this6 }) AS edges + CALL (edges) { + UNWIND edges AS edge + WITH edge.node AS this7, edge.relationship AS this6 + RETURN collect({ node: { name: this7.name, __resolveType: "Person" } }) AS var8 + } + RETURN { edges: var8 } AS var9 +} +RETURN this { .title, actorsConnection: var5, directorsConnection: var9, oneActorName: var1 } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/SortOnNestedFields.cypher b/packages/graphql/graphql-workload/queries/SortOnNestedFields.cypher new file mode 100644 index 0000000000..d870471931 --- /dev/null +++ b/packages/graphql/graphql-workload/queries/SortOnNestedFields.cypher @@ -0,0 +1,10 @@ +CYPHER 5 +MATCH (this:Movie) +CALL (this) { + MATCH (this)<-[this0:ACTED_IN]-(this1:Person) + WITH DISTINCT this1 + WITH this1 { .name } AS this1 + ORDER BY this1.name ASC + RETURN collect(this1) AS var2 +} +RETURN this { actors: var2 } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/TopLevelAggregateWithMultipleFields.cypher b/packages/graphql/graphql-workload/queries/TopLevelAggregateWithMultipleFields.cypher new file mode 100644 index 0000000000..37990e873f --- /dev/null +++ b/packages/graphql/graphql-workload/queries/TopLevelAggregateWithMultipleFields.cypher @@ -0,0 +1,18 @@ +CYPHER 5 +CALL { + MATCH (this:Person) + RETURN { nodes: count(DISTINCT this) } AS var0 +} +CALL { + MATCH (this:Person) + WITH DISTINCT this + ORDER BY size(this.name) DESC + WITH collect(this.name) AS list + RETURN { shortest: last(list) } AS var1 +} +CALL { + MATCH (this:Person) + WITH DISTINCT this + RETURN { max: max(this.born) } AS var2 +} +RETURN { aggregate: { count: var0, node: { name: var1, born: var2 } } } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/TopLevelConnectionSortWithCypher.cypher b/packages/graphql/graphql-workload/queries/TopLevelConnectionSortWithCypher.cypher new file mode 100644 index 0000000000..9c4c06f306 --- /dev/null +++ b/packages/graphql/graphql-workload/queries/TopLevelConnectionSortWithCypher.cypher @@ -0,0 +1,20 @@ +CYPHER 5 +MATCH (this0:Movie) +WITH collect({ node: this0 }) AS edges +CALL (edges) { + UNWIND edges AS edge + WITH edge.node AS this0 + CALL (this0) { + CALL (this0) { + WITH this0 AS this + MATCH (this)<-[:ACTED_IN]-(a:Person) RETURN a.name AS name + } + WITH name AS this1 + RETURN this1 AS var2 + } + WITH * + ORDER BY var2 DESC + LIMIT $param0 + RETURN collect({ node: { title: this0.title, oneActorName: var2, __resolveType: "Movie" } }) AS var3 +} +RETURN { edges: var3 } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/TopLevelConnectionSortWithCypherWithNested.cypher b/packages/graphql/graphql-workload/queries/TopLevelConnectionSortWithCypherWithNested.cypher new file mode 100644 index 0000000000..7180ae5eb5 --- /dev/null +++ b/packages/graphql/graphql-workload/queries/TopLevelConnectionSortWithCypherWithNested.cypher @@ -0,0 +1,30 @@ +CYPHER 5 +MATCH (this0:Movie) +WITH collect({ node: this0 }) AS edges +CALL (edges) { + UNWIND edges AS edge + WITH edge.node AS this0 + CALL (this0) { + CALL (this0) { + WITH this0 AS this + MATCH (this)<-[:ACTED_IN]-(a:Person) RETURN a.name AS name + } + WITH name AS this1 + RETURN this1 AS var2 + } + WITH * + ORDER BY var2 DESC + LIMIT $param0 + CALL (this0) { + MATCH (this0)<-[this3:ACTED_IN]-(this4:Person) + WITH collect({ node: this4, relationship: this3 }) AS edges + CALL (edges) { + UNWIND edges AS edge + WITH edge.node AS this4, edge.relationship AS this3 + RETURN collect({ node: { name: this4.name, __resolveType: "Person" } }) AS var5 + } + RETURN { edges: var5 } AS var6 + } + RETURN collect({ node: { title: this0.title, oneActorName: var2, actorsConnection: var6, __resolveType: "Movie" } }) AS var7 +} +RETURN { edges: var7 } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/TopLevelConnectionSortWithExpensiveCypher.cypher b/packages/graphql/graphql-workload/queries/TopLevelConnectionSortWithExpensiveCypher.cypher new file mode 100644 index 0000000000..bd935a2e93 --- /dev/null +++ b/packages/graphql/graphql-workload/queries/TopLevelConnectionSortWithExpensiveCypher.cypher @@ -0,0 +1,32 @@ +CYPHER 5 +MATCH (this0:Movie) +WITH collect({ node: this0 }) AS edges +CALL (edges) { + UNWIND edges AS edge + WITH edge.node AS this0 + CALL (this0) { + CALL (this0) { + WITH this0 AS this + MATCH (this)<-[:ACTED_IN]-(a:Person) RETURN a.name AS name + } + WITH name AS this1 + RETURN this1 AS var2 + } + WITH * + ORDER BY var2 DESC + LIMIT $param0 + CALL (this0) { + CALL (this0) { + WITH this0 AS this + MATCH (this)<-[:ACTED_IN]-(a:Person)-[:ACTED_IN]->(m:Movie) + WITH m + ORDER BY m.title DESC + RETURN distinct (m) as otherMovies + } + WITH otherMovies AS this3 + WITH this3 { .title } AS this3 + RETURN collect(this3) AS var4 + } + RETURN collect({ node: { title: this0.title, oneActorName: var2, otherMoviesWhereActorsActedIn: var4, __resolveType: "Movie" } }) AS var5 +} +RETURN { edges: var5 } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/TopLevelMutationDirective.cypher b/packages/graphql/graphql-workload/queries/TopLevelMutationDirective.cypher new file mode 100644 index 0000000000..1a6e3403a4 --- /dev/null +++ b/packages/graphql/graphql-workload/queries/TopLevelMutationDirective.cypher @@ -0,0 +1,8 @@ +CYPHER 5 +CALL { + MATCH (user:Person { name_INCLUDES: "Wa" }) + RETURN user +} +WITH user AS this0 +WITH this0 { .name } AS this0 +RETURN this0 AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/TopLevelSortWithCypher.cypher b/packages/graphql/graphql-workload/queries/TopLevelSortWithCypher.cypher new file mode 100644 index 0000000000..796036a98f --- /dev/null +++ b/packages/graphql/graphql-workload/queries/TopLevelSortWithCypher.cypher @@ -0,0 +1,14 @@ +CYPHER 5 +MATCH (this:Movie) +CALL (this) { + CALL (this) { + WITH this AS this + MATCH (this)<-[:ACTED_IN]-(a:Person) RETURN a.name AS name + } + WITH name AS this0 + RETURN this0 AS var1 +} +WITH * +ORDER BY var1 DESC +LIMIT $param0 +RETURN this { .title, oneActorName: var1 } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/TopLevelSortWithCypherWithNested.cypher b/packages/graphql/graphql-workload/queries/TopLevelSortWithCypherWithNested.cypher new file mode 100644 index 0000000000..5ea6836b0b --- /dev/null +++ b/packages/graphql/graphql-workload/queries/TopLevelSortWithCypherWithNested.cypher @@ -0,0 +1,20 @@ +CYPHER 5 +MATCH (this:Movie) +CALL (this) { + CALL (this) { + WITH this AS this + MATCH (this)<-[:ACTED_IN]-(a:Person) RETURN a.name AS name + } + WITH name AS this0 + RETURN this0 AS var1 +} +WITH * +ORDER BY var1 DESC +LIMIT $param0 +CALL (this) { + MATCH (this)<-[this2:ACTED_IN]-(this3:Person) + WITH DISTINCT this3 + WITH this3 { .name } AS this3 + RETURN collect(this3) AS var4 +} +RETURN this { .title, oneActorName: var1, actors: var4 } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/TopLevelSortWithExpensiveCypher.cypher b/packages/graphql/graphql-workload/queries/TopLevelSortWithExpensiveCypher.cypher new file mode 100644 index 0000000000..c3fcb2f5cd --- /dev/null +++ b/packages/graphql/graphql-workload/queries/TopLevelSortWithExpensiveCypher.cypher @@ -0,0 +1,26 @@ +CYPHER 5 +MATCH (this:Movie) +CALL (this) { + CALL (this) { + WITH this AS this + MATCH (this)<-[:ACTED_IN]-(a:Person) RETURN a.name AS name + } + WITH name AS this0 + RETURN this0 AS var1 +} +CALL (this) { + CALL (this) { + WITH this AS this + MATCH (this)<-[:ACTED_IN]-(a:Person)-[:ACTED_IN]->(m:Movie) + WITH m + ORDER BY m.title DESC + RETURN distinct (m) as otherMovies + } + WITH otherMovies AS this2 + WITH this2 { .title } AS this2 + RETURN collect(this2) AS var3 +} +WITH * +ORDER BY var1 DESC +LIMIT $param0 +RETURN this { .title, oneActorName: var1, otherMoviesWhereActorsActedIn: var3 } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/createAndConnect.cypher b/packages/graphql/graphql-workload/queries/createAndConnect.cypher new file mode 100644 index 0000000000..76f8b59eda --- /dev/null +++ b/packages/graphql/graphql-workload/queries/createAndConnect.cypher @@ -0,0 +1,19 @@ +CYPHER 5 +CALL { + CREATE (this0:Movie) + SET + this0.id = $param0, + this0.title = $param1 + WITH * + CALL (this0) { + MATCH (this1:Person) + WHERE this1.name CONTAINS $param2 + CREATE (this0)<-[this2:ACTED_IN]-(this1) + } + RETURN this0 AS this +} +WITH this +CALL (this) { + RETURN this { .title } AS var3 +} +RETURN collect(var3) AS data \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/totalCount.cypher b/packages/graphql/graphql-workload/queries/totalCount.cypher new file mode 100644 index 0000000000..1ec01742db --- /dev/null +++ b/packages/graphql/graphql-workload/queries/totalCount.cypher @@ -0,0 +1,4 @@ +CYPHER 5 +MATCH (this0:Movie) +WITH count(this0) AS totalCount +RETURN { totalCount: totalCount } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/schema.txt b/packages/graphql/graphql-workload/schema.txt new file mode 100644 index 0000000000..e69de29bb2 diff --git a/packages/graphql/package.json b/packages/graphql/package.json index a12f57abae..8c03a88fa8 100644 --- a/packages/graphql/package.json +++ b/packages/graphql/package.json @@ -43,7 +43,7 @@ "test:unit": "jest src --coverage=true -c jest.minimal.config.js", "test": "jest", "knip": "knip", - "build-benchmark-workflow": "ts-node tests/performance/build-benchmark-workflow.ts" + "build-benchmark-workflow": "ts-node tests/performance/build-benchmark-workload.ts" }, "author": "Neo4j Inc.", "devDependencies": { diff --git a/packages/graphql/tests/performance/build-benchmark-workload.ts b/packages/graphql/tests/performance/build-benchmark-workload.ts index fd1eb11369..bcb1afe8d3 100644 --- a/packages/graphql/tests/performance/build-benchmark-workload.ts +++ b/packages/graphql/tests/performance/build-benchmark-workload.ts @@ -28,7 +28,6 @@ import { collectTests } from "./utils/collect-test-files"; async function main() { const neoSchema = new Neo4jGraphQL({ typeDefs, - experimental: true, }); const gqlTests: Performance.TestInfo[] = await collectTests(path.join(__dirname, "graphql")); await new WorkloadGenerator(neoSchema).generateWorkload(gqlTests); diff --git a/packages/graphql/tests/performance/utils/WorkloadGenerator.ts b/packages/graphql/tests/performance/utils/WorkloadGenerator.ts index 5d91578da4..d865b40adb 100644 --- a/packages/graphql/tests/performance/utils/WorkloadGenerator.ts +++ b/packages/graphql/tests/performance/utils/WorkloadGenerator.ts @@ -17,13 +17,12 @@ * limitations under the License. */ -import { Integer, Date, LocalTime, Duration, Time, DateTime } from "neo4j-driver"; -import type { Neo4jGraphQL } from "../../../src"; -import type * as Performance from "../types"; import * as fs from "fs/promises"; +import { Date, DateTime, Duration, Integer, LocalTime, Time } from "neo4j-driver"; import * as path from "path"; +import type { Neo4jGraphQL } from "../../../src"; import { translateQuery } from "../../tck/utils/tck-test-utils"; -import gql from "graphql-tag"; +import type * as Performance from "../types"; // Initial configuration, add available configuration options here type QueryConfig = { @@ -156,7 +155,7 @@ export class WorkloadGenerator { private async getCypherAndParams( test: Performance.TestInfo ): Promise<{ cypher: string; params: Record }> { - const cypherQuery = await translateQuery(this.schema, gql(test.query)); + const cypherQuery = await translateQuery(this.schema, test.query); return { cypher: cypherQuery.cypher, params: cypherQuery.params, From 74da2c201dcb00dffc85233481ad4525f21a5336 Mon Sep 17 00:00:00 2001 From: MacondoExpress Date: Wed, 14 Jan 2026 09:50:14 +0000 Subject: [PATCH 8/8] remove graphql-workload generated folder --- packages/graphql/graphql-workload/config.json | 331 ------------------ .../graphql/graphql-workload/dataset.json | 4 - ...ggregationWhereWithinNestedConnections.txt | 2 - ...regationWhereWithinNestedRelationships.txt | 2 - .../params/AggregationWithWhere.txt | 2 - .../graphql-workload/params/BatchCreate.txt | 2 - .../params/ConnectionWithSort.txt | 2 - .../params/DeeplyNestedConnectionWhere.txt | 2 - .../DeeplyNestedWithRelationshipFilters.txt | 2 - .../graphql-workload/params/Fulltext.txt | 2 - .../params/FulltextWithNestedQuery.txt | 2 - .../graphql-workload/params/Nested.txt | 2 - .../params/NestedConnectionWhere.txt | 2 - .../params/NestedDeleteInUpdate.txt | 2 - .../params/NestedRelationshipFilter.txt | 2 - .../graphql-workload/params/NestedUpdate.txt | 2 - .../NestedWithRelationshipSingleFilters.txt | 2 - .../params/OrFilterOnRelationships.txt | 2 - .../OrFilterOnRelationshipsAndNested.txt | 2 - .../graphql-workload/params/QueryWhere.txt | 2 - .../params/QueryWithNestedIn.txt | 2 - .../params/SimpleMutation.txt | 2 - .../params/SimpleQueryWithNestedWhere.txt | 2 - .../params/SortMultipleTypes.txt | 2 - .../SortMultipleTypesWithCypherWithCypher.txt | 2 - .../TopLevelConnectionSortWithCypher.txt | 2 - ...evelConnectionSortWithCypherWithNested.txt | 2 - ...LevelConnectionSortWithExpensiveCypher.txt | 2 - .../params/TopLevelSortWithCypher.txt | 2 - .../TopLevelSortWithCypherWithNested.txt | 2 - .../TopLevelSortWithExpensiveCypher.txt | 2 - .../params/createAndConnect.txt | 2 - ...egationWhereWithinNestedConnections.cypher | 31 -- ...ationWhereWithinNestedRelationships.cypher | 31 -- .../queries/AggregationWithWhere.cypher | 10 - .../queries/BatchCreate.cypher | 10 - .../queries/Connection.cypher | 13 - .../queries/ConnectionWithSort.cypher | 22 -- .../DeeplyNestedConnectionWhere.cypher | 13 - ...DeeplyNestedWithRelationshipFilters.cypher | 19 - .../graphql-workload/queries/Fulltext.cypher | 11 - .../queries/FulltextWithNestedQuery.cypher | 17 - .../queries/InterfacesAggregations.cypher | 29 -- ...InterfacesAggregationsWithTwoFields.cypher | 40 --- .../graphql-workload/queries/Nested.cypher | 22 -- .../queries/NestedAggregation.cypher | 13 - .../queries/NestedConnection.cypher | 23 -- .../queries/NestedConnectionWhere.cypher | 10 - .../queries/NestedDeleteInUpdate.cypher | 15 - .../queries/NestedRelationshipFilter.cypher | 10 - .../queries/NestedUnion.cypher | 33 -- .../NestedUnionWithMissingFields.cypher | 33 -- .../queries/NestedUpdate.cypher | 14 - ...NestedWithRelationshipSingleFilters.cypher | 4 - .../queries/OrFilterOnRelationships.cypher | 28 -- .../OrFilterOnRelationshipsAndNested.cypher | 37 -- .../queries/QueryWhere.cypher | 7 - .../queries/QueryWithNestedIn.cypher | 13 - .../queries/SimpleDelete.cypher | 3 - .../queries/SimpleMutation.cypher | 10 - .../queries/SimpleQuery.cypher | 3 - .../queries/SimpleQueryWithNestedWhere.cypher | 13 - .../SimpleQueryWithRelationship.cypher | 9 - .../queries/SimpleUnionQuery.cypher | 18 - .../SimpleUnionQueryWithMissingFields.cypher | 18 - .../queries/SortDeeplyNestedFields.cypher | 17 - .../queries/SortMultipleTypes.cypher | 26 -- ...rtMultipleTypesWithCypherWithCypher.cypher | 34 -- .../queries/SortOnNestedFields.cypher | 10 - ...TopLevelAggregateWithMultipleFields.cypher | 18 - .../TopLevelConnectionSortWithCypher.cypher | 20 -- ...lConnectionSortWithCypherWithNested.cypher | 30 -- ...elConnectionSortWithExpensiveCypher.cypher | 32 -- .../queries/TopLevelMutationDirective.cypher | 8 - .../queries/TopLevelSortWithCypher.cypher | 14 - .../TopLevelSortWithCypherWithNested.cypher | 20 -- .../TopLevelSortWithExpensiveCypher.cypher | 26 -- .../queries/createAndConnect.cypher | 19 - .../queries/totalCount.cypher | 4 - packages/graphql/graphql-workload/schema.txt | 0 80 files changed, 1255 deletions(-) delete mode 100644 packages/graphql/graphql-workload/config.json delete mode 100644 packages/graphql/graphql-workload/dataset.json delete mode 100644 packages/graphql/graphql-workload/params/AggregationWhereWithinNestedConnections.txt delete mode 100644 packages/graphql/graphql-workload/params/AggregationWhereWithinNestedRelationships.txt delete mode 100644 packages/graphql/graphql-workload/params/AggregationWithWhere.txt delete mode 100644 packages/graphql/graphql-workload/params/BatchCreate.txt delete mode 100644 packages/graphql/graphql-workload/params/ConnectionWithSort.txt delete mode 100644 packages/graphql/graphql-workload/params/DeeplyNestedConnectionWhere.txt delete mode 100644 packages/graphql/graphql-workload/params/DeeplyNestedWithRelationshipFilters.txt delete mode 100644 packages/graphql/graphql-workload/params/Fulltext.txt delete mode 100644 packages/graphql/graphql-workload/params/FulltextWithNestedQuery.txt delete mode 100644 packages/graphql/graphql-workload/params/Nested.txt delete mode 100644 packages/graphql/graphql-workload/params/NestedConnectionWhere.txt delete mode 100644 packages/graphql/graphql-workload/params/NestedDeleteInUpdate.txt delete mode 100644 packages/graphql/graphql-workload/params/NestedRelationshipFilter.txt delete mode 100644 packages/graphql/graphql-workload/params/NestedUpdate.txt delete mode 100644 packages/graphql/graphql-workload/params/NestedWithRelationshipSingleFilters.txt delete mode 100644 packages/graphql/graphql-workload/params/OrFilterOnRelationships.txt delete mode 100644 packages/graphql/graphql-workload/params/OrFilterOnRelationshipsAndNested.txt delete mode 100644 packages/graphql/graphql-workload/params/QueryWhere.txt delete mode 100644 packages/graphql/graphql-workload/params/QueryWithNestedIn.txt delete mode 100644 packages/graphql/graphql-workload/params/SimpleMutation.txt delete mode 100644 packages/graphql/graphql-workload/params/SimpleQueryWithNestedWhere.txt delete mode 100644 packages/graphql/graphql-workload/params/SortMultipleTypes.txt delete mode 100644 packages/graphql/graphql-workload/params/SortMultipleTypesWithCypherWithCypher.txt delete mode 100644 packages/graphql/graphql-workload/params/TopLevelConnectionSortWithCypher.txt delete mode 100644 packages/graphql/graphql-workload/params/TopLevelConnectionSortWithCypherWithNested.txt delete mode 100644 packages/graphql/graphql-workload/params/TopLevelConnectionSortWithExpensiveCypher.txt delete mode 100644 packages/graphql/graphql-workload/params/TopLevelSortWithCypher.txt delete mode 100644 packages/graphql/graphql-workload/params/TopLevelSortWithCypherWithNested.txt delete mode 100644 packages/graphql/graphql-workload/params/TopLevelSortWithExpensiveCypher.txt delete mode 100644 packages/graphql/graphql-workload/params/createAndConnect.txt delete mode 100644 packages/graphql/graphql-workload/queries/AggregationWhereWithinNestedConnections.cypher delete mode 100644 packages/graphql/graphql-workload/queries/AggregationWhereWithinNestedRelationships.cypher delete mode 100644 packages/graphql/graphql-workload/queries/AggregationWithWhere.cypher delete mode 100644 packages/graphql/graphql-workload/queries/BatchCreate.cypher delete mode 100644 packages/graphql/graphql-workload/queries/Connection.cypher delete mode 100644 packages/graphql/graphql-workload/queries/ConnectionWithSort.cypher delete mode 100644 packages/graphql/graphql-workload/queries/DeeplyNestedConnectionWhere.cypher delete mode 100644 packages/graphql/graphql-workload/queries/DeeplyNestedWithRelationshipFilters.cypher delete mode 100644 packages/graphql/graphql-workload/queries/Fulltext.cypher delete mode 100644 packages/graphql/graphql-workload/queries/FulltextWithNestedQuery.cypher delete mode 100644 packages/graphql/graphql-workload/queries/InterfacesAggregations.cypher delete mode 100644 packages/graphql/graphql-workload/queries/InterfacesAggregationsWithTwoFields.cypher delete mode 100644 packages/graphql/graphql-workload/queries/Nested.cypher delete mode 100644 packages/graphql/graphql-workload/queries/NestedAggregation.cypher delete mode 100644 packages/graphql/graphql-workload/queries/NestedConnection.cypher delete mode 100644 packages/graphql/graphql-workload/queries/NestedConnectionWhere.cypher delete mode 100644 packages/graphql/graphql-workload/queries/NestedDeleteInUpdate.cypher delete mode 100644 packages/graphql/graphql-workload/queries/NestedRelationshipFilter.cypher delete mode 100644 packages/graphql/graphql-workload/queries/NestedUnion.cypher delete mode 100644 packages/graphql/graphql-workload/queries/NestedUnionWithMissingFields.cypher delete mode 100644 packages/graphql/graphql-workload/queries/NestedUpdate.cypher delete mode 100644 packages/graphql/graphql-workload/queries/NestedWithRelationshipSingleFilters.cypher delete mode 100644 packages/graphql/graphql-workload/queries/OrFilterOnRelationships.cypher delete mode 100644 packages/graphql/graphql-workload/queries/OrFilterOnRelationshipsAndNested.cypher delete mode 100644 packages/graphql/graphql-workload/queries/QueryWhere.cypher delete mode 100644 packages/graphql/graphql-workload/queries/QueryWithNestedIn.cypher delete mode 100644 packages/graphql/graphql-workload/queries/SimpleDelete.cypher delete mode 100644 packages/graphql/graphql-workload/queries/SimpleMutation.cypher delete mode 100644 packages/graphql/graphql-workload/queries/SimpleQuery.cypher delete mode 100644 packages/graphql/graphql-workload/queries/SimpleQueryWithNestedWhere.cypher delete mode 100644 packages/graphql/graphql-workload/queries/SimpleQueryWithRelationship.cypher delete mode 100644 packages/graphql/graphql-workload/queries/SimpleUnionQuery.cypher delete mode 100644 packages/graphql/graphql-workload/queries/SimpleUnionQueryWithMissingFields.cypher delete mode 100644 packages/graphql/graphql-workload/queries/SortDeeplyNestedFields.cypher delete mode 100644 packages/graphql/graphql-workload/queries/SortMultipleTypes.cypher delete mode 100644 packages/graphql/graphql-workload/queries/SortMultipleTypesWithCypherWithCypher.cypher delete mode 100644 packages/graphql/graphql-workload/queries/SortOnNestedFields.cypher delete mode 100644 packages/graphql/graphql-workload/queries/TopLevelAggregateWithMultipleFields.cypher delete mode 100644 packages/graphql/graphql-workload/queries/TopLevelConnectionSortWithCypher.cypher delete mode 100644 packages/graphql/graphql-workload/queries/TopLevelConnectionSortWithCypherWithNested.cypher delete mode 100644 packages/graphql/graphql-workload/queries/TopLevelConnectionSortWithExpensiveCypher.cypher delete mode 100644 packages/graphql/graphql-workload/queries/TopLevelMutationDirective.cypher delete mode 100644 packages/graphql/graphql-workload/queries/TopLevelSortWithCypher.cypher delete mode 100644 packages/graphql/graphql-workload/queries/TopLevelSortWithCypherWithNested.cypher delete mode 100644 packages/graphql/graphql-workload/queries/TopLevelSortWithExpensiveCypher.cypher delete mode 100644 packages/graphql/graphql-workload/queries/createAndConnect.cypher delete mode 100644 packages/graphql/graphql-workload/queries/totalCount.cypher delete mode 100644 packages/graphql/graphql-workload/schema.txt diff --git a/packages/graphql/graphql-workload/config.json b/packages/graphql/graphql-workload/config.json deleted file mode 100644 index 7a37381b6d..0000000000 --- a/packages/graphql/graphql-workload/config.json +++ /dev/null @@ -1,331 +0,0 @@ -{ - "name": "graphql-workload", - "dataset": "dataset.json", - "queries": [ - { - "name": "TopLevelAggregateWithMultipleFields", - "description": "TopLevelAggregateWithMultipleFields", - "queryFile": "queries/TopLevelAggregateWithMultipleFields.cypher" - }, - { - "name": "NestedAggregation", - "description": "NestedAggregation", - "queryFile": "queries/NestedAggregation.cypher" - }, - { - "name": "AggregationWithWhere", - "description": "AggregationWithWhere", - "queryFile": "queries/AggregationWithWhere.cypher", - "parameters": { - "file": "params/AggregationWithWhere.txt" - } - }, - { - "name": "AggregationWhereWithinNestedRelationships", - "description": "AggregationWhereWithinNestedRelationships", - "queryFile": "queries/AggregationWhereWithinNestedRelationships.cypher", - "parameters": { - "file": "params/AggregationWhereWithinNestedRelationships.txt" - } - }, - { - "name": "AggregationWhereWithinNestedConnections", - "description": "AggregationWhereWithinNestedConnections", - "queryFile": "queries/AggregationWhereWithinNestedConnections.cypher", - "parameters": { - "file": "params/AggregationWhereWithinNestedConnections.txt" - } - }, - { - "name": "InterfacesAggregations", - "description": "InterfacesAggregations", - "queryFile": "queries/InterfacesAggregations.cypher" - }, - { - "name": "InterfacesAggregationsWithTwoFields", - "description": "InterfacesAggregationsWithTwoFields", - "queryFile": "queries/InterfacesAggregationsWithTwoFields.cypher" - }, - { - "name": "Connection", - "description": "Connection", - "queryFile": "queries/Connection.cypher" - }, - { - "name": "NestedConnection", - "description": "NestedConnection", - "queryFile": "queries/NestedConnection.cypher" - }, - { - "name": "totalCount", - "description": "totalCount", - "queryFile": "queries/totalCount.cypher" - }, - { - "name": "TopLevelMutationDirective", - "description": "TopLevelMutationDirective", - "queryFile": "queries/TopLevelMutationDirective.cypher" - }, - { - "name": "TopLevelSortWithCypher", - "description": "TopLevelSortWithCypher", - "queryFile": "queries/TopLevelSortWithCypher.cypher", - "parameters": { - "file": "params/TopLevelSortWithCypher.txt" - } - }, - { - "name": "TopLevelConnectionSortWithCypher", - "description": "TopLevelConnectionSortWithCypher", - "queryFile": "queries/TopLevelConnectionSortWithCypher.cypher", - "parameters": { - "file": "params/TopLevelConnectionSortWithCypher.txt" - } - }, - { - "name": "TopLevelSortWithCypherWithNested", - "description": "TopLevelSortWithCypherWithNested", - "queryFile": "queries/TopLevelSortWithCypherWithNested.cypher", - "parameters": { - "file": "params/TopLevelSortWithCypherWithNested.txt" - } - }, - { - "name": "TopLevelConnectionSortWithCypherWithNested", - "description": "TopLevelConnectionSortWithCypherWithNested", - "queryFile": "queries/TopLevelConnectionSortWithCypherWithNested.cypher", - "parameters": { - "file": "params/TopLevelConnectionSortWithCypherWithNested.txt" - } - }, - { - "name": "TopLevelSortWithExpensiveCypher", - "description": "TopLevelSortWithExpensiveCypher", - "queryFile": "queries/TopLevelSortWithExpensiveCypher.cypher", - "parameters": { - "file": "params/TopLevelSortWithExpensiveCypher.txt" - } - }, - { - "name": "TopLevelConnectionSortWithExpensiveCypher", - "description": "TopLevelConnectionSortWithExpensiveCypher", - "queryFile": "queries/TopLevelConnectionSortWithExpensiveCypher.cypher", - "parameters": { - "file": "params/TopLevelConnectionSortWithExpensiveCypher.txt" - } - }, - { - "name": "Fulltext", - "description": "Fulltext", - "queryFile": "queries/Fulltext.cypher", - "parameters": { - "file": "params/Fulltext.txt" - } - }, - { - "name": "FulltextWithNestedQuery", - "description": "FulltextWithNestedQuery", - "queryFile": "queries/FulltextWithNestedQuery.cypher", - "parameters": { - "file": "params/FulltextWithNestedQuery.txt" - } - }, - { - "name": "NestedConnectionWhere", - "description": "NestedConnectionWhere", - "queryFile": "queries/NestedConnectionWhere.cypher", - "parameters": { - "file": "params/NestedConnectionWhere.txt" - } - }, - { - "name": "QueryWhere", - "description": "QueryWhere", - "queryFile": "queries/QueryWhere.cypher", - "parameters": { - "file": "params/QueryWhere.txt" - } - }, - { - "name": "NestedRelationshipFilter", - "description": "NestedRelationshipFilter", - "queryFile": "queries/NestedRelationshipFilter.cypher", - "parameters": { - "file": "params/NestedRelationshipFilter.txt" - } - }, - { - "name": "BatchCreate", - "description": "BatchCreate", - "queryFile": "queries/BatchCreate.cypher", - "parameters": { - "file": "params/BatchCreate.txt" - } - }, - { - "name": "createAndConnect", - "description": "createAndConnect", - "queryFile": "queries/createAndConnect.cypher", - "parameters": { - "file": "params/createAndConnect.txt" - } - }, - { - "name": "SimpleMutation", - "description": "SimpleMutation", - "queryFile": "queries/SimpleMutation.cypher", - "parameters": { - "file": "params/SimpleMutation.txt" - } - }, - { - "name": "SimpleDelete", - "description": "SimpleDelete", - "queryFile": "queries/SimpleDelete.cypher" - }, - { - "name": "NestedDeleteInUpdate", - "description": "NestedDeleteInUpdate", - "queryFile": "queries/NestedDeleteInUpdate.cypher", - "parameters": { - "file": "params/NestedDeleteInUpdate.txt" - } - }, - { - "name": "NestedUpdate", - "description": "NestedUpdate", - "queryFile": "queries/NestedUpdate.cypher", - "parameters": { - "file": "params/NestedUpdate.txt" - } - }, - { - "name": "SimpleQuery", - "description": "SimpleQuery", - "queryFile": "queries/SimpleQuery.cypher" - }, - { - "name": "SimpleQueryWithRelationship", - "description": "SimpleQueryWithRelationship", - "queryFile": "queries/SimpleQueryWithRelationship.cypher" - }, - { - "name": "SimpleQueryWithNestedWhere", - "description": "SimpleQueryWithNestedWhere", - "queryFile": "queries/SimpleQueryWithNestedWhere.cypher", - "parameters": { - "file": "params/SimpleQueryWithNestedWhere.txt" - } - }, - { - "name": "Nested", - "description": "Nested", - "queryFile": "queries/Nested.cypher", - "parameters": { - "file": "params/Nested.txt" - } - }, - { - "name": "OrFilterOnRelationships", - "description": "OrFilterOnRelationships", - "queryFile": "queries/OrFilterOnRelationships.cypher", - "parameters": { - "file": "params/OrFilterOnRelationships.txt" - } - }, - { - "name": "OrFilterOnRelationshipsAndNested", - "description": "OrFilterOnRelationshipsAndNested", - "queryFile": "queries/OrFilterOnRelationshipsAndNested.cypher", - "parameters": { - "file": "params/OrFilterOnRelationshipsAndNested.txt" - } - }, - { - "name": "QueryWithNestedIn", - "description": "QueryWithNestedIn", - "queryFile": "queries/QueryWithNestedIn.cypher", - "parameters": { - "file": "params/QueryWithNestedIn.txt" - } - }, - { - "name": "DeeplyNestedConnectionWhere", - "description": "DeeplyNestedConnectionWhere", - "queryFile": "queries/DeeplyNestedConnectionWhere.cypher", - "parameters": { - "file": "params/DeeplyNestedConnectionWhere.txt" - } - }, - { - "name": "DeeplyNestedWithRelationshipFilters", - "description": "DeeplyNestedWithRelationshipFilters", - "queryFile": "queries/DeeplyNestedWithRelationshipFilters.cypher", - "parameters": { - "file": "params/DeeplyNestedWithRelationshipFilters.txt" - } - }, - { - "name": "NestedWithRelationshipSingleFilters", - "description": "NestedWithRelationshipSingleFilters", - "queryFile": "queries/NestedWithRelationshipSingleFilters.cypher", - "parameters": { - "file": "params/NestedWithRelationshipSingleFilters.txt" - } - }, - { - "name": "SortMultipleTypes", - "description": "SortMultipleTypes", - "queryFile": "queries/SortMultipleTypes.cypher", - "parameters": { - "file": "params/SortMultipleTypes.txt" - } - }, - { - "name": "SortMultipleTypesWithCypherWithCypher", - "description": "SortMultipleTypesWithCypherWithCypher", - "queryFile": "queries/SortMultipleTypesWithCypherWithCypher.cypher", - "parameters": { - "file": "params/SortMultipleTypesWithCypherWithCypher.txt" - } - }, - { - "name": "SortOnNestedFields", - "description": "SortOnNestedFields", - "queryFile": "queries/SortOnNestedFields.cypher" - }, - { - "name": "SortDeeplyNestedFields", - "description": "SortDeeplyNestedFields", - "queryFile": "queries/SortDeeplyNestedFields.cypher" - }, - { - "name": "ConnectionWithSort", - "description": "ConnectionWithSort", - "queryFile": "queries/ConnectionWithSort.cypher", - "parameters": { - "file": "params/ConnectionWithSort.txt" - } - }, - { - "name": "SimpleUnionQuery", - "description": "SimpleUnionQuery", - "queryFile": "queries/SimpleUnionQuery.cypher" - }, - { - "name": "SimpleUnionQueryWithMissingFields", - "description": "SimpleUnionQueryWithMissingFields", - "queryFile": "queries/SimpleUnionQueryWithMissingFields.cypher" - }, - { - "name": "NestedUnion", - "description": "NestedUnion", - "queryFile": "queries/NestedUnion.cypher" - }, - { - "name": "NestedUnionWithMissingFields", - "description": "NestedUnionWithMissingFields", - "queryFile": "queries/NestedUnionWithMissingFields.cypher" - } - ] -} \ No newline at end of file diff --git a/packages/graphql/graphql-workload/dataset.json b/packages/graphql/graphql-workload/dataset.json deleted file mode 100644 index 528cb72e14..0000000000 --- a/packages/graphql/graphql-workload/dataset.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "name": "graphql-benchmark-dataset", - "format": "aligned" -} \ No newline at end of file diff --git a/packages/graphql/graphql-workload/params/AggregationWhereWithinNestedConnections.txt b/packages/graphql/graphql-workload/params/AggregationWhereWithinNestedConnections.txt deleted file mode 100644 index cbeaa1c497..0000000000 --- a/packages/graphql/graphql-workload/params/AggregationWhereWithinNestedConnections.txt +++ /dev/null @@ -1,2 +0,0 @@ -param0:Integer|param1:Integer -1|1 \ No newline at end of file diff --git a/packages/graphql/graphql-workload/params/AggregationWhereWithinNestedRelationships.txt b/packages/graphql/graphql-workload/params/AggregationWhereWithinNestedRelationships.txt deleted file mode 100644 index cbeaa1c497..0000000000 --- a/packages/graphql/graphql-workload/params/AggregationWhereWithinNestedRelationships.txt +++ /dev/null @@ -1,2 +0,0 @@ -param0:Integer|param1:Integer -1|1 \ No newline at end of file diff --git a/packages/graphql/graphql-workload/params/AggregationWithWhere.txt b/packages/graphql/graphql-workload/params/AggregationWithWhere.txt deleted file mode 100644 index 375609240d..0000000000 --- a/packages/graphql/graphql-workload/params/AggregationWithWhere.txt +++ /dev/null @@ -1,2 +0,0 @@ -param0:Integer -2 \ No newline at end of file diff --git a/packages/graphql/graphql-workload/params/BatchCreate.txt b/packages/graphql/graphql-workload/params/BatchCreate.txt deleted file mode 100644 index 322124fa7b..0000000000 --- a/packages/graphql/graphql-workload/params/BatchCreate.txt +++ /dev/null @@ -1,2 +0,0 @@ -create_param0:Map[] -[{id:0, title:The Matrix 0}, {id:1, title:The Matrix 1}, {id:2, title:The Matrix 2}, {id:3, title:The Matrix 3}, {id:4, title:The Matrix 4}, {id:5, title:The Matrix 5}, {id:6, title:The Matrix 6}, {id:7, title:The Matrix 7}, {id:8, title:The Matrix 8}, {id:9, title:The Matrix 9}, {id:10, title:The Matrix 10}, {id:11, title:The Matrix 11}, {id:12, title:The Matrix 12}, {id:13, title:The Matrix 13}, {id:14, title:The Matrix 14}, {id:15, title:The Matrix 15}, {id:16, title:The Matrix 16}, {id:17, title:The Matrix 17}, {id:18, title:The Matrix 18}, {id:19, title:The Matrix 19}, {id:20, title:The Matrix 20}, {id:21, title:The Matrix 21}, {id:22, title:The Matrix 22}, {id:23, title:The Matrix 23}, {id:24, title:The Matrix 24}, {id:25, title:The Matrix 25}, {id:26, title:The Matrix 26}, {id:27, title:The Matrix 27}, {id:28, title:The Matrix 28}, {id:29, title:The Matrix 29}, {id:30, title:The Matrix 30}, {id:31, title:The Matrix 31}, {id:32, title:The Matrix 32}, {id:33, title:The Matrix 33}, {id:34, title:The Matrix 34}, {id:35, title:The Matrix 35}, {id:36, title:The Matrix 36}, {id:37, title:The Matrix 37}, {id:38, title:The Matrix 38}, {id:39, title:The Matrix 39}, {id:40, title:The Matrix 40}, {id:41, title:The Matrix 41}, {id:42, title:The Matrix 42}, {id:43, title:The Matrix 43}, {id:44, title:The Matrix 44}, {id:45, title:The Matrix 45}, {id:46, title:The Matrix 46}, {id:47, title:The Matrix 47}, {id:48, title:The Matrix 48}, {id:49, title:The Matrix 49}, {id:50, title:The Matrix 50}, {id:51, title:The Matrix 51}, {id:52, title:The Matrix 52}, {id:53, title:The Matrix 53}, {id:54, title:The Matrix 54}, {id:55, title:The Matrix 55}, {id:56, title:The Matrix 56}, {id:57, title:The Matrix 57}, {id:58, title:The Matrix 58}, {id:59, title:The Matrix 59}, {id:60, title:The Matrix 60}, {id:61, title:The Matrix 61}, {id:62, title:The Matrix 62}, {id:63, title:The Matrix 63}, {id:64, title:The Matrix 64}, {id:65, title:The Matrix 65}, {id:66, title:The Matrix 66}, {id:67, title:The Matrix 67}, {id:68, title:The Matrix 68}, {id:69, title:The Matrix 69}, {id:70, title:The Matrix 70}, {id:71, title:The Matrix 71}, {id:72, title:The Matrix 72}, {id:73, title:The Matrix 73}, {id:74, title:The Matrix 74}, {id:75, title:The Matrix 75}, {id:76, title:The Matrix 76}, {id:77, title:The Matrix 77}, {id:78, title:The Matrix 78}, {id:79, title:The Matrix 79}, {id:80, title:The Matrix 80}, {id:81, title:The Matrix 81}, {id:82, title:The Matrix 82}, {id:83, title:The Matrix 83}, {id:84, title:The Matrix 84}, {id:85, title:The Matrix 85}, {id:86, title:The Matrix 86}, {id:87, title:The Matrix 87}, {id:88, title:The Matrix 88}, {id:89, title:The Matrix 89}, {id:90, title:The Matrix 90}, {id:91, title:The Matrix 91}, {id:92, title:The Matrix 92}, {id:93, title:The Matrix 93}, {id:94, title:The Matrix 94}, {id:95, title:The Matrix 95}, {id:96, title:The Matrix 96}, {id:97, title:The Matrix 97}, {id:98, title:The Matrix 98}, {id:99, title:The Matrix 99}, {id:100, title:The Matrix 100}, {id:101, title:The Matrix 101}, {id:102, title:The Matrix 102}, {id:103, title:The Matrix 103}, {id:104, title:The Matrix 104}, {id:105, title:The Matrix 105}, {id:106, title:The Matrix 106}, {id:107, title:The Matrix 107}, {id:108, title:The Matrix 108}, {id:109, title:The Matrix 109}, {id:110, title:The Matrix 110}, {id:111, title:The Matrix 111}, {id:112, title:The Matrix 112}, {id:113, title:The Matrix 113}, {id:114, title:The Matrix 114}, {id:115, title:The Matrix 115}, {id:116, title:The Matrix 116}, {id:117, title:The Matrix 117}, {id:118, title:The Matrix 118}, {id:119, title:The Matrix 119}, {id:120, title:The Matrix 120}, {id:121, title:The Matrix 121}, {id:122, title:The Matrix 122}, {id:123, title:The Matrix 123}, {id:124, title:The Matrix 124}, {id:125, title:The Matrix 125}, {id:126, title:The Matrix 126}, {id:127, title:The Matrix 127}, {id:128, title:The Matrix 128}, {id:129, title:The Matrix 129}, {id:130, title:The Matrix 130}, {id:131, title:The Matrix 131}, {id:132, title:The Matrix 132}, {id:133, title:The Matrix 133}, {id:134, title:The Matrix 134}, {id:135, title:The Matrix 135}, {id:136, title:The Matrix 136}, {id:137, title:The Matrix 137}, {id:138, title:The Matrix 138}, {id:139, title:The Matrix 139}, {id:140, title:The Matrix 140}, {id:141, title:The Matrix 141}, {id:142, title:The Matrix 142}, {id:143, title:The Matrix 143}, {id:144, title:The Matrix 144}, {id:145, title:The Matrix 145}, {id:146, title:The Matrix 146}, {id:147, title:The Matrix 147}, {id:148, title:The Matrix 148}, {id:149, title:The Matrix 149}, {id:150, title:The Matrix 150}, {id:151, title:The Matrix 151}, {id:152, title:The Matrix 152}, {id:153, title:The Matrix 153}, {id:154, title:The Matrix 154}, {id:155, title:The Matrix 155}, {id:156, title:The Matrix 156}, {id:157, title:The Matrix 157}, {id:158, title:The Matrix 158}, {id:159, title:The Matrix 159}, {id:160, title:The Matrix 160}, {id:161, title:The Matrix 161}, {id:162, title:The Matrix 162}, {id:163, title:The Matrix 163}, {id:164, title:The Matrix 164}, {id:165, title:The Matrix 165}, {id:166, title:The Matrix 166}, {id:167, title:The Matrix 167}, {id:168, title:The Matrix 168}, {id:169, title:The Matrix 169}, {id:170, title:The Matrix 170}, {id:171, title:The Matrix 171}, {id:172, title:The Matrix 172}, {id:173, title:The Matrix 173}, {id:174, title:The Matrix 174}, {id:175, title:The Matrix 175}, {id:176, title:The Matrix 176}, {id:177, title:The Matrix 177}, {id:178, title:The Matrix 178}, {id:179, title:The Matrix 179}, {id:180, title:The Matrix 180}, {id:181, title:The Matrix 181}, {id:182, title:The Matrix 182}, {id:183, title:The Matrix 183}, {id:184, title:The Matrix 184}, {id:185, title:The Matrix 185}, {id:186, title:The Matrix 186}, {id:187, title:The Matrix 187}, {id:188, title:The Matrix 188}, {id:189, title:The Matrix 189}, {id:190, title:The Matrix 190}, {id:191, title:The Matrix 191}, {id:192, title:The Matrix 192}, {id:193, title:The Matrix 193}, {id:194, title:The Matrix 194}, {id:195, title:The Matrix 195}, {id:196, title:The Matrix 196}, {id:197, title:The Matrix 197}, {id:198, title:The Matrix 198}, {id:199, title:The Matrix 199}, {id:200, title:The Matrix 200}, {id:201, title:The Matrix 201}, {id:202, title:The Matrix 202}, {id:203, title:The Matrix 203}, {id:204, title:The Matrix 204}, {id:205, title:The Matrix 205}, {id:206, title:The Matrix 206}, {id:207, title:The Matrix 207}, {id:208, title:The Matrix 208}, {id:209, title:The Matrix 209}, {id:210, title:The Matrix 210}, {id:211, title:The Matrix 211}, {id:212, title:The Matrix 212}, {id:213, title:The Matrix 213}, {id:214, title:The Matrix 214}, {id:215, title:The Matrix 215}, {id:216, title:The Matrix 216}, {id:217, title:The Matrix 217}, {id:218, title:The Matrix 218}, {id:219, title:The Matrix 219}, {id:220, title:The Matrix 220}, {id:221, title:The Matrix 221}, {id:222, title:The Matrix 222}, {id:223, title:The Matrix 223}, {id:224, title:The Matrix 224}, {id:225, title:The Matrix 225}, {id:226, title:The Matrix 226}, {id:227, title:The Matrix 227}, {id:228, title:The Matrix 228}, {id:229, title:The Matrix 229}, {id:230, title:The Matrix 230}, {id:231, title:The Matrix 231}, {id:232, title:The Matrix 232}, {id:233, title:The Matrix 233}, {id:234, title:The Matrix 234}, {id:235, title:The Matrix 235}, {id:236, title:The Matrix 236}, {id:237, title:The Matrix 237}, {id:238, title:The Matrix 238}, {id:239, title:The Matrix 239}, {id:240, title:The Matrix 240}, {id:241, title:The Matrix 241}, {id:242, title:The Matrix 242}, {id:243, title:The Matrix 243}, {id:244, title:The Matrix 244}, {id:245, title:The Matrix 245}, {id:246, title:The Matrix 246}, {id:247, title:The Matrix 247}, {id:248, title:The Matrix 248}, {id:249, title:The Matrix 249}, {id:250, title:The Matrix 250}, {id:251, title:The Matrix 251}, {id:252, title:The Matrix 252}, {id:253, title:The Matrix 253}, {id:254, title:The Matrix 254}, {id:255, title:The Matrix 255}, {id:256, title:The Matrix 256}, {id:257, title:The Matrix 257}, {id:258, title:The Matrix 258}, {id:259, title:The Matrix 259}, {id:260, title:The Matrix 260}, {id:261, title:The Matrix 261}, {id:262, title:The Matrix 262}, {id:263, title:The Matrix 263}, {id:264, title:The Matrix 264}, {id:265, title:The Matrix 265}, {id:266, title:The Matrix 266}, {id:267, title:The Matrix 267}, {id:268, title:The Matrix 268}, {id:269, title:The Matrix 269}, {id:270, title:The Matrix 270}, {id:271, title:The Matrix 271}, {id:272, title:The Matrix 272}, {id:273, title:The Matrix 273}, {id:274, title:The Matrix 274}, {id:275, title:The Matrix 275}, {id:276, title:The Matrix 276}, {id:277, title:The Matrix 277}, {id:278, title:The Matrix 278}, {id:279, title:The Matrix 279}, {id:280, title:The Matrix 280}, {id:281, title:The Matrix 281}, {id:282, title:The Matrix 282}, {id:283, title:The Matrix 283}, {id:284, title:The Matrix 284}, {id:285, title:The Matrix 285}, {id:286, title:The Matrix 286}, {id:287, title:The Matrix 287}, {id:288, title:The Matrix 288}, {id:289, title:The Matrix 289}, {id:290, title:The Matrix 290}, {id:291, title:The Matrix 291}, {id:292, title:The Matrix 292}, {id:293, title:The Matrix 293}, {id:294, title:The Matrix 294}, {id:295, title:The Matrix 295}, {id:296, title:The Matrix 296}, {id:297, title:The Matrix 297}, {id:298, title:The Matrix 298}, {id:299, title:The Matrix 299}, {id:300, title:The Matrix 300}, {id:301, title:The Matrix 301}, {id:302, title:The Matrix 302}, {id:303, title:The Matrix 303}, {id:304, title:The Matrix 304}, {id:305, title:The Matrix 305}, {id:306, title:The Matrix 306}, {id:307, title:The Matrix 307}, {id:308, title:The Matrix 308}, {id:309, title:The Matrix 309}, {id:310, title:The Matrix 310}, {id:311, title:The Matrix 311}, {id:312, title:The Matrix 312}, {id:313, title:The Matrix 313}, {id:314, title:The Matrix 314}, {id:315, title:The Matrix 315}, {id:316, title:The Matrix 316}, {id:317, title:The Matrix 317}, {id:318, title:The Matrix 318}, {id:319, title:The Matrix 319}, {id:320, title:The Matrix 320}, {id:321, title:The Matrix 321}, {id:322, title:The Matrix 322}, {id:323, title:The Matrix 323}, {id:324, title:The Matrix 324}, {id:325, title:The Matrix 325}, {id:326, title:The Matrix 326}, {id:327, title:The Matrix 327}, {id:328, title:The Matrix 328}, {id:329, title:The Matrix 329}, {id:330, title:The Matrix 330}, {id:331, title:The Matrix 331}, {id:332, title:The Matrix 332}, {id:333, title:The Matrix 333}, {id:334, title:The Matrix 334}, {id:335, title:The Matrix 335}, {id:336, title:The Matrix 336}, {id:337, title:The Matrix 337}, {id:338, title:The Matrix 338}, {id:339, title:The Matrix 339}, {id:340, title:The Matrix 340}, {id:341, title:The Matrix 341}, {id:342, title:The Matrix 342}, {id:343, title:The Matrix 343}, {id:344, title:The Matrix 344}, {id:345, title:The Matrix 345}, {id:346, title:The Matrix 346}, {id:347, title:The Matrix 347}, {id:348, title:The Matrix 348}, {id:349, title:The Matrix 349}, {id:350, title:The Matrix 350}, {id:351, title:The Matrix 351}, {id:352, title:The Matrix 352}, {id:353, title:The Matrix 353}, {id:354, title:The Matrix 354}, {id:355, title:The Matrix 355}, {id:356, title:The Matrix 356}, {id:357, title:The Matrix 357}, {id:358, title:The Matrix 358}, {id:359, title:The Matrix 359}, {id:360, title:The Matrix 360}, {id:361, title:The Matrix 361}, {id:362, title:The Matrix 362}, {id:363, title:The Matrix 363}, {id:364, title:The Matrix 364}, {id:365, title:The Matrix 365}, {id:366, title:The Matrix 366}, {id:367, title:The Matrix 367}, {id:368, title:The Matrix 368}, {id:369, title:The Matrix 369}, {id:370, title:The Matrix 370}, {id:371, title:The Matrix 371}, {id:372, title:The Matrix 372}, {id:373, title:The Matrix 373}, {id:374, title:The Matrix 374}, {id:375, title:The Matrix 375}, {id:376, title:The Matrix 376}, {id:377, title:The Matrix 377}, {id:378, title:The Matrix 378}, {id:379, title:The Matrix 379}, {id:380, title:The Matrix 380}, {id:381, title:The Matrix 381}, {id:382, title:The Matrix 382}, {id:383, title:The Matrix 383}, {id:384, title:The Matrix 384}, {id:385, title:The Matrix 385}, {id:386, title:The Matrix 386}, {id:387, title:The Matrix 387}, {id:388, title:The Matrix 388}, {id:389, title:The Matrix 389}, {id:390, title:The Matrix 390}, {id:391, title:The Matrix 391}, {id:392, title:The Matrix 392}, {id:393, title:The Matrix 393}, {id:394, title:The Matrix 394}, {id:395, title:The Matrix 395}, {id:396, title:The Matrix 396}, {id:397, title:The Matrix 397}, {id:398, title:The Matrix 398}, {id:399, title:The Matrix 399}, {id:400, title:The Matrix 400}, {id:401, title:The Matrix 401}, {id:402, title:The Matrix 402}, {id:403, title:The Matrix 403}, {id:404, title:The Matrix 404}, {id:405, title:The Matrix 405}, {id:406, title:The Matrix 406}, {id:407, title:The Matrix 407}, {id:408, title:The Matrix 408}, {id:409, title:The Matrix 409}, {id:410, title:The Matrix 410}, {id:411, title:The Matrix 411}, {id:412, title:The Matrix 412}, {id:413, title:The Matrix 413}, {id:414, title:The Matrix 414}, {id:415, title:The Matrix 415}, {id:416, title:The Matrix 416}, {id:417, title:The Matrix 417}, {id:418, title:The Matrix 418}, {id:419, title:The Matrix 419}, {id:420, title:The Matrix 420}, {id:421, title:The Matrix 421}, {id:422, title:The Matrix 422}, {id:423, title:The Matrix 423}, {id:424, title:The Matrix 424}, {id:425, title:The Matrix 425}, {id:426, title:The Matrix 426}, {id:427, title:The Matrix 427}, {id:428, title:The Matrix 428}, {id:429, title:The Matrix 429}, {id:430, title:The Matrix 430}, {id:431, title:The Matrix 431}, {id:432, title:The Matrix 432}, {id:433, title:The Matrix 433}, {id:434, title:The Matrix 434}, {id:435, title:The Matrix 435}, {id:436, title:The Matrix 436}, {id:437, title:The Matrix 437}, {id:438, title:The Matrix 438}, {id:439, title:The Matrix 439}, {id:440, title:The Matrix 440}, {id:441, title:The Matrix 441}, {id:442, title:The Matrix 442}, {id:443, title:The Matrix 443}, {id:444, title:The Matrix 444}, {id:445, title:The Matrix 445}, {id:446, title:The Matrix 446}, {id:447, title:The Matrix 447}, {id:448, title:The Matrix 448}, {id:449, title:The Matrix 449}, {id:450, title:The Matrix 450}, {id:451, title:The Matrix 451}, {id:452, title:The Matrix 452}, {id:453, title:The Matrix 453}, {id:454, title:The Matrix 454}, {id:455, title:The Matrix 455}, {id:456, title:The Matrix 456}, {id:457, title:The Matrix 457}, {id:458, title:The Matrix 458}, {id:459, title:The Matrix 459}, {id:460, title:The Matrix 460}, {id:461, title:The Matrix 461}, {id:462, title:The Matrix 462}, {id:463, title:The Matrix 463}, {id:464, title:The Matrix 464}, {id:465, title:The Matrix 465}, {id:466, title:The Matrix 466}, {id:467, title:The Matrix 467}, {id:468, title:The Matrix 468}, {id:469, title:The Matrix 469}, {id:470, title:The Matrix 470}, {id:471, title:The Matrix 471}, {id:472, title:The Matrix 472}, {id:473, title:The Matrix 473}, {id:474, title:The Matrix 474}, {id:475, title:The Matrix 475}, {id:476, title:The Matrix 476}, {id:477, title:The Matrix 477}, {id:478, title:The Matrix 478}, {id:479, title:The Matrix 479}, {id:480, title:The Matrix 480}, {id:481, title:The Matrix 481}, {id:482, title:The Matrix 482}, {id:483, title:The Matrix 483}, {id:484, title:The Matrix 484}, {id:485, title:The Matrix 485}, {id:486, title:The Matrix 486}, {id:487, title:The Matrix 487}, {id:488, title:The Matrix 488}, {id:489, title:The Matrix 489}, {id:490, title:The Matrix 490}, {id:491, title:The Matrix 491}, {id:492, title:The Matrix 492}, {id:493, title:The Matrix 493}, {id:494, title:The Matrix 494}, {id:495, title:The Matrix 495}, {id:496, title:The Matrix 496}, {id:497, title:The Matrix 497}, {id:498, title:The Matrix 498}, {id:499, title:The Matrix 499}, {id:500, title:The Matrix 500}, {id:501, title:The Matrix 501}, {id:502, title:The Matrix 502}, {id:503, title:The Matrix 503}, {id:504, title:The Matrix 504}, {id:505, title:The Matrix 505}, {id:506, title:The Matrix 506}, {id:507, title:The Matrix 507}, {id:508, title:The Matrix 508}, {id:509, title:The Matrix 509}, {id:510, title:The Matrix 510}, {id:511, title:The Matrix 511}, {id:512, title:The Matrix 512}, {id:513, title:The Matrix 513}, {id:514, title:The Matrix 514}, {id:515, title:The Matrix 515}, {id:516, title:The Matrix 516}, {id:517, title:The Matrix 517}, {id:518, title:The Matrix 518}, {id:519, title:The Matrix 519}, {id:520, title:The Matrix 520}, {id:521, title:The Matrix 521}, {id:522, title:The Matrix 522}, {id:523, title:The Matrix 523}, {id:524, title:The Matrix 524}, {id:525, title:The Matrix 525}, {id:526, title:The Matrix 526}, {id:527, title:The Matrix 527}, {id:528, title:The Matrix 528}, {id:529, title:The Matrix 529}, {id:530, title:The Matrix 530}, {id:531, title:The Matrix 531}, {id:532, title:The Matrix 532}, {id:533, title:The Matrix 533}, {id:534, title:The Matrix 534}, {id:535, title:The Matrix 535}, {id:536, title:The Matrix 536}, {id:537, title:The Matrix 537}, {id:538, title:The Matrix 538}, {id:539, title:The Matrix 539}, {id:540, title:The Matrix 540}, {id:541, title:The Matrix 541}, {id:542, title:The Matrix 542}, {id:543, title:The Matrix 543}, {id:544, title:The Matrix 544}, {id:545, title:The Matrix 545}, {id:546, title:The Matrix 546}, {id:547, title:The Matrix 547}, {id:548, title:The Matrix 548}, {id:549, title:The Matrix 549}, {id:550, title:The Matrix 550}, {id:551, title:The Matrix 551}, {id:552, title:The Matrix 552}, {id:553, title:The Matrix 553}, {id:554, title:The Matrix 554}, {id:555, title:The Matrix 555}, {id:556, title:The Matrix 556}, {id:557, title:The Matrix 557}, {id:558, title:The Matrix 558}, {id:559, title:The Matrix 559}, {id:560, title:The Matrix 560}, {id:561, title:The Matrix 561}, {id:562, title:The Matrix 562}, {id:563, title:The Matrix 563}, {id:564, title:The Matrix 564}, {id:565, title:The Matrix 565}, {id:566, title:The Matrix 566}, {id:567, title:The Matrix 567}, {id:568, title:The Matrix 568}, {id:569, title:The Matrix 569}, {id:570, title:The Matrix 570}, {id:571, title:The Matrix 571}, {id:572, title:The Matrix 572}, {id:573, title:The Matrix 573}, {id:574, title:The Matrix 574}, {id:575, title:The Matrix 575}, {id:576, title:The Matrix 576}, {id:577, title:The Matrix 577}, {id:578, title:The Matrix 578}, {id:579, title:The Matrix 579}, {id:580, title:The Matrix 580}, {id:581, title:The Matrix 581}, {id:582, title:The Matrix 582}, {id:583, title:The Matrix 583}, {id:584, title:The Matrix 584}, {id:585, title:The Matrix 585}, {id:586, title:The Matrix 586}, {id:587, title:The Matrix 587}, {id:588, title:The Matrix 588}, {id:589, title:The Matrix 589}, {id:590, title:The Matrix 590}, {id:591, title:The Matrix 591}, {id:592, title:The Matrix 592}, {id:593, title:The Matrix 593}, {id:594, title:The Matrix 594}, {id:595, title:The Matrix 595}, {id:596, title:The Matrix 596}, {id:597, title:The Matrix 597}, {id:598, title:The Matrix 598}, {id:599, title:The Matrix 599}] \ No newline at end of file diff --git a/packages/graphql/graphql-workload/params/ConnectionWithSort.txt b/packages/graphql/graphql-workload/params/ConnectionWithSort.txt deleted file mode 100644 index d6130d579d..0000000000 --- a/packages/graphql/graphql-workload/params/ConnectionWithSort.txt +++ /dev/null @@ -1,2 +0,0 @@ -param0:Integer -5 \ No newline at end of file diff --git a/packages/graphql/graphql-workload/params/DeeplyNestedConnectionWhere.txt b/packages/graphql/graphql-workload/params/DeeplyNestedConnectionWhere.txt deleted file mode 100644 index 9aa4da936b..0000000000 --- a/packages/graphql/graphql-workload/params/DeeplyNestedConnectionWhere.txt +++ /dev/null @@ -1,2 +0,0 @@ -param0:String|param1:String|param2:String -Hugo Weaving|The Matrix|Lana \ No newline at end of file diff --git a/packages/graphql/graphql-workload/params/DeeplyNestedWithRelationshipFilters.txt b/packages/graphql/graphql-workload/params/DeeplyNestedWithRelationshipFilters.txt deleted file mode 100644 index 0f4d797313..0000000000 --- a/packages/graphql/graphql-workload/params/DeeplyNestedWithRelationshipFilters.txt +++ /dev/null @@ -1,2 +0,0 @@ -param0:String|param1:String|param2:String|param3:String|param4:String|param5:String -T|i|i|non-existent|i|The Matrix \ No newline at end of file diff --git a/packages/graphql/graphql-workload/params/Fulltext.txt b/packages/graphql/graphql-workload/params/Fulltext.txt deleted file mode 100644 index 89afdf959c..0000000000 --- a/packages/graphql/graphql-workload/params/Fulltext.txt +++ /dev/null @@ -1,2 +0,0 @@ -param0:String|param1:String -the real world|Movie \ No newline at end of file diff --git a/packages/graphql/graphql-workload/params/FulltextWithNestedQuery.txt b/packages/graphql/graphql-workload/params/FulltextWithNestedQuery.txt deleted file mode 100644 index 89afdf959c..0000000000 --- a/packages/graphql/graphql-workload/params/FulltextWithNestedQuery.txt +++ /dev/null @@ -1,2 +0,0 @@ -param0:String|param1:String -the real world|Movie \ No newline at end of file diff --git a/packages/graphql/graphql-workload/params/Nested.txt b/packages/graphql/graphql-workload/params/Nested.txt deleted file mode 100644 index 8c01f814d0..0000000000 --- a/packages/graphql/graphql-workload/params/Nested.txt +++ /dev/null @@ -1,2 +0,0 @@ -param0:String|param1:String -The Matrix|The Replacements \ No newline at end of file diff --git a/packages/graphql/graphql-workload/params/NestedConnectionWhere.txt b/packages/graphql/graphql-workload/params/NestedConnectionWhere.txt deleted file mode 100644 index d9ffaddbf3..0000000000 --- a/packages/graphql/graphql-workload/params/NestedConnectionWhere.txt +++ /dev/null @@ -1,2 +0,0 @@ -param0:String|param1:String -Hugo Weaving|No \ No newline at end of file diff --git a/packages/graphql/graphql-workload/params/NestedDeleteInUpdate.txt b/packages/graphql/graphql-workload/params/NestedDeleteInUpdate.txt deleted file mode 100644 index fca897472e..0000000000 --- a/packages/graphql/graphql-workload/params/NestedDeleteInUpdate.txt +++ /dev/null @@ -1,2 +0,0 @@ -param0:String -Shark \ No newline at end of file diff --git a/packages/graphql/graphql-workload/params/NestedRelationshipFilter.txt b/packages/graphql/graphql-workload/params/NestedRelationshipFilter.txt deleted file mode 100644 index 1e06b79d4f..0000000000 --- a/packages/graphql/graphql-workload/params/NestedRelationshipFilter.txt +++ /dev/null @@ -1,2 +0,0 @@ -param0:String -The Matrix \ No newline at end of file diff --git a/packages/graphql/graphql-workload/params/NestedUpdate.txt b/packages/graphql/graphql-workload/params/NestedUpdate.txt deleted file mode 100644 index eb00ce0590..0000000000 --- a/packages/graphql/graphql-workload/params/NestedUpdate.txt +++ /dev/null @@ -1,2 +0,0 @@ -param0:String|param1:String|param2:String -Sharknado|Sharknado|Updated name \ No newline at end of file diff --git a/packages/graphql/graphql-workload/params/NestedWithRelationshipSingleFilters.txt b/packages/graphql/graphql-workload/params/NestedWithRelationshipSingleFilters.txt deleted file mode 100644 index 4c74b0f193..0000000000 --- a/packages/graphql/graphql-workload/params/NestedWithRelationshipSingleFilters.txt +++ /dev/null @@ -1,2 +0,0 @@ -param0:String|param1:String|param2:String -T|i|i \ No newline at end of file diff --git a/packages/graphql/graphql-workload/params/OrFilterOnRelationships.txt b/packages/graphql/graphql-workload/params/OrFilterOnRelationships.txt deleted file mode 100644 index 1f5392f934..0000000000 --- a/packages/graphql/graphql-workload/params/OrFilterOnRelationships.txt +++ /dev/null @@ -1,2 +0,0 @@ -param0:Integer|param1:Integer|param2:Integer|param3:Integer|param4:Integer|param5:Integer -1997|1998|1999|1956|1975|1976 \ No newline at end of file diff --git a/packages/graphql/graphql-workload/params/OrFilterOnRelationshipsAndNested.txt b/packages/graphql/graphql-workload/params/OrFilterOnRelationshipsAndNested.txt deleted file mode 100644 index 05ed9a924a..0000000000 --- a/packages/graphql/graphql-workload/params/OrFilterOnRelationshipsAndNested.txt +++ /dev/null @@ -1,2 +0,0 @@ -param0:Integer|param1:Integer|param2:Integer|param3:String|param4:String|param5:String -1997|1998|1956|Matrix|foo|bar \ No newline at end of file diff --git a/packages/graphql/graphql-workload/params/QueryWhere.txt b/packages/graphql/graphql-workload/params/QueryWhere.txt deleted file mode 100644 index 5347cd444e..0000000000 --- a/packages/graphql/graphql-workload/params/QueryWhere.txt +++ /dev/null @@ -1,2 +0,0 @@ -param0:String -Keanu Reeves \ No newline at end of file diff --git a/packages/graphql/graphql-workload/params/QueryWithNestedIn.txt b/packages/graphql/graphql-workload/params/QueryWithNestedIn.txt deleted file mode 100644 index 80b376f648..0000000000 --- a/packages/graphql/graphql-workload/params/QueryWithNestedIn.txt +++ /dev/null @@ -1,2 +0,0 @@ -param0:Integer[] -[1997, 1998, 1999, 1956, 1975, 1976] \ No newline at end of file diff --git a/packages/graphql/graphql-workload/params/SimpleMutation.txt b/packages/graphql/graphql-workload/params/SimpleMutation.txt deleted file mode 100644 index 2126a18458..0000000000 --- a/packages/graphql/graphql-workload/params/SimpleMutation.txt +++ /dev/null @@ -1,2 +0,0 @@ -create_param0:Map[] -[{id:1, title:The Matrix}] \ No newline at end of file diff --git a/packages/graphql/graphql-workload/params/SimpleQueryWithNestedWhere.txt b/packages/graphql/graphql-workload/params/SimpleQueryWithNestedWhere.txt deleted file mode 100644 index 5347cd444e..0000000000 --- a/packages/graphql/graphql-workload/params/SimpleQueryWithNestedWhere.txt +++ /dev/null @@ -1,2 +0,0 @@ -param0:String -Keanu Reeves \ No newline at end of file diff --git a/packages/graphql/graphql-workload/params/SortMultipleTypes.txt b/packages/graphql/graphql-workload/params/SortMultipleTypes.txt deleted file mode 100644 index 97739c5847..0000000000 --- a/packages/graphql/graphql-workload/params/SortMultipleTypes.txt +++ /dev/null @@ -1,2 +0,0 @@ -param0:Integer -10 \ No newline at end of file diff --git a/packages/graphql/graphql-workload/params/SortMultipleTypesWithCypherWithCypher.txt b/packages/graphql/graphql-workload/params/SortMultipleTypesWithCypherWithCypher.txt deleted file mode 100644 index 97739c5847..0000000000 --- a/packages/graphql/graphql-workload/params/SortMultipleTypesWithCypherWithCypher.txt +++ /dev/null @@ -1,2 +0,0 @@ -param0:Integer -10 \ No newline at end of file diff --git a/packages/graphql/graphql-workload/params/TopLevelConnectionSortWithCypher.txt b/packages/graphql/graphql-workload/params/TopLevelConnectionSortWithCypher.txt deleted file mode 100644 index d6130d579d..0000000000 --- a/packages/graphql/graphql-workload/params/TopLevelConnectionSortWithCypher.txt +++ /dev/null @@ -1,2 +0,0 @@ -param0:Integer -5 \ No newline at end of file diff --git a/packages/graphql/graphql-workload/params/TopLevelConnectionSortWithCypherWithNested.txt b/packages/graphql/graphql-workload/params/TopLevelConnectionSortWithCypherWithNested.txt deleted file mode 100644 index d6130d579d..0000000000 --- a/packages/graphql/graphql-workload/params/TopLevelConnectionSortWithCypherWithNested.txt +++ /dev/null @@ -1,2 +0,0 @@ -param0:Integer -5 \ No newline at end of file diff --git a/packages/graphql/graphql-workload/params/TopLevelConnectionSortWithExpensiveCypher.txt b/packages/graphql/graphql-workload/params/TopLevelConnectionSortWithExpensiveCypher.txt deleted file mode 100644 index d6130d579d..0000000000 --- a/packages/graphql/graphql-workload/params/TopLevelConnectionSortWithExpensiveCypher.txt +++ /dev/null @@ -1,2 +0,0 @@ -param0:Integer -5 \ No newline at end of file diff --git a/packages/graphql/graphql-workload/params/TopLevelSortWithCypher.txt b/packages/graphql/graphql-workload/params/TopLevelSortWithCypher.txt deleted file mode 100644 index d6130d579d..0000000000 --- a/packages/graphql/graphql-workload/params/TopLevelSortWithCypher.txt +++ /dev/null @@ -1,2 +0,0 @@ -param0:Integer -5 \ No newline at end of file diff --git a/packages/graphql/graphql-workload/params/TopLevelSortWithCypherWithNested.txt b/packages/graphql/graphql-workload/params/TopLevelSortWithCypherWithNested.txt deleted file mode 100644 index d6130d579d..0000000000 --- a/packages/graphql/graphql-workload/params/TopLevelSortWithCypherWithNested.txt +++ /dev/null @@ -1,2 +0,0 @@ -param0:Integer -5 \ No newline at end of file diff --git a/packages/graphql/graphql-workload/params/TopLevelSortWithExpensiveCypher.txt b/packages/graphql/graphql-workload/params/TopLevelSortWithExpensiveCypher.txt deleted file mode 100644 index d6130d579d..0000000000 --- a/packages/graphql/graphql-workload/params/TopLevelSortWithExpensiveCypher.txt +++ /dev/null @@ -1,2 +0,0 @@ -param0:Integer -5 \ No newline at end of file diff --git a/packages/graphql/graphql-workload/params/createAndConnect.txt b/packages/graphql/graphql-workload/params/createAndConnect.txt deleted file mode 100644 index f5a572063f..0000000000 --- a/packages/graphql/graphql-workload/params/createAndConnect.txt +++ /dev/null @@ -1,2 +0,0 @@ -param0:String|param1:String|param2:String -5|My Movie|Shark \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/AggregationWhereWithinNestedConnections.cypher b/packages/graphql/graphql-workload/queries/AggregationWhereWithinNestedConnections.cypher deleted file mode 100644 index 3c6d9984a2..0000000000 --- a/packages/graphql/graphql-workload/queries/AggregationWhereWithinNestedConnections.cypher +++ /dev/null @@ -1,31 +0,0 @@ -CYPHER 5 -MATCH (this:Person) -CALL (this) { - MATCH (this)-[this0:ACTED_IN]->(this1:Movie) - CALL (this1, this0) { - MATCH (this1)<-[this2:ACTED_IN]-(this3:Person) - CALL (this3) { - MATCH (this3)-[this4:ACTED_IN]->(this5:Movie) - RETURN count(this5) > $param0 AS var6 - } - WITH * - WHERE var6 = true - RETURN count(this3) > 0 AS var7 - } - CALL (this1, this0) { - MATCH (this1)<-[this2:ACTED_IN]-(this3:Person) - CALL (this3) { - MATCH (this3)-[this8:ACTED_IN]->(this9:Movie) - RETURN count(this9) > $param1 AS var10 - } - WITH * - WHERE NOT (var10 = true) - RETURN count(this3) > 0 AS var11 - } - WITH * - WHERE (var11 = false AND var7 = true) - RETURN count(this1) > 0 AS var12 -} -WITH * -WHERE var12 = true -RETURN this { .name } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/AggregationWhereWithinNestedRelationships.cypher b/packages/graphql/graphql-workload/queries/AggregationWhereWithinNestedRelationships.cypher deleted file mode 100644 index df696d2e50..0000000000 --- a/packages/graphql/graphql-workload/queries/AggregationWhereWithinNestedRelationships.cypher +++ /dev/null @@ -1,31 +0,0 @@ -CYPHER 5 -MATCH (this:Person) -CALL (this) { - MATCH (this)-[:ACTED_IN]->(this0:Movie) - CALL (this0) { - MATCH (this0)<-[:ACTED_IN]-(this1:Person) - CALL (this1) { - MATCH (this1)-[this2:ACTED_IN]->(this3:Movie) - RETURN count(this3) > $param0 AS var4 - } - WITH * - WHERE var4 = true - RETURN count(this1) > 0 AS var5 - } - CALL (this0) { - MATCH (this0)<-[:ACTED_IN]-(this1:Person) - CALL (this1) { - MATCH (this1)-[this6:ACTED_IN]->(this7:Movie) - RETURN count(this7) > $param1 AS var8 - } - WITH * - WHERE NOT (var8 = true) - RETURN count(this1) > 0 AS var9 - } - WITH * - WHERE (var9 = false AND var5 = true) - RETURN count(this0) > 0 AS var10 -} -WITH * -WHERE var10 = true -RETURN this { .name } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/AggregationWithWhere.cypher b/packages/graphql/graphql-workload/queries/AggregationWithWhere.cypher deleted file mode 100644 index 4d46cd8623..0000000000 --- a/packages/graphql/graphql-workload/queries/AggregationWithWhere.cypher +++ /dev/null @@ -1,10 +0,0 @@ -CYPHER 5 -MATCH (this:Person) -CALL (this) { - MATCH (this)-[this0:ACTED_IN]->(this1:Movie) - WITH DISTINCT this1 - RETURN count(this1) = $param0 AS var2 -} -WITH * -WHERE var2 = true -RETURN this { .name } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/BatchCreate.cypher b/packages/graphql/graphql-workload/queries/BatchCreate.cypher deleted file mode 100644 index 88cc48287a..0000000000 --- a/packages/graphql/graphql-workload/queries/BatchCreate.cypher +++ /dev/null @@ -1,10 +0,0 @@ -CYPHER 5 -UNWIND $create_param0 AS create_var0 -CALL (create_var0) { - CREATE (create_this1:Movie) - SET - create_this1.id = create_var0.id, - create_this1.title = create_var0.title - RETURN create_this1 -} -RETURN collect(create_this1 { .title }) AS data \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/Connection.cypher b/packages/graphql/graphql-workload/queries/Connection.cypher deleted file mode 100644 index d8e0052e0e..0000000000 --- a/packages/graphql/graphql-workload/queries/Connection.cypher +++ /dev/null @@ -1,13 +0,0 @@ -CYPHER 5 -MATCH (this:Movie) -CALL (this) { - MATCH (this)<-[this0:ACTED_IN]-(this1:Person) - WITH collect({ node: this1, relationship: this0 }) AS edges - CALL (edges) { - UNWIND edges AS edge - WITH edge.node AS this1, edge.relationship AS this0 - RETURN collect({ node: { name: this1.name, __resolveType: "Person" } }) AS var2 - } - RETURN { edges: var2 } AS var3 -} -RETURN this { actorsConnection: var3 } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/ConnectionWithSort.cypher b/packages/graphql/graphql-workload/queries/ConnectionWithSort.cypher deleted file mode 100644 index c25265e02b..0000000000 --- a/packages/graphql/graphql-workload/queries/ConnectionWithSort.cypher +++ /dev/null @@ -1,22 +0,0 @@ -CYPHER 5 -MATCH (this0:Movie) -WITH collect({ node: this0 }) AS edges -CALL (edges) { - UNWIND edges AS edge - WITH edge.node AS this0 - WITH * - ORDER BY this0.title ASC - LIMIT $param0 - CALL (this0) { - MATCH (this0)<-[this1:ACTED_IN]-(this2:Person) - WITH collect({ node: this2, relationship: this1 }) AS edges - CALL (edges) { - UNWIND edges AS edge - WITH edge.node AS this2, edge.relationship AS this1 - RETURN collect({ node: { name: this2.name, __resolveType: "Person" } }) AS var3 - } - RETURN { edges: var3 } AS var4 - } - RETURN collect({ node: { title: this0.title, actorsConnection: var4, __resolveType: "Movie" } }) AS var5 -} -RETURN { edges: var5 } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/DeeplyNestedConnectionWhere.cypher b/packages/graphql/graphql-workload/queries/DeeplyNestedConnectionWhere.cypher deleted file mode 100644 index 8a76e9d636..0000000000 --- a/packages/graphql/graphql-workload/queries/DeeplyNestedConnectionWhere.cypher +++ /dev/null @@ -1,13 +0,0 @@ -CYPHER 5 -MATCH (this:Movie) -WHERE EXISTS { - MATCH (this)<-[this0:ACTED_IN]-(this1:Person) - WHERE (this1.name = $param0 AND NOT (EXISTS { - MATCH (this1)-[this2:ACTED_IN]->(this3:Movie) - WHERE (this3.title = $param1 AND EXISTS { - MATCH (this3)<-[this4:DIRECTED]-(this5:Person) - WHERE this5.name CONTAINS $param2 - }) - })) -} -RETURN this { .title } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/DeeplyNestedWithRelationshipFilters.cypher b/packages/graphql/graphql-workload/queries/DeeplyNestedWithRelationshipFilters.cypher deleted file mode 100644 index c1b958864b..0000000000 --- a/packages/graphql/graphql-workload/queries/DeeplyNestedWithRelationshipFilters.cypher +++ /dev/null @@ -1,19 +0,0 @@ -CYPHER 5 -MATCH (this:Person) -WHERE (this.name STARTS WITH $param0 AND EXISTS { - MATCH (this)-[:ACTED_IN]->(this0:Movie) - WHERE (this0.title CONTAINS $param1 AND EXISTS { - MATCH (this0)<-[:ACTED_IN]-(this1:Person) - WHERE (this1.name CONTAINS $param2 AND EXISTS { - MATCH (this1)-[:ACTED_IN]->(this2:Movie) - WHERE (NOT (this2.title = $param3) AND EXISTS { - MATCH (this2)<-[:ACTED_IN]-(this3:Person) - WHERE (this3.name CONTAINS $param4 AND NOT (EXISTS { - MATCH (this3)-[:ACTED_IN]->(this4:Movie) - WHERE this4.title = $param5 - })) - }) - }) - }) -}) -RETURN this { .name } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/Fulltext.cypher b/packages/graphql/graphql-workload/queries/Fulltext.cypher deleted file mode 100644 index ca0d191cac..0000000000 --- a/packages/graphql/graphql-workload/queries/Fulltext.cypher +++ /dev/null @@ -1,11 +0,0 @@ -CYPHER 5 -CALL db.index.fulltext.queryNodes("MovieTaglineFulltextIndex", $param0) YIELD node AS this0, score AS var1 -WHERE $param1 IN labels(this0) -WITH collect({ node: this0, score: var1 }) AS edges -WITH edges, size(edges) AS totalCount -CALL (edges) { - UNWIND edges AS edge - WITH edge.node AS this0, edge.score AS var1 - RETURN collect({ node: { title: this0.title, tagline: this0.tagline, __resolveType: "Movie" }, score: var1 }) AS var2 -} -RETURN { edges: var2 } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/FulltextWithNestedQuery.cypher b/packages/graphql/graphql-workload/queries/FulltextWithNestedQuery.cypher deleted file mode 100644 index 0cb54d40cf..0000000000 --- a/packages/graphql/graphql-workload/queries/FulltextWithNestedQuery.cypher +++ /dev/null @@ -1,17 +0,0 @@ -CYPHER 5 -CALL db.index.fulltext.queryNodes("MovieTaglineFulltextIndex", $param0) YIELD node AS this0, score AS var1 -WHERE $param1 IN labels(this0) -WITH collect({ node: this0, score: var1 }) AS edges -WITH edges, size(edges) AS totalCount -CALL (edges) { - UNWIND edges AS edge - WITH edge.node AS this0, edge.score AS var1 - CALL (this0) { - MATCH (this0)<-[this2:ACTED_IN]-(this3:Person) - WITH DISTINCT this3 - WITH this3 { .name } AS this3 - RETURN collect(this3) AS var4 - } - RETURN collect({ node: { title: this0.title, tagline: this0.tagline, actors: var4, __resolveType: "Movie" }, score: var1 }) AS var5 -} -RETURN { edges: var5 } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/InterfacesAggregations.cypher b/packages/graphql/graphql-workload/queries/InterfacesAggregations.cypher deleted file mode 100644 index 0341deca54..0000000000 --- a/packages/graphql/graphql-workload/queries/InterfacesAggregations.cypher +++ /dev/null @@ -1,29 +0,0 @@ -CYPHER 5 -CALL () { - CALL () { - MATCH (this0:Movie) - WITH { node: { __resolveType: "Movie", __id: id(this0) } } AS edge - RETURN edge - UNION - MATCH (this1:MovieClone) - WITH { node: { __resolveType: "MovieClone", __id: id(this1) } } AS edge - RETURN edge - } - RETURN collect(edge) AS edges -} -CALL () { - CALL { - MATCH (this2:Movie) - RETURN this2 AS node - UNION - MATCH (this3:MovieClone) - RETURN this3 AS node - } - WITH DISTINCT node - ORDER BY size(node.title) DESC - WITH collect(node.title) AS list - RETURN { longest: head(list), shortest: last(list) } AS this4 -} -WITH edges, { node: { title: this4 } } AS var5 -WITH edges, size(edges) AS totalCount, var5 -RETURN { edges: edges, totalCount: totalCount, aggregate: var5 } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/InterfacesAggregationsWithTwoFields.cypher b/packages/graphql/graphql-workload/queries/InterfacesAggregationsWithTwoFields.cypher deleted file mode 100644 index 4164384350..0000000000 --- a/packages/graphql/graphql-workload/queries/InterfacesAggregationsWithTwoFields.cypher +++ /dev/null @@ -1,40 +0,0 @@ -CYPHER 5 -CALL () { - CALL () { - MATCH (this0:Movie) - WITH { node: { __resolveType: "Movie", __id: id(this0) } } AS edge - RETURN edge - UNION - MATCH (this1:MovieClone) - WITH { node: { __resolveType: "MovieClone", __id: id(this1) } } AS edge - RETURN edge - } - RETURN collect(edge) AS edges -} -CALL () { - CALL { - MATCH (this2:Movie) - RETURN this2 AS node - UNION - MATCH (this3:MovieClone) - RETURN this3 AS node - } - WITH DISTINCT node - ORDER BY size(node.title) DESC - WITH collect(node.title) AS list - RETURN { longest: head(list), shortest: last(list) } AS this4 -} -CALL () { - CALL { - MATCH (this5:Movie) - RETURN this5 AS node - UNION - MATCH (this6:MovieClone) - RETURN this6 AS node - } - WITH DISTINCT node - RETURN { min: min(node.released), max: max(node.released) } AS this7 -} -WITH edges, { node: { title: this4, released: this7 } } AS var8 -WITH edges, size(edges) AS totalCount, var8 -RETURN { edges: edges, totalCount: totalCount, aggregate: var8 } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/Nested.cypher b/packages/graphql/graphql-workload/queries/Nested.cypher deleted file mode 100644 index d66191244a..0000000000 --- a/packages/graphql/graphql-workload/queries/Nested.cypher +++ /dev/null @@ -1,22 +0,0 @@ -CYPHER 5 -MATCH (this:Movie) -WHERE (this.title = $param0 OR this.title = $param1) -CALL (this) { - MATCH (this)<-[this0:ACTED_IN]-(this1:Person) - WITH DISTINCT this1 - CALL (this1) { - MATCH (this1)-[this2:ACTED_IN]->(this3:Movie) - WITH DISTINCT this3 - CALL (this3) { - MATCH (this3)<-[this4:ACTED_IN]-(this5:Person) - WITH DISTINCT this5 - WITH this5 { .name } AS this5 - RETURN collect(this5) AS var6 - } - WITH this3 { .title, actors: var6 } AS this3 - RETURN collect(this3) AS var7 - } - WITH this1 { .name, movies: var7 } AS this1 - RETURN collect(this1) AS var8 -} -RETURN this { actors: var8 } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/NestedAggregation.cypher b/packages/graphql/graphql-workload/queries/NestedAggregation.cypher deleted file mode 100644 index 89535b4136..0000000000 --- a/packages/graphql/graphql-workload/queries/NestedAggregation.cypher +++ /dev/null @@ -1,13 +0,0 @@ -CYPHER 5 -MATCH (this:Person) -CALL (this) { - CALL (this) { - MATCH (this)-[this0:ACTED_IN]->(this1:Movie) - WITH DISTINCT this1 - ORDER BY size(this1.title) DESC - WITH collect(this1.title) AS list - RETURN { longest: head(list) } AS var2 - } - RETURN { aggregate: { node: { title: var2 } } } AS var3 -} -RETURN this { .name, moviesConnection: var3 } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/NestedConnection.cypher b/packages/graphql/graphql-workload/queries/NestedConnection.cypher deleted file mode 100644 index 809c6b4d39..0000000000 --- a/packages/graphql/graphql-workload/queries/NestedConnection.cypher +++ /dev/null @@ -1,23 +0,0 @@ -CYPHER 5 -MATCH (this:Movie) -CALL (this) { - MATCH (this)<-[this0:ACTED_IN]-(this1:Person) - WITH collect({ node: this1, relationship: this0 }) AS edges - CALL (edges) { - UNWIND edges AS edge - WITH edge.node AS this1, edge.relationship AS this0 - CALL (this1) { - MATCH (this1)-[this2:ACTED_IN]->(this3:Movie) - WITH collect({ node: this3, relationship: this2 }) AS edges - CALL (edges) { - UNWIND edges AS edge - WITH edge.node AS this3, edge.relationship AS this2 - RETURN collect({ node: { title: this3.title, __resolveType: "Movie" } }) AS var4 - } - RETURN { edges: var4 } AS var5 - } - RETURN collect({ node: { name: this1.name, moviesConnection: var5, __resolveType: "Person" } }) AS var6 - } - RETURN { edges: var6 } AS var7 -} -RETURN this { actorsConnection: var7 } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/NestedConnectionWhere.cypher b/packages/graphql/graphql-workload/queries/NestedConnectionWhere.cypher deleted file mode 100644 index e57a002c5b..0000000000 --- a/packages/graphql/graphql-workload/queries/NestedConnectionWhere.cypher +++ /dev/null @@ -1,10 +0,0 @@ -CYPHER 5 -MATCH (this:Movie) -WHERE EXISTS { - MATCH (this)<-[this0:ACTED_IN]-(this1:Person) - WHERE (this1.name = $param0 AND NOT (EXISTS { - MATCH (this1)-[this2:ACTED_IN]->(this3:Movie) - WHERE this3.title = $param1 - })) -} -RETURN this { .title } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/NestedDeleteInUpdate.cypher b/packages/graphql/graphql-workload/queries/NestedDeleteInUpdate.cypher deleted file mode 100644 index c13147b504..0000000000 --- a/packages/graphql/graphql-workload/queries/NestedDeleteInUpdate.cypher +++ /dev/null @@ -1,15 +0,0 @@ -CYPHER 5 -MATCH (this:Movie) -WITH * -WITH * -CALL (*) { - OPTIONAL MATCH (this)<-[this0:ACTED_IN]-(this1:Person) - WHERE this1.name CONTAINS $param0 - WITH this0, collect(DISTINCT this1) AS var2 - CALL (var2) { - UNWIND var2 AS var3 - DETACH DELETE var3 - } -} -WITH this -RETURN this { .title } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/NestedRelationshipFilter.cypher b/packages/graphql/graphql-workload/queries/NestedRelationshipFilter.cypher deleted file mode 100644 index 6f3415d683..0000000000 --- a/packages/graphql/graphql-workload/queries/NestedRelationshipFilter.cypher +++ /dev/null @@ -1,10 +0,0 @@ -CYPHER 5 -MATCH (this:Movie) -WHERE EXISTS { - MATCH (this)<-[:ACTED_IN]-(this0:Person) - WHERE EXISTS { - MATCH (this0)-[:ACTED_IN]->(this1:Movie) - WHERE this1.title = $param0 - } -} -RETURN this { .title } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/NestedUnion.cypher b/packages/graphql/graphql-workload/queries/NestedUnion.cypher deleted file mode 100644 index 1fa50da066..0000000000 --- a/packages/graphql/graphql-workload/queries/NestedUnion.cypher +++ /dev/null @@ -1,33 +0,0 @@ -CYPHER 5 -MATCH (this:Person) -CALL (this) { - CALL (*) { - WITH * - MATCH (this)-[this0:LIKES]->(this1:Person) - CALL (this1) { - CALL (*) { - WITH * - MATCH (this1)-[this2:LIKES]->(this3:Person) - WITH this3 { .name, __resolveType: "Person", __id: id(this3) } AS var4 - RETURN var4 - UNION - WITH * - MATCH (this1)-[this5:LIKES]->(this6:Movie) - WITH this6 { .title, __resolveType: "Movie", __id: id(this6) } AS var4 - RETURN var4 - } - WITH var4 - RETURN collect(var4) AS var4 - } - WITH this1 { .name, likes: var4, __resolveType: "Person", __id: id(this1) } AS var7 - RETURN var7 - UNION - WITH * - MATCH (this)-[this8:LIKES]->(this9:Movie) - WITH this9 { .title, __resolveType: "Movie", __id: id(this9) } AS var7 - RETURN var7 - } - WITH var7 - RETURN collect(var7) AS var7 -} -RETURN this { .name, likes: var7 } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/NestedUnionWithMissingFields.cypher b/packages/graphql/graphql-workload/queries/NestedUnionWithMissingFields.cypher deleted file mode 100644 index 4ff54a94f7..0000000000 --- a/packages/graphql/graphql-workload/queries/NestedUnionWithMissingFields.cypher +++ /dev/null @@ -1,33 +0,0 @@ -CYPHER 5 -MATCH (this:Person) -CALL (this) { - CALL (*) { - WITH * - MATCH (this)-[this0:LIKES]->(this1:Person) - CALL (this1) { - CALL (*) { - WITH * - MATCH (this1)-[this2:LIKES]->(this3:Person) - WITH this3 { .name, __resolveType: "Person", __id: id(this3) } AS var4 - RETURN var4 - UNION - WITH * - MATCH (this1)-[this5:LIKES]->(this6:Movie) - WITH this6 { .title, __resolveType: "Movie", __id: id(this6) } AS var4 - RETURN var4 - } - WITH var4 - RETURN collect(var4) AS var4 - } - WITH this1 { .name, likes: var4, __resolveType: "Person", __id: id(this1) } AS var7 - RETURN var7 - UNION - WITH * - MATCH (this)-[this8:LIKES]->(this9:Movie) - WITH this9 { __resolveType: "Movie", __id: id(this9) } AS var7 - RETURN var7 - } - WITH var7 - RETURN collect(var7) AS var7 -} -RETURN this { .name, likes: var7 } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/NestedUpdate.cypher b/packages/graphql/graphql-workload/queries/NestedUpdate.cypher deleted file mode 100644 index de206da067..0000000000 --- a/packages/graphql/graphql-workload/queries/NestedUpdate.cypher +++ /dev/null @@ -1,14 +0,0 @@ -CYPHER 5 -MATCH (this:Movie) -WITH * -WHERE this.title STARTS WITH $param0 -WITH * -CALL (*) { - MATCH (this)<-[this0:ACTED_IN]-(this1:Person) - WITH * - WHERE this1.name STARTS WITH $param1 - SET - this1.name = $param2 -} -WITH this -RETURN this { .title } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/NestedWithRelationshipSingleFilters.cypher b/packages/graphql/graphql-workload/queries/NestedWithRelationshipSingleFilters.cypher deleted file mode 100644 index 26f542dcdd..0000000000 --- a/packages/graphql/graphql-workload/queries/NestedWithRelationshipSingleFilters.cypher +++ /dev/null @@ -1,4 +0,0 @@ -CYPHER 5 -MATCH (this:Person) -WHERE (this.name STARTS WITH $param0 AND single(this0 IN [(this)-[:ACTED_IN]->(this0:Movie) WHERE (this0.title CONTAINS $param1 AND single(this1 IN [(this0)<-[:ACTED_IN]-(this1:Person) WHERE this1.name CONTAINS $param2 | 1] WHERE true)) | 1] WHERE true)) -RETURN this { .name } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/OrFilterOnRelationships.cypher b/packages/graphql/graphql-workload/queries/OrFilterOnRelationships.cypher deleted file mode 100644 index afa1971288..0000000000 --- a/packages/graphql/graphql-workload/queries/OrFilterOnRelationships.cypher +++ /dev/null @@ -1,28 +0,0 @@ -CYPHER 5 -MATCH (this:Movie) -WHERE (EXISTS { - MATCH (this)<-[:ACTED_IN]-(this0:Person) - WHERE this0.born = $param0 -} OR EXISTS { - MATCH (this)<-[:ACTED_IN]-(this1:Person) - WHERE this1.born = $param1 -} OR EXISTS { - MATCH (this)<-[:ACTED_IN]-(this2:Person) - WHERE this2.born = $param2 -} OR EXISTS { - MATCH (this)<-[:ACTED_IN]-(this3:Person) - WHERE this3.born = $param3 -} OR EXISTS { - MATCH (this)<-[:ACTED_IN]-(this4:Person) - WHERE this4.born = $param4 -} OR EXISTS { - MATCH (this)<-[:ACTED_IN]-(this5:Person) - WHERE this5.born = $param5 -}) -CALL (this) { - MATCH (this)<-[this6:ACTED_IN]-(this7:Person) - WITH DISTINCT this7 - WITH this7 { .name, .born } AS this7 - RETURN collect(this7) AS var8 -} -RETURN this { .title, actors: var8 } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/OrFilterOnRelationshipsAndNested.cypher b/packages/graphql/graphql-workload/queries/OrFilterOnRelationshipsAndNested.cypher deleted file mode 100644 index 66390ce52e..0000000000 --- a/packages/graphql/graphql-workload/queries/OrFilterOnRelationshipsAndNested.cypher +++ /dev/null @@ -1,37 +0,0 @@ -CYPHER 5 -MATCH (this:Movie) -WHERE (EXISTS { - MATCH (this)<-[:ACTED_IN]-(this0:Person) - WHERE this0.born = $param0 -} OR EXISTS { - MATCH (this)<-[:ACTED_IN]-(this1:Person) - WHERE this1.born = $param1 -} OR EXISTS { - MATCH (this)<-[:ACTED_IN]-(this2:Person) - WHERE this2.born = $param2 -} OR EXISTS { - MATCH (this)<-[:DIRECTED]-(this3:Person) - WHERE EXISTS { - MATCH (this3)-[:ACTED_IN]->(this4:Movie) - WHERE this4.title = $param3 - } -} OR EXISTS { - MATCH (this)<-[:DIRECTED]-(this5:Person) - WHERE EXISTS { - MATCH (this5)-[:ACTED_IN]->(this6:Movie) - WHERE this6.title = $param4 - } -} OR EXISTS { - MATCH (this)<-[:DIRECTED]-(this7:Person) - WHERE EXISTS { - MATCH (this7)-[:ACTED_IN]->(this8:Movie) - WHERE this8.title = $param5 - } -}) -CALL (this) { - MATCH (this)<-[this9:ACTED_IN]-(this10:Person) - WITH DISTINCT this10 - WITH this10 { .name, .born } AS this10 - RETURN collect(this10) AS var11 -} -RETURN this { .title, actors: var11 } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/QueryWhere.cypher b/packages/graphql/graphql-workload/queries/QueryWhere.cypher deleted file mode 100644 index ac32c59348..0000000000 --- a/packages/graphql/graphql-workload/queries/QueryWhere.cypher +++ /dev/null @@ -1,7 +0,0 @@ -CYPHER 5 -MATCH (this:Movie) -WHERE EXISTS { - MATCH (this)<-[:ACTED_IN]-(this0:Person) - WHERE this0.name = $param0 -} -RETURN this { .released } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/QueryWithNestedIn.cypher b/packages/graphql/graphql-workload/queries/QueryWithNestedIn.cypher deleted file mode 100644 index bdffd862c1..0000000000 --- a/packages/graphql/graphql-workload/queries/QueryWithNestedIn.cypher +++ /dev/null @@ -1,13 +0,0 @@ -CYPHER 5 -MATCH (this:Movie) -WHERE EXISTS { - MATCH (this)<-[:ACTED_IN]-(this0:Person) - WHERE this0.born IN $param0 -} -CALL (this) { - MATCH (this)<-[this1:ACTED_IN]-(this2:Person) - WITH DISTINCT this2 - WITH this2 { .name, .born } AS this2 - RETURN collect(this2) AS var3 -} -RETURN this { .title, actors: var3 } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/SimpleDelete.cypher b/packages/graphql/graphql-workload/queries/SimpleDelete.cypher deleted file mode 100644 index fba029469c..0000000000 --- a/packages/graphql/graphql-workload/queries/SimpleDelete.cypher +++ /dev/null @@ -1,3 +0,0 @@ -CYPHER 5 -MATCH (this:Movie) -DETACH DELETE this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/SimpleMutation.cypher b/packages/graphql/graphql-workload/queries/SimpleMutation.cypher deleted file mode 100644 index 88cc48287a..0000000000 --- a/packages/graphql/graphql-workload/queries/SimpleMutation.cypher +++ /dev/null @@ -1,10 +0,0 @@ -CYPHER 5 -UNWIND $create_param0 AS create_var0 -CALL (create_var0) { - CREATE (create_this1:Movie) - SET - create_this1.id = create_var0.id, - create_this1.title = create_var0.title - RETURN create_this1 -} -RETURN collect(create_this1 { .title }) AS data \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/SimpleQuery.cypher b/packages/graphql/graphql-workload/queries/SimpleQuery.cypher deleted file mode 100644 index c2c8f022dc..0000000000 --- a/packages/graphql/graphql-workload/queries/SimpleQuery.cypher +++ /dev/null @@ -1,3 +0,0 @@ -CYPHER 5 -MATCH (this:Movie) -RETURN this { .title } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/SimpleQueryWithNestedWhere.cypher b/packages/graphql/graphql-workload/queries/SimpleQueryWithNestedWhere.cypher deleted file mode 100644 index 86e1731683..0000000000 --- a/packages/graphql/graphql-workload/queries/SimpleQueryWithNestedWhere.cypher +++ /dev/null @@ -1,13 +0,0 @@ -CYPHER 5 -MATCH (this:Movie) -WHERE EXISTS { - MATCH (this)<-[:ACTED_IN]-(this0:Person) - WHERE this0.name = $param0 -} -CALL (this) { - MATCH (this)<-[this1:ACTED_IN]-(this2:Person) - WITH DISTINCT this2 - WITH this2 { .name } AS this2 - RETURN collect(this2) AS var3 -} -RETURN this { .title, actors: var3 } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/SimpleQueryWithRelationship.cypher b/packages/graphql/graphql-workload/queries/SimpleQueryWithRelationship.cypher deleted file mode 100644 index c962599565..0000000000 --- a/packages/graphql/graphql-workload/queries/SimpleQueryWithRelationship.cypher +++ /dev/null @@ -1,9 +0,0 @@ -CYPHER 5 -MATCH (this:Movie) -CALL (this) { - MATCH (this)<-[this0:ACTED_IN]-(this1:Person) - WITH DISTINCT this1 - WITH this1 { .name } AS this1 - RETURN collect(this1) AS var2 -} -RETURN this { .title, actors: var2 } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/SimpleUnionQuery.cypher b/packages/graphql/graphql-workload/queries/SimpleUnionQuery.cypher deleted file mode 100644 index 8d674909bb..0000000000 --- a/packages/graphql/graphql-workload/queries/SimpleUnionQuery.cypher +++ /dev/null @@ -1,18 +0,0 @@ -CYPHER 5 -MATCH (this:User) -CALL (this) { - CALL (*) { - WITH * - MATCH (this)-[this0:LIKES]->(this1:Person) - WITH this1 { .name, __resolveType: "Person", __id: id(this1) } AS var2 - RETURN var2 - UNION - WITH * - MATCH (this)-[this3:LIKES]->(this4:Movie) - WITH this4 { .title, __resolveType: "Movie", __id: id(this4) } AS var2 - RETURN var2 - } - WITH var2 - RETURN collect(var2) AS var2 -} -RETURN this { .name, likes: var2 } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/SimpleUnionQueryWithMissingFields.cypher b/packages/graphql/graphql-workload/queries/SimpleUnionQueryWithMissingFields.cypher deleted file mode 100644 index 0ff7a5c58c..0000000000 --- a/packages/graphql/graphql-workload/queries/SimpleUnionQueryWithMissingFields.cypher +++ /dev/null @@ -1,18 +0,0 @@ -CYPHER 5 -MATCH (this:User) -CALL (this) { - CALL (*) { - WITH * - MATCH (this)-[this0:LIKES]->(this1:Person) - WITH this1 { .name, __resolveType: "Person", __id: id(this1) } AS var2 - RETURN var2 - UNION - WITH * - MATCH (this)-[this3:LIKES]->(this4:Movie) - WITH this4 { __resolveType: "Movie", __id: id(this4) } AS var2 - RETURN var2 - } - WITH var2 - RETURN collect(var2) AS var2 -} -RETURN this { .name, likes: var2 } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/SortDeeplyNestedFields.cypher b/packages/graphql/graphql-workload/queries/SortDeeplyNestedFields.cypher deleted file mode 100644 index c3e8c2997d..0000000000 --- a/packages/graphql/graphql-workload/queries/SortDeeplyNestedFields.cypher +++ /dev/null @@ -1,17 +0,0 @@ -CYPHER 5 -MATCH (this:Movie) -CALL (this) { - MATCH (this)<-[this0:ACTED_IN]-(this1:Person) - WITH DISTINCT this1 - CALL (this1) { - MATCH (this1)-[this2:ACTED_IN]->(this3:Movie) - WITH DISTINCT this3 - WITH this3 { .released } AS this3 - ORDER BY this3.released DESC - RETURN collect(this3) AS var4 - } - WITH this1 { .name, movies: var4 } AS this1 - ORDER BY this1.name ASC - RETURN collect(this1) AS var5 -} -RETURN this { .title, actors: var5 } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/SortMultipleTypes.cypher b/packages/graphql/graphql-workload/queries/SortMultipleTypes.cypher deleted file mode 100644 index 0f934c4774..0000000000 --- a/packages/graphql/graphql-workload/queries/SortMultipleTypes.cypher +++ /dev/null @@ -1,26 +0,0 @@ -CYPHER 5 -MATCH (this:Movie) -WITH * -ORDER BY this.title ASC -LIMIT $param0 -CALL (this) { - MATCH (this)<-[this0:ACTED_IN]-(this1:Person) - WITH collect({ node: this1, relationship: this0 }) AS edges - CALL (edges) { - UNWIND edges AS edge - WITH edge.node AS this1, edge.relationship AS this0 - RETURN collect({ node: { name: this1.name, __resolveType: "Person" } }) AS var2 - } - RETURN { edges: var2 } AS var3 -} -CALL (this) { - MATCH (this)<-[this4:DIRECTED]-(this5:Person) - WITH collect({ node: this5, relationship: this4 }) AS edges - CALL (edges) { - UNWIND edges AS edge - WITH edge.node AS this5, edge.relationship AS this4 - RETURN collect({ node: { name: this5.name, __resolveType: "Person" } }) AS var6 - } - RETURN { edges: var6 } AS var7 -} -RETURN this { .title, actorsConnection: var3, directorsConnection: var7 } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/SortMultipleTypesWithCypherWithCypher.cypher b/packages/graphql/graphql-workload/queries/SortMultipleTypesWithCypherWithCypher.cypher deleted file mode 100644 index 42fca91ac1..0000000000 --- a/packages/graphql/graphql-workload/queries/SortMultipleTypesWithCypherWithCypher.cypher +++ /dev/null @@ -1,34 +0,0 @@ -CYPHER 5 -MATCH (this:Movie) -CALL (this) { - CALL (this) { - WITH this AS this - MATCH (this)<-[:ACTED_IN]-(a:Person) RETURN a.name AS name - } - WITH name AS this0 - RETURN this0 AS var1 -} -WITH * -ORDER BY var1 ASC -LIMIT $param0 -CALL (this) { - MATCH (this)<-[this2:ACTED_IN]-(this3:Person) - WITH collect({ node: this3, relationship: this2 }) AS edges - CALL (edges) { - UNWIND edges AS edge - WITH edge.node AS this3, edge.relationship AS this2 - RETURN collect({ node: { name: this3.name, __resolveType: "Person" } }) AS var4 - } - RETURN { edges: var4 } AS var5 -} -CALL (this) { - MATCH (this)<-[this6:DIRECTED]-(this7:Person) - WITH collect({ node: this7, relationship: this6 }) AS edges - CALL (edges) { - UNWIND edges AS edge - WITH edge.node AS this7, edge.relationship AS this6 - RETURN collect({ node: { name: this7.name, __resolveType: "Person" } }) AS var8 - } - RETURN { edges: var8 } AS var9 -} -RETURN this { .title, actorsConnection: var5, directorsConnection: var9, oneActorName: var1 } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/SortOnNestedFields.cypher b/packages/graphql/graphql-workload/queries/SortOnNestedFields.cypher deleted file mode 100644 index d870471931..0000000000 --- a/packages/graphql/graphql-workload/queries/SortOnNestedFields.cypher +++ /dev/null @@ -1,10 +0,0 @@ -CYPHER 5 -MATCH (this:Movie) -CALL (this) { - MATCH (this)<-[this0:ACTED_IN]-(this1:Person) - WITH DISTINCT this1 - WITH this1 { .name } AS this1 - ORDER BY this1.name ASC - RETURN collect(this1) AS var2 -} -RETURN this { actors: var2 } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/TopLevelAggregateWithMultipleFields.cypher b/packages/graphql/graphql-workload/queries/TopLevelAggregateWithMultipleFields.cypher deleted file mode 100644 index 37990e873f..0000000000 --- a/packages/graphql/graphql-workload/queries/TopLevelAggregateWithMultipleFields.cypher +++ /dev/null @@ -1,18 +0,0 @@ -CYPHER 5 -CALL { - MATCH (this:Person) - RETURN { nodes: count(DISTINCT this) } AS var0 -} -CALL { - MATCH (this:Person) - WITH DISTINCT this - ORDER BY size(this.name) DESC - WITH collect(this.name) AS list - RETURN { shortest: last(list) } AS var1 -} -CALL { - MATCH (this:Person) - WITH DISTINCT this - RETURN { max: max(this.born) } AS var2 -} -RETURN { aggregate: { count: var0, node: { name: var1, born: var2 } } } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/TopLevelConnectionSortWithCypher.cypher b/packages/graphql/graphql-workload/queries/TopLevelConnectionSortWithCypher.cypher deleted file mode 100644 index 9c4c06f306..0000000000 --- a/packages/graphql/graphql-workload/queries/TopLevelConnectionSortWithCypher.cypher +++ /dev/null @@ -1,20 +0,0 @@ -CYPHER 5 -MATCH (this0:Movie) -WITH collect({ node: this0 }) AS edges -CALL (edges) { - UNWIND edges AS edge - WITH edge.node AS this0 - CALL (this0) { - CALL (this0) { - WITH this0 AS this - MATCH (this)<-[:ACTED_IN]-(a:Person) RETURN a.name AS name - } - WITH name AS this1 - RETURN this1 AS var2 - } - WITH * - ORDER BY var2 DESC - LIMIT $param0 - RETURN collect({ node: { title: this0.title, oneActorName: var2, __resolveType: "Movie" } }) AS var3 -} -RETURN { edges: var3 } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/TopLevelConnectionSortWithCypherWithNested.cypher b/packages/graphql/graphql-workload/queries/TopLevelConnectionSortWithCypherWithNested.cypher deleted file mode 100644 index 7180ae5eb5..0000000000 --- a/packages/graphql/graphql-workload/queries/TopLevelConnectionSortWithCypherWithNested.cypher +++ /dev/null @@ -1,30 +0,0 @@ -CYPHER 5 -MATCH (this0:Movie) -WITH collect({ node: this0 }) AS edges -CALL (edges) { - UNWIND edges AS edge - WITH edge.node AS this0 - CALL (this0) { - CALL (this0) { - WITH this0 AS this - MATCH (this)<-[:ACTED_IN]-(a:Person) RETURN a.name AS name - } - WITH name AS this1 - RETURN this1 AS var2 - } - WITH * - ORDER BY var2 DESC - LIMIT $param0 - CALL (this0) { - MATCH (this0)<-[this3:ACTED_IN]-(this4:Person) - WITH collect({ node: this4, relationship: this3 }) AS edges - CALL (edges) { - UNWIND edges AS edge - WITH edge.node AS this4, edge.relationship AS this3 - RETURN collect({ node: { name: this4.name, __resolveType: "Person" } }) AS var5 - } - RETURN { edges: var5 } AS var6 - } - RETURN collect({ node: { title: this0.title, oneActorName: var2, actorsConnection: var6, __resolveType: "Movie" } }) AS var7 -} -RETURN { edges: var7 } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/TopLevelConnectionSortWithExpensiveCypher.cypher b/packages/graphql/graphql-workload/queries/TopLevelConnectionSortWithExpensiveCypher.cypher deleted file mode 100644 index bd935a2e93..0000000000 --- a/packages/graphql/graphql-workload/queries/TopLevelConnectionSortWithExpensiveCypher.cypher +++ /dev/null @@ -1,32 +0,0 @@ -CYPHER 5 -MATCH (this0:Movie) -WITH collect({ node: this0 }) AS edges -CALL (edges) { - UNWIND edges AS edge - WITH edge.node AS this0 - CALL (this0) { - CALL (this0) { - WITH this0 AS this - MATCH (this)<-[:ACTED_IN]-(a:Person) RETURN a.name AS name - } - WITH name AS this1 - RETURN this1 AS var2 - } - WITH * - ORDER BY var2 DESC - LIMIT $param0 - CALL (this0) { - CALL (this0) { - WITH this0 AS this - MATCH (this)<-[:ACTED_IN]-(a:Person)-[:ACTED_IN]->(m:Movie) - WITH m - ORDER BY m.title DESC - RETURN distinct (m) as otherMovies - } - WITH otherMovies AS this3 - WITH this3 { .title } AS this3 - RETURN collect(this3) AS var4 - } - RETURN collect({ node: { title: this0.title, oneActorName: var2, otherMoviesWhereActorsActedIn: var4, __resolveType: "Movie" } }) AS var5 -} -RETURN { edges: var5 } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/TopLevelMutationDirective.cypher b/packages/graphql/graphql-workload/queries/TopLevelMutationDirective.cypher deleted file mode 100644 index 1a6e3403a4..0000000000 --- a/packages/graphql/graphql-workload/queries/TopLevelMutationDirective.cypher +++ /dev/null @@ -1,8 +0,0 @@ -CYPHER 5 -CALL { - MATCH (user:Person { name_INCLUDES: "Wa" }) - RETURN user -} -WITH user AS this0 -WITH this0 { .name } AS this0 -RETURN this0 AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/TopLevelSortWithCypher.cypher b/packages/graphql/graphql-workload/queries/TopLevelSortWithCypher.cypher deleted file mode 100644 index 796036a98f..0000000000 --- a/packages/graphql/graphql-workload/queries/TopLevelSortWithCypher.cypher +++ /dev/null @@ -1,14 +0,0 @@ -CYPHER 5 -MATCH (this:Movie) -CALL (this) { - CALL (this) { - WITH this AS this - MATCH (this)<-[:ACTED_IN]-(a:Person) RETURN a.name AS name - } - WITH name AS this0 - RETURN this0 AS var1 -} -WITH * -ORDER BY var1 DESC -LIMIT $param0 -RETURN this { .title, oneActorName: var1 } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/TopLevelSortWithCypherWithNested.cypher b/packages/graphql/graphql-workload/queries/TopLevelSortWithCypherWithNested.cypher deleted file mode 100644 index 5ea6836b0b..0000000000 --- a/packages/graphql/graphql-workload/queries/TopLevelSortWithCypherWithNested.cypher +++ /dev/null @@ -1,20 +0,0 @@ -CYPHER 5 -MATCH (this:Movie) -CALL (this) { - CALL (this) { - WITH this AS this - MATCH (this)<-[:ACTED_IN]-(a:Person) RETURN a.name AS name - } - WITH name AS this0 - RETURN this0 AS var1 -} -WITH * -ORDER BY var1 DESC -LIMIT $param0 -CALL (this) { - MATCH (this)<-[this2:ACTED_IN]-(this3:Person) - WITH DISTINCT this3 - WITH this3 { .name } AS this3 - RETURN collect(this3) AS var4 -} -RETURN this { .title, oneActorName: var1, actors: var4 } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/TopLevelSortWithExpensiveCypher.cypher b/packages/graphql/graphql-workload/queries/TopLevelSortWithExpensiveCypher.cypher deleted file mode 100644 index c3fcb2f5cd..0000000000 --- a/packages/graphql/graphql-workload/queries/TopLevelSortWithExpensiveCypher.cypher +++ /dev/null @@ -1,26 +0,0 @@ -CYPHER 5 -MATCH (this:Movie) -CALL (this) { - CALL (this) { - WITH this AS this - MATCH (this)<-[:ACTED_IN]-(a:Person) RETURN a.name AS name - } - WITH name AS this0 - RETURN this0 AS var1 -} -CALL (this) { - CALL (this) { - WITH this AS this - MATCH (this)<-[:ACTED_IN]-(a:Person)-[:ACTED_IN]->(m:Movie) - WITH m - ORDER BY m.title DESC - RETURN distinct (m) as otherMovies - } - WITH otherMovies AS this2 - WITH this2 { .title } AS this2 - RETURN collect(this2) AS var3 -} -WITH * -ORDER BY var1 DESC -LIMIT $param0 -RETURN this { .title, oneActorName: var1, otherMoviesWhereActorsActedIn: var3 } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/createAndConnect.cypher b/packages/graphql/graphql-workload/queries/createAndConnect.cypher deleted file mode 100644 index 76f8b59eda..0000000000 --- a/packages/graphql/graphql-workload/queries/createAndConnect.cypher +++ /dev/null @@ -1,19 +0,0 @@ -CYPHER 5 -CALL { - CREATE (this0:Movie) - SET - this0.id = $param0, - this0.title = $param1 - WITH * - CALL (this0) { - MATCH (this1:Person) - WHERE this1.name CONTAINS $param2 - CREATE (this0)<-[this2:ACTED_IN]-(this1) - } - RETURN this0 AS this -} -WITH this -CALL (this) { - RETURN this { .title } AS var3 -} -RETURN collect(var3) AS data \ No newline at end of file diff --git a/packages/graphql/graphql-workload/queries/totalCount.cypher b/packages/graphql/graphql-workload/queries/totalCount.cypher deleted file mode 100644 index 1ec01742db..0000000000 --- a/packages/graphql/graphql-workload/queries/totalCount.cypher +++ /dev/null @@ -1,4 +0,0 @@ -CYPHER 5 -MATCH (this0:Movie) -WITH count(this0) AS totalCount -RETURN { totalCount: totalCount } AS this \ No newline at end of file diff --git a/packages/graphql/graphql-workload/schema.txt b/packages/graphql/graphql-workload/schema.txt deleted file mode 100644 index e69de29bb2..0000000000