path = get_pool_memory(PM_FNAME);
esc_name = get_pool_memory(PM_FNAME);
esc_path = get_pool_memory(PM_FNAME);
+ esc_obj = get_pool_memory(PM_FNAME);
m_buf = get_pool_memory(PM_FNAME);
m_allow_transactions = mult_db_connections;
{
db_end_transaction(jcr);
P(mutex);
- sql_free_result();
m_ref_count--;
if (m_ref_count == 0) {
+ sql_free_result();
db_list->remove(this);
if (m_connected && m_db_handle) {
PQfinish(m_db_handle);
free_pool_memory(path);
free_pool_memory(esc_name);
free_pool_memory(esc_path);
+ free_pool_memory(esc_obj);
free_pool_memory(m_buf);
if (m_db_driver) {
free(m_db_driver);
if (m_db_socket) {
free(m_db_socket);
}
- if (esc_obj) {
- PQfreemem(esc_obj);
- }
delete this;
if (db_list->size() == 0) {
delete db_list;
} while (m_num_rows > 0); /* TODO: Can probably test against 100 */
- sql_free_result();
+ sql_query("CLOSE _bac_cursor");
Dmsg0(500, "db_big_sql_query finished\n");
+ sql_free_result();
retval = true;
bail_out:
Dmsg0(500, "sql_batch_start started\n");
if (!sql_query("CREATE TEMPORARY TABLE batch ("
- "fileindex int,"
- "jobid int,"
- "path varchar,"
- "name varchar,"
- "lstat varchar,"
- "md5 varchar,"
- "markid int)")) {
+ "FileIndex int,"
+ "JobId int,"
+ "Path varchar,"
+ "Name varchar,"
+ "LStat varchar,"
+ "Md5 varchar,"
+ "DeltaSeq smallint)")) {
Dmsg0(500, "sql_batch_start failed\n");
return false;
}