Re: dikkop seems unhappy because of openssl stuff (FreeBSD 14-BETA1)

From: Tomas Vondra <tomas(dot)vondra(at)enterprisedb(dot)com>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: PostgreSQL Hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org>
Subject: Re: dikkop seems unhappy because of openssl stuff (FreeBSD 14-BETA1)
Date: 2023-09-26 14:03:01
Message-ID: 03a3f095-e800-96a2-0084-a2b39b82554f@enterprisedb.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On 9/20/23 20:09, Tomas Vondra wrote:
> On 9/20/23 19:59, Tomas Vondra wrote:
>>
>>
>> On 9/20/23 01:24, Tom Lane wrote:
>>> Tomas Vondra <tomas(dot)vondra(at)enterprisedb(dot)com> writes:
>>>> bsd(at)freebsd:~ $ tclsh8.6
>>>> % clock scan "1/26/2010"
>>>> time value too large/small to represent
>>>
>>> In hopes of replicating this, I tried installing FreeBSD 14-BETA2
>>> aarch64 on my Pi 3B. This test case works fine:
>>>
>>> $ tclsh8.6
>>> % clock scan "1/26/2010"
>>> 1264482000
>>>
>>> $ tclsh8.7
>>> % clock scan "1/26/2010"
>>> 1264482000
>>>
>>> and unsurprisingly, pltcl's regression tests pass. I surmise
>>> that something is broken in BETA1 that they fixed in BETA2.
>>>
>>> plpython works too, with the python 3.9 package (and no older
>>> python).
>>>
>>> However, all is not peachy, because plperl doesn't work.
>>> Trying to CREATE EXTENSION either plperl or plperlu leads
>>> to a libperl panic:
>>>
>>> pl_regression=# create extension plperl;
>>> server closed the connection unexpectedly
>>> This probably means the server terminated abnormally
>>> before or while processing the request.
>>> The connection to the server was lost. Attempting reset: Succeeded.
>>>
>>> with this in the postmaster log:
>>>
>>> panic: pthread_key_create failed
>>>
>>> That message is certainly not ours, so it must be coming out of libperl.
>>>
>>> Another thing that seemed strange is that ecpg's preproc.o takes
>>> O(forever) to compile. I killed the build after observing that the
>>> compiler had gotten to 40 minutes of CPU time, and redid that step
>>> with PROFILE=-O0, which allowed it to compile in 20 seconds or so.
>>> (I also tried -O1, but gave up after a few minutes.) This machine
>>> can compile the main backend grammar in a minute or two, so there is
>>> something very odd there.
>>>
>>> I'm coming to the conclusion that 14-BETA is, well, beta grade.
>>> I'll be interested to see if you get the same results when you
>>> update to BETA2.
>>
>> Thanks, I'll try that when I'll be at the office next week.
>>
>
> FWIW when I disabled tcl, the tests pass (it's running with --nostatus
> --nosend, so it's not visible on the buildfarm site). Including the
> plperl stuff:
>
> ============== running regression test queries ==============
> test plperl ... ok 397 ms
> test plperl_lc ... ok 152 ms
> test plperl_trigger ... ok 374 ms
> test plperl_shared ... ok 163 ms
> test plperl_elog ... ok 184 ms
> test plperl_util ... ok 210 ms
> test plperl_init ... ok 150 ms
> test plperlu ... ok 117 ms
> test plperl_array ... ok 228 ms
> test plperl_call ... ok 189 ms
> test plperl_transaction ... ok 412 ms
> test plperl_plperlu ... ok 238 ms
>
> ======================
> All 12 tests passed.
> ======================
>
> I wonder if this got broken between BETA1 and BETA2.
>

Hmmm, I got to install BETA2 yesterday, but I still se the tcl failure:

select tcl_date_week(2010,1,26);
- tcl_date_week
----------------
- 04
-(1 row)
-
+ERROR: time value too large/small to represent
+CONTEXT: time value too large/small to represent
+ while executing
+"ConvertLocalToUTC $date[set date {}] $TZData($timezone) 2361222"
+ (procedure "FreeScan" line 86)
+ invoked from within
+"FreeScan $string $base $timezone $locale"
+ (procedure "::tcl::clock::scan" line 68)
+ invoked from within
+"::tcl::clock::scan 1/26/2010"
+ ("uplevel" body line 1)
+ invoked from within
+"uplevel 1 [info level 0]"
+ (procedure "::tcl::clock::scan" line 4)
+ invoked from within
+"clock scan "$2/$3/$1""
+ (procedure "__PLTcl_proc_55335" line 3)
+ invoked from within
+"__PLTcl_proc_55335 2010 1 26"
+in PL/Tcl function "tcl_date_week"
select tcl_date_week(2001,10,24);

I wonder what's the difference between the systems ... All I did was
writing the BETA2 image to SD card, and install a couple packages:

pkg install xml2c libxslt gettext-tools ccache tcl tcl87 \
p5-Test-Harness p5-IPC-Run gmake htop bash screen \
python tcl86 nano p5-Test-LWP-UserAgent \
p5-LWP-Protocol-https

And then

perl ./run_branches.pl --run-all --nosend --nostatus --verbose

with the buildfarm config used by dikkop.

regards

--
Tomas Vondra
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message jacktby jacktby 2023-09-26 14:16:15 What's the ItemPointer's meaning here?
Previous Message vignesh C 2023-09-26 13:57:34 Re: Invalidate the subscription worker in cases where a user loses their superuser status