Software / code / prosody
Comparison
plugins/mod_storage_sql.lua @ 10011:2408e6362c15 0.11
mod_storage_sql: Move code out of if-else chain
| author | Kim Alvefur <zash@zash.se> |
|---|---|
| date | Mon, 13 May 2019 14:47:41 +0200 |
| parent | 9628:2fcf517b811e |
| child | 10012:acf4a7bfb6aa |
comparison
equal
deleted
inserted
replaced
| 9998:c8646f65767a | 10011:2408e6362c15 |
|---|---|
| 388 if query.truncate == nil then | 388 if query.truncate == nil then |
| 389 sql_query = sql_query:format(t_concat(where, " AND ")); | 389 sql_query = sql_query:format(t_concat(where, " AND ")); |
| 390 else | 390 else |
| 391 args[#args+1] = query.truncate; | 391 args[#args+1] = query.truncate; |
| 392 local unlimited = "ALL"; | 392 local unlimited = "ALL"; |
| 393 sql_query = [[ | |
| 394 DELETE FROM "prosodyarchive" | |
| 395 WHERE "sort_id" IN ( | |
| 396 SELECT "sort_id" FROM "prosodyarchive" | |
| 397 WHERE %s | |
| 398 ORDER BY "sort_id" %s | |
| 399 LIMIT %s OFFSET ? | |
| 400 );]]; | |
| 393 if engine.params.driver == "SQLite3" then | 401 if engine.params.driver == "SQLite3" then |
| 394 sql_query = [[ | 402 sql_query = [[ |
| 395 DELETE FROM "prosodyarchive" | 403 DELETE FROM "prosodyarchive" |
| 396 WHERE %s | 404 WHERE %s |
| 397 ORDER BY "sort_id" %s | 405 ORDER BY "sort_id" %s |
| 405 WHERE %s | 413 WHERE %s |
| 406 ORDER BY "sort_id" %s | 414 ORDER BY "sort_id" %s |
| 407 LIMIT %s OFFSET ? | 415 LIMIT %s OFFSET ? |
| 408 ) AS limiter on result.sort_id = limiter.sort_id;]]; | 416 ) AS limiter on result.sort_id = limiter.sort_id;]]; |
| 409 unlimited = "18446744073709551615"; | 417 unlimited = "18446744073709551615"; |
| 410 else | |
| 411 sql_query = [[ | |
| 412 DELETE FROM "prosodyarchive" | |
| 413 WHERE "sort_id" IN ( | |
| 414 SELECT "sort_id" FROM "prosodyarchive" | |
| 415 WHERE %s | |
| 416 ORDER BY "sort_id" %s | |
| 417 LIMIT %s OFFSET ? | |
| 418 );]]; | |
| 419 end | 418 end |
| 420 sql_query = string.format(sql_query, t_concat(where, " AND "), | 419 sql_query = string.format(sql_query, t_concat(where, " AND "), |
| 421 query.reverse and "ASC" or "DESC", unlimited); | 420 query.reverse and "ASC" or "DESC", unlimited); |
| 422 end | 421 end |
| 423 return engine:delete(sql_query, unpack(args)); | 422 return engine:delete(sql_query, unpack(args)); |