plv8
Repository:
https://github.com/plv8/plv8
The V8 JavaScript engine is embedded within a database, allowing stored procedures and functions to be written in JavaScript and executed on the server-side, with access to database tables and rows as JavaScript objects.
Information Analysis
| Extensibility Types: | Functions |
| System Components: | Custom Configuration Variables |
Duplicate Code Analysis
| Total Lines of Code: ? | 30819 |
| Lines of Duplicate Code: ? | 59 |
| Percentage of Codebase: ? | 0.19% |
Versioning Analysis
| Total Lines of Code: ? | 30819 |
| Lines of Encapsulated Versioning Code: ? | 1014 |
| Percentage of Encapsulated Versioning Code in Codebase: ? | 3.29% |
| PostgreSQL Versions Cased On: ? | 9,10,11,12,13 |
Compatibility Analysis
| Number of Failed Extensions: | 5 |
| Failure Rate: | 4.2% |
Failed Extensions
pg_cron
The files belonging to this database system will be owned by user "abigalek".
This user must also own the server process.
The database cluster will be initialized with locale "en_US.UTF-8".
The default database encoding has accordingly been set to "UTF8".
The default text search configuration will be set to "english".
Data page checksums are disabled.
creating directory pg-15-data ... ok
creating subdirectories ... ok
selecting dynamic shared memory implementation ... posix
selecting default max_connections ... 100
selecting default shared_buffers ... 128MB
selecting default time zone ... Etc/UTC
creating configuration files ... ok
running bootstrap script ... ok
performing post-bootstrap initialization ... ok
syncing data to disk ... ok
initdb: warning: enabling "trust" authentication for local connections
initdb: hint: You can change this by editing pg_hba.conf or using the option -A, or --auth-local and --auth-host, the next time you run initdb.
Success. You can now start the database server using:
pg-15-dist/bin/pg_ctl -D pg-15-data -l logfile start
waiting for server to start.... done
server started
(using postmaster on Unix socket, default port)
============== dropping database "regression" ==============
SET
DROP DATABASE
============== creating database "regression" ==============
CREATE DATABASE
ALTER DATABASE
ALTER DATABASE
ALTER DATABASE
ALTER DATABASE
ALTER DATABASE
ALTER DATABASE
============== installing pg_cron ==============
ERROR: can only create extension in database postgres
DETAIL: Jobs must be scheduled from the database configured in cron.database_name, since the pg_cron background worker reads job descriptions from this database.
HINT: Add cron.database_name = 'regression' in postgresql.conf to use the current database.
CONTEXT: PL/pgSQL function inline_code_block line 4 at RAISE
command failed: "/home/abigalek/pgext-cli-python/pg-15-dist/bin/psql" -X -c "CREATE EXTENSION IF NOT EXISTS \"pg_cron\"" "regression"
(using postmaster on Unix socket, default port)
============== dropping database "contrib_regression" ==============
SET
DROP DATABASE
============== creating database "contrib_regression" ==============
CREATE DATABASE
ALTER DATABASE
ALTER DATABASE
ALTER DATABASE
ALTER DATABASE
ALTER DATABASE
ALTER DATABASE
============== installing plv8 ==============
CREATE EXTENSION
============== running regression test queries ==============
test pg_cron-test ... ok 499 ms
=====================
All 1 tests passed.
=====================
waiting for server to shut down.... done
server stopped
The files belonging to this database system will be owned by user "abigalek".
This user must also own the server process.
The database cluster will be initialized with locale "en_US.UTF-8".
The default database encoding has accordingly been set to "UTF8".
The default text search configuration will be set to "english".
Data page checksums are disabled.
creating directory pg-15-data ... ok
creating subdirectories ... ok
selecting dynamic shared memory implementation ... posix
selecting default max_connections ... 100
selecting default shared_buffers ... 128MB
selecting default time zone ... Etc/UTC
creating configuration files ... ok
running bootstrap script ... ok
performing post-bootstrap initialization ... ok
syncing data to disk ... ok
initdb: warning: enabling "trust" authentication for local connections
initdb: hint: You can change this by editing pg_hba.conf or using the option -A, or --auth-local and --auth-host, the next time you run initdb.
Success. You can now start the database server using:
pg-15-dist/bin/pg_ctl -D pg-15-data -l logfile start
waiting for server to start.... done
server started
(using postmaster on Unix socket, default port)
============== dropping database "contrib_regression" ==============
SET
DROP DATABASE
============== creating database "contrib_regression" ==============
CREATE DATABASE
ALTER DATABASE
ALTER DATABASE
ALTER DATABASE
ALTER DATABASE
ALTER DATABASE
ALTER DATABASE
============== installing plv8 ==============
CREATE EXTENSION
============== running regression test queries ==============
test pg_cron-test ... ok 740 ms
=====================
All 1 tests passed.
=====================
(using postmaster on Unix socket, default port)
============== dropping database "regression" ==============
SET
DROP DATABASE
============== creating database "regression" ==============
CREATE DATABASE
ALTER DATABASE
ALTER DATABASE
ALTER DATABASE
ALTER DATABASE
ALTER DATABASE
ALTER DATABASE
============== installing pg_cron ==============
ERROR: can only create extension in database postgres
DETAIL: Jobs must be scheduled from the database configured in cron.database_name, since the pg_cron background worker reads job descriptions from this database.
HINT: Add cron.database_name = 'regression' in postgresql.conf to use the current database.
CONTEXT: PL/pgSQL function inline_code_block line 4 at RAISE
command failed: "/home/abigalek/pgext-cli-python/pg-15-dist/bin/psql" -X -c "CREATE EXTENSION IF NOT EXISTS \"pg_cron\"" "regression"
waiting for server to shut down.... done
server stopped
pg_query_rewrite
The files belonging to this database system will be owned by user "abigalek".
This user must also own the server process.
The database cluster will be initialized with locale "en_US.UTF-8".
The default database encoding has accordingly been set to "UTF8".
The default text search configuration will be set to "english".
Data page checksums are disabled.
creating directory pg-15-data ... ok
creating subdirectories ... ok
selecting dynamic shared memory implementation ... posix
selecting default max_connections ... 100
selecting default shared_buffers ... 128MB
selecting default time zone ... Etc/UTC
creating configuration files ... ok
running bootstrap script ... ok
performing post-bootstrap initialization ... ok
syncing data to disk ... ok
initdb: warning: enabling "trust" authentication for local connections
initdb: hint: You can change this by editing pg_hba.conf or using the option -A, or --auth-local and --auth-host, the next time you run initdb.
Success. You can now start the database server using:
pg-15-dist/bin/pg_ctl -D pg-15-data -l logfile start
waiting for server to start.... done
server started
(using postmaster on Unix socket, default port)
============== dropping database "regression" ==============
SET
DROP DATABASE
============== creating database "regression" ==============
CREATE DATABASE
ALTER DATABASE
ALTER DATABASE
ALTER DATABASE
ALTER DATABASE
ALTER DATABASE
ALTER DATABASE
============== installing pg_query_rewrite ==============
CREATE EXTENSION
============== running regression test queries ==============
test init-extension ... ok 42 ms
test plv8 ... ok 208 ms
test plv8-errors ... ok 84 ms
test inline ... ok 38 ms
test json ... ok 49 ms
test startup_pre ... ok 49 ms
test startup ... ok 103 ms
test varparam ... ok 40 ms
test json_conv ... ok 42 ms
test jsonb_conv ... ok 67 ms
test window ... ok 89 ms
test guc ... ok 43 ms
test es6 ... ok 81 ms
test arraybuffer ... ok 40 ms
test composites ... ok 40 ms
test currentresource ... ok 44 ms
test startup_perms ... ok 60 ms
test bytea ... ok 42 ms
test find_function_perms ... ok 60 ms
test memory_limits ... ok 4602 ms
test reset ... ok 64 ms
test show ... ok 37 ms
test array_spread ... ok 103120 ms
test regression ... ok 36 ms
======================
All 24 tests passed.
======================
(using postmaster on Unix socket, default port)
============== dropping database "contrib_regression" ==============
SET
DROP DATABASE
============== creating database "contrib_regression" ==============
CREATE DATABASE
ALTER DATABASE
ALTER DATABASE
ALTER DATABASE
ALTER DATABASE
ALTER DATABASE
ALTER DATABASE
============== installing plv8 ==============
CREATE EXTENSION
============== running regression test queries ==============
test test0 ... ok 8 ms
test test1 ... ok 10 ms
test test2 ... ok 19 ms
test test3 ... ok 65 ms
test test4 ... ok 132 ms
test test5 ... ok 12 ms
test test6 ... ok 31 ms
test test7 ... FAILED 16 ms
test test8 ... ok 24 ms
======================
1 of 9 tests failed.
======================
The differences that caused some tests to fail can be viewed in the
file "/home/abigalek/pgext-cli-python/pgextworkdir/pg_query_rewrite/regression.diffs". A copy of the test summary that you see
above is saved in the file "/home/abigalek/pgext-cli-python/pgextworkdir/pg_query_rewrite/regression.out".
waiting for server to shut down.... done
server stopped
pg_show_plans
The files belonging to this database system will be owned by user "abigalek".
This user must also own the server process.
The database cluster will be initialized with locale "en_US.UTF-8".
The default database encoding has accordingly been set to "UTF8".
The default text search configuration will be set to "english".
Data page checksums are disabled.
creating directory pg-15-data ... ok
creating subdirectories ... ok
selecting dynamic shared memory implementation ... posix
selecting default max_connections ... 100
selecting default shared_buffers ... 128MB
selecting default time zone ... Etc/UTC
creating configuration files ... ok
running bootstrap script ... ok
performing post-bootstrap initialization ... ok
syncing data to disk ... ok
initdb: warning: enabling "trust" authentication for local connections
initdb: hint: You can change this by editing pg_hba.conf or using the option -A, or --auth-local and --auth-host, the next time you run initdb.
Success. You can now start the database server using:
pg-15-dist/bin/pg_ctl -D pg-15-data -l logfile start
waiting for server to start.... stopped waiting
pg_ctl: could not start server
Examine the log output.
(using postmaster on Unix socket, default port)
============== dropping database "regression" ==============
psql: error: connection to server on socket "/tmp/.s.PGSQL.5432" failed: FATAL: the database system is shutting down
command failed: "/home/abigalek/pgext-cli-python/pg-15-dist/bin/psql" -X -c "SET client_min_messages = warning" -c "DROP DATABASE IF EXISTS \"regression\"" "postgres"
(using postmaster on Unix socket, default port)
============== dropping database "regression" ==============
psql: error: connection to server on socket "/tmp/.s.PGSQL.5432" failed: FATAL: the database system is shutting down
command failed: "/home/abigalek/pgext-cli-python/pg-15-dist/bin/psql" -X -c "SET client_min_messages = warning" -c "DROP DATABASE IF EXISTS \"regression\"" "postgres"
pg_ctl: PID file "pg-15-data/postmaster.pid" does not exist
Is server running?
pgextwlist
The files belonging to this database system will be owned by user "abigalek".
This user must also own the server process.
The database cluster will be initialized with locale "en_US.UTF-8".
The default database encoding has accordingly been set to "UTF8".
The default text search configuration will be set to "english".
Data page checksums are disabled.
creating directory pg-15-data ... ok
creating subdirectories ... ok
selecting dynamic shared memory implementation ... posix
selecting default max_connections ... 100
selecting default shared_buffers ... 128MB
selecting default time zone ... Etc/UTC
creating configuration files ... ok
running bootstrap script ... ok
performing post-bootstrap initialization ... ok
syncing data to disk ... ok
initdb: warning: enabling "trust" authentication for local connections
initdb: hint: You can change this by editing pg_hba.conf or using the option -A, or --auth-local and --auth-host, the next time you run initdb.
Success. You can now start the database server using:
pg-15-dist/bin/pg_ctl -D pg-15-data -l logfile start
waiting for server to start.... done
server started
(using postmaster on Unix socket, default port)
============== dropping database "regression" ==============
SET
DROP DATABASE
============== creating database "regression" ==============
CREATE DATABASE
ALTER DATABASE
ALTER DATABASE
ALTER DATABASE
ALTER DATABASE
ALTER DATABASE
ALTER DATABASE
============== running regression test queries ==============
test init-extension ... ok 50 ms
test plv8 ... ok 256 ms
test plv8-errors ... ok 92 ms
test inline ... ok 39 ms
test json ... ok 51 ms
test startup_pre ... ok 76 ms
test startup ... ok 97 ms
test varparam ... ok 40 ms
test json_conv ... ok 39 ms
test jsonb_conv ... ok 59 ms
test window ... ok 114 ms
test guc ... ok 40 ms
test es6 ... ok 77 ms
test arraybuffer ... ok 40 ms
test composites ... ok 40 ms
test currentresource ... ok 47 ms
test startup_perms ... ok 66 ms
test bytea ... ok 42 ms
test find_function_perms ... ok 59 ms
test memory_limits ... ok 4431 ms
test reset ... ok 62 ms
test show ... ok 37 ms
test array_spread ... ok 103124 ms
test regression ... ok 35 ms
======================
All 24 tests passed.
======================
(using postmaster on Unix socket, default port)
============== dropping database "regression" ==============
SET
DROP DATABASE
============== creating database "regression" ==============
CREATE DATABASE
ALTER DATABASE
ALTER DATABASE
ALTER DATABASE
ALTER DATABASE
ALTER DATABASE
ALTER DATABASE
============== installing plv8 ==============
CREATE EXTENSION
============== running regression test queries ==============
test setup ... ok 28 ms
test pgextwlist ... FAILED 64 ms
test errors ... FAILED 7 ms
test crossuser ... ok 17 ms
test hooks ... ok 8 ms
======================
2 of 5 tests failed.
======================
The differences that caused some tests to fail can be viewed in the
file "/home/abigalek/pgext-cli-python/pgextworkdir/pgextwlist-1.15/regression.diffs". A copy of the test summary that you see
above is saved in the file "/home/abigalek/pgext-cli-python/pgextworkdir/pgextwlist-1.15/regression.out".
waiting for server to shut down.... done
server stopped
The files belonging to this database system will be owned by user "abigalek".
This user must also own the server process.
The database cluster will be initialized with locale "en_US.UTF-8".
The default database encoding has accordingly been set to "UTF8".
The default text search configuration will be set to "english".
Data page checksums are disabled.
creating directory pg-15-data ... ok
creating subdirectories ... ok
selecting dynamic shared memory implementation ... posix
selecting default max_connections ... 100
selecting default shared_buffers ... 128MB
selecting default time zone ... Etc/UTC
creating configuration files ... ok
running bootstrap script ... ok
performing post-bootstrap initialization ... ok
syncing data to disk ... ok
initdb: warning: enabling "trust" authentication for local connections
initdb: hint: You can change this by editing pg_hba.conf or using the option -A, or --auth-local and --auth-host, the next time you run initdb.
Success. You can now start the database server using:
pg-15-dist/bin/pg_ctl -D pg-15-data -l logfile start
waiting for server to start.... done
server started
(using postmaster on Unix socket, default port)
============== dropping database "regression" ==============
SET
DROP DATABASE
============== creating database "regression" ==============
CREATE DATABASE
ALTER DATABASE
ALTER DATABASE
ALTER DATABASE
ALTER DATABASE
ALTER DATABASE
ALTER DATABASE
============== installing plv8 ==============
CREATE EXTENSION
============== running regression test queries ==============
test setup ... ok 36 ms
test pgextwlist ... FAILED 75 ms
test errors ... FAILED 12 ms
test crossuser ... ok 35 ms
test hooks ... ok 25 ms
======================
2 of 5 tests failed.
======================
The differences that caused some tests to fail can be viewed in the
file "/home/abigalek/pgext-cli-python/pgextworkdir/pgextwlist-1.15/regression.diffs". A copy of the test summary that you see
above is saved in the file "/home/abigalek/pgext-cli-python/pgextworkdir/pgextwlist-1.15/regression.out".
(using postmaster on Unix socket, default port)
============== dropping database "regression" ==============
SET
DROP DATABASE
============== creating database "regression" ==============
CREATE DATABASE
ALTER DATABASE
ALTER DATABASE
ALTER DATABASE
ALTER DATABASE
ALTER DATABASE
ALTER DATABASE
============== running regression test queries ==============
test init-extension ... ok 43 ms
test plv8 ... ok 209 ms
test plv8-errors ... ok 100 ms
test inline ... ok 40 ms
test json ... ok 53 ms
test startup_pre ... ok 50 ms
test startup ... ok 103 ms
test varparam ... ok 40 ms
test json_conv ... ok 40 ms
test jsonb_conv ... ok 63 ms
test window ... ok 130 ms
test guc ... ok 48 ms
test es6 ... ok 59 ms
test arraybuffer ... ok 40 ms
test composites ... ok 40 ms
test currentresource ... ok 44 ms
test startup_perms ... ok 61 ms
test bytea ... ok 42 ms
test find_function_perms ... ok 59 ms
test memory_limits ... ok 4567 ms
test reset ... ok 63 ms
test show ... ok 36 ms
test array_spread ... ok 105876 ms
test regression ... ok 34 ms
======================
All 24 tests passed.
======================
waiting for server to shut down.... done
server stopped
tds_fdw
The files belonging to this database system will be owned by user "abigalek".
This user must also own the server process.
The database cluster will be initialized with locale "en_US.UTF-8".
The default database encoding has accordingly been set to "UTF8".
The default text search configuration will be set to "english".
Data page checksums are disabled.
creating directory pg-15-data ... ok
creating subdirectories ... ok
selecting dynamic shared memory implementation ... posix
selecting default max_connections ... 100
selecting default shared_buffers ... 128MB
selecting default time zone ... Etc/UTC
creating configuration files ... ok
running bootstrap script ... ok
performing post-bootstrap initialization ... ok
syncing data to disk ... ok
initdb: warning: enabling "trust" authentication for local connections
initdb: hint: You can change this by editing pg_hba.conf or using the option -A, or --auth-local and --auth-host, the next time you run initdb.
Success. You can now start the database server using:
pg-15-dist/bin/pg_ctl -D pg-15-data -l logfile start
waiting for server to start.... done
server started
(using postmaster on Unix socket, default port)
============== dropping database "regression" ==============
SET
DROP DATABASE
============== creating database "regression" ==============
CREATE DATABASE
ALTER DATABASE
ALTER DATABASE
ALTER DATABASE
ALTER DATABASE
ALTER DATABASE
ALTER DATABASE
============== installing tds_fdw ==============
ERROR: extension "tds_fdw" is not available
DETAIL: Could not open extension control file "/home/abigalek/pgext-cli-python/pg-15-dist/share/postgresql/extension/tds_fdw.control": No such file or directory.
HINT: The extension must first be installed on the system where PostgreSQL is running.
command failed: "/home/abigalek/pgext-cli-python/pg-15-dist/bin/psql" -X -c "CREATE EXTENSION IF NOT EXISTS \"tds_fdw\"" "regression"
waiting for server to shut down.... done
server stopped
The files belonging to this database system will be owned by user "abigalek".
This user must also own the server process.
The database cluster will be initialized with locale "en_US.UTF-8".
The default database encoding has accordingly been set to "UTF8".
The default text search configuration will be set to "english".
Data page checksums are disabled.
creating directory pg-15-data ... ok
creating subdirectories ... ok
selecting dynamic shared memory implementation ... posix
selecting default max_connections ... 100
selecting default shared_buffers ... 128MB
selecting default time zone ... Etc/UTC
creating configuration files ... ok
running bootstrap script ... ok
performing post-bootstrap initialization ... ok
syncing data to disk ... ok
initdb: warning: enabling "trust" authentication for local connections
initdb: hint: You can change this by editing pg_hba.conf or using the option -A, or --auth-local and --auth-host, the next time you run initdb.
Success. You can now start the database server using:
pg-15-dist/bin/pg_ctl -D pg-15-data -l logfile start
waiting for server to start.... done
server started
(using postmaster on Unix socket, default port)
============== dropping database "regression" ==============
SET
DROP DATABASE
============== creating database "regression" ==============
CREATE DATABASE
ALTER DATABASE
ALTER DATABASE
ALTER DATABASE
ALTER DATABASE
ALTER DATABASE
ALTER DATABASE
============== installing tds_fdw ==============
ERROR: extension "tds_fdw" is not available
DETAIL: Could not open extension control file "/home/abigalek/pgext-cli-python/pg-15-dist/share/postgresql/extension/tds_fdw.control": No such file or directory.
HINT: The extension must first be installed on the system where PostgreSQL is running.
command failed: "/home/abigalek/pgext-cli-python/pg-15-dist/bin/psql" -X -c "CREATE EXTENSION IF NOT EXISTS \"tds_fdw\"" "regression"
waiting for server to shut down.... done
server stopped