memory usage of pg_upgrade
| От | Jeff Janes |
|---|---|
| Тема | memory usage of pg_upgrade |
| Дата | |
| Msg-id | CAMkU=1z3T7s7RpB37ZBuV9Qx=AaUNRc_-nVo1GkH7UUA7MwmoQ@mail.gmail.com обсуждение исходный текст |
| Ответы |
Re: memory usage of pg_upgrade
|
| Список | pgsql-hackers |
pg_upgrade reserves 5 times MAXPGPATH, or 5120 characters, for the
tablespace name of every object (table, toast table, index) in the
database being upgraded. This adds up pretty quickly when there is a
very large number of objects. It could be changed to char* to a
separately allocated name that takes only as much space it needs. But
maybe it would be better to point into os_info.old_tablespaces or
something like that, as surely there are not going to be one
independent file space per object.
typedef struct
{ ... char tablespace[MAXPGPATH];
} RelInfo;
The struct FileNameMap has 4 more .
Since there seems to be some interest in improving the scalability of
pg_upgrade, this is one of the things to consider fixing. What is the
best way to do it?
Cheers,
Jeff
В списке pgsql-hackers по дате отправления: