Re: [HACKERS] How to refer to resource files from UDFs written in C

Поиск
Список
Период
Сортировка
От Supun Nakandala
Тема Re: [HACKERS] How to refer to resource files from UDFs written in C
Дата
Msg-id CAFwzmVBkFYrgTOseUTvFb6mAP5U4zsgA5F-SP17YMKBqCc44ig@mail.gmail.com
обсуждение исходный текст
Ответ на Re: [HACKERS] How to refer to resource files from UDFs written in C  (Heikki Linnakangas <hlinnaka@iki.fi>)
Список pgsql-hackers


On Fri, Jun 9, 2017 at 3:05 AM, Heikki Linnakangas <hlinnaka@iki.fi> wrote:
On 06/09/2017 08:56 AM, Supun Nakandala wrote:
Hi hackers,

I am trying to extend PostgreSQL by adding UDT and UDF for a custom use
case and I am using C language extensions to do that.

However, I have a requirement of reading a text file from one of the C
functions. The compiled *.so files are placed in the "pg_config
--pkglibdir" directory and tried copying my text files there but it didn't
work. I found that, when these shared libs are loaded they are run from a
different working directory. In this case, what is the best way to refer to
my text files from the C code other than giving the absolute path which can
change from system to system.

All backend processes run with the data directory as the current directory. So you can put the files into the data directory, probably best to have a subdirectory there to avoid confusing them with PostgreSQL's own files. Or you could have a config option, to set an absolute path.

- Heikki


Thank you everyone for your quick replies. I ended up copying the files to the data directory and referring using relative path.

В списке pgsql-hackers по дате отправления:

Предыдущее
От: Jeff Janes
Дата:
Сообщение: Re: [HACKERS] partial aggregation with internal state type
Следующее
От: Tom Lane
Дата:
Сообщение: Re: [HACKERS] partial aggregation with internal state type