Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | mod_storage_sql: Return cached total where it makes sense | Kim Alvefur | 2021-11-30 | 1 | -4/+9 |
| | | | | | This should skip the summary SQL query when not needed, ie when the cached value can be used directly. | ||||
* | mod_storage_sql: Adjust handling of 'total' for multi-id queries | Kim Alvefur | 2021-11-30 | 1 | -2/+3 |
| | | | | | Otherwise a query for a set of ids may cause that value to be cached, despite only covering a subset. | ||||
* | mod_storage_sql: Fix traceback on multi-user deletion | Kim Alvefur | 2021-11-30 | 1 | -2/+6 |
| | | | | | | | jid.join(true, ...) fails. Since we don't know which users this affects, best to clear the whole cache. | ||||
* | mod_storage_sql: Expose multi-user deletion capability | Kim Alvefur | 2021-11-30 | 1 | -0/+1 |
| | | | | | archive_store:delete(true) deletes messages for all users, which would allow some simplification when this is supported. | ||||
* | mod_storage_sql: Fix for move of yes/no function (Thanks Kasim) | Kim Alvefur | 2021-06-21 | 1 | -2/+2 |
| | |||||
* | mod_storage_sql: Implement map-like API for archives | Kim Alvefur | 2021-02-01 | 1 | -0/+47 |
| | | | | | | | | Used by mod_http_file_share, muc moderation, etc. Tests tweaked because they failed on stanza internals that happen becasue of re-serialization. Namespaces differ since inheritance is implicit when building but explicit after parsing. | ||||
* | mod_storage_sql: Fix compatibilty with Lua 5.1 | Kim Alvefur | 2021-01-13 | 1 | -1/+2 |
| | | | | | | string.rep() doesn't have the 3rd argument before Lua 5.2 Revert once we drop support for Lua 5.1 | ||||
* | mod_storage_sql: Support query for set of IDs | Kim Alvefur | 2021-01-12 | 1 | -0/+10 |
| | | | | Not compatible with Lua 5.1 | ||||
* | mod_storage_sql: Advertise support for id range query | Kim Alvefur | 2021-01-09 | 1 | -0/+1 |
| | | | | That is, a query for items between two IDs (not inclusive). | ||||
* | mod_storage_sql: Measure hits/misses on the item count cache | Kim Alvefur | 2020-07-02 | 1 | -0/+7 |
| | | | | | A cache miss can be expensive so having numbers on how often this occurs may be valuable. | ||||
* | mod_storage_sql: Fix incorrect results when fetching items before specific ↵ | Matthew Wild | 2020-06-12 | 1 | -1/+1 |
| | | | | | | archive id Copy/paste error, introduced in deb68066c7aa | ||||
* | mod_storage_sql: Log database connection parameters when creating engine | Kim Alvefur | 2020-05-02 | 1 | -2/+3 |
| | | | | | | This is meant to help trace down an issue where Prosody apparently creates multiple conflicting SQL engines, causing problems especially with SQLite3, e.g. #616 #784. | ||||
* | Merge 0.11->trunk | Kim Alvefur | 2020-03-22 | 1 | -0/+1 |
|\ | |||||
| * | mod_storage_sql: Add index covering sort_id to improve performance (fixes #1505) | Kim Alvefur | 2020-03-22 | 1 | -0/+1 |
| | | |||||
* | | storagemanager, mod_storage_sql: Rename methods to :get_all() and :delete_all() | Matthew Wild | 2020-03-11 | 1 | -4/+4 |
| | | |||||
* | | mod_storage_sql: Add map_store:find_key() and map_store:delete_key() (+ tests) | Matthew Wild | 2020-03-11 | 1 | -0/+44 |
| | | |||||
* | | Merge 0.11->trunk | Kim Alvefur | 2020-02-22 | 1 | -6/+6 |
|\| | |||||
| * | mod_storage_sql: Move update limit check back one step, fixes traceback | Kim Alvefur | 2020-02-22 | 1 | -6/+6 |
| | | | | | | | | | | 0c00274528a4 moved it one step too far, so the check was performed before connecting to the database instead of after. | ||||
* | | Merge 0.11->trunk | Kim Alvefur | 2020-02-21 | 1 | -7/+7 |
|\| | |||||
| * | mod_storage_sql: Fix check for deletion limits (fixes #1494) | Kim Alvefur | 2020-02-21 | 1 | -7/+7 |
| | | | | | | | | | | The check was only performed if sql_manage_tables was set to true (the default) It should always be performed | ||||
* | | mod_storage_sql: Remove unused and not actually returned return value [luacheck] | Kim Alvefur | 2019-12-24 | 1 | -1/+1 |
| | | | | | | | | The :delete throws an error, it does not return one like this. | ||||
* | | mod_storage_*: Also include timestmap of first message in :summary API | Kim Alvefur | 2019-08-23 | 1 | -3/+5 |
| | | | | | | | | | | For completeness along with most recent timestamp. Might be nice to be able to order by oldest unread message. | ||||
* | | mod_storage_*: Include timestamp of latest message in :summary API | Kim Alvefur | 2019-08-23 | 1 | -1/+4 |
| | | | | | | | | | | | | | | Clients may want to show a list of conversations ordered by how timestamp of most recent message. The counts allow a badge with unread message counter. | ||||
* | | mod_storage_*: Tweak :summary API to allow future expansion with more fields | Kim Alvefur | 2019-08-23 | 1 | -3/+5 |
| | | | | | | | | Eg might want to include last message, timestamp, chat state or other info. | ||||
* | | mod_storage_sql: Ignore shadowed error variable [luacheck] | Kim Alvefur | 2019-05-28 | 1 | -1/+1 |
| | | |||||
* | | mod_storage_sql: Fix to use correct arguments to archive id lookup | Kim Alvefur | 2019-05-28 | 1 | -2/+2 |
| | | |||||
* | | mod_storage_sql: Correctly return item-not-found error | Kim Alvefur | 2019-05-28 | 1 | -2/+3 |
| | | | | | | | | `return ok, err` comes out as `transaction_ok, ok, err` | ||||
* | | mod_storage_sql: Look up archive IDs in separate queries (fixes #1325) | Kim Alvefur | 2019-03-23 | 1 | -29/+29 |
| | | | | | | | | This is probably not good for performance. | ||||
* | | Merge 0.11->trunk | Kim Alvefur | 2019-05-26 | 1 | -14/+22 |
|\| | |||||
| * | mod_storage_sql: Handle SQLite DELETE with LIMIT being optional (fixes #1359) | Kim Alvefur | 2019-05-13 | 1 | -6/+15 |
| | | |||||
| * | mod_storage_sql: Move code out of if-else chain | Kim Alvefur | 2019-05-13 | 1 | -9/+8 |
| | | |||||
* | | mod_storage_sql: Add support for iterating over users in archive stores | Kim Alvefur | 2019-05-05 | 1 | -0/+13 |
| | | |||||
* | | mod_storage_sql: Implement archive summary API | Kim Alvefur | 2019-02-25 | 1 | -0/+35 |
| | | |||||
* | | mod_storage_sql: No archive item limit by default | Kim Alvefur | 2019-03-22 | 1 | -4/+6 |
| | | |||||
* | | mod_storage_sql: Return cached count if only this is queried for | Kim Alvefur | 2019-03-22 | 1 | -1/+5 |
| | | |||||
* | | mod_storage_sql: Cache total count if it's calculated as part of the current ↵ | Kim Alvefur | 2019-03-22 | 1 | -0/+3 |
| | | | | | | | | query | ||||
* | | mod_storage_sql: Skip cache write | Kim Alvefur | 2019-03-22 | 1 | -1/+0 |
| | | | | | | | | | | This would cause the cache to be wrong in case the the later INSERT fails and the transaction is aborted. | ||||
* | | mod_storage_sql: Fix to use currently queried store | Kim Alvefur | 2019-03-22 | 1 | -2/+2 |
| | | | | | | | | | | Was using the previously queried store due to this being cached in an upvalue. | ||||
* | | mod_storage_sql: Don't increment counter twice (fixes accounting error) | Kim Alvefur | 2019-03-22 | 1 | -1/+0 |
| | | |||||
* | | mod_storage_internal,_sql: Key item count cache on both username and store | Kim Alvefur | 2019-03-22 | 1 | -5/+8 |
| | | |||||
* | | mod_storage_internal,_sql: Expose archive capabilities feature set | Kim Alvefur | 2019-03-22 | 1 | -0/+2 |
| | | | | | | | | This was planned to be added long ago but was forgotten. | ||||
* | | mod_storage_internal,_sql: Add limit to number of items in an archive store ↵ | Matthew Wild | 2017-10-20 | 1 | -1/+38 |
| | | | | | | | | (fixes #733) | ||||
* | | various: Don't rely on _G.unpack existing | Kim Alvefur | 2018-12-08 | 1 | -1/+1 |
|/ | |||||
* | mod_storage_sql: Catch errors during schema upgrade (thanks Nothing4You) | Matthew Wild | 2018-11-15 | 1 | -4/+4 |
| | |||||
* | mod_storage_sql: Handle Lua 5.3 move of unpack function | Kim Alvefur | 2018-10-21 | 1 | -1/+1 |
| | |||||
* | mod_storage_sql: Fix issue number in comment that was fixed by 55b40f3fa659 ↵ | Matthew Wild | 2018-10-13 | 1 | -1/+1 |
| | | | | (fixes #1073) | ||||
* | mod_storage_sql: Keep prosodyarchive_index unique constraint on non-MySQL DBs | Matthew Wild | 2018-10-12 | 1 | -1/+1 |
| | |||||
* | mod_storage_sql: Change prosodyarchive_index to be non-unique (fixes #1087) | Matthew Wild | 2018-10-11 | 1 | -8/+25 |
| | | | | | | MySQL requires that the first 20 bytes are unique, even if they differ after the first 20 bytes. This breaks e.g. pubsub/PEP nodes longer than 20 characters that have common prefixes. | ||||
* | mod_storage_sql: Have :users() throw an error on failure instead of ↵ | Matthew Wild | 2018-10-11 | 1 | -1/+1 |
| | | | | returning non-iterator values | ||||
* | mod_storage_sql: Workaround MySQL not supporting LIMIT subquery in archive ↵ | Matthew Wild | 2018-10-11 | 1 | -3/+9 |
| | | | | truncate operations, fixes #1200 |