Software /
code /
prosody
Annotate
spec/scansion/pep_nickname.scs @ 13186:affaf6d08d26
util.datamanager: Pad list writes to avoid crossing block boundaries
By padding items so that they do not cross block boundaries, it becomes
eaiser to delete whole blocks with fallocate() without cutting items
in half, improving efficiency of such operations.
Since list stores are used for message archives, where the most common
deletion operation would be of the oldest entires, at the top of the
file. With this, all blocks that contain items to be removed could be
deleted without needing to read, delete and write out the whole file.
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Wed, 07 Jun 2023 00:39:30 +0200 |
parent | 12965:edde56b60fd7 |
rev | line source |
---|---|
9339
a35a636481c6
mod_pep: Add test publishing a nickname
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
1 # Publishing a nickname in PEP and receiving a notification |
a35a636481c6
mod_pep: Add test publishing a nickname
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
2 |
a35a636481c6
mod_pep: Add test publishing a nickname
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
3 [Client] Romeo |
11714
d783716103c1
mod_pubsub: Fix inclusion of publisher (fixes #1399)
Kim Alvefur <zash@zash.se>
parents:
9339
diff
changeset
|
4 jid: romeo@localhost |
9339
a35a636481c6
mod_pep: Add test publishing a nickname
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
5 password: password |
a35a636481c6
mod_pep: Add test publishing a nickname
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
6 |
a35a636481c6
mod_pep: Add test publishing a nickname
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
7 ----- |
a35a636481c6
mod_pep: Add test publishing a nickname
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
8 |
a35a636481c6
mod_pep: Add test publishing a nickname
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
9 Romeo connects |
a35a636481c6
mod_pep: Add test publishing a nickname
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
10 |
a35a636481c6
mod_pep: Add test publishing a nickname
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
11 Romeo sends: |
a35a636481c6
mod_pep: Add test publishing a nickname
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
12 <iq id="4" type="set"> |
a35a636481c6
mod_pep: Add test publishing a nickname
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
13 <pubsub xmlns="http://jabber.org/protocol/pubsub"> |
a35a636481c6
mod_pep: Add test publishing a nickname
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
14 <publish node="http://jabber.org/protocol/nick"> |
a35a636481c6
mod_pep: Add test publishing a nickname
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
15 <item id="current"> |
a35a636481c6
mod_pep: Add test publishing a nickname
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
16 <nickname xmlns="http://jabber.org/protocol/nick"/> |
a35a636481c6
mod_pep: Add test publishing a nickname
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
17 </item> |
a35a636481c6
mod_pep: Add test publishing a nickname
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
18 </publish> |
a35a636481c6
mod_pep: Add test publishing a nickname
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
19 </pubsub> |
a35a636481c6
mod_pep: Add test publishing a nickname
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
20 </iq> |
a35a636481c6
mod_pep: Add test publishing a nickname
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
21 |
a35a636481c6
mod_pep: Add test publishing a nickname
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
22 Romeo receives: |
11714
d783716103c1
mod_pubsub: Fix inclusion of publisher (fixes #1399)
Kim Alvefur <zash@zash.se>
parents:
9339
diff
changeset
|
23 <iq id="4" type="result"> |
9339
a35a636481c6
mod_pep: Add test publishing a nickname
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
24 <pubsub xmlns="http://jabber.org/protocol/pubsub"> |
a35a636481c6
mod_pep: Add test publishing a nickname
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
25 <publish node="http://jabber.org/protocol/nick"> |
a35a636481c6
mod_pep: Add test publishing a nickname
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
26 <item id="current"/> |
a35a636481c6
mod_pep: Add test publishing a nickname
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
27 </publish> |
a35a636481c6
mod_pep: Add test publishing a nickname
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
28 </pubsub> |
a35a636481c6
mod_pep: Add test publishing a nickname
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
29 </iq> |
a35a636481c6
mod_pep: Add test publishing a nickname
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
30 |
a35a636481c6
mod_pep: Add test publishing a nickname
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
31 Romeo sends: |
a35a636481c6
mod_pep: Add test publishing a nickname
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
32 <presence> |
a35a636481c6
mod_pep: Add test publishing a nickname
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
33 <c xmlns="http://jabber.org/protocol/caps" hash="sha-1" node="http://code.matthewwild.co.uk/clix/" ver="jC32N+FhQoLrZ7nNQtZK3aqR0Fk="/> |
a35a636481c6
mod_pep: Add test publishing a nickname
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
34 </presence> |
a35a636481c6
mod_pep: Add test publishing a nickname
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
35 |
a35a636481c6
mod_pep: Add test publishing a nickname
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
36 Romeo receives: |
11714
d783716103c1
mod_pubsub: Fix inclusion of publisher (fixes #1399)
Kim Alvefur <zash@zash.se>
parents:
9339
diff
changeset
|
37 <iq id="disco" from="romeo@localhost" type="get"> |
9339
a35a636481c6
mod_pep: Add test publishing a nickname
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
38 <query xmlns="http://jabber.org/protocol/disco#info" node="http://code.matthewwild.co.uk/clix/#jC32N+FhQoLrZ7nNQtZK3aqR0Fk="/> |
a35a636481c6
mod_pep: Add test publishing a nickname
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
39 </iq> |
a35a636481c6
mod_pep: Add test publishing a nickname
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
40 |
a35a636481c6
mod_pep: Add test publishing a nickname
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
41 Romeo receives: |
11714
d783716103c1
mod_pubsub: Fix inclusion of publisher (fixes #1399)
Kim Alvefur <zash@zash.se>
parents:
9339
diff
changeset
|
42 <presence> |
9339
a35a636481c6
mod_pep: Add test publishing a nickname
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
43 <c xmlns="http://jabber.org/protocol/caps" hash="sha-1" node="http://code.matthewwild.co.uk/clix/" ver="jC32N+FhQoLrZ7nNQtZK3aqR0Fk="/> |
a35a636481c6
mod_pep: Add test publishing a nickname
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
44 </presence> |
a35a636481c6
mod_pep: Add test publishing a nickname
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
45 |
a35a636481c6
mod_pep: Add test publishing a nickname
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
46 Romeo sends: |
a35a636481c6
mod_pep: Add test publishing a nickname
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
47 <iq id="disco" type="result" to="romeo@localhost"> |
a35a636481c6
mod_pep: Add test publishing a nickname
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
48 <query xmlns="http://jabber.org/protocol/disco#info" node="http://code.matthewwild.co.uk/clix/#jC32N+FhQoLrZ7nNQtZK3aqR0Fk="> |
a35a636481c6
mod_pep: Add test publishing a nickname
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
49 <identity type="console" name="clix" category="client"/> |
a35a636481c6
mod_pep: Add test publishing a nickname
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
50 <feature var="http://jabber.org/protocol/disco#items"/> |
a35a636481c6
mod_pep: Add test publishing a nickname
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
51 <feature var="http://jabber.org/protocol/disco#info"/> |
a35a636481c6
mod_pep: Add test publishing a nickname
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
52 <feature var="http://jabber.org/protocol/caps"/> |
a35a636481c6
mod_pep: Add test publishing a nickname
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
53 <feature var="http://jabber.org/protocol/nick+notify"/> |
a35a636481c6
mod_pep: Add test publishing a nickname
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
54 </query> |
a35a636481c6
mod_pep: Add test publishing a nickname
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
55 </iq> |
a35a636481c6
mod_pep: Add test publishing a nickname
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
56 |
a35a636481c6
mod_pep: Add test publishing a nickname
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
57 Romeo receives: |
11714
d783716103c1
mod_pubsub: Fix inclusion of publisher (fixes #1399)
Kim Alvefur <zash@zash.se>
parents:
9339
diff
changeset
|
58 <message type="headline" from="romeo@localhost"> |
9339
a35a636481c6
mod_pep: Add test publishing a nickname
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
59 <event xmlns="http://jabber.org/protocol/pubsub#event"> |
a35a636481c6
mod_pep: Add test publishing a nickname
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
60 <items node="http://jabber.org/protocol/nick"> |
12965
edde56b60fd7
scansion: Fix tests failing due to lack of 'publisher'
Matthew Wild <mwild1@gmail.com>
parents:
11714
diff
changeset
|
61 <item id="current"> |
9339
a35a636481c6
mod_pep: Add test publishing a nickname
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
62 <nickname xmlns="http://jabber.org/protocol/nick"/> |
a35a636481c6
mod_pep: Add test publishing a nickname
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
63 </item> |
a35a636481c6
mod_pep: Add test publishing a nickname
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
64 </items> |
a35a636481c6
mod_pep: Add test publishing a nickname
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
65 </event> |
a35a636481c6
mod_pep: Add test publishing a nickname
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
66 </message> |
a35a636481c6
mod_pep: Add test publishing a nickname
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
67 |
a35a636481c6
mod_pep: Add test publishing a nickname
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
68 Romeo sends: |
a35a636481c6
mod_pep: Add test publishing a nickname
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
69 <presence type="unavailable"/> |
a35a636481c6
mod_pep: Add test publishing a nickname
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
70 |
a35a636481c6
mod_pep: Add test publishing a nickname
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
71 Romeo disconnects |
a35a636481c6
mod_pep: Add test publishing a nickname
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
72 |