PocketBase 0.23.x
┌─ Best: 2.59579ms
├─ Worst: 14.881942ms
├─ Completed: 33.107072ms
└─ Errors: 0
┌─ Best: 1.737673ms
├─ Worst: 17.055895ms
├─ Completed: 35.486545ms
└─ Errors: 0
┌─ Best: 2.920229ms
├─ Worst: 8.364488ms
├─ Completed: 26.976578ms
└─ Errors: 0
┌─ Best: 1.895673ms
├─ Worst: 7.571731ms
├─ Completed: 21.22576ms
└─ Errors: 0
┌─ Best: 1.720336774s
├─ Worst: 4.952529023s
├─ Completed: 17.570934236s
└─ Errors: 0
Creating 250 users [reqs:250, conc:50, rule:"@request.body.email != '' && @request.body.permissions:length > 0"
]
┌─ Best: 1.558033521s
├─ Worst: 4.666013092s
├─ Completed: 17.502768159s
└─ Errors: 0
┌─ Best: 3.562909ms
├─ Worst: 2.593383177s
├─ Completed: 4.744757477s
└─ Errors: 0
Creating 5000 posts10k [reqs:5000, conc:500, rule:"@request.auth.id != '' && @request.body.public:isset = true"
]
┌─ Best: 9.400932ms
├─ Worst: 2.798994782s
├─ Completed: 5.783553257s
└─ Errors: 0
┌─ Best: 6.494901ms
├─ Worst: 4.33557897s
├─ Completed: 30.666719655s
└─ Errors: 0
Creating 12500 posts25k [reqs:12500, conc:500, rule:"@request.auth.id != '' && @request.body.public:isset = true"
]
┌─ Best: 5.961467ms
├─ Worst: 3.89505289s
├─ Completed: 22.384762263s
└─ Errors: 0
┌─ Best: 4.207551ms
├─ Worst: 4.029974796s
├─ Completed: 52.594894035s
└─ Errors: 0
Creating 25000 posts50k [reqs:25000, conc:500, rule:"@request.auth.id != '' && @request.body.public:isset = true"
]
┌─ Best: 4.260076ms
├─ Worst: 5.380606961s
├─ Completed: 46.619136244s
└─ Errors: 0
┌─ Best: 4.791997ms
├─ Worst: 4.292780112s
├─ Completed: 1m34.652497659s
└─ Errors: 0
Creating 50000 posts100k [reqs:50000, conc:500, rule:"@request.auth.id != '' && @request.body.public:isset = true"
]
┌─ Best: 6.99836ms
├─ Worst: 5.382612788s
├─ Completed: 1m48.742289247s
└─ Errors: 0
┌─ Best: 7.516568255s
├─ Worst: 9.098041941s
├─ Completed: 9.106779789s
└─ Errors: 0
┌─ Best: 122.835609ms
├─ Worst: 504.815141ms
├─ Completed: 8.908589803s
└─ Errors: 0
┌─ Best: 144.887434ms
├─ Worst: 380.512444ms
├─ Completed: 393.184417ms
└─ Errors: 0
┌─ Best: 1.063921ms
├─ Worst: 73.234798ms
├─ Completed: 333.576479ms
└─ Errors: 0
users - getOne for auth refresh comparison (high concurrency) [reqs:1000, conc:1000, rule:""
, query:/v69wvx0465rz96p
]
┌─ Best: 124.225416ms
├─ Worst: 482.033408ms
├─ Completed: 483.97117ms
└─ Errors: 0
users - getOne for auth refresh comparison (medium concurrency) [reqs:1000, conc:100, rule:""
, query:/v69wvx0465rz96p
]
┌─ Best: 2.458802ms
├─ Worst: 158.862176ms
├─ Completed: 429.722436ms
└─ Errors: 0
posts10k - simpleA (many requests, no rules, no concurrency) [reqs:1000, conc:1, rule:""
, query:?perPage=20
]
┌─ Best: 2.167403ms
├─ Worst: 6.835568ms
├─ Completed: 3.217031014s
└─ Errors: 0
posts10k - simpleB (many requests, no rules, high concurrency) [reqs:1000, conc:1000, rule:""
, query:?perPage=20
]
┌─ Best: 285.547331ms
├─ Worst: 1.516129406s
├─ Completed: 1.530132863s
└─ Errors: 0
posts10k - simpleC (many requests, no rules, high concurrency, skipTotal) [reqs:1000, conc:1000, rule:""
, query:?perPage=20&skipTotal=1
]
┌─ Best: 195.781992ms
├─ Worst: 938.463514ms
├─ Completed: 954.460533ms
└─ Errors: 0
posts10k - mixed read and write (simpleA list with additional 300 concurrent random posts10k updates running in the background) [reqs:1000, conc:1000, rule:""
, query:?perPage=20
]
┌─ Best: 239.65465ms
├─ Worst: 1.837399622s
├─ Completed: 1.842157868s
└─ Errors: 0
┌─ Best: 5.339447ms
├─ Worst: 37.876047ms
├─ Completed: 210.511499ms
└─ Errors: 0
posts10k - expand author (limited fields) [reqs:100, conc:10, rule:""
, query:?perPage=20&expand=author&fields=id,collectionId,expand.author.id
]
┌─ Best: 9.466571ms
├─ Worst: 59.820195ms
├─ Completed: 292.203924ms
└─ Errors: 0
posts10k - expand author.permissions [reqs:100, conc:10, rule:""
, query:?perPage=20&expand=author.permissions
]
┌─ Best: 11.288135ms
├─ Worst: 110.039618ms
├─ Completed: 346.361916ms
└─ Errors: 0
posts10k - expand author.permissions (limited fields) [reqs:100, conc:10, rule:""
, query:?perPage=20&expand=author.permissions&fields=id,collectionId,expand.author.id,expand.author.expand.permissions.id
]
┌─ Best: 16.219341ms
├─ Worst: 76.728618ms
├─ Completed: 439.877682ms
└─ Errors: 0
┌─ Best: 3.212684ms
├─ Worst: 37.959369ms
├─ Completed: 160.590047ms
└─ Errors: 0
posts10k - author check (no index) [reqs:100, conc:10, rule:"author = @request.auth.id"
, query:?perPage=20
]
┌─ Best: 32.059002ms
├─ Worst: 212.526157ms
├─ Completed: 685.380616ms
└─ Errors: 0
posts10k - author check (with index) [reqs:100, conc:10, rule:"author = @request.auth.id"
, query:?perPage=20
]
┌─ Best: 3.363044ms
├─ Worst: 50.713347ms
├─ Completed: 153.024882ms
└─ Errors: 0
posts10k - author check (with index and skipTotal) [reqs:100, conc:10, rule:"author = @request.auth.id"
, query:?perPage=20&skipTotal=1
]
┌─ Best: 1.447482ms
├─ Worst: 26.514675ms
├─ Completed: 96.643249ms
└─ Errors: 0
posts10k - author.id (extra join) check (no index) [reqs:100, conc:10, rule:"author.id = @request.auth.id"
, query:?perPage=20
]
┌─ Best: 29.74256ms
├─ Worst: 219.009296ms
├─ Completed: 700.444427ms
└─ Errors: 0
posts10k - author.id (extra join) check (with index) [reqs:100, conc:10, rule:"author.id = @request.auth.id"
, query:?perPage=20
]
┌─ Best: 1.792283ms
├─ Worst: 43.259139ms
├─ Completed: 131.52238ms
└─ Errors: 0
posts10k - author.id (extra join) check (with index and skipTotal) [reqs:100, conc:10, rule:"author.id = @request.auth.id"
, query:?perPage=20&skipTotal=1
]
┌─ Best: 2.143923ms
├─ Worst: 29.16956ms
├─ Completed: 110.033433ms
└─ Errors: 0
posts10k - loose large text search (no index) [reqs:100, conc:10, rule:"description ~ 'ipsum dolor'"
, query:?perPage=20
]
┌─ Best: 20.087428ms
├─ Worst: 130.712542ms
├─ Completed: 527.820016ms
└─ Errors: 0
posts10k - loose large text search (with index) [reqs:100, conc:10, rule:"description ~ 'ipsum dolor'"
, query:?perPage=20
]
┌─ Best: 21.161229ms
├─ Worst: 103.179746ms
├─ Completed: 509.32844ms
└─ Errors: 0
posts10k - loose large text search (with index and skipTotal) [reqs:100, conc:10, rule:"description ~ 'ipsum dolor'"
, query:?perPage=20&skipTotal=1
]
┌─ Best: 3.155444ms
├─ Worst: 49.413551ms
├─ Completed: 137.531916ms
└─ Errors: 0
posts10k - multiple select :each (no index, match-all) [reqs:100, conc:10, rule:"type:each != 'c'"
, query:?perPage=20
]
┌─ Best: 436.053323ms
├─ Worst: 637.670201ms
├─ Completed: 5.676823355s
└─ Errors: 0
posts10k - multiple select :each (no index, match-all, skipTotal) [reqs:100, conc:10, rule:"type:each != 'c'"
, query:?perPage=20&skipTotal=1
]
┌─ Best: 3.096045ms
├─ Worst: 45.788068ms
├─ Completed: 158.246035ms
└─ Errors: 0
posts10k - multiple select :each (no index, at-least-one) [reqs:100, conc:10, rule:"type:each ?!= 'c'"
, query:?perPage=20
]
┌─ Best: 215.119327ms
├─ Worst: 396.452836ms
├─ Completed: 3.199913512s
└─ Errors: 0
posts10k - multiple select :each (no index, at-least-one, skipTotal) [reqs:100, conc:10, rule:"type:each ?!= 'c'"
, query:?perPage=20&skipTotal=1
]
┌─ Best: 3.022765ms
├─ Worst: 52.14132ms
├─ Completed: 125.102071ms
└─ Errors: 0
posts10k - nested single relations lookup (no indexes) [reqs:100, conc:10, rule:"author.organization.name != 'test'"
, query:?perPage=20
]
┌─ Best: 503.443595ms
├─ Worst: 784.151053ms
├─ Completed: 6.605128326s
└─ Errors: 0
posts10k - nested single relations lookup (no indexes, skipTotal) [reqs:100, conc:10, rule:"author.organization.name != 'test'"
, query:?perPage=20&skipTotal=1
]
┌─ Best: 3.445325ms
├─ Worst: 56.933091ms
├─ Completed: 162.178699ms
└─ Errors: 0
posts10k - nested multiple relations lookup (no indexes, match-all) [reqs:100, conc:10, rule:"author.permissions.active = true"
, query:?perPage=20
]
┌─ Best: 1.529480098s
├─ Worst: 2.279800119s
├─ Completed: 19.405518967s
└─ Errors: 0
posts10k - nested multiple relations lookup (no indexes, match-all, skipTotal) [reqs:100, conc:10, rule:"author.permissions.active = true"
, query:?perPage=20&skipTotal=1
]
┌─ Best: 17.143469ms
├─ Worst: 98.50073ms
├─ Completed: 445.75073ms
└─ Errors: 0
posts10k - nested multiple relations lookup (no indexes, at-least-one) [reqs:100, conc:10, rule:"author.permissions.active ?= true"
, query:?perPage=20
]
┌─ Best: 1.582821179s
├─ Worst: 2.713649977s
├─ Completed: 22.708627474s
└─ Errors: 0
posts10k - nested multiple relations lookup (no indexes, at-least-one, skipTotal) [reqs:100, conc:10, rule:"author.permissions.active ?= true"
, query:?perPage=20&skipTotal=1
]
┌─ Best: 3.089645ms
├─ Worst: 65.651203ms
├─ Completed: 191.293558ms
└─ Errors: 0
posts25k - simpleA (many requests, no rules, no concurrency) [reqs:1000, conc:1, rule:""
, query:?perPage=20
]
┌─ Best: 3.681607ms
├─ Worst: 14.092546ms
├─ Completed: 5.365049822s
└─ Errors: 0
posts25k - simpleB (many requests, no rules, high concurrency) [reqs:1000, conc:1000, rule:""
, query:?perPage=20
]
┌─ Best: 186.424998ms
├─ Worst: 2.420842549s
├─ Completed: 2.424723356s
└─ Errors: 0
posts25k - simpleC (many requests, no rules, high concurrency, skipTotal) [reqs:1000, conc:1000, rule:""
, query:?perPage=20&skipTotal=1
]
┌─ Best: 164.69148ms
├─ Worst: 932.882496ms
├─ Completed: 939.948951ms
└─ Errors: 0
posts25k - mixed read and write (simpleA list with additional 300 concurrent random posts25k updates running in the background) [reqs:1000, conc:1000, rule:""
, query:?perPage=20
]
┌─ Best: 205.004762ms
├─ Worst: 2.80101255s
├─ Completed: 2.814494897s
└─ Errors: 0
┌─ Best: 5.973532ms
├─ Worst: 73.885266ms
├─ Completed: 318.723633ms
└─ Errors: 0
posts25k - expand author (limited fields) [reqs:100, conc:10, rule:""
, query:?perPage=20&expand=author&fields=id,collectionId,expand.author.id
]
┌─ Best: 6.839814ms
├─ Worst: 68.730738ms
├─ Completed: 346.723932ms
└─ Errors: 0
posts25k - expand author.permissions [reqs:100, conc:10, rule:""
, query:?perPage=20&expand=author.permissions
]
┌─ Best: 9.326778ms
├─ Worst: 89.48226ms
├─ Completed: 405.373015ms
└─ Errors: 0
posts25k - expand author.permissions (limited fields) [reqs:100, conc:10, rule:""
, query:?perPage=20&expand=author.permissions&fields=id,collectionId,expand.author.id,expand.author.expand.permissions.id
]
┌─ Best: 13.964228ms
├─ Worst: 111.736066ms
├─ Completed: 491.743514ms
└─ Errors: 0
┌─ Best: 5.759412ms
├─ Worst: 44.27769ms
├─ Completed: 223.250535ms
└─ Errors: 0
posts25k - author check (no index) [reqs:100, conc:10, rule:"author = @request.auth.id"
, query:?perPage=20
]
┌─ Best: 37.006516ms
├─ Worst: 373.463764ms
├─ Completed: 1.248357476s
└─ Errors: 0
posts25k - author check (with index) [reqs:100, conc:10, rule:"author = @request.auth.id"
, query:?perPage=20
]
┌─ Best: 2.546006ms
├─ Worst: 82.407329ms
├─ Completed: 162.959616ms
└─ Errors: 0
posts25k - author check (with index and skipTotal) [reqs:100, conc:10, rule:"author = @request.auth.id"
, query:?perPage=20&skipTotal=1
]
┌─ Best: 2.480645ms
├─ Worst: 34.376191ms
├─ Completed: 104.174896ms
└─ Errors: 0
posts25k - author.id (extra join) check (no index) [reqs:100, conc:10, rule:"author.id = @request.auth.id"
, query:?perPage=20
]
┌─ Best: 35.170153ms
├─ Worst: 275.120813ms
├─ Completed: 1.245838638s
└─ Errors: 0
posts25k - author.id (extra join) check (with index) [reqs:100, conc:10, rule:"author.id = @request.auth.id"
, query:?perPage=20
]
┌─ Best: 2.891926ms
├─ Worst: 78.780085ms
├─ Completed: 173.043043ms
└─ Errors: 0
posts25k - author.id (extra join) check (with index and skipTotal) [reqs:100, conc:10, rule:"author.id = @request.auth.id"
, query:?perPage=20&skipTotal=1
]
┌─ Best: 2.221045ms
├─ Worst: 36.142636ms
├─ Completed: 98.600608ms
└─ Errors: 0
posts25k - loose large text search (no index) [reqs:100, conc:10, rule:"description ~ 'ipsum dolor'"
, query:?perPage=20
]
┌─ Best: 47.388421ms
├─ Worst: 237.781545ms
├─ Completed: 1.200187347s
└─ Errors: 0
posts25k - loose large text search (with index) [reqs:100, conc:10, rule:"description ~ 'ipsum dolor'"
, query:?perPage=20
]
┌─ Best: 46.78854ms
├─ Worst: 224.056839ms
├─ Completed: 1.077997666s
└─ Errors: 0
posts25k - loose large text search (with index and skipTotal) [reqs:100, conc:10, rule:"description ~ 'ipsum dolor'"
, query:?perPage=20&skipTotal=1
]
┌─ Best: 2.106645ms
├─ Worst: 58.256486ms
├─ Completed: 131.444243ms
└─ Errors: 0
posts25k - multiple select :each (no index, match-all) [reqs:100, conc:10, rule:"type:each != 'c'"
, query:?perPage=20
]
┌─ Best: 1.28810879s
├─ Worst: 1.672204996s
├─ Completed: 15.006915087s
└─ Errors: 0
posts25k - multiple select :each (no index, match-all, skipTotal) [reqs:100, conc:10, rule:"type:each != 'c'"
, query:?perPage=20&skipTotal=1
]
┌─ Best: 3.252927ms
├─ Worst: 47.742067ms
├─ Completed: 151.252299ms
└─ Errors: 0
posts25k - multiple select :each (no index, at-least-one) [reqs:100, conc:10, rule:"type:each ?!= 'c'"
, query:?perPage=20
]
┌─ Best: 704.208489ms
├─ Worst: 958.7908ms
├─ Completed: 8.020482788s
└─ Errors: 0
posts25k - multiple select :each (no index, at-least-one, skipTotal) [reqs:100, conc:10, rule:"type:each ?!= 'c'"
, query:?perPage=20&skipTotal=1
]
┌─ Best: 2.679366ms
├─ Worst: 133.485226ms
├─ Completed: 216.183016ms
└─ Errors: 0
posts25k - nested single relations lookup (no indexes) [reqs:100, conc:10, rule:"author.organization.name != 'test'"
, query:?perPage=20
]
┌─ Best: 1.57774839s
├─ Worst: 2.003907266s
├─ Completed: 17.812754448s
└─ Errors: 0
posts25k - nested single relations lookup (no indexes, skipTotal) [reqs:100, conc:10, rule:"author.organization.name != 'test'"
, query:?perPage=20&skipTotal=1
]
┌─ Best: 2.808286ms
├─ Worst: 63.850273ms
├─ Completed: 148.922076ms
└─ Errors: 0
posts25k - nested multiple relations lookup (no indexes, match-all) [reqs:100, conc:10, rule:"author.permissions.active = true"
, query:?perPage=20
]
┌─ Best: 4.042465797s
├─ Worst: 5.023067356s
├─ Completed: 45.63279524s
└─ Errors: 0
posts25k - nested multiple relations lookup (no indexes, match-all, skipTotal) [reqs:100, conc:10, rule:"author.permissions.active = true"
, query:?perPage=20&skipTotal=1
]
┌─ Best: 20.363613ms
├─ Worst: 165.294907ms
├─ Completed: 609.648138ms
└─ Errors: 0
posts25k - nested multiple relations lookup (no indexes, at-least-one) [reqs:100, conc:10, rule:"author.permissions.active ?= true"
, query:?perPage=20
]
┌─ Best: 3.577447018s
├─ Worst: 7.550337138s
├─ Completed: 55.402936095s
└─ Errors: 0
posts25k - nested multiple relations lookup (no indexes, at-least-one, skipTotal) [reqs:100, conc:10, rule:"author.permissions.active ?= true"
, query:?perPage=20&skipTotal=1
]
┌─ Best: 3.345009ms
├─ Worst: 132.12153ms
├─ Completed: 270.91232ms
└─ Errors: 0
posts50k - simpleA (many requests, no rules, no concurrency) [reqs:1000, conc:1, rule:""
, query:?perPage=20
]
┌─ Best: 6.136417ms
├─ Worst: 16.018925ms
├─ Completed: 8.729119378s
└─ Errors: 0
posts50k - simpleB (many requests, no rules, high concurrency) [reqs:1000, conc:1000, rule:""
, query:?perPage=20
]
┌─ Best: 446.728512ms
├─ Worst: 3.824814469s
├─ Completed: 3.857823523s
└─ Errors: 0
posts50k - simpleC (many requests, no rules, high concurrency, skipTotal) [reqs:1000, conc:1000, rule:""
, query:?perPage=20&skipTotal=1
]
┌─ Best: 69.851961ms
├─ Worst: 966.03665ms
├─ Completed: 976.012998ms
└─ Errors: 0
posts50k - mixed read and write (simpleA list with additional 300 concurrent random posts50k updates running in the background) [reqs:1000, conc:1000, rule:""
, query:?perPage=20
]
┌─ Best: 273.557827ms
├─ Worst: 4.309732981s
├─ Completed: 4.32305534s
└─ Errors: 0
┌─ Best: 10.826751ms
├─ Worst: 98.715806ms
├─ Completed: 408.535743ms
└─ Errors: 0
posts50k - expand author (limited fields) [reqs:100, conc:10, rule:""
, query:?perPage=20&expand=author&fields=id,collectionId,expand.author.id
]
┌─ Best: 9.905629ms
├─ Worst: 92.627429ms
├─ Completed: 471.966331ms
└─ Errors: 0
posts50k - expand author.permissions [reqs:100, conc:10, rule:""
, query:?perPage=20&expand=author.permissions
]
┌─ Best: 11.693554ms
├─ Worst: 144.13598ms
├─ Completed: 537.654966ms
└─ Errors: 0
posts50k - expand author.permissions (limited fields) [reqs:100, conc:10, rule:""
, query:?perPage=20&expand=author.permissions&fields=id,collectionId,expand.author.id,expand.author.expand.permissions.id
]
┌─ Best: 13.67984ms
├─ Worst: 143.94266ms
├─ Completed: 632.480807ms
└─ Errors: 0
┌─ Best: 10.36779ms
├─ Worst: 82.682882ms
├─ Completed: 368.280518ms
└─ Errors: 0
posts50k - author check (no index) [reqs:100, conc:10, rule:"author = @request.auth.id"
, query:?perPage=20
]
┌─ Best: 138.236247ms
├─ Worst: 485.126064ms
├─ Completed: 2.641930248s
└─ Errors: 0
posts50k - author check (with index) [reqs:100, conc:10, rule:"author = @request.auth.id"
, query:?perPage=20
]
┌─ Best: 3.745731ms
├─ Worst: 50.78415ms
├─ Completed: 148.684839ms
└─ Errors: 0
posts50k - author check (with index and skipTotal) [reqs:100, conc:10, rule:"author = @request.auth.id"
, query:?perPage=20&skipTotal=1
]
┌─ Best: 2.061206ms
├─ Worst: 31.195892ms
├─ Completed: 99.905616ms
└─ Errors: 0
posts50k - author.id (extra join) check (no index) [reqs:100, conc:10, rule:"author.id = @request.auth.id"
, query:?perPage=20
]
┌─ Best: 100.838379ms
├─ Worst: 427.747871ms
├─ Completed: 2.531138195s
└─ Errors: 0
posts50k - author.id (extra join) check (with index) [reqs:100, conc:10, rule:"author.id = @request.auth.id"
, query:?perPage=20
]
┌─ Best: 2.218607ms
├─ Worst: 52.891157ms
├─ Completed: 155.077302ms
└─ Errors: 0
posts50k - author.id (extra join) check (with index and skipTotal) [reqs:100, conc:10, rule:"author.id = @request.auth.id"
, query:?perPage=20&skipTotal=1
]
┌─ Best: 2.159926ms
├─ Worst: 29.438848ms
├─ Completed: 96.337968ms
└─ Errors: 0
posts50k - loose large text search (no index) [reqs:100, conc:10, rule:"description ~ 'ipsum dolor'"
, query:?perPage=20
]
┌─ Best: 114.897585ms
├─ Worst: 620.663379ms
├─ Completed: 2.801197316s
└─ Errors: 0
posts50k - loose large text search (with index) [reqs:100, conc:10, rule:"description ~ 'ipsum dolor'"
, query:?perPage=20
]
┌─ Best: 152.847102ms
├─ Worst: 636.767078ms
├─ Completed: 2.878411074s
└─ Errors: 0
posts50k - loose large text search (with index and skipTotal) [reqs:100, conc:10, rule:"description ~ 'ipsum dolor'"
, query:?perPage=20&skipTotal=1
]
┌─ Best: 1.887806ms
├─ Worst: 62.165388ms
├─ Completed: 121.366927ms
└─ Errors: 0
posts50k - multiple select :each (no index, match-all) [reqs:100, conc:10, rule:"type:each != 'c'"
, query:?perPage=20
]
┌─ Best: 3.003310187s
├─ Worst: 3.837676005s
├─ Completed: 34.561274616s
└─ Errors: 0
posts50k - multiple select :each (no index, match-all, skipTotal) [reqs:100, conc:10, rule:"type:each != 'c'"
, query:?perPage=20&skipTotal=1
]
┌─ Best: 3.635411ms
├─ Worst: 199.892827ms
├─ Completed: 303.967273ms
└─ Errors: 0
posts50k - multiple select :each (no index, at-least-one) [reqs:100, conc:10, rule:"type:each ?!= 'c'"
, query:?perPage=20
]
┌─ Best: 1.754845565s
├─ Worst: 2.320588778s
├─ Completed: 20.57704077s
└─ Errors: 0
posts50k - multiple select :each (no index, at-least-one, skipTotal) [reqs:100, conc:10, rule:"type:each ?!= 'c'"
, query:?perPage=20&skipTotal=1
]
┌─ Best: 1.876006ms
├─ Worst: 128.279331ms
├─ Completed: 211.737638ms
└─ Errors: 0
posts50k - nested single relations lookup (no indexes) [reqs:100, conc:10, rule:"author.organization.name != 'test'"
, query:?perPage=20
]
┌─ Best: 3.575087257s
├─ Worst: 4.555269169s
├─ Completed: 41.338618689s
└─ Errors: 0
posts50k - nested single relations lookup (no indexes, skipTotal) [reqs:100, conc:10, rule:"author.organization.name != 'test'"
, query:?perPage=20&skipTotal=1
]
┌─ Best: 2.037487ms
├─ Worst: 126.72926ms
├─ Completed: 214.036269ms
└─ Errors: 0
posts50k - nested multiple relations lookup (no indexes, match-all) [reqs:100, conc:10, rule:"author.permissions.active = true"
, query:?perPage=20
]
┌─ Best: 9.304498521s
├─ Worst: 10.764883317s
├─ Completed: 1m41.433176404s
└─ Errors: 0
posts50k - nested multiple relations lookup (no indexes, match-all, skipTotal) [reqs:100, conc:10, rule:"author.permissions.active = true"
, query:?perPage=20&skipTotal=1
]
┌─ Best: 19.689869ms
├─ Worst: 210.612305ms
├─ Completed: 575.8806ms
└─ Errors: 0
posts50k - nested multiple relations lookup (no indexes, at-least-one) [reqs:100, conc:10, rule:"author.permissions.active ?= true"
, query:?perPage=20
]
┌─ Best: 6.253225866s
├─ Worst: 25.759384356s
├─ Completed: 1m56.504369377s
└─ Errors: 0
posts50k - nested multiple relations lookup (no indexes, at-least-one, skipTotal) [reqs:100, conc:10, rule:"author.permissions.active ?= true"
, query:?perPage=20&skipTotal=1
]
┌─ Best: 3.460933ms
├─ Worst: 124.349946ms
├─ Completed: 278.205202ms
└─ Errors: 0
posts100k - simpleA (many requests, no rules, no concurrency) [reqs:1000, conc:1, rule:""
, query:?perPage=20
]
┌─ Best: 10.772241ms
├─ Worst: 35.470173ms
├─ Completed: 15.032502161s
└─ Errors: 0
posts100k - simpleB (many requests, no rules, high concurrency) [reqs:1000, conc:1000, rule:""
, query:?perPage=20
]
┌─ Best: 254.777963ms
├─ Worst: 6.565205106s
├─ Completed: 6.581438008s
└─ Errors: 0
posts100k - simpleC (many requests, no rules, high concurrency, skipTotal) [reqs:1000, conc:1000, rule:""
, query:?perPage=20&skipTotal=1
]
┌─ Best: 149.130526ms
├─ Worst: 1.04234583s
├─ Completed: 1.05032082s
└─ Errors: 0
posts100k - mixed read and write (simpleA list with additional 300 concurrent random posts100k updates running in the background) [reqs:1000, conc:1000, rule:""
, query:?perPage=20
]
┌─ Best: 147.051838ms
├─ Worst: 7.419866428s
├─ Completed: 7.442502115s
└─ Errors: 0
┌─ Best: 27.062383ms
├─ Worst: 134.06971ms
├─ Completed: 700.858028ms
└─ Errors: 0
posts100k - expand author (limited fields) [reqs:100, conc:10, rule:""
, query:?perPage=20&expand=author&fields=id,collectionId,expand.author.id
]
┌─ Best: 25.424177ms
├─ Worst: 191.940292ms
├─ Completed: 769.412852ms
└─ Errors: 0
posts100k - expand author.permissions [reqs:100, conc:10, rule:""
, query:?perPage=20&expand=author.permissions
]
┌─ Best: 18.37923ms
├─ Worst: 160.471412ms
├─ Completed: 793.026706ms
└─ Errors: 0
posts100k - expand author.permissions (limited fields) [reqs:100, conc:10, rule:""
, query:?perPage=20&expand=author.permissions&fields=id,collectionId,expand.author.id,expand.author.expand.permissions.id
]
┌─ Best: 24.109372ms
├─ Worst: 249.622833ms
├─ Completed: 871.416768ms
└─ Errors: 0
┌─ Best: 16.582103ms
├─ Worst: 138.983131ms
├─ Completed: 624.696668ms
└─ Errors: 0
posts100k - author check (no index) [reqs:100, conc:10, rule:"author = @request.auth.id"
, query:?perPage=20
]
┌─ Best: 283.578406ms
├─ Worst: 1.046815092s
├─ Completed: 5.176633508s
└─ Errors: 0
posts100k - author check (with index) [reqs:100, conc:10, rule:"author = @request.auth.id"
, query:?perPage=20
]
┌─ Best: 3.370453ms
├─ Worst: 46.89154ms
├─ Completed: 158.089446ms
└─ Errors: 0
posts100k - author check (with index and skipTotal) [reqs:100, conc:10, rule:"author = @request.auth.id"
, query:?perPage=20&skipTotal=1
]
┌─ Best: 1.559846ms
├─ Worst: 58.795785ms
├─ Completed: 119.607179ms
└─ Errors: 0
posts100k - author.id (extra join) check (no index) [reqs:100, conc:10, rule:"author.id = @request.auth.id"
, query:?perPage=20
]
┌─ Best: 276.844745ms
├─ Worst: 967.387641ms
├─ Completed: 4.849026292s
└─ Errors: 0
posts100k - author.id (extra join) check (with index) [reqs:100, conc:10, rule:"author.id = @request.auth.id"
, query:?perPage=20
]
┌─ Best: 4.438537ms
├─ Worst: 41.014238ms
├─ Completed: 152.568468ms
└─ Errors: 0
posts100k - author.id (extra join) check (with index and skipTotal) [reqs:100, conc:10, rule:"author.id = @request.auth.id"
, query:?perPage=20&skipTotal=1
]
┌─ Best: 1.627926ms
├─ Worst: 27.255625ms
├─ Completed: 98.68798ms
└─ Errors: 0
posts100k - loose large text search (no index) [reqs:100, conc:10, rule:"description ~ 'ipsum dolor'"
, query:?perPage=20
]
┌─ Best: 302.238609ms
├─ Worst: 1.358730205s
├─ Completed: 6.12775635s
└─ Errors: 0
posts100k - loose large text search (with index) [reqs:100, conc:10, rule:"description ~ 'ipsum dolor'"
, query:?perPage=20
]
┌─ Best: 274.286223ms
├─ Worst: 1.201050651s
├─ Completed: 5.668637404s
└─ Errors: 0
posts100k - loose large text search (with index and skipTotal) [reqs:100, conc:10, rule:"description ~ 'ipsum dolor'"
, query:?perPage=20&skipTotal=1
]
┌─ Best: 1.691967ms
├─ Worst: 38.336789ms
├─ Completed: 107.053016ms
└─ Errors: 0
posts100k - multiple select :each (no index, match-all) [reqs:100, conc:10, rule:"type:each != 'c'"
, query:?perPage=20
]
┌─ Best: 8.791549842s
├─ Worst: 10.295851508s
├─ Completed: 1m36.750108405s
└─ Errors: 0
posts100k - multiple select :each (no index, match-all, skipTotal) [reqs:100, conc:10, rule:"type:each != 'c'"
, query:?perPage=20&skipTotal=1
]
┌─ Best: 2.332809ms
├─ Worst: 52.179408ms
├─ Completed: 137.80819ms
└─ Errors: 0
posts100k - multiple select :each (no index, at-least-one) [reqs:100, conc:10, rule:"type:each ?!= 'c'"
, query:?perPage=20
]
┌─ Best: 5.411323388s
├─ Worst: 6.569046615s
├─ Completed: 1m1.117875875s
└─ Errors: 0
posts100k - multiple select :each (no index, at-least-one, skipTotal) [reqs:100, conc:10, rule:"type:each ?!= 'c'"
, query:?perPage=20&skipTotal=1
]
┌─ Best: 3.312974ms
├─ Worst: 33.814377ms
├─ Completed: 118.724402ms
└─ Errors: 0
posts100k - nested single relations lookup (no indexes) [reqs:100, conc:10, rule:"author.organization.name != 'test'"
, query:?perPage=20
]
┌─ Best: 7.795421072s
├─ Worst: 9.317466088s
├─ Completed: 1m24.533439369s
└─ Errors: 0
posts100k - nested single relations lookup (no indexes, skipTotal) [reqs:100, conc:10, rule:"author.organization.name != 'test'"
, query:?perPage=20&skipTotal=1
]
┌─ Best: 3.511855ms
├─ Worst: 194.804005ms
├─ Completed: 271.650803ms
└─ Errors: 0
posts100k - nested multiple relations lookup (no indexes, match-all) [reqs:100, conc:10, rule:"author.permissions.active = true"
, query:?perPage=20
]
┌─ Best: 19.887570273s
├─ Worst: 22.422892967s
├─ Completed: 3m32.565766193s
└─ Errors: 0
posts100k - nested multiple relations lookup (no indexes, match-all, skipTotal) [reqs:100, conc:10, rule:"author.permissions.active = true"
, query:?perPage=20&skipTotal=1
]
┌─ Best: 18.314318ms
├─ Worst: 271.522959ms
├─ Completed: 610.932648ms
└─ Errors: 0
posts100k - nested multiple relations lookup (no indexes, at-least-one) [reqs:100, conc:10, rule:"author.permissions.active ?= true"
, query:?perPage=20
]
┌─ Best: 11.843080342s
├─ Worst: 46.454829967s
├─ Completed: 3m57.383181001s
└─ Errors: 0
posts100k - nested multiple relations lookup (no indexes, at-least-one, skipTotal) [reqs:100, conc:10, rule:"author.permissions.active ?= true"
, query:?perPage=20&skipTotal=1
]
┌─ Best: 3.812966ms
├─ Worst: 132.840675ms
├─ Completed: 273.109241ms
└─ Errors: 0
┌─ Best: 1.74282927s
├─ Worst: 11.940595946s
├─ Completed: 11.95018324s
└─ Errors: 0
┌─ Best: 558.85007ms
├─ Worst: 9.833787813s
├─ Completed: 9.842452866s
└─ Errors: 0
┌─ Best: 419.250336ms
├─ Worst: 1.426878469s
├─ Completed: 9.643852162s
└─ Errors: 0
┌─ Best: 610.322291ms
├─ Worst: 1.373593981s
├─ Completed: 10.282909854s
└─ Errors: 0
┌─ Best: 22.52152ms
├─ Worst: 49.771248ms
├─ Completed: 15.912073199s
└─ Errors: 0
┌─ Best: 22.310481ms
├─ Worst: 48.407568ms
├─ Completed: 15.787087124s
└─ Errors: 0
┌─ Best: 1.543723ms
├─ Worst: 63.00172ms
├─ Completed: 127.254642ms
└─ Errors: 0
┌─ Best: 2.158124ms
├─ Worst: 31.36262ms
├─ Completed: 93.739179ms
└─ Errors: 0
┌─ Best: 4.283809ms
├─ Worst: 70.609136ms
├─ Completed: 206.828917ms
└─ Errors: 0
┌─ Best: 3.290807ms
├─ Worst: 77.160309ms
├─ Completed: 209.362844ms
└─ Errors: 0
┌─ Best: 3.320686ms
├─ Worst: 44.291886ms
├─ Completed: 176.531622ms
└─ Errors: 0
┌─ Best: 3.152326ms
├─ Worst: 48.425734ms
├─ Completed: 177.325185ms
└─ Errors: 0
┌─ Best: 4.334688ms
├─ Worst: 49.863937ms
├─ Completed: 180.476433ms
└─ Errors: 0
┌─ Best: 4.070848ms
├─ Worst: 50.392419ms
├─ Completed: 184.606163ms
└─ Errors: 0
┌─ Best: 3.600727ms
├─ Worst: 51.182341ms
├─ Completed: 203.786162ms
└─ Errors: 0
┌─ Best: 3.241007ms
├─ Worst: 45.868932ms
├─ Completed: 193.704504ms
└─ Errors: 0
┌─ Best: 886.360049ms
├─ Worst: 38.402099919s
├─ Completed: 1m27.391482443s
└─ Errors: 0
deleting 100 organizations - with cascade deleting all users and associated posts [conc:10, rule:""
]
┌─ Best: 2.629933861s
├─ Worst: 3m13.800058396s
├─ Completed: 5m27.449432646s
└─ Errors: 0