PostgreSQL Bugs

Collected from the PG bugs email list.

Bug ID16132
PG Version12.1
OSMac & Ubuntu 18.04 LTS
Opened2019-11-22 18:50:14+00
Reported byJames Inform
StatusNew

Body of first available message related to this bug follows.

The following bug has been logged on the website:

Bug reference:      16132
Logged by:          James Inform
Email address:      (redacted)
PostgreSQL version: 12.1
Operating system:   Mac & Ubuntu 18.04 LTS
Description:        

HI!

I am not sure if my issue is related to PostgreSQL or to the PLV8 extension.

So I just post in case.

I encountered the following severe issue. I am running PostgreSQL 12.1 on
Ubuntu. Postgresql is build from source by myself, but the same issue
appears when I am using Pg12.1 with Postgresapp on Mac.
(www.postgresapp.com)

I am using PLV8 Version 2.3.13.

Steps to reproduce:

1. Create a new database:
create database mytest;

2. Create PLV8 extension
create extension plv8;

3. Create a simple PLV8 function
CREATE OR REPLACE FUNCTION plv8_require()
 RETURNS void
 LANGUAGE plv8
AS 
$function$
	var test = 0;
$function$
;

4. Log out and then in again with a new session to the new database
mytest;

5. Run the following set command
SET plv8.start_proc = plv8_require;

6. Run this simple plv8 script
do
$$
plv8.elog(NOTICE,'test');
$$ language plv8
;

7. Now the server goes down with the following log information:

Received signal 4 <unknown> 000107b765be

==== C stack trace ===============================

 [0x00010838ed74]
 [0x7fff5a988f5a]
 [0x000107ab4888]
 [0x000107b7383c]
 [0x000104b07fdc]
 [0x000104b09091]
 [0x000104699360]
 [0x0001049491ac]
 [0x00010733dfdf]
 [0x000104948d1d]
 [0x00010494871d]
 [0x000104947a51]
 [0x000104947121]
 [0x000104944810]
 [0x000104941df7]
 [0x00010488f3ff]
 [0x00010488e80d]
 [0x00010488d76a]
 [0x00010488b37f]
 [0x00010479b5d9]
 [0x7fff5a67a015]
[end of stack trace]
2019-11-22 17:29:05 CET [50424]: [13-1] user=,db=,app=,client= LOG:  server
process (PID 15664) was terminated by signal 4: Illegal instruction: 4
2019-11-22 17:29:05 CET [50424]: [14-1] user=,db=,app=,client= DETAIL: 
Failed process was running: do
	$$
	plv8.elog(NOTICE,'test');
	$$ language plv8
	
