louiz’
d7427fc9ca
Re-connect to postgresql when the connection is lost
...
fix #3336
2018-03-19 00:16:16 +01:00
louiz’
9500bfd4cc
Reflect message IDs in channel MUCs
...
fix #3283
2018-03-18 19:33:07 +01:00
louiz’
5af0a8040c
Use a transaction around the DELETE + INSERT of the after_connection_commands
...
Otherwise we can imagine that two clients changing this value at the same
time would mix things up.
ref #3275
2018-03-18 02:54:34 +01:00
louiz’
577984faf2
Allow the execution of multiple commands after the IRC connection
...
fix #3275
2018-03-18 02:31:18 +01:00
louiz’
03714c6ceb
Revert "Use std::optional<bool> instead of OptionalBool"
...
This reverts commit ba879a882e .
2018-03-17 17:28:47 +01:00
louiz’
d0e3c71b91
Revert "Use if constexpr to make things a lot more readable"
...
This reverts commit d62ca9f879 .
2018-03-17 17:28:41 +01:00
louiz’
d62ca9f879
Use if constexpr to make things a lot more readable
2018-03-16 01:13:50 +01:00
louiz’
ba879a882e
Use std::optional<bool> instead of OptionalBool
2018-03-16 01:13:50 +01:00
louiz’
b3b90139db
Rename a few “hostname” into “address”, regarding last commit
...
ref #3273
2018-03-12 01:06:15 +01:00
louiz’
bb476f4a0d
Allow to override the addresses used to connect to an IRC network
...
fix #3273
2018-03-12 01:00:17 +01:00
louiz’
9e4a3e2b05
Fix the INSERT query for types that don’t have any Id column
2018-03-12 00:17:03 +01:00
louiz’
8503d1f683
Actually display the error message from postgresql when a query failed
2018-02-16 00:58:49 +01:00
louiz’
b175084300
Log the warn/error messages coming from libpq in a correct format
2018-02-16 00:57:49 +01:00
louiz’
d3e07eee13
Sort archive messages by date (and only then by id)
...
fix #3337
Because apparently the IDs are not always incrementing. We still use them to
know the order of two messages that were received at the same second (in
this case, the ID will always be incrementing).
2018-02-16 00:56:07 +01:00
louiz’
dbb86bcc12
Fix the actual_bind versions for integrals
2018-02-15 16:54:54 +01:00
louiz’
505deda176
Fix a memory leak when psql connection fails
2018-02-14 23:25:12 +01:00
louiz’
4a2a280d76
Support the <before/> element in MAM requests
2018-02-13 03:51:03 +01:00
louiz’
fd7c365288
Use the same function for both history orders
2018-02-13 03:10:00 +01:00
louiz’
fd9c713938
Fix a few warnings
2018-02-11 23:39:42 +01:00
louiz’
d705541435
Send a item-not-found error when the “after” value is not in the archive
2018-02-11 23:29:58 +01:00
louiz’
0280343ced
Handle the “after” RSM value to page through results
2018-02-10 19:51:59 +01:00
louiz’
99389eefba
Always return the oldest matching messages from MAM, even if no date is set
2018-02-10 17:47:42 +01:00
louiz’
9bf81a2c04
This should fix the int conversion warning on 32bits arch
2018-01-28 14:10:14 +01:00
louiz’
e267512ad4
Restore the is_one_of variable template
2018-01-25 02:22:19 +01:00
louiz’
33a5f1355d
Remove a variable template usage
...
Because it’s only supported in gcc>=5.0
2018-01-25 01:22:35 +01:00
louiz’
7e64a2e361
Add a DEBUG_SQL_QUERIES to log info about the executed SQL queries
...
fix #3324
2018-01-14 21:46:49 +01:00
louiz’
3cd6490236
Remove all the ugly database debug
2018-01-14 21:44:22 +01:00
louiz’
286aa58c7b
Remove a warning (unused argument)
2017-12-17 15:21:40 +01:00
louiz’
a557718bf2
db_name also accepts postgres:// scheme for PostgreSQL connections
2017-12-16 15:34:54 +01:00
louiz’
c3313d0d41
Always free the PGresult pointer returned by PQexec
...
Fix a somewhat big memory leak
2017-12-05 01:05:45 +01:00
louiz’
6dc49f3284
Fix a few warnings
2017-12-02 20:08:50 +01:00
louiz’
414bbca0bc
Handle postgresql and sqlite3 libs properly
...
Do not fail to compile when one of them is missing but the other one is not.
Raise an error when trying to open a database with the missing library.
see #3237
2017-12-02 20:08:50 +01:00
Jonas Wielicki
e1c7a6518a
Actually free the database on Database::close()
...
.release() returns the pointer and releases ownership *without*
destruction.
2017-12-02 20:08:50 +01:00
Jonas Wielicki
58f78f31e6
Make destructor of DatabaseEngine virtual
2017-12-02 20:08:50 +01:00
Jonas Wielicki
14dcc57a19
Make destructor of Statement virtual
...
I got an ASAN error otherwise (type mismatch)
2017-12-02 20:08:50 +01:00
Jonas Wielicki
4f7ad3f985
Support for full postgresql URIs
...
(cf. https://www.postgresql.org/docs/9.4/static/libpq-connect.html#LIBPQ-CONNSTRING )
2017-12-02 20:08:50 +01:00
louiz’
0168b96b79
Add postgresql support
2017-12-02 20:08:47 +01:00
Romain DEP.
103e508f3b
compat: revert to using sqlite's close() function for compat with older distros.
...
close_v2(), in use before this commit, was introduced as part of sqlite 3.7.14
(2012-09-03), and is as such incompatible with debian wheezy (3.7.13) and
centos6 (3.6.20).
FTR, Wheezy will be supported until May 2018, and centos6, until November 2020.
2017-09-21 08:38:04 +02:00
louiz’
bfcf294517
Add the persistent_by_default configuration option
...
fix #3293
2017-09-09 17:09:17 +02:00
louiz’
2c717d347d
Add an index for the muc_log_line table
...
This immensely speeds up the archive select queries.
fix #3292
2017-08-26 17:42:59 +02:00
louiz’
655151d88a
Cache the encoding_in database value, to avoid doing a query for each message
2017-08-26 13:51:15 +02:00
louiz’
2a62b8b082
Fix a sqlite3 leak when the database fails to open
2017-08-19 13:02:34 +02:00
louiz’
9648fd286c
Display the correct error message when we fail to open the sqlite3 db
...
fix #3290
2017-08-19 13:02:13 +02:00
louiz’
84034ed3dc
Use a db roster to manage biboumi’s presence with the contacts
2017-07-16 00:16:43 +02:00
louiz’
3974371e7b
Replace a function argument from ... to the template Args&&... thing
2017-07-08 19:07:53 +02:00
louiz’
fd7ee48a86
Remove many log_debug from the database module
2017-07-08 18:11:25 +02:00
louiz’
faed8952cb
Remove a bunch of useless string_literal usage
2017-07-08 14:04:35 +02:00
louiz’
7a9b2dca06
Use a more precise return type, instead of auto
2017-07-08 12:37:03 +02:00
louiz’
cf56b60fd3
Remove all the empty “options” members in Column classes
...
By using SFINAE to use that member only when it exists.
2017-07-08 12:36:08 +02:00
louiz’
9f7782bb0c
Add a global “persistent” option
2017-07-06 22:24:42 +02:00