Annotate

spec/scansion/uptime.scs @ 12462:11765f0605ec

mod_s2s: Store real stanzas in session.sendq, rather than strings This is the "right" thing to do. Strings were more memory-efficient, but e.g. bypassed stanza filters at reconnection time. Also not being stanzas prevents us from potential future work, such as merging sendq with mod_smacks. Regarding performance: we should counter the probable negative effect of this change with other positive changes that are desired anyway - e.g. a limit on the size of the sendq, improved in-memory representation of stanzas, s2s backoff (e.g. if a remote server is persistently unreachable, cache this failure for a while and don't just keep forever queuing stanzas for it).
author Matthew Wild <mwild1@gmail.com>
date Wed, 23 Mar 2022 15:25:22 +0000
parent 10731:8e2f9d0fa72d
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
10731
8e2f9d0fa72d mod_uptime: Add scansion test coverage
Kim Alvefur <zash@zash.se>
parents:
diff changeset
1 # XEP-0012: Last Activity / mod_uptime
8e2f9d0fa72d mod_uptime: Add scansion test coverage
Kim Alvefur <zash@zash.se>
parents:
diff changeset
2
8e2f9d0fa72d mod_uptime: Add scansion test coverage
Kim Alvefur <zash@zash.se>
parents:
diff changeset
3 [Client] Romeo
8e2f9d0fa72d mod_uptime: Add scansion test coverage
Kim Alvefur <zash@zash.se>
parents:
diff changeset
4 jid: romeo@localhost
8e2f9d0fa72d mod_uptime: Add scansion test coverage
Kim Alvefur <zash@zash.se>
parents:
diff changeset
5 password: password
8e2f9d0fa72d mod_uptime: Add scansion test coverage
Kim Alvefur <zash@zash.se>
parents:
diff changeset
6
8e2f9d0fa72d mod_uptime: Add scansion test coverage
Kim Alvefur <zash@zash.se>
parents:
diff changeset
7 -----
8e2f9d0fa72d mod_uptime: Add scansion test coverage
Kim Alvefur <zash@zash.se>
parents:
diff changeset
8
8e2f9d0fa72d mod_uptime: Add scansion test coverage
Kim Alvefur <zash@zash.se>
parents:
diff changeset
9 Romeo connects
8e2f9d0fa72d mod_uptime: Add scansion test coverage
Kim Alvefur <zash@zash.se>
parents:
diff changeset
10
8e2f9d0fa72d mod_uptime: Add scansion test coverage
Kim Alvefur <zash@zash.se>
parents:
diff changeset
11 Romeo sends:
8e2f9d0fa72d mod_uptime: Add scansion test coverage
Kim Alvefur <zash@zash.se>
parents:
diff changeset
12 <iq id='a' type='get' to='localhost'>
8e2f9d0fa72d mod_uptime: Add scansion test coverage
Kim Alvefur <zash@zash.se>
parents:
diff changeset
13 <query xmlns='jabber:iq:last'/>
8e2f9d0fa72d mod_uptime: Add scansion test coverage
Kim Alvefur <zash@zash.se>
parents:
diff changeset
14 </iq>
8e2f9d0fa72d mod_uptime: Add scansion test coverage
Kim Alvefur <zash@zash.se>
parents:
diff changeset
15
8e2f9d0fa72d mod_uptime: Add scansion test coverage
Kim Alvefur <zash@zash.se>
parents:
diff changeset
16 Romeo receives:
8e2f9d0fa72d mod_uptime: Add scansion test coverage
Kim Alvefur <zash@zash.se>
parents:
diff changeset
17 <iq type='result' id='a' from='localhost'>
8e2f9d0fa72d mod_uptime: Add scansion test coverage
Kim Alvefur <zash@zash.se>
parents:
diff changeset
18 <query xmlns='jabber:iq:last' seconds='0'/>
8e2f9d0fa72d mod_uptime: Add scansion test coverage
Kim Alvefur <zash@zash.se>
parents:
diff changeset
19 </iq>
8e2f9d0fa72d mod_uptime: Add scansion test coverage
Kim Alvefur <zash@zash.se>
parents:
diff changeset
20
8e2f9d0fa72d mod_uptime: Add scansion test coverage
Kim Alvefur <zash@zash.se>
parents:
diff changeset
21 Romeo disconnects