]> git.sur5r.net Git - bacula/bacula/commit
Implement db_big_sql_query() that uses cursor on PostgreSQL and limit memory usage...
authorEric Bollengier <eric@eb.homelinux.org>
Fri, 28 Jan 2011 13:41:55 +0000 (14:41 +0100)
committerKern Sibbald <kern@sibbald.com>
Sat, 20 Apr 2013 12:39:56 +0000 (14:39 +0200)
commitc6f6441c97ac844ac67c7ab709ccdae767a8530e
tree78ea23a7051936fdbd9dda4d39a4ab80d609a50a
parentc3b1332470f9c332f083b8517c65a0fa21fcf4b1
Implement db_big_sql_query() that uses cursor on PostgreSQL and limit memory usage in db_list_xxx

By default on PostgreSQL, db_sql_query() stores the query results in
memory, it can take lots of resources when dealing with job output,
accurate or restore.  This new mode uses cursors and fetches results
100 by 100.

db_list_xxx functions doesn't store the entire query result anymore.
Commands like "list joblog" or "list files" are now stable in memory
usage. (for MySQL and PostgreSQL)
bacula/src/cats/bdb_postgresql.h
bacula/src/cats/cats.h
bacula/src/cats/postgresql.c
bacula/src/cats/protos.h
bacula/src/cats/sql.c
bacula/src/cats/sql_get.c
bacula/src/cats/sql_glue.c
bacula/src/cats/sql_glue.h
bacula/src/cats/sql_list.c