2019-11-22 17:29:05 CET [50424]: [15-1] user=,db=,app=,client= LOG: 
terminating any other active server processes
2019-11-22 17:29:05 CET [11274]: [1-1] user=,db=,app=,client= WARNING: 
terminating connection because of crash of another server process
2019-11-22 17:29:05 CET [11274]: [2-1] user=,db=,app=,client= DETAIL:  The
postmaster has commanded this server process to roll back the current
transaction and exit, because another server process exited abnormally and
possibly corrupted shared memory.
2019-11-22 17:29:05 CET [11274]: [3-1] user=,db=,app=,client= HINT:  In a
moment you should be able to reconnect to the database and repeat your
command.
2019-11-22 17:29:05 CET [50424]: [16-1] user=,db=,app=,client= LOG:  all
server processes terminated; reinitializing
2019-11-22 17:29:05 CET [15806]: [1-1]
user=[unknown],db=[unknown],app=[unknown],client=127.0.0.1 LOG:  connection
received: host=127.0.0.1 port=55983
2019-11-22 17:29:05 CET [15805]: [1-1] user=,db=,app=,client= LOG:  database
system was interrupted; last known up at 2019-11-22 16:32:06 CET
2019-11-22 17:29:05 CET [15806]: [2-1]
user=postgres,db=inst,app=[unknown],client=127.0.0.1 FATAL:  the database
system is in recovery mode
2019-11-22 17:29:05 CET [15807]: [1-1]
user=[unknown],db=[unknown],app=[unknown],client=127.0.0.1 LOG:  connection
received: host=127.0.0.1 port=55984
2019-11-22 17:29:05 CET [15807]: [2-1]
user=postgres,db=inst,app=[unknown],client=127.0.0.1 FATAL:  the database
system is in recovery mode
2019-11-22 17:29:05 CET [15808]: [1-1]
user=[unknown],db=[unknown],app=[unknown],client=127.0.0.1 LOG:  connection
received: host=127.0.0.1 port=55985
2019-11-22 17:29:05 CET [15808]: [2-1]
user=postgres,db=inst,app=[unknown],client=127.0.0.1 FATAL:  the database
system is in recovery mode
2019-11-22 17:29:05 CET [15809]: [1-1]
user=[unknown],db=[unknown],app=[unknown],client=127.0.0.1 LOG:  connection
received: host=127.0.0.1 port=55986
2019-11-22 17:29:05 CET [15809]: [2-1]
user=postgres,db=inst,app=[unknown],client=127.0.0.1 FATAL:  the database
system is in recovery mode
2019-11-22 17:29:05 CET [15810]: [1-1]
user=[unknown],db=[unknown],app=[unknown],client=127.0.0.1 LOG:  connection
received: host=127.0.0.1 port=55987
2019-11-22 17:29:05 CET [15810]: [2-1]
user=postgres,db=inst,app=[unknown],client=127.0.0.1 FATAL:  the database
system is in recovery mode
2019-11-22 17:29:05 CET [15811]: [1-1]
user=[unknown],db=[unknown],app=[unknown],client=127.0.0.1 LOG:  connection
received: host=127.0.0.1 port=55988
2019-11-22 17:29:05 CET [15811]: [2-1]
user=postgres,db=inst,app=[unknown],client=127.0.0.1 FATAL:  the database
system is in recovery mode
2019-11-22 17:29:06 CET [15805]: [2-1] user=,db=,app=,client= LOG:  database
system was not properly shut down; automatic recovery in progress
2019-11-22 17:29:07 CET [15805]: [3-1] user=,db=,app=,client= LOG:  redo
starts at 4E/765C06D0
2019-11-22 17:29:07 CET [15805]: [4-1] user=,db=,app=,client= LOG:  invalid
record length at 4E/765C07B8: wanted 24, got 0
2019-11-22 17:29:07 CET [15805]: [5-1] user=,db=,app=,client= LOG:  redo
done at 4E/765C0780
2019-11-22 17:29:07 CET [15805]: [6-1] user=,db=,app=,client= LOG: 
checkpoint starting: end-of-recovery immediate
2019-11-22 17:29:07 CET [15805]: [7-1] user=,db=,app=,client= LOG: 
checkpoint complete: wrote 0 buffers (0.0%); 0 WAL file(s) added, 0 removed,
0 recycled; write=0.029 s, sync=0.000 s, total=0.033 s; sync files=0,
longest=0.000 s, average=0.000 s; distance=0 kB, estimate=0 kB
2019-11-22 17:29:07 CET [50424]: [17-1] user=,db=,app=,client= LOG: 
database system is ready to accept connections
2019-11-22 17:29:17 CET [15817]: [1-1] user=,db=,app=,client= LOG: 
autoprewarm successfully prewarmed 524196 of 524196 previously-loaded blocks

Messages

DateAuthorSubject
2019-11-22 18:50:14+00PG Bug reporting formBUG #16132: PostgreSQL 12.1 and PLV8 2.3.13 => PostgreSQL crashes
2019-11-25 03:41:32+00Michael PaquierRe: BUG #16132: PostgreSQL 12.1 and PLV8 2.3.13 => PostgreSQL crashes