Skip to content

Commit cd17cb0

Browse files
authored
Performance Testing : K6 script and Enhancement to Dataengine (#181)
1 parent af3b1cd commit cd17cb0

18 files changed

Lines changed: 1512 additions & 159 deletions

File tree

.gitignore

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,4 +42,9 @@ platforms/
4242
www/
4343
TestResults/
4444
$RECYCLE.BIN/
45-
.sonarqube/
45+
.sonarqube/
46+
47+
# K6 generated outputs (keep folder with .gitkeep)
48+
test/performance/script/results/*.csv
49+
test/performance/script/results/*.json
50+
test/performance/script/results/*.html

example/postgres/schema/01_core_asset_tables.sql.inc

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
-- Core Asset Tables
33
-- ============================================================
44

5-
CREATE TABLE "Asset" (
5+
CREATE TABLE IF NOT EXISTS "Asset" (
66
"Id" INT GENERATED ALWAYS AS IDENTITY PRIMARY KEY,
77
"ProductId" VARCHAR(50),
88
"IdShort" VARCHAR(100),
@@ -48,10 +48,12 @@ CREATE TABLE "Asset" (
4848
"ExplanatoryStatement" TEXT
4949
);
5050

51-
CREATE TABLE "SpecificAssetIds" (
51+
CREATE TABLE IF NOT EXISTS "SpecificAssetIds" (
5252
"Id" INT GENERATED ALWAYS AS IDENTITY PRIMARY KEY,
5353
"AssetId" INT NOT NULL REFERENCES "Asset"("Id") ON DELETE CASCADE,
5454
"Name" TEXT,
5555
"Value" TEXT
5656
);
5757

58+
CREATE INDEX idx_asset_productid
59+
ON "Asset"("ProductId");

example/postgres/schema/02_nameplate_carbonfootprint_technicaldata.sql.inc

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515
-- ============================================================
1616

1717

18-
CREATE TABLE "Marking" (
18+
CREATE TABLE IF NOT EXISTS "Marking" (
1919
"Id" INT GENERATED ALWAYS AS IDENTITY PRIMARY KEY,
2020
"Index" INT,
2121
"MarkingName" TEXT,
@@ -26,7 +26,7 @@ CREATE TABLE "Marking" (
2626
"MarkingFile" TEXT
2727
);
2828

29-
CREATE TABLE "AssetMarking" (
29+
CREATE TABLE IF NOT EXISTS "AssetMarking" (
3030
"Id" INT GENERATED ALWAYS AS IDENTITY PRIMARY KEY,
3131
"AssetId" INT NOT NULL REFERENCES "Asset"("Id") ON DELETE CASCADE,
3232
"MarkingId" INT NOT NULL REFERENCES "Marking"("Id") ON DELETE CASCADE
@@ -36,7 +36,7 @@ CREATE TABLE "AssetMarking" (
3636
-- ProductImage
3737
-- ============================================================
3838

39-
CREATE TABLE "ProductImage" (
39+
CREATE TABLE IF NOT EXISTS "ProductImage" (
4040
"Id" INT PRIMARY KEY,
4141
"Index" INT,
4242
"ImageFile" TEXT,
@@ -48,7 +48,7 @@ CREATE TABLE "ProductImage" (
4848
-- Asset ↔ ProductImage Mapping
4949
-- ============================================================
5050

51-
CREATE TABLE "AssetProductImage" (
51+
CREATE TABLE IF NOT EXISTS "AssetProductImage" (
5252
"Id" INT PRIMARY KEY,
5353

5454
"AssetId" INT NOT NULL
@@ -64,7 +64,7 @@ CREATE TABLE "AssetProductImage" (
6464
-- Product Classification Tables
6565
-- ============================================================
6666

67-
CREATE TABLE "ProductClassifications" (
67+
CREATE TABLE IF NOT EXISTS "ProductClassifications" (
6868
"Id" INT GENERATED ALWAYS AS IDENTITY PRIMARY KEY,
6969
"Index" INT,
7070
"ClassificationSystem" TEXT,
@@ -76,13 +76,13 @@ CREATE TABLE "ProductClassifications" (
7676
"ProductClassName_de" TEXT
7777
);
7878

79-
CREATE TABLE "AssetProductClassifications" (
79+
CREATE TABLE IF NOT EXISTS "AssetProductClassifications" (
8080
"Id" INT GENERATED ALWAYS AS IDENTITY PRIMARY KEY,
8181
"AssetId" INT REFERENCES "Asset"("Id") ON DELETE CASCADE,
8282
"ProductClassificationsId" INT REFERENCES "ProductClassifications"("Id") ON DELETE CASCADE
8383
);
8484

85-
CREATE TABLE "ProductOrSectorSpecificCarbonFootprint" (
85+
CREATE TABLE IF NOT EXISTS "ProductOrSectorSpecificCarbonFootprint" (
8686
"Id" INT GENERATED ALWAYS AS IDENTITY PRIMARY KEY,
8787
"AssetId" INT REFERENCES "Asset"("Id") ON DELETE CASCADE,
8888
"PcfCalculationMethod" TEXT,

example/postgres/schema/03_MaintenanceInstructions.sql.inc

Lines changed: 17 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515
-- Maintenance Instructions
1616
-- ============================================================
1717

18-
CREATE TABLE "MaintenanceInstructionsForSpecificInterval" (
18+
CREATE TABLE IF NOT EXISTS "MaintenanceInstructionsForSpecificInterval" (
1919
"Id" INT GENERATED ALWAYS AS IDENTITY PRIMARY KEY,
2020
"Index" INT,
2121
"MaintenanceID" VARCHAR(50),
@@ -41,7 +41,7 @@ CREATE TABLE "MaintenanceInstructionsForSpecificInterval" (
4141
-- Asset ↔ MaintenanceInstruction Mapping
4242
-- ============================================================
4343

44-
CREATE TABLE "AssetMaintenanceInstruction" (
44+
CREATE TABLE IF NOT EXISTS "AssetMaintenanceInstruction" (
4545
"Id" INT GENERATED ALWAYS AS IDENTITY PRIMARY KEY,
4646
"AssetId" INT NOT NULL REFERENCES "Asset"("Id") ON DELETE CASCADE,
4747
"MaintenanceInstructionId" INT NOT NULL
@@ -52,7 +52,7 @@ CREATE TABLE "AssetMaintenanceInstruction" (
5252
-- Alarm Table
5353
-- ============================================================
5454

55-
CREATE TABLE "Alarm" (
55+
CREATE TABLE IF NOT EXISTS "Alarm" (
5656
"Id" INT GENERATED ALWAYS AS IDENTITY PRIMARY KEY,
5757
"Index" INT,
5858
"AlarmName_en" TEXT,
@@ -65,7 +65,7 @@ CREATE TABLE "Alarm" (
6565
-- MaintenanceInstruction ↔ Alarm Mapping
6666
-- ============================================================
6767

68-
CREATE TABLE "MaintenanceInstructionAlarm" (
68+
CREATE TABLE IF NOT EXISTS "MaintenanceInstructionAlarm" (
6969
"Id" INT GENERATED ALWAYS AS IDENTITY PRIMARY KEY,
7070
"MaintenanceInstructionId" INT NOT NULL
7171
REFERENCES "MaintenanceInstructionsForSpecificInterval"("Id") ON DELETE CASCADE,
@@ -76,7 +76,7 @@ CREATE TABLE "MaintenanceInstructionAlarm" (
7676
-- Contact For Maintenance Authorization
7777
-- ============================================================
7878

79-
CREATE TABLE "ContactForMaintenanceAuthorization" (
79+
CREATE TABLE IF NOT EXISTS "ContactForMaintenanceAuthorization" (
8080
"Id" INT GENERATED ALWAYS AS IDENTITY PRIMARY KEY,
8181
"Index" INT,
8282
"Company_en" TEXT,
@@ -108,7 +108,7 @@ CREATE TABLE "ContactForMaintenanceAuthorization" (
108108
"RoleOfContactPerson" TEXT
109109
);
110110

111-
CREATE TABLE "Email" (
111+
CREATE TABLE IF NOT EXISTS "Email" (
112112
"Id" INT GENERATED ALWAYS AS IDENTITY PRIMARY KEY,
113113
"ContactForMaintenanceAuthorizationId" INT UNIQUE
114114
REFERENCES "ContactForMaintenanceAuthorization"("Id") ON DELETE CASCADE,
@@ -120,7 +120,7 @@ CREATE TABLE "Email" (
120120
"TypeOfPublicKey_de" TEXT
121121
);
122122

123-
CREATE TABLE "Phone" (
123+
CREATE TABLE IF NOT EXISTS "Phone" (
124124
"Id" INT GENERATED ALWAYS AS IDENTITY PRIMARY KEY,
125125
"ContactForMaintenanceAuthorizationId" INT UNIQUE
126126
REFERENCES "ContactForMaintenanceAuthorization"("Id") ON DELETE CASCADE,
@@ -131,7 +131,7 @@ CREATE TABLE "Phone" (
131131
"TypeOfTelephone" TEXT
132132
);
133133

134-
CREATE TABLE "Fax" (
134+
CREATE TABLE IF NOT EXISTS "Fax" (
135135
"Id" INT GENERATED ALWAYS AS IDENTITY PRIMARY KEY,
136136
"ContactForMaintenanceAuthorizationId" INT UNIQUE
137137
REFERENCES "ContactForMaintenanceAuthorization"("Id") ON DELETE CASCADE,
@@ -140,13 +140,13 @@ CREATE TABLE "Fax" (
140140
"TypeOfFaxNumber" TEXT
141141
);
142142

143-
CREATE TABLE "MaintenanceInstructionContactForMaintenanceAuthorization" (
143+
CREATE TABLE IF NOT EXISTS "MaintenanceInstructionContactForMaintenanceAuthorization" (
144144
"Id" INT GENERATED ALWAYS AS IDENTITY PRIMARY KEY,
145145
"MaintenanceInstructionId" INT REFERENCES "MaintenanceInstructionsForSpecificInterval"("Id") ON DELETE CASCADE,
146146
"ContactForMaintenanceAuthorizationId" INT REFERENCES "ContactForMaintenanceAuthorization"("Id") ON DELETE CASCADE
147147
);
148148

149-
CREATE TABLE "MaintenanceStep" (
149+
CREATE TABLE IF NOT EXISTS "MaintenanceStep" (
150150
"Id" INT GENERATED ALWAYS AS IDENTITY PRIMARY KEY,
151151
"Index" INT,
152152
"MaintenanceStepID" TEXT,
@@ -171,7 +171,7 @@ CREATE TABLE "MaintenanceStep" (
171171
"UnitEstimatedDurationTimeMaintenanceStep" TEXT
172172
);
173173

174-
CREATE TABLE "MaintenanceInstructionsForSpecificIntervalMaintenanceStep" (
174+
CREATE TABLE IF NOT EXISTS "MaintenanceInstructionsForSpecificIntervalMaintenanceStep" (
175175
"MaintenanceInstructionsForSpecificIntervalId" INT
176176
REFERENCES "MaintenanceInstructionsForSpecificInterval"("Id") ON DELETE CASCADE,
177177
"MaintenanceStepId" INT REFERENCES "MaintenanceStep"("Id") ON DELETE CASCADE,
@@ -181,7 +181,7 @@ CREATE TABLE "MaintenanceInstructionsForSpecificIntervalMaintenanceStep" (
181181
)
182182
);
183183

184-
CREATE TABLE "MaintenanceTool" (
184+
CREATE TABLE IF NOT EXISTS "MaintenanceTool" (
185185
"Id" INT GENERATED ALWAYS AS IDENTITY PRIMARY KEY,
186186
"Index" INT,
187187
"ToolID" TEXT,
@@ -196,13 +196,13 @@ CREATE TABLE "MaintenanceTool" (
196196
"MaxQuantityOfTool" INT
197197
);
198198

199-
CREATE TABLE "AssetMaintenanceTool" (
199+
CREATE TABLE IF NOT EXISTS "AssetMaintenanceTool" (
200200
"AssetId" INT REFERENCES "Asset"("Id") ON DELETE CASCADE,
201201
"MaintenanceToolId" INT REFERENCES "MaintenanceTool"("Id") ON DELETE CASCADE,
202202
PRIMARY KEY ("AssetId", "MaintenanceToolId")
203203
);
204204

205-
CREATE TABLE "MaintenanceConsumable" (
205+
CREATE TABLE IF NOT EXISTS "MaintenanceConsumable" (
206206
"Id" INT GENERATED ALWAYS AS IDENTITY PRIMARY KEY,
207207
"Index" INT,
208208
"ConsumableID" TEXT,
@@ -220,7 +220,7 @@ CREATE TABLE "MaintenanceConsumable" (
220220
"QuantityOfConsumable" INT
221221
);
222222

223-
CREATE TABLE "AssetMaintenanceConsumable" (
223+
CREATE TABLE IF NOT EXISTS "AssetMaintenanceConsumable" (
224224
"AssetId" INT REFERENCES "Asset"("Id") ON DELETE CASCADE,
225225
"MaintenanceConsumableId" INT REFERENCES "MaintenanceConsumable"("Id") ON DELETE CASCADE,
226226
PRIMARY KEY (
@@ -229,7 +229,7 @@ CREATE TABLE "AssetMaintenanceConsumable" (
229229
)
230230
);
231231

232-
CREATE TABLE "MaintenanceSparePart" (
232+
CREATE TABLE IF NOT EXISTS "MaintenanceSparePart" (
233233
"Id" INT GENERATED ALWAYS AS IDENTITY PRIMARY KEY,
234234
"Index" INT,
235235
"SparePartID" TEXT,
@@ -246,7 +246,7 @@ CREATE TABLE "MaintenanceSparePart" (
246246
"QuantityOfSparePart" INT
247247
);
248248

249-
CREATE TABLE "AssetMaintenanceSparePart" (
249+
CREATE TABLE IF NOT EXISTS "AssetMaintenanceSparePart" (
250250
"AssetId" INT REFERENCES "Asset"("Id") ON DELETE CASCADE,
251251
"MaintenanceSparePartId" INT REFERENCES "MaintenanceSparePart"("Id") ON DELETE CASCADE,
252252
PRIMARY KEY ("AssetId", "MaintenanceSparePartId")

example/postgres/schema/04_handoverdocumentation.sql.inc

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -12,32 +12,32 @@
1212
-- Document Management Tables
1313
-- ============================================================
1414

15-
CREATE TABLE "Document" (
15+
CREATE TABLE IF NOT EXISTS "Document" (
1616
"Id" INT GENERATED ALWAYS AS IDENTITY PRIMARY KEY,
1717
"Index" INT
1818
);
1919

20-
CREATE TABLE "DocumentId" (
20+
CREATE TABLE IF NOT EXISTS "DocumentId" (
2121
"Id" INT GENERATED ALWAYS AS IDENTITY PRIMARY KEY,
2222
"Index" INT,
2323
"DocumentDomainId" UUID,
2424
"DocumentIdentifier" TEXT,
2525
"DocumentIsPrimary" BOOLEAN
2626
);
2727

28-
CREATE TABLE "AssetDocument" (
28+
CREATE TABLE IF NOT EXISTS "AssetDocument" (
2929
"Id" INT GENERATED ALWAYS AS IDENTITY PRIMARY KEY,
3030
"AssetId" INT REFERENCES "Asset"("Id") ON DELETE CASCADE,
3131
"DocumentId" INT REFERENCES "Document"("Id") ON DELETE CASCADE
3232
);
3333

34-
CREATE TABLE "DocumentDocumentId" (
34+
CREATE TABLE IF NOT EXISTS "DocumentDocumentId" (
3535
"Id" INT GENERATED ALWAYS AS IDENTITY PRIMARY KEY,
3636
"DocumentId" INT REFERENCES "Document"("Id") ON DELETE CASCADE,
3737
"DocumentIdentifierId" INT REFERENCES "DocumentId"("Id") ON DELETE CASCADE
3838
);
3939

40-
CREATE TABLE "DocumentClassification" (
40+
CREATE TABLE IF NOT EXISTS "DocumentClassification" (
4141
"Id" INT GENERATED ALWAYS AS IDENTITY PRIMARY KEY,
4242
"Index" INT,
4343
"ClassId" TEXT,
@@ -46,13 +46,13 @@ CREATE TABLE "DocumentClassification" (
4646
"ClassName_de" TEXT
4747
);
4848

49-
CREATE TABLE "DocumentDocumentClassification" (
49+
CREATE TABLE IF NOT EXISTS "DocumentDocumentClassification" (
5050
"Id" INT PRIMARY KEY GENERATED ALWAYS AS IDENTITY,
5151
"DocumentId" INT REFERENCES "Document"("Id") ON DELETE CASCADE,
5252
"DocumentClassificationId" INT REFERENCES "DocumentClassification"("Id") ON DELETE CASCADE
5353
);
5454

55-
CREATE TABLE "DocumentVersion" (
55+
CREATE TABLE IF NOT EXISTS "DocumentVersion" (
5656
"Id" INT GENERATED ALWAYS AS IDENTITY PRIMARY KEY,
5757
"Index" INT,
5858
"DigitalFile" TEXT,
@@ -72,19 +72,19 @@ CREATE TABLE "DocumentVersion" (
7272
"PreviewFile" TEXT
7373
);
7474

75-
CREATE TABLE "Languages" (
75+
CREATE TABLE IF NOT EXISTS "Languages" (
7676
"Id" INT GENERATED ALWAYS AS IDENTITY PRIMARY KEY,
7777
"Index" INT,
7878
"Language" TEXT
7979
);
8080

81-
CREATE TABLE "DocumentVersionLanguages" (
81+
CREATE TABLE IF NOT EXISTS "DocumentVersionLanguages" (
8282
"Id" INT GENERATED ALWAYS AS IDENTITY PRIMARY KEY,
8383
"DocumentVersionId" INT REFERENCES "DocumentVersion"("Id") ON DELETE CASCADE,
8484
"LanguageId" INT REFERENCES "Languages"("Id") ON DELETE CASCADE
8585
);
8686

87-
CREATE TABLE "DocumentDocumentVersion" (
87+
CREATE TABLE IF NOT EXISTS "DocumentDocumentVersion" (
8888
"Id" INT GENERATED ALWAYS AS IDENTITY PRIMARY KEY,
8989
"DocumentId" INT REFERENCES "Document"("Id") ON DELETE CASCADE,
9090
"DocumentVersionId" INT REFERENCES "DocumentVersion"("Id") ON DELETE CASCADE

0 commit comments

Comments
 (0)