Mercurial > prosody-modules
annotate mod_storage_appendmap/README.markdown @ 5954:e5b5a74feb91
mod_rest: Workaround lack of number coercion in util.datamapper for HTTP upload
util.datamapper will not coerce a string into an integer like the
XEP-0363 'size' slot, which becomes a problem when using the HTTP GET
method, passing fields as ?query parameters which are always strings.
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Mon, 19 Aug 2024 20:08:41 +0200 |
parents | 88474dd1af48 |
children |
rev | line source |
---|---|
2061
b84284144e21
mod_storage_appendmap: Experimental storage module optimized for map stores
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
1 --- |
b84284144e21
mod_storage_appendmap: Experimental storage module optimized for map stores
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
2 labels: |
b84284144e21
mod_storage_appendmap: Experimental storage module optimized for map stores
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
3 - 'Stage-Alpha' |
b84284144e21
mod_storage_appendmap: Experimental storage module optimized for map stores
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
4 - 'Type-Storage' |
b84284144e21
mod_storage_appendmap: Experimental storage module optimized for map stores
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
5 summary: Experimental map store optimized for small incremental changes |
b84284144e21
mod_storage_appendmap: Experimental storage module optimized for map stores
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
6 ... |
b84284144e21
mod_storage_appendmap: Experimental storage module optimized for map stores
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
7 |
b84284144e21
mod_storage_appendmap: Experimental storage module optimized for map stores
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
8 This is an experimental storage driver where changed data is appended. |
b84284144e21
mod_storage_appendmap: Experimental storage module optimized for map stores
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
9 Data is simply written as `key = value` pairs to the end of the file. |
b84284144e21
mod_storage_appendmap: Experimental storage module optimized for map stores
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
10 This allows changes to individual keys to be written without needing to |
b84284144e21
mod_storage_appendmap: Experimental storage module optimized for map stores
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
11 write out the entire object again, but reads would grow gradually larger |
b84284144e21
mod_storage_appendmap: Experimental storage module optimized for map stores
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
12 as it still needs to read old overwritten keys. This may be suitable for |
2818 | 13 e.g. rosters where individual contacts are changed at a time. In theory, |
2061
b84284144e21
mod_storage_appendmap: Experimental storage module optimized for map stores
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
14 this could also allow rolling back changes. |
b84284144e21
mod_storage_appendmap: Experimental storage module optimized for map stores
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
15 |
b84284144e21
mod_storage_appendmap: Experimental storage module optimized for map stores
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
16 Requires 0.10 |