Tomaž Jerman
Tomaž Jerman
Running sanitizers and validators a in parallel, we get this: ```json {"special":"delimiter run line","ts":"2024-03-04T13:24:16.075Z"} {"scenario":"x100: basic build regular","operation":"unmaker","numbers":{"100-10000":{"min":3016,"max":5938,"avg":3312.5,"total":66250,"runs":[3348,3136,3153,3255,3061,3060,3121,3035,3046,3176,3076,3016,3060,3519,3088,3043,3038,3026,5938,4055]}},"meta":{}} {"scenario":"x100: basic build physical","operation":"unmaker","numbers":{"100-10000":{"min":3027,"max":6836,"avg":3337.3,"total":66746,"runs":[3365,3151,3167,3269,3080,3084,3154,3055,3097,3181,3067,3027,3073,3509,3093,3041,3051,3054,6836,3392]}},"meta":{}} {"scenario":"x100: basic CRUD regular","operation":"crud-create","numbers":{"100-10000":{"min":11,"max":33,"avg":13.24,"total":1324,"runs":[21,13,14,13,14,12,13,12,12,14,12,13,13,14,12,15,13,11,13,11,17,12,14,33,11,12,14,18,14,12,13,13,14,11,13,12,14,13,12,12,14,13,14,11,12,13,12,11,13,12,12,13,14,12,11,28,16,30,12,11,14,13,11,12,12,13,11,12,12,11,12,14,12,12,12,11,13,13,12,12,13,11,14,12,11,11,12,12,13,12,12,12,12,12,12,11,12,16,15,12]}},"meta":{}} {"scenario":"x100: basic CRUD regular","operation":"crud-lookup","numbers":{"100-10000":{"min":7,"max":98,"avg":10.26,"total":1026,"runs":[15,11,10,9,9,10,10,9,12,12,10,10,9,12,8,11,9,9,8,10,9,9,10,10,9,9,9,10,9,8,9,10,9,8,9,10,8,9,10,8,9,10,10,8,8,8,9,7,8,9,10,8,9,10,98,21,10,9,9,8,8,8,8,9,8,9,8,8,8,10,9,9,9,9,9,9,9,8,8,9,8,8,8,9,9,8,10,16,9,10,9,9,10,10,9,10,11,10,9,9]}},"meta":{}}...
Looking at the CRUD benchmarks, we get this  if I remove RBAC, I get this: ```json {"scenario":"x100: basic CRUD regular","operation":"crud-create","numbers":{"100-10000":{"min":10,"max":53,"avg":12.34,"total":1234,"runs":[53,15,13,12,14,14,14,13,11,12,15,14,12,13,11,14,11,11,13,11,13,12,11,12,11,12,12,11,13,14,13,11,15,14,13,13,12,12,11,12,11,12,12,12,12,11,11,12,11,14,12,12,11,12,11,12,11,13,12,12,10,10,11,12,12,12,12,11,13,12,12,11,13,11,11,10,10,15,11,14,12,13,13,10,11,10,10,11,11,11,10,10,10,12,11,12,12,11,12,10]}},"meta":{}} {"scenario":"x100: basic CRUD regular","operation":"crud-lookup","numbers":{"100-10000":{"min":7,"max":22,"avg":8.61,"total":861,"runs":[16,11,8,8,10,15,9,8,8,11,9,8,9,8,9,9,9,8,8,8,7,8,22,10,8,10,10,9,8,7,8,9,8,8,8,8,8,8,9,8,9,8,8,8,8,8,8,8,8,9,9,8,8,9,7,8,9,8,9,8,8,8,9,9,9,8,8,9,8,8,7,8,8,8,8,7,9,19,7,8,7,7,7,7,7,7,8,8,7,8,9,9,9,7,7,8,8,8,7,8]}},"meta":{}} {"scenario":"x100: basic CRUD regular","operation":"crud-update","numbers":{"100-10000":{"min":12,"max":41,"avg":15.73,"total":1573,"runs":[19,16,15,18,17,22,19,17,15,18,19,16,15,15,20,18,16,15,16,17,18,14,23,15,14,16,16,15,14,14,14,14,14,14,14,15,14,15,17,15,22,15,17,17,14,14,16,15,15,16,17,16,15,15,17,24,25,17,14,15,15,16,14,14,14,13,13,13,14,14,13,14,14,15,18,15,16,13,13,13,15,13,12,14,15,41,14,14,16,15,14,14,15,13,14,14,13,13,13,13]}},"meta":{}} {"scenario":"x100:...
Throwing some ideas to see if we can find the hardest blockers...
Removing DAL for CRUD: ```json {"scenario":"x100: basic CRUD physical","operation":"crud-create","numbers":{"100-10000":{"min":10,"max":40,"avg":12.29,"total":1229,"runs":[40,13,12,13,13,13,12,12,14,11,12,11,12,12,13,12,13,12,30,13,19,13,12,14,12,13,12,11,11,13,11,13,13,12,12,11,12,10,11,11,10,11,13,11,11,12,13,11,21,11,13,11,11,11,12,11,12,13,12,11,11,12,11,11,11,11,10,11,11,12,10,11,11,12,11,11,11,12,13,12,10,11,15,11,11,10,12,11,10,10,11,11,11,11,11,11,11,11,12,13]}},"meta":{}} {"scenario":"x100: basic CRUD physical","operation":"crud-lookup","numbers":{"100-10000":{"min":6,"max":17,"avg":8.05,"total":805,"runs":[12,9,7,8,8,7,8,7,8,8,8,9,10,7,8,8,8,9,17,9,8,9,8,8,7,8,8,8,9,8,8,9,9,9,9,9,9,8,8,8,9,10,10,8,9,9,8,9,7,8,7,7,7,7,7,8,7,7,9,8,8,8,10,9,8,8,8,8,6,7,7,8,8,7,7,7,8,9,10,6,8,7,8,7,8,9,6,7,9,8,8,7,6,7,7,6,7,6,7,7]}},"meta":{}} {"scenario":"x100: basic CRUD physical","operation":"crud-update","numbers":{"100-10000":{"min":11,"max":77,"avg":15.16,"total":1516,"runs":[17,14,13,12,13,14,13,13,11,15,12,13,25,29,13,14,13,77,36,27,15,15,15,14,16,16,15,16,14,14,14,15,13,13,13,13,14,13,15,13,15,14,14,13,14,15,14,13,16,14,14,13,14,14,13,14,12,25,13,16,13,15,11,12,12,13,12,13,12,14,13,14,13,13,15,13,14,14,14,13,29,35,14,14,15,13,13,13,13,12,12,11,11,11,11,11,11,12,11,11]}},"meta":{}} {"scenario":"x100: basic CRUD physical","operation":"crud-delete","numbers":{"100-10000":{"min":7,"max":35,"avg":9.28,"total":928,"runs":[10,8,8,10,8,9,9,8,12,8,10,9,10,15,10,8,9,35,25,24,9,8,9,8,7,9,9,8,9,9,9,8,8,9,8,10,9,9,9,10,8,9,8,10,9,9,9,17,8,9,8,8,11,9,8,8,8,13,9,8,8,8,9,9,8,9,8,9,8,9,9,10,8,8,8,8,7,8,7,9,8,12,7,7,8,8,8,9,8,7,7,8,7,8,7,7,8,7,8,7]}},"meta":{}} {"scenario":"x100: basic CRUD regular","operation":"crud-create","numbers":{"100-10000":{"min":10,"max":43,"avg":12.4,"total":1240,"runs":[43,13,11,12,14,12,13,13,14,12,12,12,12,11,13,13,13,11,30,12,19,13,13,13,12,12,11,12,12,13,12,13,13,12,12,12,12,11,11,11,11,12,13,11,12,13,13,11,21,12,12,11,10,11,12,11,12,13,12,11,12,11,12,12,11,10,12,12,11,10,11,12,12,12,11,11,11,11,12,11,10,11,14,10,11,11,12,11,12,11,11,10,11,11,11,11,11,11,11,13]}},"meta":{}} {"scenario":"x100: basic CRUD regular","operation":"crud-lookup","numbers":{"100-10000":{"min":6,"max":20,"avg":7.95,"total":795,"runs":[13,9,7,8,6,8,8,7,7,8,8,7,9,8,8,7,7,10,20,8,8,9,7,9,7,8,8,8,9,8,9,9,9,8,10,9,8,9,9,9,9,9,9,9,8,7,9,9,8,7,6,7,7,7,8,7,7,7,8,10,8,8,8,8,8,8,7,9,7,8,7,7,8,7,7,7,7,9,10,8,7,7,8,8,7,7,7,7,7,6,8,6,6,7,6,7,6,7,7,7]}},"meta":{}} {"scenario":"x100:...
I yanked out DAL for record searching (so iterator stuff) and we go from this ```json {"scenario":"x100: list plain regular","operation":"search","numbers":{"100-10000":{"min":19,"max":41,"avg":22.69,"total":2269,"runs":[36,22,21,22,22,23,21,21,20,20,21,22,21,21,23,20,21,22,23,24,24,23,21,25,23,24,24,22,22,23,20,23,24,21,22,24,21,23,24,27,24,25,22,23,21,23,21,21,25,20,24,24,24,41,24,22,24,23,22,21,23,28,23,24,22,20,22,22,22,21,23,22,23,23,22,22,24,21,23,22,23,25,21,21,21,22,24,22,22,20,23,23,20,22,23,21,23,20,22,19]}},"meta":{}} {"scenario":"x100: list plain physical","operation":"search","numbers":{"100-10000":{"min":53,"max":86,"avg":60.16,"total":6016,"runs":[86,61,60,60,64,62,65,64,62,67,62,64,60,61,69,64,65,61,68,74,66,64,64,66,61,64,63,61,67,65,65,62,64,62,61,59,55,61,59,55,57,54,55,57,55,57,63,57,58,55,56,68,79,57,59,62,57,56,55,56,54,57,58,59,76,66,60,56,57,54,56,55,57,57,56,60,57,61,79,61,56,57,58,55,56,56,55,56,54,53,53,55,57,56,55,56,54,55,53,54]}},"meta":{}} ``` to this: ```json {"scenario":"x100: list...
If I remove the thing to generate page navigation we get to... ```json {"scenario":"x100: list plain regular","operation":"search","numbers":{"100-10000":{"min":10,"max":39,"avg":12.76,"total":1276,"runs":[39,13,12,13,15,13,14,12,13,13,13,13,11,12,18,14,12,12,12,12,10,12,13,11,15,14,12,13,13,13,12,11,11,12,12,11,11,11,12,11,13,11,15,23,13,14,13,12,11,12,10,15,12,13,12,12,11,11,11,11,12,11,12,12,11,16,16,12,13,27,11,11,12,11,12,13,12,11,11,12,10,11,12,12,10,12,10,12,11,11,13,13,11,11,10,20,12,11,13,12]}},"meta":{}} {"scenario":"x100: list plain physical","operation":"search","numbers":{"100-10000":{"min":26,"max":106,"avg":30.36,"total":3036,"runs":[106,40,30,30,33,33,33,31,38,31,32,30,30,31,30,35,30,31,31,34,30,30,29,30,32,30,44,30,29,31,31,30,31,30,30,30,40,33,30,26,28,29,27,32,30,28,29,28,27,27,27,27,27,28,27,27,26,27,26,26,26,26,28,28,27,27,27,27,28,28,28,30,30,30,28,27,27,27,28,27,27,27,50,30,29,29,29,29,29,28,28,28,27,27,27,26,28,26,28,32]}},"meta":{}} ``` So about same difference
looking into reusing some bits; before  ```json {"scenario":"x100: list plain regular","operation":"search","numbers":{"100-10000":{"min":19,"max":38,"avg":22.84,"total":2284,"runs":[38,24,25,21,29,22,22,22,21,19,29,32,23,20,22,21,19,19,19,22,23,20,20,22,21,38,22,25,21,23,21,22,21,22,21,22,23,23,21,23,21,21,22,21,20,23,28,28,30,28,25,36,26,25,23,21,20,21,22,20,20,21,23,24,23,22,20,22,23,24,25,23,20,22,20,20,21,20,19,22,20,20,21,22,22,25,23,26,25,22,22,21,20,21,22,24,23,23,22,22]}},"meta":{}} {"scenario":"x100: list plain physical","operation":"search","numbers":{"100-10000":{"min":51,"max":134,"avg":61.17,"total":6117,"runs":[121,70,63,72,62,64,59,67,76,65,61,64,67,62,66,75,69,74,61,63,62,67,63,65,64,61,60,63,63,64,70,62,65,65,59,61,62,60,63,73,56,53,55,55,53,55,57,54,54,55,55,56,54,56,56,53,56,57,56,61,57,56,56,56,57,53,55,57,59,59,62,57,58,56,53,54,54,52,53,70,53,53,51,52,52,134,104,60,60,55,55,57,55,55,55,56,55,54,54,53]}},"meta":{}} ``` after  ```json {"scenario":"x100: list plain regular","operation":"search","numbers":{"100-10000":{"min":18,"max":46,"avg":22.84,"total":2284,"runs":[38,22,22,21,22,22,22,21,21,20,26,19,21,23,20,19,24,21,21,21,20,18,22,24,32,30,22,26,20,20,22,19,46,32,24,25,34,31,23,22,21,22,21,21,22,22,24,22,32,24,21,24,25,24,33,21,21,24,21,20,23,21,21,21,21,19,22,21,24,21,22,23,23,21,27,21,23,21,21,19,23,24,19,22,21,20,24,21,20,21,22,20,23,21,21,19,20,22,22,21]}},"meta":{}} {"scenario":"x100: list plain physical","operation":"search","numbers":{"100-10000":{"min":52,"max":122,"avg":59.21,"total":5921,"runs":[122,67,62,63,61,64,63,74,68,60,81,68,70,65,63,60,71,65,63,65,62,63,64,61,62,64,68,61,64,63,64,62,61,60,60,53,56,59,58,60,59,56,55,57,56,54,57,56,54,56,52,59,59,54,55,54,53,55,55,55,53,56,54,55,57,53,54,53,53,55,54,53,53,52,55,55,55,54,59,57,57,56,54,59,58,53,55,57,57,54,53,56,58,54,58,56,56,57,55,57]}},"meta":{}} ``` Performance...
For now; will leave it at this: Pre: ```json {"special":"delimiter run line","ts":"2024-03-05T09:38:41.978Z"} {"scenario":"x100: basic build regular","operation":"unmaker","numbers":{"100-10000":{"min":3518,"max":6516,"avg":3833.5,"total":76670,"runs":[3909,3695,3721,3619,3518,3602,3578,3673,3571,3676,3727,3687,3639,3776,3866,3728,3767,3631,3771,6516]}},"meta":{}} {"scenario":"x100: basic build physical","operation":"unmaker","numbers":{"100-10000":{"min":3534,"max":6569,"avg":3851.55,"total":77031,"runs":[3953,3709,3729,3630,3534,3610,3599,3686,3582,3691,3736,3706,3678,3774,3882,3737,3793,3640,3793,6569]}},"meta":{}} {"scenario":"x100: list plain regular","operation":"search","numbers":{"100-10000":{"min":34,"max":190,"avg":43.99,"total":4399,"runs":[190,97,78,87,91,71,47,46,47,48,52,45,37,39,40,42,47,39,43,40,39,39,38,42,52,54,36,38,40,37,43,43,41,44,49,43,45,38,41,42,37,38,35,36,39,40,39,36,37,38,46,35,37,39,46,37,38,37,34,38,39,40,36,45,46,37,42,36,51,35,37,35,34,39,40,38,37,36,35,36,39,48,36,36,38,40,39,38,35,40,37,36,36,61,47,40,38,38,37,34]}},"meta":{}} {"scenario":"x100: basic CRUD regular","operation":"crud-create","numbers":{"100-10000":{"min":12,"max":97,"avg":19.26,"total":1926,"runs":[97,54,53,34,30,18,26,23,22,18,24,42,18,18,18,23,24,23,18,21,19,17,21,17,17,19,18,19,19,19,21,20,24,18,17,22,15,20,18,19,23,18,15,19,18,19,18,30,18,16,14,19,18,19,17,16,12,15,15,13,12,14,14,13,15,14,12,14,24,14,13,12,17,13,14,15,13,15,15,13,16,18,14,16,17,13,14,17,16,16,14,20,12,14,14,19,13,15,13,14]}},"meta":{}} {"scenario":"x100: basic...
# EOF
Introduced an easter egg -- tests may fail due to the RBAC index being reused globally in the process.