Обсуждение: Getting an error if we provide --enable-tap-tests switch on SLES 12

Поиск
Список
Период
Сортировка

Getting an error if we provide --enable-tap-tests switch on SLES 12

От
tushar
Дата:
Hi,

We found that if we provide --enable-tap-tests  switch at the time of PG sources configuration,  getting this below error 
"
checking for Perl modules required for TAP tests... Can't locate IPC/Run.pm in @INC (you may need to install the IPC::Run module) (@INC contains: /usr/lib/perl5/site_perl/5.18.2/x86_64-linux-thread-multi /usr/lib/perl5/site_perl/5.18.2 /usr/lib/perl5/vendor_perl/5.18.2/x86_64-linux-thread-multi /usr/lib/perl5/vendor_perl/5.18.2 /usr/lib/perl5/5.18.2/x86_64-linux-thread-multi /usr/lib/perl5/5.18.2 /usr/lib/perl5/site_perl .) at ./config/check_modules.pl line 11.

BEGIN failed--compilation aborted at ./config/check_modules.pl line 11.

configure: error: Additional Perl modules are required to run TAP tests
"

look like this is happening because the Perl-IPC-Run package is not available on SLES 12 where Perl-IPC-Run3 is available.

Srinu (my teammate) found that  IPC::Run is hard coded in config/check_modules.pl and if we replace Run to Run3 it works (patch is attached, created by Srinu)

Do we have any better option to work without this workaround?

regards,

Вложения

Re: Getting an error if we provide --enable-tap-tests switch on SLES 12

От
Andres Freund
Дата:
Hi,

On 2023-01-04 17:27:55 +0530, tushar wrote:
> We found that if we provide *--enable-tap-tests * switch at the time of PG
> sources configuration,  getting this below error
> "
> checking for Perl modules required for TAP tests... Can't locate IPC/Run.pm
> in @INC (you may need to install the IPC::Run module) (@INC contains:
> /usr/lib/perl5/site_perl/5.18.2/x86_64-linux-thread-multi
> /usr/lib/perl5/site_perl/5.18.2
> /usr/lib/perl5/vendor_perl/5.18.2/x86_64-linux-thread-multi
> /usr/lib/perl5/vendor_perl/5.18.2
> /usr/lib/perl5/5.18.2/x86_64-linux-thread-multi /usr/lib/perl5/5.18.2
> /usr/lib/perl5/site_perl .) at ./config/check_modules.pl line 11.
> 
> BEGIN failed--compilation aborted at ./config/check_modules.pl line 11.
> 
> configure: error: Additional Perl modules are required to run TAP tests
> "
> 
> look like this is happening because the Perl-IPC-Run package is not
> available on SLES 12 where Perl-IPC-Run3 is available.

Hm. It's available in newer suse versions:
https://scc.suse.com/packages/22892843


> Srinu (my teammate) found that  IPC::Run is hard coded in config/
> check_modules.pl and if we replace Run to Run3 it works (patch is attached,
> created by Srinu)

I don't think that can work. The patch changes what configure tests, but none
of the many uses of IPC::Run in the tests. And I don't think IPC::Run3
actually provides all the features of IPC::Run we use.

Have you actually tested running the tests with the patch applied?


> Do we have any better option to work without this workaround?

You could install the module via cpan :/.

Greetings,

Andres Freund



Re: Getting an error if we provide --enable-tap-tests switch on SLES 12

От
tushar
Дата:
On 1/5/23 2:40 AM, Andres Freund wrote:
>
> Have you actually tested running the tests with the patch applied?
Yes but getting an errors like
t/006_edb_current_audit_logfile.pl .. Can't locate IPC/Run.pm in @INC 
(you may need to install the IPC::Run module) (@INC contains: 
/home/runner/edbas/src/bin/pg_ctl/../../../src/test/perl 
/home/runner/edbas/src/bin/pg_ctl
>
>> Do we have any better option to work without this workaround?
> You could install the module via cpan :/.
>
>
Yes, will try to install.

Thanks Andres.

-- 
regards,tushar
EnterpriseDB  https://www.enterprisedb.com/
The Enterprise PostgreSQL Company