Annotate

plugins/mod_debug_sql.lua @ 9751:39ee70fbb009

mod_mam: Perform message expiry based on building an index by date For each day, store a set of users that have new messages. To expire messages, we collect the union of sets of users from dates that fall outside the cleanup range. The previous algoritm did not work well with many users, especially with the default settings.
author Kim Alvefur <zash@zash.se>
date Thu, 03 Jan 2019 17:25:43 +0100
parent 8391:5edb0d01a94f
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
7176
b8bbd5f91ad9 mod_debug_sql: Small plugin that enables raw SQL query logging (for debugging)
Kim Alvefur <zash@zash.se>
parents:
diff changeset
1 -- Enables SQL query logging
b8bbd5f91ad9 mod_debug_sql: Small plugin that enables raw SQL query logging (for debugging)
Kim Alvefur <zash@zash.se>
parents:
diff changeset
2 --
b8bbd5f91ad9 mod_debug_sql: Small plugin that enables raw SQL query logging (for debugging)
Kim Alvefur <zash@zash.se>
parents:
diff changeset
3 -- luacheck: ignore 213/uri
b8bbd5f91ad9 mod_debug_sql: Small plugin that enables raw SQL query logging (for debugging)
Kim Alvefur <zash@zash.se>
parents:
diff changeset
4
8391
5edb0d01a94f mod_debug_sql: Declare itself as global module
Kim Alvefur <zash@zash.se>
parents: 7176
diff changeset
5 module:set_global();
5edb0d01a94f mod_debug_sql: Declare itself as global module
Kim Alvefur <zash@zash.se>
parents: 7176
diff changeset
6
7176
b8bbd5f91ad9 mod_debug_sql: Small plugin that enables raw SQL query logging (for debugging)
Kim Alvefur <zash@zash.se>
parents:
diff changeset
7 local engines = module:shared("/*/sql/connections");
b8bbd5f91ad9 mod_debug_sql: Small plugin that enables raw SQL query logging (for debugging)
Kim Alvefur <zash@zash.se>
parents:
diff changeset
8
b8bbd5f91ad9 mod_debug_sql: Small plugin that enables raw SQL query logging (for debugging)
Kim Alvefur <zash@zash.se>
parents:
diff changeset
9 for uri, engine in pairs(engines) do
b8bbd5f91ad9 mod_debug_sql: Small plugin that enables raw SQL query logging (for debugging)
Kim Alvefur <zash@zash.se>
parents:
diff changeset
10 engine:debug(true);
b8bbd5f91ad9 mod_debug_sql: Small plugin that enables raw SQL query logging (for debugging)
Kim Alvefur <zash@zash.se>
parents:
diff changeset
11 end
b8bbd5f91ad9 mod_debug_sql: Small plugin that enables raw SQL query logging (for debugging)
Kim Alvefur <zash@zash.se>
parents:
diff changeset
12
b8bbd5f91ad9 mod_debug_sql: Small plugin that enables raw SQL query logging (for debugging)
Kim Alvefur <zash@zash.se>
parents:
diff changeset
13 setmetatable(engines, {
b8bbd5f91ad9 mod_debug_sql: Small plugin that enables raw SQL query logging (for debugging)
Kim Alvefur <zash@zash.se>
parents:
diff changeset
14 __newindex = function (t, uri, engine)
b8bbd5f91ad9 mod_debug_sql: Small plugin that enables raw SQL query logging (for debugging)
Kim Alvefur <zash@zash.se>
parents:
diff changeset
15 engine:debug(true);
b8bbd5f91ad9 mod_debug_sql: Small plugin that enables raw SQL query logging (for debugging)
Kim Alvefur <zash@zash.se>
parents:
diff changeset
16 rawset(t, uri, engine);
b8bbd5f91ad9 mod_debug_sql: Small plugin that enables raw SQL query logging (for debugging)
Kim Alvefur <zash@zash.se>
parents:
diff changeset
17 end
b8bbd5f91ad9 mod_debug_sql: Small plugin that enables raw SQL query logging (for debugging)
Kim Alvefur <zash@zash.se>
parents:
diff changeset
18 });
b8bbd5f91ad9 mod_debug_sql: Small plugin that enables raw SQL query logging (for debugging)
Kim Alvefur <zash@zash.se>
parents:
diff changeset
19
b8bbd5f91ad9 mod_debug_sql: Small plugin that enables raw SQL query logging (for debugging)
Kim Alvefur <zash@zash.se>
parents:
diff changeset
20 function module.unload()
b8bbd5f91ad9 mod_debug_sql: Small plugin that enables raw SQL query logging (for debugging)
Kim Alvefur <zash@zash.se>
parents:
diff changeset
21 setmetatable(engines, nil);
b8bbd5f91ad9 mod_debug_sql: Small plugin that enables raw SQL query logging (for debugging)
Kim Alvefur <zash@zash.se>
parents:
diff changeset
22 for uri, engine in pairs(engines) do
b8bbd5f91ad9 mod_debug_sql: Small plugin that enables raw SQL query logging (for debugging)
Kim Alvefur <zash@zash.se>
parents:
diff changeset
23 engine:debug(false);
b8bbd5f91ad9 mod_debug_sql: Small plugin that enables raw SQL query logging (for debugging)
Kim Alvefur <zash@zash.se>
parents:
diff changeset
24 end
b8bbd5f91ad9 mod_debug_sql: Small plugin that enables raw SQL query logging (for debugging)
Kim Alvefur <zash@zash.se>
parents:
diff changeset
25 end
b8bbd5f91ad9 mod_debug_sql: Small plugin that enables raw SQL query logging (for debugging)
Kim Alvefur <zash@zash.se>
parents:
diff changeset
26
b8bbd5f91ad9 mod_debug_sql: Small plugin that enables raw SQL query logging (for debugging)
Kim Alvefur <zash@zash.se>
parents:
diff changeset
27