annotate plugins/mod_storage_none.lua @ 10486:479e96e554c8

net.server_epoll: Add debug logging for delayed reading In :onreadable, if there is still buffered incoming data after reading from the socket (as indicated by the :dirty method, usually because LuaSocket has an 8k buffer that's full but it read a smaller amount), another attempt to read is scheduled via this :pausefor method. This is also called from some other places where it would be pointless to read because there shouldn't be any data. In the delayed read case, this should report that the socket is "dirty". If it reports that the socket is "clean" then the question is where the buffer contents went? If this doesn't get logged after the scheduled time (0.000001s by default) then this would suggests a problem with timer or scheduling.
author Kim Alvefur <zash@zash.se>
date Sat, 07 Dec 2019 19:05:10 +0100
parents ef671d337577
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
8058
1b35a562528d mod_storage_none: Ignore unused arguments [luacheck]
Kim Alvefur <zash@zash.se>
parents: 6283
diff changeset
1 -- luacheck: ignore 212
1b35a562528d mod_storage_none: Ignore unused arguments [luacheck]
Kim Alvefur <zash@zash.se>
parents: 6283
diff changeset
2
5425
b00812c6daf8 mod_storage_none: A null-like storage provider that returns all stores as empty, and fails to save anything to them
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
3 local driver = {};
b00812c6daf8 mod_storage_none: A null-like storage provider that returns all stores as empty, and fails to save anything to them
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
4 local driver_mt = { __index = driver };
b00812c6daf8 mod_storage_none: A null-like storage provider that returns all stores as empty, and fails to save anything to them
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
5
6283
7cf6d3a2c855 mod_storage_{none,internal,sql}: Return error for unsupported (everything but keyval) store types
Kim Alvefur <zash@zash.se>
parents: 5425
diff changeset
6 function driver:open(store, typ)
8059
6a725b242804 mod_storage_none: Add allways empty archive storage
Kim Alvefur <zash@zash.se>
parents: 8058
diff changeset
7 if typ and typ ~= "keyval" and typ ~= "archive" then
6283
7cf6d3a2c855 mod_storage_{none,internal,sql}: Return error for unsupported (everything but keyval) store types
Kim Alvefur <zash@zash.se>
parents: 5425
diff changeset
8 return nil, "unsupported-store";
7cf6d3a2c855 mod_storage_{none,internal,sql}: Return error for unsupported (everything but keyval) store types
Kim Alvefur <zash@zash.se>
parents: 5425
diff changeset
9 end
7cf6d3a2c855 mod_storage_{none,internal,sql}: Return error for unsupported (everything but keyval) store types
Kim Alvefur <zash@zash.se>
parents: 5425
diff changeset
10 return setmetatable({ store = store, type = typ }, driver_mt);
5425
b00812c6daf8 mod_storage_none: A null-like storage provider that returns all stores as empty, and fails to save anything to them
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
11 end
b00812c6daf8 mod_storage_none: A null-like storage provider that returns all stores as empty, and fails to save anything to them
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
12 function driver:get(user)
b00812c6daf8 mod_storage_none: A null-like storage provider that returns all stores as empty, and fails to save anything to them
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
13 return {};
b00812c6daf8 mod_storage_none: A null-like storage provider that returns all stores as empty, and fails to save anything to them
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
14 end
b00812c6daf8 mod_storage_none: A null-like storage provider that returns all stores as empty, and fails to save anything to them
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
15
b00812c6daf8 mod_storage_none: A null-like storage provider that returns all stores as empty, and fails to save anything to them
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
16 function driver:set(user, data)
b00812c6daf8 mod_storage_none: A null-like storage provider that returns all stores as empty, and fails to save anything to them
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
17 return nil, "Storage disabled";
b00812c6daf8 mod_storage_none: A null-like storage provider that returns all stores as empty, and fails to save anything to them
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
18 end
b00812c6daf8 mod_storage_none: A null-like storage provider that returns all stores as empty, and fails to save anything to them
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
19
b00812c6daf8 mod_storage_none: A null-like storage provider that returns all stores as empty, and fails to save anything to them
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
20 function driver:stores(username)
b00812c6daf8 mod_storage_none: A null-like storage provider that returns all stores as empty, and fails to save anything to them
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
21 return { "roster" };
b00812c6daf8 mod_storage_none: A null-like storage provider that returns all stores as empty, and fails to save anything to them
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
22 end
b00812c6daf8 mod_storage_none: A null-like storage provider that returns all stores as empty, and fails to save anything to them
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
23
b00812c6daf8 mod_storage_none: A null-like storage provider that returns all stores as empty, and fails to save anything to them
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
24 function driver:purge(user)
b00812c6daf8 mod_storage_none: A null-like storage provider that returns all stores as empty, and fails to save anything to them
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
25 return true;
b00812c6daf8 mod_storage_none: A null-like storage provider that returns all stores as empty, and fails to save anything to them
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
26 end
b00812c6daf8 mod_storage_none: A null-like storage provider that returns all stores as empty, and fails to save anything to them
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
27
8059
6a725b242804 mod_storage_none: Add allways empty archive storage
Kim Alvefur <zash@zash.se>
parents: 8058
diff changeset
28 function driver:append()
6a725b242804 mod_storage_none: Add allways empty archive storage
Kim Alvefur <zash@zash.se>
parents: 8058
diff changeset
29 return nil, "Storage disabled";
6a725b242804 mod_storage_none: Add allways empty archive storage
Kim Alvefur <zash@zash.se>
parents: 8058
diff changeset
30 end
6a725b242804 mod_storage_none: Add allways empty archive storage
Kim Alvefur <zash@zash.se>
parents: 8058
diff changeset
31
6a725b242804 mod_storage_none: Add allways empty archive storage
Kim Alvefur <zash@zash.se>
parents: 8058
diff changeset
32 function driver:find()
6a725b242804 mod_storage_none: Add allways empty archive storage
Kim Alvefur <zash@zash.se>
parents: 8058
diff changeset
33 return function () end, 0;
6a725b242804 mod_storage_none: Add allways empty archive storage
Kim Alvefur <zash@zash.se>
parents: 8058
diff changeset
34 end
6a725b242804 mod_storage_none: Add allways empty archive storage
Kim Alvefur <zash@zash.se>
parents: 8058
diff changeset
35
8061
ef671d337577 mod_storage_none: Add a noop archive delete method
Kim Alvefur <zash@zash.se>
parents: 8059
diff changeset
36 function driver:delete()
ef671d337577 mod_storage_none: Add a noop archive delete method
Kim Alvefur <zash@zash.se>
parents: 8059
diff changeset
37 return true;
ef671d337577 mod_storage_none: Add a noop archive delete method
Kim Alvefur <zash@zash.se>
parents: 8059
diff changeset
38 end
ef671d337577 mod_storage_none: Add a noop archive delete method
Kim Alvefur <zash@zash.se>
parents: 8059
diff changeset
39
5425
b00812c6daf8 mod_storage_none: A null-like storage provider that returns all stores as empty, and fails to save anything to them
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
40 module:provides("storage", driver);