[Kde-pim] Review Request 121120: try to release idle connections to DB, relieve database

Panos Christeas xrg at linux.gr
Thu Dec 17 10:19:40 GMT 2015



> On Δεκ. 12, 2015, 12:20 πμ., Daniel Vrátil wrote:
> > Hi Panos,
> > 
> > do you still have the patch around,, and are you willing to fix it? I started running into this issue recently and remembered there was a patch for this :) If you don't have the time, I'll just rebase this and get it in for 15.12.1...

https://github.com/xrg/akonadi/tree/akonadi-1.13

Code has always been here (against 1.13, I can't run/test anything greater on my kde 4.12).
You may want to pick/rebase commits 67d2b30ff76acb..7f4a52ee58f4
(still, the 2 remaining commits 7f4a52ee58f4..4661ac48192d3 may also worth considering)


- Panos


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://git.reviewboard.kde.org/r/121120/#review89373
-----------------------------------------------------------


On Νοέμ. 16, 2014, 7:42 πμ., Panos Christeas wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://git.reviewboard.kde.org/r/121120/
> -----------------------------------------------------------
> 
> (Updated Νοέμ. 16, 2014, 7:42 πμ.)
> 
> 
> Review request for Akonadi and Daniel Vrátil.
> 
> 
> Repository: akonadi
> 
> 
> Description
> -------
> 
> For Postgres, each DB client connection corresponds to a process
> being spawn and kept alive. May even mean some SHM allocated for
> it, on pre-9.3 versions of postgres.
> On a system (desktop) with many akonadi resources, we may end up
> occupying most/all available Postgres backends just keeping idle
> agents.
> This patch tries to address that, by releasing the DB connection
> for those idle agents. This comes to the expense of some wake-up
> latency (connect, setup db and prepare queries again). It is not
> limited to QPSQL DBs yet, as to explore its effects on the other
> storage engines.
> 
> Note that I had to change the `DataStore::database()` API from a
> const to a regular method, because it would wake-up a connection.
> 
> 
> Diffs
> -----
> 
>   server/src/connection.h 3f1141eec1561196e2a12b03de6c13f8051349db 
>   server/src/connection.cpp 32f10d5d2d76baa737f494fe5c283ea047344983 
>   server/src/storage/datastore.h 395b227c5c085566d755f3636ac4ac20bde97723 
>   server/src/storage/datastore.cpp ae78baba3e3db4937061e52d91bf401393d4c189 
>   server/src/storage/dbconfigpostgresql.cpp ebad22cd7dca935b318241b7428fb0b7ccdee881 
>   server/src/storage/querybuilder.cpp c07905906bdc712d41007ada753c2d821afd0a2d 
> 
> Diff: https://git.reviewboard.kde.org/r/121120/diff/
> 
> 
> Testing
> -------
> 
> Ran for 2 days, several resources.
> 
> 
> Thanks,
> 
> Panos Christeas
> 
>

_______________________________________________
KDE PIM mailing list kde-pim at kde.org
https://mail.kde.org/mailman/listinfo/kde-pim
KDE PIM home page at http://pim.kde.org/


More information about the kde-pim mailing list