Annotate

spec/scansion/version.scs @ 13136:396db0e7084f

mod_storage_internal: Use a binary search for time based ranges Iterating over an entire archive to find a few items in the far end from where iteration started is expensive, and probably more expensive with the lazy-loading of items added in the previous commit. Since we can now efficiently read items in random order, we can now use a binary search to find a better starting point for iteration.
author Kim Alvefur <zash@zash.se>
date Wed, 12 May 2021 01:32:03 +0200
parent 10729:dbce2b94a7eb
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
10729
dbce2b94a7eb mod_version: Add scansion test
Kim Alvefur <zash@zash.se>
parents:
diff changeset
1 # XEP-0092: Software Version / mod_version
dbce2b94a7eb mod_version: Add scansion test
Kim Alvefur <zash@zash.se>
parents:
diff changeset
2
dbce2b94a7eb mod_version: Add scansion test
Kim Alvefur <zash@zash.se>
parents:
diff changeset
3 [Client] Romeo
dbce2b94a7eb mod_version: Add scansion test
Kim Alvefur <zash@zash.se>
parents:
diff changeset
4 password: password
dbce2b94a7eb mod_version: Add scansion test
Kim Alvefur <zash@zash.se>
parents:
diff changeset
5 jid: romeo@localhost/dfaZpuxV
dbce2b94a7eb mod_version: Add scansion test
Kim Alvefur <zash@zash.se>
parents:
diff changeset
6
dbce2b94a7eb mod_version: Add scansion test
Kim Alvefur <zash@zash.se>
parents:
diff changeset
7 -----
dbce2b94a7eb mod_version: Add scansion test
Kim Alvefur <zash@zash.se>
parents:
diff changeset
8
dbce2b94a7eb mod_version: Add scansion test
Kim Alvefur <zash@zash.se>
parents:
diff changeset
9 Romeo connects
dbce2b94a7eb mod_version: Add scansion test
Kim Alvefur <zash@zash.se>
parents:
diff changeset
10
dbce2b94a7eb mod_version: Add scansion test
Kim Alvefur <zash@zash.se>
parents:
diff changeset
11 Romeo sends:
dbce2b94a7eb mod_version: Add scansion test
Kim Alvefur <zash@zash.se>
parents:
diff changeset
12 <iq id='lx2' to='localhost' type='get'>
dbce2b94a7eb mod_version: Add scansion test
Kim Alvefur <zash@zash.se>
parents:
diff changeset
13 <query xmlns='jabber:iq:version'/>
dbce2b94a7eb mod_version: Add scansion test
Kim Alvefur <zash@zash.se>
parents:
diff changeset
14 </iq>
dbce2b94a7eb mod_version: Add scansion test
Kim Alvefur <zash@zash.se>
parents:
diff changeset
15
dbce2b94a7eb mod_version: Add scansion test
Kim Alvefur <zash@zash.se>
parents:
diff changeset
16 # Version string would vary so we can't do an exact match atm
dbce2b94a7eb mod_version: Add scansion test
Kim Alvefur <zash@zash.se>
parents:
diff changeset
17 # Inclusion of <os/> is disabled in the config, it should be absent
dbce2b94a7eb mod_version: Add scansion test
Kim Alvefur <zash@zash.se>
parents:
diff changeset
18 Romeo receives:
dbce2b94a7eb mod_version: Add scansion test
Kim Alvefur <zash@zash.se>
parents:
diff changeset
19 <iq id='lx2' from='localhost' type='result'>
dbce2b94a7eb mod_version: Add scansion test
Kim Alvefur <zash@zash.se>
parents:
diff changeset
20 <query xmlns='jabber:iq:version' scansion:strict='true'>
dbce2b94a7eb mod_version: Add scansion test
Kim Alvefur <zash@zash.se>
parents:
diff changeset
21 <name>Prosody</name>
dbce2b94a7eb mod_version: Add scansion test
Kim Alvefur <zash@zash.se>
parents:
diff changeset
22 <version scansion:strict='false'/>
dbce2b94a7eb mod_version: Add scansion test
Kim Alvefur <zash@zash.se>
parents:
diff changeset
23 </query>
dbce2b94a7eb mod_version: Add scansion test
Kim Alvefur <zash@zash.se>
parents:
diff changeset
24 </iq>
dbce2b94a7eb mod_version: Add scansion test
Kim Alvefur <zash@zash.se>
parents:
diff changeset
25
dbce2b94a7eb mod_version: Add scansion test
Kim Alvefur <zash@zash.se>
parents:
diff changeset
26
dbce2b94a7eb mod_version: Add scansion test
Kim Alvefur <zash@zash.se>
parents:
diff changeset
27 Romeo disconnects