According to Coverity, there's a memory leak bug in transfer_all_new_dbs().

                mappings = gen_db_file_maps(old_db, new_db, &n_maps, old_pgdata,
                                                                        
new_pgdata);

                if (n_maps)
                {
                        print_maps(mappings, n_maps, new_db->db_name);

#ifdef PAGE_CONVERSION
                        pageConverter = setupPageConverter();
#endif
                        transfer_single_new_db(pageConverter, mappings, n_maps,
                                                                   
old_tablespace);

                        pg_free(mappings);
                }
-----> leaks "mappings"
        }
        return;
}

This is because gen_db_file_maps() allocates memory even if n_maps == 0.

Best regards,
--
Tatsuo Ishii
SRA OSS, Inc. Japan
English: http://www.sraoss.co.jp/index_en.php
Japanese:http://www.sraoss.co.jp


-- 
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

Reply via email to