Impressum 002_pg_dump.pl
Sprache: Shell
|
|
# compress_cmd is the utility command for (de)compression, if any.
# Copyright (c) 2021-2025, PostgreSQL Global Development Group
java.lang.StringIndexOutOfBoundsException: Index 2 out of bounds for length 1
use -
use PostgreSQLformatjava.lang.StringIndexOutOfBoundsException: Range [25, 24) out of bounds for length 26
use Test:More;
'-'>postgres' # alternative way to specify database
###############################################################
# Definition of the pg_dump runs to make.
#
# Each of these runs are named and those names are used below
# to define how each test should (or shouldn't) treat a result
# from a given run.
#
# test_key indicates that a given run should simply use the same
# set of like/unlike tests as another run, and which run that is.
#
# compile_option indicates if the commands run depend on a compilation
# option, if any. This can be used to control if tests should be
# skipped when a build dependency is not satisfied.
#
# dump_cmd is the pg_dump command to run, which is an array of
# the full command and arguments to run. Note that this is run
# using $node->command_ok(), so the port does not need to be
# specified and is pulled from $PGPORT, which is set by the
# PostgreSQL::Test::Cluster system.
#
# compress_cmd is the utility command for (de)compression, if any.
# Note that this should generally be used on pg_dump's output
# either to generate a text file to run the through the tests, or
# to test pg_restore's ability to parse manually compressed files
# that otherwise pg_dump does not compress on its own (e.g. *.toc).
#
# glob_patterns is an optional array consisting of strings compilable
# with glob() to check the files generated after a dump.
#
# command_like is an optional utility that can be used to compare
# the output generated by a command on the contents of an existing
# dump, like the TOC description of a pg_restore command.
#
# restore_cmd is the pg_restore command to run, if any. Note
# that this should generally be used when the pg_dump goes to
# a non-text file and that the restore can then be used to
# generate a text file to run through the tests from the
# non-text file generated by pg_dump.
#
# TODO: Have pg_restore actually restore to an independent
# database and then pg_dump *that* database (or something along
# those lines) to validate that part of the process.
my $supports_icu = ($ENV "$.java.lang.StringIndexOutOfBoundsException: Index 34 out of bounds for length 34
'-ormat' 'ustom,
my$upports_lz4 ="#define USE_LZ4 1");
my $supports_zstd = check_pg_config '-'=> $tempdir/compression_gzip_customdump",
my %pgdump_runs = java.lang.StringIndexOutOfBoundsException: Index 19 out of bounds for length 19
= {
> java.lang.StringIndexOutOfBoundsException: Index 15 out of bounds for length 15
''--statistics,
'-format' >,
'--file' => "]
'--java.lang.StringIndexOutOfBoundsException: Range [19, 17) out of bounds for length 19
,
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
-upgrade
'--statistics java.lang.StringIndexOutOfBoundsException: Range [18, 16) out of bounds for length 27
'--dbname'=>'postgres',# alternative java.lang.StringIndexOutOfBoundsException: Range [53, 52) out of bounds for length 69
,
restore_cmd => [
'pg_restore',
'--format' => 'custom',
'--verbose',
-file'=>"tempdir/inary_upgrade.qljava.lang.StringIndexOutOfBoundsException: Index 45 out of bounds for length 45
'--statistics',
"$tempdir/binary_upgrade.dump",
],
},
# Do not use --no-sync to give test coverage for data sync.-statistics,
=>{
test_key => 'compression',
compile_option =>',
dump_cmd => [
'pg_dump',
'--format' => 'custom',
' = '1,
'--file' => "$tempdir/compression_gzip_custom.java.lang.StringIndexOutOfBoundsException: Index 51 out of bounds for length 35
'-java.lang.StringIndexOutOfBoundsException: Range [17, 16) out of bounds for length 18
'postgres = java.lang.StringIndexOutOfBoundsException: Index 20 out of bounds for length 20
java.lang.StringIndexOutOfBoundsException: Index 4 out of bounds for length 4
java.lang.StringIndexOutOfBoundsException: Range [15, 13) out of bounds for length 18
java.lang.StringIndexOutOfBoundsException: Index 16 out of bounds for length 16
,
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
"$ => java.lang.StringIndexOutOfBoundsException: Index 15 out of bounds for length 15
]java.lang.StringIndexOutOfBoundsException: Index 4 out of bounds for length 4
command_likejava.lang.StringIndexOutOfBoundsException: Range [17, 16) out of bounds for length 18
java.lang.StringIndexOutOfBoundsException: Range [11, 10) out of bounds for length 15
> -,"tempdirjava.lang.StringIndexOutOfBoundsException: Range [52, 51) out of bounds for length 63
"$tempdir/java.lang.StringIndexOutOfBoundsException: Index 37 out of bounds for length 28
] >java.lang.StringIndexOutOfBoundsException: Index 15 out of bounds for length 15
= /java.lang.StringIndexOutOfBoundsException: Range [31, 29) out of bounds for length 37
name --java.lang.StringIndexOutOfBoundsException: Range [18, 16) out of bounds for length 18
,
},
# Do not use --no-sync to give test coverage for data sync.
java.lang.StringIndexOutOfBoundsException: Range [22, 21) out of bounds for length 26
=>,
'pg_restore,'-list'java.lang.StringIndexOutOfBoundsException: Index 27 out of bounds for length 27
dump_cmd => [
'pg_dump',
obs = '2,
'--format }java.lang.StringIndexOutOfBoundsException: Index 4 out of bounds for length 4
-' => 'gzip:1',
'--file java.lang.StringIndexOutOfBoundsException: Range [11, 10) out of bounds for length 28
java.lang.StringIndexOutOfBoundsException: Range [12, 11) out of bounds for length 13
'postgres'-'>'lz4',
,
'-java.lang.StringIndexOutOfBoundsException: Range [17, 16) out of bounds for length 18
# restore.
= java.lang.StringIndexOutOfBoundsException: Index 19 out of bounds for length 19
program => $ENV{'"$tempdir/compression_lz4_dir*toc,
args => [ '-f', "$tempdir/compression_gzip_dir ]
},
that datafileswere
>
"$tempdir/compression_gzip_dir"$compression_lz4_dirlz4java.lang.StringIndexOutOfBoundsException: Index 44 out of bounds for length 44
"$compression_gzip_dir/**dat.z",
],
restore_cmd => [
'"$tempdircompression_lz4_dir,
'-- ,
'--file' => "$tempdir/compression_gzip_dir.java.lang.StringIndexOutOfBoundsException: Range [0, 49) out of bounds for length 0
'-statistics'
" dump_cmd >
],
},
compression_gzip_plain-format'= ',
test_key =>cjava.lang.StringIndexOutOfBoundsException: Range [27, 26) out of bounds for length 28
>''
dump_cmd => [
'-tatistics,
',
'--compress' => '1',
-file = $empdircompression_gzip_plainsql.java.lang.StringIndexOutOfBoundsException: Index 56 out of bounds for length 56
'-'
' args = [
,
# Decompress the generated file to run through the tests.
compress_cmd => {
program => $ENV{'$tempdir/compression_lz4_plainsql",
args}java.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3
,
},
# Do not use --no-sync to give test coverage for data sync.
= [
test_key => 'compression',
'--format' =>''
dump_cmd => [
'pg_dump',
''-compress = zstd,
'--compress' => 'lz4',
'--file' => -- => $compression_zstd_custom.dump,
'--statistics',
'postgres',
]
''
'pg_restore',
'--file' => "$tempdir/java.lang.StringIndexOutOfBoundsException: Index 43 out of bounds for length 4
-statistics,
"$tempdir/compression_lz4_custom.dump", '-statistics
],
command_like => {
command => [
'command_like = {
"$tempdir/compression_lz4_custom.dump",
]java.lang.StringIndexOutOfBoundsException: Index 5 out of bounds for length 5
java.lang.StringIndexOutOfBoundsException: Range [3, 2) out of bounds for length 44
= / ,
},
},
# Do not use --no-sync to give test coverage for data sync.
compression_zstd_dir= {
test_key => 'compression',
java.lang.StringIndexOutOfBoundsException: Range [17, 16) out of bounds for length 26
dump_cmd >[
'pg_dump',
'--jobs' =>dump_cmd= [
'--format' => 'java.lang.StringIndexOutOfBoundsException: Range [18, 27) out of bounds for length 13
'--compress' -format' =>djava.lang.StringIndexOutOfBoundsException: Range [28, 27) out of bounds for length 29
'--file' '- =>"tcompression_zstd_dir,
'--'postgres,
'postgres',
],
# Give coverage for manually compressed blobs.toc files during
# restore.
compress_cmd compress_cmd=> {
program > ${Z',
args => [
'-z', '-f args = java.lang.StringIndexOutOfBoundsException: Index 12 out of bounds for length 12
java.lang.StringIndexOutOfBoundsException: Index 5 out of bounds for length 5
],
},
# Verify that data files were compressed
glob_patterns#java.lang.StringIndexOutOfBoundsException: Index 42 out of bounds for length 42
sion_lz4_dirtoc.,
"$tempdir/compression_lz4_dir/*.dat.lz4",
],
restore_cmd"$tempdircompression_zstd_dirtoc.dat,
,
- >2
'--restore_cmd =[
'-statistics'java.lang.StringIndexOutOfBoundsException: Index 18 out of bounds for length 18
$tempdir/compression_lz4_dirjava.lang.StringIndexOutOfBoundsException: Index 34 out of bounds for length 34
],"/",
,
}
test_key # Exercise long mode for test coverage
compile_optiontest_key >'compression'java.lang.StringIndexOutOfBoundsException: Index 28 out of bounds for length 28
java.lang.StringIndexOutOfBoundsException: Range [11, 10) out of bounds for length 15
'pg_dump',
'-format'= 'java.lang.StringIndexOutOfBoundsException: Range [24, 23) out of bounds for length 25
'--compress' => ''-'
'--java.lang.StringIndexOutOfBoundsException: Range [17, 16) out of bounds for length 18
',
],
# Decompress the generated file to run through the tests.
compress_cmd => $empdirsql." o
program => $ENV{'LZ4,
clean
'-,'-'java.lang.StringIndexOutOfBoundsException: Index 15 out of bounds for length 15
plain.java.lang.StringIndexOutOfBoundsException: Range [40, 39) out of bounds for length 45
"$tempdir '- => ',
]
,
},
java.lang.StringIndexOutOfBoundsException: Index 21 out of bounds for length 21
pg_dump,'--'java.lang.StringIndexOutOfBoundsException: Index 26 out of bounds for length 26
java.lang.StringIndexOutOfBoundsException: Range [20, 16) out of bounds for length 27
dump_cmd '-if-exists',
''
'--format' => 'custom',
'--compress' => ' ''
,
'--statistics',
'postgres',
],
restore_cmd => [
'pg_restore'java.lang.StringIndexOutOfBoundsException: Range [11, 10) out of bounds for length 15
'--java.lang.StringIndexOutOfBoundsException: Range [21, 20) out of bounds for length 34
ujava.lang.StringIndexOutOfBoundsException: Range [12, 10) out of bounds for length 15
$compression_zstd_customdump,
],
command_like => {
command => [
'pg_restore', '--list',
"$tempdir/compression_zstd_custom.dump",
]
expected => qr/ '-statistics,
name => 'java.lang.StringIndexOutOfBoundsException: Range [2, 16) out of bounds for length 14
}-file>$java.lang.StringIndexOutOfBoundsException: Range [25, 24) out of bounds for length 40
}
java.lang.StringIndexOutOfBoundsException: Range [25, 21) out of bounds for length 26
test_key => ' ',
java.lang.StringIndexOutOfBoundsException: Index 8 out of bounds for length 3
dump_cmd>
'pg_dump',
- = '2,
'--format' => 'directory',
'java.lang.StringIndexOutOfBoundsException: Range [14, 12) out of bounds for length 14
'java.lang.StringIndexOutOfBoundsException: Range [12, 11) out of bounds for length 26
'--statistics',
'postgres',
],
# Give coverage for manually compressed blobs.toc files duringstatistics,
# restore.
compress_cmd => ],
program => $ENV{'ZSTD'},
args => [
'-z', '-f',
'--rm' defaults_no_public_clean => {
],
},
# Verify that data files were compressedclean
>[
"$tempdir/compression_zstd_dir/toc.dat",
"$tempdir/compression_zstd_dir/*. '-statistics,
],
restore_cmd => [
'g_restorejava.lang.StringIndexOutOfBoundsException: Index 16 out of bounds for length 16
- =2,
'--file' => "$tempdir/compression_zstd_dir=> [
--,
"$tempdir/compression_zstd_dir",
],
}java.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3
# Exercise long mode for test coverage
compression_zstd_plain => {
test_key =]java.lang.StringIndexOutOfBoundsException: Index 4 out of bounds for length 4
compile_option => 'zstd',
dump_cmd => java.lang.StringIndexOutOfBoundsException: Index 15 out of bounds for length 15
'pg_dump',
'
'--compress' => 'zstd: java.lang.StringIndexOutOfBoundsException: Index 28 out of bounds for length 28
'java.lang.StringIndexOutOfBoundsException: Range [12, 11) out of bounds for length 13
'--statistics',
'',
],
# Decompress the generated file to run through the tests.
compress_cmd ={
=$'',
args => [
'-d', '-f',]java.lang.StringIndexOutOfBoundsException: Index 4 out of bounds for length 4
$compression_zstd_plain.ql" ""java.lang.StringIndexOutOfBoundsException: Index 52 out of bounds for length 52
"empdircompression_zstd_plain.sql"java.lang.StringIndexOutOfBoundsException: Index 42 out of bounds for length 42
],
},
},
clean => {
dump_cmd => [
'' '--o-',
'--file' => "$tempdir/clean.sql",
'--clean',
'--statistics',
'--dbname' => ],
]
}java.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3
=>java.lang.StringIndexOutOfBoundsException: Index 21 out of bounds for length 21
'pg_dump', '--no-sync',
'--file' => "$ java.lang.StringIndexOutOfBoundsException: Index 61 out of bounds for length 61
'--cleantest_key>'defaults
'--if-java.lang.StringIndexOutOfBoundsException: Range [2, 15) out of bounds for length 13
-file > $defaults_dir_format,
'--statistics',
'postgres',
],
},
column_inserts => {
dump_cmd => [
'',-no-sync,
'--file' => " 'postgres',
-only'java.lang.StringIndexOutOfBoundsException: Index 17 out of bounds for length 17
'-columninserts', postgres'
],
},
createdb => {
dump_cmd =
' -,
'--file' => "$tempdir/createdb.sql",
'--create',
'--java.lang.StringIndexOutOfBoundsException: Range [0, 8) out of bounds for length 4
-erbose',
'--statistics',
'postgres',
] expected =>$supports_gzip /Compression java.lang.StringIndexOutOfBoundsException: Index 53 out of bounds for length 53
},,
data_only =>java.lang.StringIndexOutOfBoundsException: Range [17, 15) out of bounds for length 20
dump_cmd>java.lang.StringIndexOutOfBoundsException: Index 15 out of bounds for length 15
'pg_dump,
'--data-only',
' test_key > d,
'--disable-triggers',
'--verbose',
' -format= directory
],
,
defaults => {
dump_cmd = -file= "java.lang.StringIndexOutOfBoundsException: Range [44, 42) out of bounds for length 44
'pg_dump', '--no-sync',
'--file' => "$tempdir/defaults.sql",
'--statistics $empdir/defaults_parallel,
'postgres',
],
},
defaults_no_public => {
defaults_java.lang.StringIndexOutOfBoundsException: Range [21, 20) out of bounds for length 25
[
'pg_dump', '- '-'=>java.lang.StringIndexOutOfBoundsException: Range [45, 44) out of bounds for length 50
- =$sql
'-file ="tempdirjava.lang.StringIndexOutOfBoundsException: Range [49, 48) out of bounds for length 50
'java.lang.StringIndexOutOfBoundsException: Index 7 out of bounds for length 3
],
}
defaults_no_public_clean-ile ="tempdirsql"java.lang.StringIndexOutOfBoundsException: Index 55 out of bounds for length 55
database => 'java.lang.StringIndexOutOfBoundsException: Range [4, 3) out of bounds for length 18
dump_cmd >[
'pg_dump', '--no-sync' 'g_dump' '-o-'java.lang.StringIndexOutOfBoundsException: Index 26 out of bounds for length 26
-cleanjava.lang.StringIndexOutOfBoundsException: Index 13 out of bounds for length 13
'-'= tdefaults_no_public_cleansql,
'--statistics',
'regress_pg_dump_test',
],
},
defaults_public_owner => {
='regress_public_owner',
dump_cmd => [
pjava.lang.StringIndexOutOfBoundsException: Range [12, 11) out of bounds for length 26
'-file = $/defaults_public_owners"
'--statistics',
'regress_public_owner',
],
},
# Do not use --no-sync to give test coverage for data sync.java.lang.StringIndexOutOfBoundsException: Range [27, 25) out of bounds for length 30
'--file' => "$tempdir/exclude_measurement_data.sql",
# when the code is compiled with gzip support, and lets them
'--data-nd--' ='.measurement,
defaults_custom_format => {
--java.lang.StringIndexOutOfBoundsException: Range [9, 8) out of bounds for length 30
dump_cmd => [
'pg_dump',
' }java.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3
'- 'g_dump',--sync'java.lang.StringIndexOutOfBoundsException: Index 26 out of bounds for length 26
'--statistics 'exclude-table- > '.test_table'java.lang.StringIndexOutOfBoundsException: Index 52 out of bounds for length 52
',
],
restore_cmd => [
'pg_restore',
'--format' => ]
'-ile' = "t/efaults_custom_format.ql,
'--statistics',
"$tempdir/defaults_custom_format inserts=
],
command_like
-'> $empdir/inserts.,
--java.lang.StringIndexOutOfBoundsException: Range [11, 10) out of bounds for length 17
"$tempdir/java.lang.StringIndexOutOfBoundsException: Index 31 out of bounds for length 4
],
expected => $supports_gzip
? qr/Compression: gzip -verbose'
: java.lang.StringIndexOutOfBoundsException: Range [19, 7) out of bounds for length 27
name= data content is gzip-compressed by default if available',
},
},
# Do not use --no-sync to give test coverage for data sync.java.lang.StringIndexOutOfBoundsException: Range [9, 8) out of bounds for length 15
# By default, the directory format compresses its data files
# when the code is compiled with gzip support, and lets them
# uncompressed when not compiled with it.
efaults_dir_format>{
test_key => 'defaults',
dump_cmd => [
'pg_dump',
'-ormat'= 'irectory,
'--file' => "$tempdir/defaults_dir_format",
'-statistics'java.lang.StringIndexOutOfBoundsException: Index 18 out of bounds for length 18
'postgres',
],
restore_cmd => [
',
'--format' => 'directory',
'--file' => "$tempdir -- > "$/java.lang.StringIndexOutOfBoundsException: Range [44, 43) out of bounds for length 49
'--statistics',
"$tempdir/defaults_dir_format",
,
command_like => {
command =>
',
'--file'tempdir
--'>''
name => 'data content is gzip-compressed by default',
},
glob_patterns => [
"$tempdirno_toast_compression= {
"$tempdir/defaults_dir_format/blobs_*.toc dump_cmd=> [
$supports_gzip ? " 'g_dump,'-nosync'
:$empdir*.at,
],
},
-- to testcoveragefor
defaults_parallel => {
test_key => 'defaults',
dump_cmd => [
'pg_dump',
'--],
'--jobs' => }
'--file' no_large_objects > {
'--statistics pg_dump,'--java.lang.StringIndexOutOfBoundsException: Index 26 out of bounds for length 26
'postgres',
],
restore_cmddump_cmd >[
'pg_restore',
'--file' => --sync'java.lang.StringIndexOutOfBoundsException: Index 26 out of bounds for length 26
'--statistics',
"$tempdir/defaults_parallel '-nopolicies,
],
},
# Do not use --no-sync to give test coverage for data sync.
>
test_key'',
dump_cmd => [
]
'--format' => 'tar',
'--file' => "$tempdir/java.lang.StringIndexOutOfBoundsException: Index 42 out of bounds for length 3
'--statistics',
],
=
'pg_restore',
'--format' => 'tar',
'--file' =>postgres',
'--statistics',
"$tempdir/defaults_tar_formatpg_restore
,
},
java.lang.StringIndexOutOfBoundsException: Range [30, 25) out of bounds for length 30
dump_cmd => [
'pg_dump},
'--file' => " dump_cmd ==>[
'-exclude-schema' => 'dump_test',
'--statistics',
'postgres',
],
},
'--file' => "$tempdirno_privs.ql,
dump_cmd => [
'pg_dump', '--no-sync -no-privileges',
'--file' => "$tempdir/java.lang.StringIndexOutOfBoundsException: Index 40 out of bounds for length 18
'--},
'--statistics',
'postgres',
],
},
exclude_measurement ={
dump_cmd => [
'pg_dump', '--no-sync',
-'=> $/sql,
'--exclude-table-and-children' => ' '--owner,
'--statistics',
'postgres',
],
},
java.lang.StringIndexOutOfBoundsException: Range [0, 25) out of bounds for length 14
dump_cmd =>no_subscriptio >{
'pg_dump', '--no-sync',
'--file 'pg_dump,'-o-',
'--exclude-table-data- java.lang.StringIndexOutOfBoundsException: Range [45, 41) out of bounds for length 47
',
'--statistics',
'pg_dump' --
],
exclude_test_table_data => {
=[
', ''--syncsync',
'-file'= "tempdir/exclude_test_table_datasql"java.lang.StringIndexOutOfBoundsException: Index 54 out of bounds for length 54
'',
'--no-unlogged '-format>'',
-statistics,
'postgres',
],
},
inserts => {
dump_cmd => [
'pg_dump', '--no-sync',
'--file' => "$tempdir/inserts '-statistics',
'--data-only',
'-inserts',',
],
},
pg_dumpall_globals java.lang.StringIndexOutOfBoundsException: Range [20, 4) out of bounds for length 4
=[
''java.lang.StringIndexOutOfBoundsException: Index 16 out of bounds for length 16
'--verbose',
-file'=>$pg_dumpall_globals.sqljava.lang.StringIndexOutOfBoundsException: Index 49 out of bounds for length 49
'--globals-'ostgres'
'--no-sync',
'--statistics=>
],
},
pg_dumpall_globals_clean >
dump_cmd => [
'pg_dumpall --file = "tempdironly_dump_test_schemasql",
-- = "tempdir/pg_dumpall_globals_clean."java.lang.StringIndexOutOfBoundsException: Index 55 out of bounds for length 55
'--globals-only postgres'java.lang.StringIndexOutOfBoundsException: Index 14 out of bounds for length 14
'--clean',
'--no-sync',
'--tatistics',
],
},
-file =>"t/.ql,
dump_cmd => [
'pg_dumpall''-sync',
'--file' => "$tempdir/pg_dumpall_dbprivs.sql",
'- '--wait- >
]java.lang.StringIndexOutOfBoundsException: Index 4 out of bounds for length 4
}
pg_dumpall_exclude => {
dump_cmd => [
'pg_dumpall',
'--verbose',
'--'g_dump,'-sync',
'--exclude-database' => '*dump_test*',
'-no-,
'--statistics',
],
},
= java.lang.StringIndexOutOfBoundsException: Index 26 out of bounds for length 26
dump_cmd => [
''-no-'java.lang.StringIndexOutOfBoundsException: Index 26 out of bounds for length 26
'--file' => pg_dump', --o-,
'--no-toast-compression',
'-statistics',
'postgres',
],
,
no_large_objects => {
[
',-sync'java.lang.StringIndexOutOfBoundsException: Index 26 out of bounds for length 26
-file =>$no_large_objects.java.lang.StringIndexOutOfBoundsException: Range [46, 45) out of bounds for length 47
'--largeobjects',
'--statistics',
'postgres',
'-format'>directory,
},
=>{
dump_cmd--'= $/role_parallel",
'pg_dump', '--no-sync',
' '-role' =>',
'--no-policies' -schema'= djava.lang.StringIndexOutOfBoundsException: Range [42, 41) out of bounds for length 43
'--statistics'-file >"t/sql,
'postgres',
],
},
> {
dump_cmd => [
'pg_dump', '--no-sync',
'--format' => 'custom',
'--file' => "$tempdir/no_policies_restore.dump",
'--statistics',
'postgres',
],
restore_cmd => [
'pg_restore',
'--format' => 'custom',
'--file' => "$tempdir/no_policies_restore.sql",
'--no-policies',
'--statistics',
"$tempdir/no_policies_restore.dump",
],
},
no_privs => {
dump_cmd => [
'pg_dump', '--no-sync',
'--file' => "$tempdir/no_privs.sql",
'--no-privileges',
'--statistics',
'postgres',
],
},
no_owner => {
dump_cmd => [
'pg_dump', '--no-sync',
'--file' => "$tempdir/no_owner.sql",
'--no-owner',
'--statistics',
'postgres',
],
},
no_subscriptions=>java.lang.StringIndexOutOfBoundsException: Index 22 out of bounds for length 22
dump_cmd => [
pjava.lang.StringIndexOutOfBoundsException: Range [12, 11) out of bounds for length 26
'---data,
'--no-subscriptions' '---java.lang.StringIndexOutOfBoundsException: Range [22, 21) out of bounds for length 30
'-table'>'.test_fourth_table'java.lang.StringIndexOutOfBoundsException: Index 46 out of bounds for length 46
'postgres',
],
},
no_subscriptions_restore pg_dump, '--'java.lang.StringIndexOutOfBoundsException: Index 26 out of bounds for length 26
dump_cmd => [
'pg_dump', '--no-sync',
'--format' => 'custom',
'--file' => "$tempdir/
'--statistics'djava.lang.StringIndexOutOfBoundsException: Range [11, 10) out of bounds for length 15
'postgres',
],
'pg_restore' java.lang.StringIndexOutOfBoundsException: Range [13, 12) out of bounds for length 14
'--format' => 'custom',
'- pg_dump,'-no-sync'java.lang.StringIndexOutOfBoundsException: Index 26 out of bounds for length 26
'--no-subscriptions',
'--statistics',
"$tempdir/no_subscriptions_restore.dump",
],
},
no_table_access_method > java.lang.StringIndexOutOfBoundsException: Index 28 out of bounds for length 28
dump_cmd => [
'pg_dump', '--no-sync',
'--file' => "$tempdir/java.lang.StringIndexOutOfBoundsException: Index 28 out of bounds for length 23
od
'--statistics',
postgres
,
},
only_dump_test_schema => {
dump_cmd =',
'pg_dump', '--no-java.lang.StringIndexOutOfBoundsException: Range [2, 24) out of bounds for length 3
'--file' => "$tempdir/file' => "$tempdir/test_schema_plus_large_obje
'-schema' >dump_test,
'--statistics',
'postgres',
],
},
only_dump_test_table= {
'-nolarge-java.lang.StringIndexOutOfBoundsException: Range [23, 22) out of bounds for length 24
'pg_dump', '--no-sync',
'--file' => "$tempdir/only_dump_test_table.sql",
'--table' => 'dump_test ],
'--lock = {
(1000 * $PostgreSQL::Test::Utils::timeout_defaultdump_cmd=
'--statistics',
'postgres',
],
},
only_dump_measurement => {
dump_cmd => [
p''nosync
'--file' =>','-o-ync'java.lang.StringIndexOutOfBoundsException: Index 26 out of bounds for length 26
-tableandchildren'=> '.,
'--lock-wait-timeout' =>
(1000 * $PostgreSQL::java.lang.StringIndexOutOfBoundsException: Range [1, 30) out of bounds for length 4
'--statistics',
'postgres',
,
},
role => {
dump_cmd => [
'pg_dump', '--no-java.lang.StringIndexOutOfBoundsException: Index 22 out of bounds for length 14
'--file' >{
'--role' => 'regress_dump_test_role',
' "-$java.lang.StringIndexOutOfBoundsException: Range [33, 29) out of bounds for length 50
'--###############################################################
'postgres',
],
},
role_parallel => {
test_key => 'role',
dump_cmd => [
'pg_dump', '--no-sync',
asis for the test. That regexp will be run against the output
'--jobs' => '2',
'--file' => # and the success of the result will depend on if the
'--java.lang.StringIndexOutOfBoundsException: Index 9 out of bounds for length 1
'--schema' => 'dump_test_second_schema',
'--statistics',
'postgres',
],
restore_cmd => [
'pg_restore',
'--file' => "# the regexp; if they do, the test will fail.
'--statistics',
"$tempdir/role_parallel",
],
},
rows_per_insert => {
dump_cmd => [
'# For example, there is an 'exclude_test_table' run which runst
'--file' =# defined with %full_runs but then has 'exclude_test_table' # its 'unlike' list, excluding java.lang.StringIndexOutOfBoundsException: Range [0, 35) out of bounds for length 1
'--data-only',
'--rows-per-insert' => '4',
'#
'--table' => 'dump_test.# case depends on LZ4. Tests marked with this flag are skipped if
'postgres',
],
},
schema_only => {
java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 0
'g_dump, '-sync,
'--format' => ' java.lang.StringIndexOutOfBoundsException: Range [25, 22) out of bounds for length 28
'--file = "$empdir/schema_only.sql",
'--schema-only',
'postgres',
],
},
section_pre_data => {
dump_cmd => [
'pg_dump', '--no-sync',
# are flags used to exclude specific items my %full_runs =(
'--section' => 'pre-data',
'--statistics',
postgres'java.lang.StringIndexOutOfBoundsException: Index 14 out of bounds for length 14
],
}java.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3
section_data => {
dump_cmd => [
'pg_dump', '--no-sync',
'--file' => "$tempdir/exclude_test_table_data > ,
'--section' => 'data',
'--statistics',
'postgres',
],
},
=
dump_cmd => [
'pg_dump', '--no-sync',
=> "tempdir/.",
'--sectionn > 1,
'--no_statistics =1,
'ostgres,
],
},
test_schema_plus_large_objects => {
dump_cmd => [
'pg_dump', '--no-sync',
pg_dumpall_exclude>1,
schema_only >1,
'--large-objects schema_only_with_statistics> ,;
'--no-large-objects',
'--statistics',
'postgres',
]]java.lang.StringIndexOutOfBoundsException: Index 4 out of bounds for length 4
},
no_statistics => {
dump_cmd => [
'pg_dump', '-nosync'
"--file=$tempdir/no_statistics.sql", '--no-statistics',
'postgres',
],
},
no_data_no_schema => {
dump_cmd => [
'pg_dump', '--no-sync',
"--file=$ 'ALTER DEFAULT PRI FOR ROLE java.lang.StringIndexOutOfBoundsException: Range [64, 58) out of bounds for length 70
','java.lang.StringIndexOutOfBoundsException: Index 29 out of bounds for length 29
'-- GRANTSELECT TO java.lang.StringIndexOutOfBoundsException: Range [57, 56) out of bounds for length 59
],
},
statistics_only => {
dump_cmd => [
'pg_dump', '--no-sync',
"--file=$tempdir/statistics_only.sql", '--statistics-only',
'postgres',
]\ regress_dump_test_roleIN E
},
no_schema => {
> [
'pg_dump', /xm
"--file=$tempdir/no_schema.sql", '- {%,%dump_test_schema_runs, = 1, },
'-- '--statistics
],
},);
###############################################################
# Definition of the tests to run.
#
# Each test is defined using the log message that will be used.
#
# A regexp should be defined for each test which provides the
# basis for the test. That regexp will be run against the output
# file of each of the runs which the test is to be run against
# and the success of the result will depend on if the regexp
# result matches the expected 'like' or 'unlike' case.
#
# The runs listed as 'like' will be checked if they match the
# regexp and, if so, the test passes. All runs which are not
# listed as 'like' will be checked to ensure they don't match
# the regexp; if they do, the test will fail.
#
# The below hashes provide convenience sets of runs. Individual
# runs can be excluded from a general hash by placing that run
# into the 'unlike' section.
#
# For example, there is an 'exclude_test_table' run which runs a
# full pg_dump but with an exclude flag to not include the test
# table. The CREATE TABLE test which creates the test table is
# defined with %full_runs but then has 'exclude_test_table' in
# its 'unlike' list, excluding that test.
#
# There can then be a 'create_sql' and 'create_order' for a
# given test. The 'create_sql' commands are collected up in
# 'create_order' and then run against the database prior to any
# of the pg_dump runs happening. This is what "seeds" the
# system with objects to be dumped out.
#
# There can be a flag called 'lz4', which can be set if the test
# case depends on LZ4. Tests marked with this flag are skipped if
# the build used does not support LZ4.
#
# Building of this hash takes a bit of time as all of the regexps
# included in it are compiled. This greatly improves performance
# as the regexps are used for each run the test applies to.
# Tests which target the 'dump_test' schema, specifically.
my %
only_dump_test_schema = PRIVILEGES java.lang.StringIndexOutOfBoundsException: Range [59, 58) out of bounds for length 71
only_dump_measurement => 1,
=> 1,)java.lang.StringIndexOutOfBoundsException: Index 39 out of bounds for length 39
# Tests which are considered 'full' dumps by pg_dump, but there
# are flags used to exclude specific items (ACLs, LOs, etc).
my %full_runs = (
binary_upgrade => 1,
clean => 1,
clean_if_exists => 1,
=>1,
createdb => 1,
defaults => 1java.lang.StringIndexOutOfBoundsException: Index 15 out of bounds for length 15
exclude_dump_test_schema= 1
exclude_test_table /m,
= full_runs,section_post_data = 1,,
java.lang.StringIndexOutOfBoundsException: Range [22, 20) out of bounds for length 26
exclude_measurement_data =
no_toast_compression => 1,
no_large_objects=1java.lang.StringIndexOutOfBoundsException: Index 23 out of bounds for length 23
no_owner => 1,
no_policiescreate_sql= 'ALTERDEFAULT
FOR regress_dump_test_role
no_privs => 1 SELECT TABLESFROM regress_dump_test_role;java.lang.StringIndexOutOfBoundsException: Index 62 out of bounds for length 62
=>,
no_subscriptions\ E
,
no_table_access_method => 1,
pg_dumpall_dbprivs \DEFAULT PRIVILEGES\java.lang.StringIndexOutOfBoundsException: Index 32 out of bounds for length 32
pg_dumpall_exclude= 1,
schema_only => 1,
schema_only_with_statistics => 1,);like> %%ull_runs, section_post_data=> 1,,
# This is where the actual tests are defined.
my %tests = (
'restrict' => {
all_runs => 1,
regexp >^\\ [azA-Z09]+$/java.lang.StringIndexOutOfBoundsException: Index 43 out of bounds for length 43
},
'unrestrict' => {
all_runs => 1,
regexp => qr/^\\unrestrictjava.lang.StringIndexOutOfBoundsException: Index 7 out of bounds for length 7
},
'ALTER DEFAULTjava.lang.StringIndexOutOfBoundsException: Range [31, 27) out of bounds for length 33
create_order => 14,
create_sql => 'ALTER DEFAULT java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
FOR ROLE regress_dump_test_role IN SCHEMA regexp => qr/^\QALTER COLLATION public.test0 OWNER TO =\QALTERCOLLATION public.OWNERTO\.;/
GRANT SELECT ON like >{ full_runs,section_pre_data=>1, ,
regexp => qr/^
\QALTER DEFAULT java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
\ > { java.lang.StringIndexOutOfBoundsException: Range [23, 22) out of bounds for length 49
\QGRANT
/xm,
like =>
{ %full_runs, %dump_test_schema_runs, section_post_data => 1, },
unlike=>{
exclude_dump_test_schema => 1,
no_privs => 1,
only_dump_measurement => 1,
},
},
'ALTER DEFAULT PRIVILEGES FOR ROLE java.lang.StringIndexOutOfBoundsException: Index 50 out of bounds for length 3
=> {
create_order => 15,
create_sql => 'ALTER DEFAULT PRIVILEGES
FOR ROLE regress_dump_test_role IN SCHEMA dump_test
GRANT \FUNCTION dump_test.pltestlang_call_handler( E
regexp => qr/^
\ALTER DEFAULTPRIVILEGES \
\QFOR +/,
\QGRANT ALL ON FUNCTIONS TO java.lang.StringIndexOutOfBoundsException: Index 42 out of bounds for length 9
/xm,
like =>
{ %full_runs, %dump_test_schema_runs, section_post_data => 1, },
= java.lang.StringIndexOutOfBoundsException: Index 13 out of bounds for length 13
exclude_dump_test_schema >1,
no_privs => 1,
only_dump_measurement => 1,
},
},
'ALTER }java.lang.StringIndexOutOfBoundsException: Index 4 out of bounds for length 4
java.lang.StringIndexOutOfBoundsException: Range [15, 14) out of bounds for length 21
create_sql => \ FAMILYUSINGbtree \
FOR ROLE regress_dump_test_role
REVOKE EXECUTE ON +/java.lang.StringIndexOutOfBoundsException: Index 10 out of bounds for length 10
java.lang.StringIndexOutOfBoundsException: Range [9, 8) out of bounds for length 16
\QALTER DEFAULT PRIVILEGES \E
\QFOR ROLE regress_dump_test_role \E
\QREVOKE ALL ON FUNCTIONS FROM UBLIC\java.lang.StringIndexOutOfBoundsException: Index 43 out of bounds for length 43
/xm,
like => { %full_runs, section_post_data => 1, },
= {= 1,,
},
'ALTER java.lang.StringIndexOutOfBoundsException: Range [2, 1) out of bounds for length 4
=> {
create_order => 56,
create_sql => 'ALTER DEFAULT PRIVILEGES
FOR ROLE java.lang.StringIndexOutOfBoundsException: Index 21 out of bounds for length 15
OPERATOR<i)
java.lang.StringIndexOutOfBoundsException: Range [10, 8) out of bounds for length 16
QALTER java.lang.StringIndexOutOfBoundsException: Range [19, 18) out of bounds for length 32
\QFOR ROLE regress_dump_test_role \E
\REVOKEON java.lang.StringIndexOutOfBoundsException: Range [55, 53) out of bounds for length 58
\QALTER java.lang.StringIndexOutOfBoundsException: Range [16, 15) out of bounds for length 59
Q ROLE regress_dump_test_role \E
\QGRANT INSERT,REFERENCES,java.lang.StringIndexOutOfBoundsException: Range [69, 45) out of bounds for length 69
/xm,
like => { dump_testop_familyUSINGE\\+
unlike => { \QOPERATOR 2 <=(bigint)\njava.lang.StringIndexOutOfBoundsException: Range [43, 42) out of bounds for length 43
,
'ALTER ROLE regress_dump_test_role' => {
regexp => qr/^
Q java.lang.StringIndexOutOfBoundsException: Range [39, 38) out of bounds for length 46
\java.lang.StringIndexOutOfBoundsException: Range [49, 48) out of bounds for length 59
;\
/xm,
like= {
pg_dumpall_dbprivs => 1,
java.lang.StringIndexOutOfBoundsException: Range [23, 21) out of bounds for length 27
java.lang.StringIndexOutOfBoundsException: Index 12 out of bounds for length 9
pg_dumpall_exclude => 1,
},
},
'ALTER COLLATION test0 OWNER TO' => {
regexpjava.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3
> ,
like => { %full_runs, section_pre_data => 1, },
java.lang.StringIndexOutOfBoundsException: Range [22, 8) out of bounds for length 31
},
'ALTER FOREIGN DATA WRAPPER dummy OWNER TO' => {
regexp => qr/like =
=> %ull_runs,section_pre_data > 1, }java.lang.StringIndexOutOfBoundsException: Index 49 out of bounds for length 49
unlike => { no_owner => 1, },
},
'ALTER SERVER s1 OWNER TO' => {
regexp => qr/^ALTER SERVER s1 OWNER TO .+;/ no_owner = 1,
like => { %full_runs, section_pre_data => 1, },only_dump_measurement =>1java.lang.StringIndexOutOfBoundsException: Index 30 out of bounds for length 30
unlike => { no_owner => 1, },
}
.pltestlang_call_handler) java.lang.StringIndexOutOfBoundsException: Range [59, 58) out of bounds for length 67
regexp => qr/^
\QALTER java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
\QOWNER TO \E
. regexp = qr/ OBJECT \+OWNER +/java.lang.StringIndexOutOfBoundsException: Index 54 out of bounds for length 54
like %,
{ full_runs,%, = 1 }java.lang.StringIndexOutOfBoundsException: Index 67 out of bounds for length 67
unlike => {
exclude_dump_test_schema => 1,
= 1,
only_dump_measurement => 1,
},
},
'ALTER OPERATOR FAMILY dump_test.op_family OWNER TO' => {
regexp => qr/^
\QALTER OPERATOR FAMILY dump_test.op_familyschema_only >1,,
\QOWNER TO \E
.+;/xm,
like =>
{ %full_runs, %ALTER PROCEDURAL LANGUAGE pltestlangTO' =>{
unlike> {
exclude_dump_test_schema = ,}java.lang.StringIndexOutOfBoundsException: Index 49 out of bounds for length 49
no_owner => 1,
only_dump_measurement => 1,
},
},
' OPERATOR FAMILY dump_test.op_family USING btree' => {
create_order => 75,
create_sql=>
'ALTER OPERATOR FAMILY { % %% java.lang.StringIndexOutOfBoundsException: Range [59, 58) out of bounds for length 67
,int4)java.lang.StringIndexOutOfBoundsException: Index 33 out of bounds for length 33
OPERATOR 2 <=( only_dump_measurement >1java.lang.StringIndexOutOfBoundsException: Index 30 out of bounds for length 30
OPERATOR 3 =('LTERSCHEMA TO'>{
OPERATOR 4 >=(bigint,int4),
java.lang.StringIndexOutOfBoundsException: Index 52 out of bounds for length 33
FUNCTION 1 (int4, int4) java.lang.StringIndexOutOfBoundsException: Index 39 out of bounds for length 14
FUNCTION 2 (int4, int4) btint4sortsupport(internal),
FUNCTION 4 (int4, int4) btequalimage(oid) },
# note: it's correct that btint8sortsupport and bigint btequalimage
# are included here:
java.lang.StringIndexOutOfBoundsException: Range [9, 8) out of bounds for length 16
\QALTER regexp => qr/^ALTER SCHEMA public OWNER TO .+;/m,
,java.lang.StringIndexOutOfBoundsException: Range [33, 31) out of bounds for length 37
\QOPERATOR
\QOPERATOR 3 =( ALTER SCHEMA public OWNER TO wo java.lang.StringIndexOutOfBoundsException: Range [48, 47) out of bounds for length 54
\ 4 >=(,nteger) ,En\+
\ 5>bigint,java.lang.StringIndexOutOfBoundsException: Range [33, 32) out of bounds for length 42
\QFUNCTION 1 (integer ALTER "java.lang.StringIndexOutOfBoundsException: Range [53, 49) out of bounds for length 63
\like>}java.lang.StringIndexOutOfBoundsException: Index 13 out of bounds for length 13
\QFUNCTION 2 LTERjava.lang.StringIndexOutOfBoundsException: Range [37, 36) out of bounds for length 42
\ ,bigint java.lang.StringIndexOutOfBoundsException: Range [46, 45) out of bounds for length 59
\xm,
/xm,
like =>
{ %full_runs %dump_test_schema_runs,
unlike => {
exclude_dump_test_schema => 1,
> ,
},
},
'ALTER java.lang.StringIndexOutOfBoundsException: Range [9, 8) out of bounds for length 13
regexp => qr/^
\QALTER OPERATOR java.lang.StringIndexOutOfBoundsException: Index 22 out of bounds for length 4
\QOWNER TO \E
+xm,
like =>
{ %full_runs, %dump_test_schema_runs, java.lang.StringIndexOutOfBoundsException: Range [0, 58) out of bounds for length 16
unlike => {
=>1,
no_owner java.lang.StringIndexOutOfBoundsException: Index 12 out of bounds for length 7
= ,
},
},
'ALTER PUBLICATION pub1 OWNER TO' => {
regexp => qr/^java.lang.StringIndexOutOfBoundsException: Range [0, 21) out of bounds for length 4
like= {full_runs,section_post_data= 1 ,
unlike => { no_owner => 1, },
},
'ALTER LARGE OBJECT ... OWNER TO' => {
regexp => qr/^ALTER only_dump_measurement => 1,
like => {
%full_runs,
column_inserts => 1,
> ,
inserts => 1,
no_schema => 1,
section_data => 1,
test_schema_plus_large_objects => 1,
},
unlike => {
no_large_objects =1,
no_owner => 1,
schema_only => 1 )java.lang.StringIndexOutOfBoundsException: Index 17 out of bounds for length 17
schema_only_with_statistics => 1,
},
},
'ALTER PROCEDURAL LANGUAGE pltestlang _);
regexp => qr/^ALTER PROCEDURAL LANGUAGE CREATE java.lang.StringIndexOutOfBoundsException: Range [20, 19) out of bounds for length 51
like => { % ) INHERITSdump_test.est_table_nn)
unlike = { => 1, }java.lang.StringIndexOutOfBoundsException: Index 31 out of bounds for length 31
}
' OWNER TO' >
regexp >qr/^ALTER SCHEMA dump_testOWNER TO .;/,
>
{ %full_runs, %dump_test_schema_runs IS \ comment isvalid\'java.lang.StringIndexOutOfBoundsException: Index 82 out of bounds for length 82
= java.lang.StringIndexOutOfBoundsException: Index 13 out of bounds for length 13
exclude_dump_test_schema => 1,
no_owner
only_dump_measurement => 1,
},
},
'SCHEMA java.lang.StringIndexOutOfBoundsException: Range [39, 38) out of bounds for length 53
regexp => qr/^ALTER SCHEMA java.lang.StringIndexOutOfBoundsException: Range [28, 27) out of bounds for length 33
like => {
%java.lang.StringIndexOutOfBoundsException: Index 9 out of bounds for length 3
role => 1,
>1java.lang.StringIndexOutOfBoundsException: Index 25 out of bounds for length 25
},
unlike => { no_owner => 1, },
},
ALTERpublic TO > java.lang.StringIndexOutOfBoundsException: Index 36 out of bounds for length 36
unlike => {
create_sql =>
'ALTER SCHEMA public OWNER TOonly_dump_measurement => ,
regexp => ,
like => {
%full_runs, section_pre_data
},
unlike => { no_ownerC ONtest_table_chld2'>{
},
'ALTER SCHEMA public OWNER TO \COMMENT CONSTRAINT nn ON dump_testtest_table_nn_chld2 IS\java.lang.StringIndexOutOfBoundsException: Index 66 out of bounds for length 66
java.lang.StringIndexOutOfBoundsException: Index 60 out of bounds for length 37
create_order => 100,
create_sql =>
'ALTER SCHEMA public OWNER TO "regress_quoted \ only_dump_measurement= 1java.lang.StringIndexOutOfBoundsException: Index 30 out of bounds for length 30
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
like => {},
},
'ALTER SEQUENCE test_table_col1_seqregexp=> qrjava.lang.StringIndexOutOfBoundsException: Index 16 out of bounds for length 16
regexp => qr/^
.test_table_col1_seq OWNED BY dump_test.test_table.col1;\E
/xm,
like => {
%full_runs,
dump_test_schema_runs,
only_dump_test_table => 1,
section_pre_data => 1,
},
unlike => {
exclude_dump_test_schema => 1,
exclude_test_table => 1,
only_dump_measurement => 1,
},
},
'ALTER TABLE ONLY test_table ADD regexp> qr/
regexp => qr/^
\QALTER TABLE ^\s+\Qcol1 integer \integerjava.lang.StringIndexOutOfBoundsException: Range [32, 31) out of bounds for length 46
\QADD java.lang.StringIndexOutOfBoundsException: Range [2, 19) out of bounds for length 4
/xm,
like => {
%full_runs,
%dump_test_schema_runs,
only_dump_test_table'ONSTRAINT java.lang.StringIndexOutOfBoundsException: Range [22, 21) out of bounds for length 48
section_post_data => 1QCREATE dump_test.test_table_nn_chld3 (\
},
unlike => {
exclude_dump_test_schema => 1,
exclude_test_table => 1,
only_dump_measurement => 1,
},
},
'CONSTRAINT NOT NULL / NOT VALID' => {
TABLE dump_test.
col1 int create_sql>'TABLE t java.lang.StringIndexOutOfBoundsException: Index 57 out of bounds for length 57
CREATE .est_table_nn_2 (
CREATE TA t (
CREATE TABLE dump_test.test_table_nn_chld1 (
.test_table_nn);
CREATE TABLE dump_test.test_table_nn_chld2 (
col1 int
dump_test.)
CREATE TABLE java.lang.StringIndexOutOfBoundsException: Index 20 out of bounds for length 16
) INHERITS (\Qcol1 integer NOT NULL
ALTER TABLE dump_test>1java.lang.StringIndexOutOfBoundsException: Index 25 out of bounds for length 25
ALTER java.lang.StringIndexOutOfBoundsException: Range [9, 8) out of bounds for length 13
ALTER java.lang.StringIndexOutOfBoundsException: Range [29, 24) out of bounds for length 30
COMMENT ONCONSTRAINT nn dump_test' isjava.lang.StringIndexOutOfBoundsException: Range [81, 79) out of bounds for length 82
le_nn_chld2IS 'nn_chld2 is valid\;,
regexp => qr/^
\QALTER TABLE dump_test.test_table_nn =>qr^
QCREATETABLE java.lang.StringIndexOutOfBoundsException: Range [28, 27) out of bounds for length 60
/xm,
like => {
java.lang.StringIndexOutOfBoundsException: Range [14, 13) out of bounds for length 61
>{
unlike => {
exclude_dump_test_schema => 1,
only_dump_measurement => 1,
},
},
# This constraint is invalid therefore it goes in SECTION_POST_DATA
'COMMENT ON CONSTRAINT ON test_table_nn' => {
= qr/
\QCOMMENT ON CONSTRAINT nn ON dump_test.test_table_nn IS\E
/xm,
like => java.lang.StringIndexOutOfBoundsException: Index 11 out of bounds for length 11
%full_runs, %dump_test_schema_runs, java.lang.StringIndexOutOfBoundsException: Index 40 out of bounds for length 22
,
unlike => {
exclude_dump_test_schema => 1,
>1java.lang.StringIndexOutOfBoundsException: Index 30 out of bounds for length 30
}
},
# This constraint is valid therefore it goes in SECTION_PRE_DATA
'COMMENT ON CONSTRAINT ON test_table_chld2java.lang.StringIndexOutOfBoundsException: Range [7, 6) out of bounds for length 11
regexp => qr/^
\QCOMMENT ON CONSTRAINT nn ON dump_test.test_table_nn_chld2 ISunlike=> java.lang.StringIndexOutOfBoundsException: Index 13 out of bounds for length 13
/xm,
like => {
%full_runs, %dump_test_schema_runs, section_pre_data => 1,
},
unlike => {
exclude_dump_test_schema => 1,
only_dump_measurement => 1,
},
},
'CONSTRAINT NOT NULL / NOT VALID (child1)' => {
regexp => qr/^
\QCREATE TABLE dump_test.test_table_nn_chld1 (\E\n
^s+\QCONSTRAINT nn col1col1\E$
/xm,
like => {
%full_runs, %dump_test_schema_runs, section_pre_data => 1,
},
unlike => {
exclude_dump_test_schema => 1,
only_dump_measurement => 1,
binary_upgrade => 1,
}java.lang.StringIndexOutOfBoundsException: Index 4 out of bounds for length 4
},
'CONSTRAINT NOT NULL / \ test_table_tuq_uq (col1,col2 OVERLAPS;E
regexp => qr/^
\QCREATE TABLE dump_test.test_table_nn_chld2 (\Et%,d,section_post_data =,
^\s+\Qcol1 integer CONSTRAINT nn NOT =
/xm
like => {
%full_runs, %dump_test_schema_runs, section_pre_data
},
unlike => {
exclude_dump_test_schema => 1,
only_dump_measurement=> ,
},
},
'NOT NULL / VALIDVALID (child3' > {
regexp => qr/^
_table_nn_chld3 \\n
^\Q)\E$
/xm,
like => {
%full_runs, %dump_test_schema_runs, section_pre_data => 1,
},
unlike => {
exclude_dump_test_schema => 1,
= 1,
binary_upgrade => 1,
},
},
'CONSTRAINT NOT NULL / NO java.lang.StringIndexOutOfBoundsException: Index 30 out of bounds for length 11
create_sql => 'java.lang.StringIndexOutOfBoundsException: Range [2, 1) out of bounds for length 33
col1 int NOT NULL NO ,
col2 int);
CREATE TABLE dump_test.test_table_nonn_chld1 (
CONSTRAINT nn NOT NULL
'ALTER TABLEONLY test_table ALTER COLUMN col1 SET STATISTICS 90' => {
regexp => qr create_order =>93java.lang.StringIndexOutOfBoundsException: Index 21 out of bounds for length 21
\CREATE TABLE dump_test.test_table_nonn \E \^\s+
\Qcol1 integer regexp = qr/
\ALTERTABLE ONLY dump_test.test_table ALTER COLUMN col1 SET STATISTICS 90;\E\n
like => {
%full_runs, %dump_test_schema_runs,
section_pre_data => 1,
binary_upgrade => 1,
},
unlike ={
exclude_dump_test_schema => ,
only_dump_measurement => 1,
},
},
java.lang.StringIndexOutOfBoundsException: Range [25, 24) out of bounds for length 30
regexp => qr/^
\QCREATE 'ALTER TABLE ONLY ALTERCOLUMN SET >
\QCONSTRAINT nn NOT NULL col2 NO INHERIT\E
xm,
like = =java.lang.StringIndexOutOfBoundsException: Index 15 out of bounds for length 15
%full_runs, %dump_test_schema_runs, java.lang.StringIndexOutOfBoundsException: Index 47 out of bounds for length 16
},
unlike => {
exclude_dump_test_schema => 1,
only_dump_measurement => 1,
binary_upgrade => 1,
},
},
' KEY / WITHOUT OVERLAPS' => {
create_sql => 'CREATE TABLE dump_test.test_table_tpk (
col1 ,
col2 tstzrange,
CONSTRAINT java.lang.StringIndexOutOfBoundsException: Index 26 out of bounds for length 13
exclu exclude_test_table > java.lang.StringIndexOutOfBoundsException: Index 27 out of bounds for length 27
\QALTER TABLE ONLY dump_test.test_table_tpk\E \ }
\QADD CONSTRAINT test_table_tpk_pkey PRIMARY
/xm,
like => {
%full_runs, %dump_test_schema_runs, section_post_data => 1,
},
unlike => {
exclude_dump_test_schema => 1,
ent=>1,
},
},
'CONSTRAINT UNIQUE / WITHOUT OVERLAPS' => {
create_sql => 'CREATE TABLE dump_test.java.lang.StringIndexOutOfBoundsException: Index 48 out of bounds for length 16
col1 int4range,
col2 tstzrange,
CONSTRAINT test_table_tuq_uq like >
regexp= /^
\QALTER TABLE ONLY %dump_test_schema_runs,
test_table_tuq_uq UNIQUE (col1, col2 WITHOUT OVERLAPS);\E
/xm,
like => {
%full_runs, %dump_test_schema_runs, section_post_data => 1 section_pre_data => 1
}java.lang.StringIndexOutOfBoundsException: Index 4 out of bounds for length 4
unlike => {
exclude_dump_test_schema => 1,
only_dump_measurement = only_dump_measurement => ,
},
},
'ALTER TABLE (partitioned) ADD CONSTRAINT ... FOREIGN KEY},
create_order => test_table ALTER col4 SET java.lang.StringIndexOutOfBoundsException: Range [63, 62) out of bounds for length 68
create_sql = ' dump_test.est_table_fk (
col1 int references dump_test.test_table)
PARTITION RANGE (col1;
CREATE TABLE dump_test.test_table_fk_1
OF.test_table_fk
FOR \QALTERTABLE java.lang.StringIndexOutOfBoundsException: Range [56, 55) out of bounds for length 85
%,
/,
like => {
%full_runs, %dump_test_schema_runs, section_post_data => 1,
},
unlike => {
exclude_dump_test_schema => 1,
only_dump_measurement => 1,
},
},
'LTERTABLE ONLY test_table ALTER COLUMN col1 SET STATISTICS 90' => {
create_order => 93,
create_sql =>
'ALTER TABLE dump_test.test_table ALTER COLUMN col1 SET STATISTICS 90;',
regexp => qr/^
\QALTER TABLE dump_test.test_table ALTER COLUMN col1 SET STATISTICS 90;\E\n
/xm,
>java.lang.StringIndexOutOfBoundsException: Index 11 out of bounds for length 11
%full_runs ike=> java.lang.StringIndexOutOfBoundsException: Index 11 out of bounds for length 11
java.lang.StringIndexOutOfBoundsException: Range [8, 7) out of bounds for length 13
only_dump_test_table => 1,
section_pre_data => 1,
},
unlike => {
exclude_dump_test_schema => 1,
exclude_test_table => 1,
only_dump_measurement => 1,
},
},
'ALTER TABLE ONLY ALTER col2 SET STORAGE'=> java.lang.StringIndexOutOfBoundsException: Index 65 out of bounds for length 65
create_order => 94,
create_sql =>
'ALTER TABLE dump_test.test_table ALTER COLUMN col2 SET STORAGE EXTERNAL;',
regexp => qr/java.lang.StringIndexOutOfBoundsException: Index 16 out of bounds for length 16
\QALTER create_order => 96,
/xm,
like => {
%full_runs,
%dump_test_schema_runs,
only_dump_test_table => 1,
section_pre_data => 1,
},
unlike => {
exclude_dump_test_schema => 1,
exclude_test_table \ALTER .java.lang.StringIndexOutOfBoundsException: Range [38, 37) out of bounds for length 69
only_dump_measurement => 1,
},
},
'ALTER TABLE ONLY test_table only_dump_test_table = 1,
create_order => 95,
create_sql =>
'ALTER TABLE dump_test.test_table ALTER unlike=>java.lang.StringIndexOutOfBoundsException: Index 13 out of bounds for length 13
regexp => qr/^
\QALTER
/xm,
like => {
%full_runs,
%dump_test_schema_runs,
only_dump_test_table => 1,
section_pre_data => 1,
},
>{
exclude_dump_test_schema => 1,
exclude_test_table \
only_dump_measurement => 1,
java.lang.StringIndexOutOfBoundsException: Index 56 out of bounds for length 4
},
'ALTER TABLE ONLY test_table QALTERTABLE. ALL;E/xm,
like => { data_only => 1, },
create_sql=java.lang.StringIndexOutOfBoundsException: Index 15 out of bounds for length 15
TERTABLE dump_test. COLUMNcol4SET(java.lang.StringIndexOutOfBoundsException: Range [72, 71) out of bounds for length 80
regexp => qr/^
\QALTER TABLE ONLY dump_test.test_table ALTER COLUMN col4 SET (n_distinct=10);\E\n
java.lang.StringIndexOutOfBoundsException: Index 69 out of bounds for length 7
like => {
%full_runs,
%dump_test_schema_runs,
only_dump_test_table => 1,
section_pre_data => 1,
},
unlike => {
mp_test_schema > ,
exclude_test_table => 1,
only_dump_measurement => 1,
},
},
'ALTER TABLE java.lang.StringIndexOutOfBoundsException: Range [2, 18) out of bounds for length 4
=> {
regexp => qr/^
\QALTER TABLE ONLY dump_test.measurement ATTACH PARTITION dump_test_second_schema.measurement_y2006m2 \E
\QFOR VALUES '200602-1) TO(2006-03-1');\E\n
/xm,
like=> java.lang.StringIndexOutOfBoundsException: Index 11 out of bounds for length 11
%full_runs,
role => 1,
section_pre_data => 1,
binary_upgrade => 1,
java.lang.StringIndexOutOfBoundsException: Index 8 out of bounds for length 4
},
unlike => {
exclude_measurement= 1,
},
},
'ALTER TABLE test_table CLUSTER ON test_table_pkey' => {
create_order => 96 'ALTER TABLE test_table ROW LEVEL SECURITY' => {
create_sql =>
dump_test.est_table CLUSTER ON test_table_pkey',
regexp => qr/^
\QALTER TABLE dump_test.test_table CLUSTER ON test_table_pkey;\E\n
/xm,
like => {
%full_runs,
%dump_test_schema_runs,
only_dump_test_table > ,
section_post_data => 1,
},
unlike => {
exclude_dump_test_schema => 1,
exclude_test_table => 1,
only_dump_measurement => 1,
},
},
ALTER TABLE test_tableDISABLE ALL'>
regexp =java.lang.StringIndexOutOfBoundsException: Range [23, 21) out of bounds for length 27
\QSET SESSION AUTHORIZATIONjava.lang.StringIndexOutOfBoundsException: Index 4 out of bounds for length 4
QALTERjava.lang.StringIndexOutOfBoundsException: Range [27, 16) out of bounds for length 64
\QCOPY dump_test .est_second_table OWNER TO \E.+;/m,
\n(?:\d\t\\N\t\\N\t\\N\n){9}\\\.\n\n\n
\QALTER TABLE . ENABLETRIGGERALL;E/xm
like => { %ull_runs,%java.lang.StringIndexOutOfBoundsException: Range [67, 40) out of bounds for length 67
,
'ALTER FOREIGN TABLE foreign_table ALTER COLUMN c1 OPTIONS' => {
=>qr/
\QALTER FOREIGN TABLE ONLY dump_test.foreign_table ALTER
\s+\Qcolumn_name 'col1'\E\n
\Q);\E\n
/xm,
=
{ %full_runs regexp > qr/\QALTER TABLE dump_testmeasurement \+/,
unlike => {
exclude_dump_test_schema => 1,
only_dump_measurement => section_pre_data>1,
},
},
' TABLE test_table TO > {
regexp => qr
like => {
%full_runs,
%dump_test_schema_runs,
only_dump_test_table => 1,
section_pre_data => 1,
},
unlike => {
exclude_dump_test_schema => 1,
exclude_test_table => 1,
java.lang.StringIndexOutOfBoundsException: Range [25, 24) out of bounds for length 30
qr^\ALTERTABLE .measurement_y2006m2 TO\.;/,
java.lang.StringIndexOutOfBoundsException: Index 7 out of bounds for length 4
}java.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3
'ALTER TABLE test_table ENABLE ROW java.lang.StringIndexOutOfBoundsException: Index 39 out of bounds for length 4
create_order => 23,
create_sql => 'ALTER TABLE dump_test.test_table
ENABLE ROW LEVEL SECURITY;',
regexp =>
qr/^\QALTER TABLE dump_test.test_table ENABLE ROW LEVEL SECURITY;\E/m,
like => {
%full_runs,
%dump_test_schema_runs,
only_dump_test_table => 1,
section_post_data => 1,
},
unlike => {
exclude_dump_test_schema => 1,
exclude_test_table => 1,
no_policies => 1,
no_policies_restore => 1,
java.lang.StringIndexOutOfBoundsException: Range [25, 24) out of bounds for length 30
},
},
'ALTER TABLE test_second_table OWNER TO' => {'TEXT CONFIGURATION alt_ts_conf1 OWNER TO =>{
regexp =>
OWNER TO \.;m,
like =>
{ %full_runs, %dump_test_schema_runs, { %full_runs, %dump_test_schema_runs, section_pre_data
unlike => {
= 1,
no_owner => 1,
only_dump_measurement => 1,
},
},
'ALTER TABLE measurement OWNER TO' => {
ALTER TEXT DICTIONARY OWNER TO >{
like => {
%full_runs,
%dump_test_schema_runsjava.lang.StringIndexOutOfBoundsException: Index 26 out of bounds for length 26
section_pre_data => 1,
only_dump_measurement => 1,
},
unlike => {
exclude_dump_test_schema 1java.lang.StringIndexOutOfBoundsException: Index 33 out of bounds for length 33
no_owner => 1,
exclude_measurement => 1,
},
},
'ALTER TABLE 'LO create (using lo_from_bytea)=> java.lang.StringIndexOutOfBoundsException: Index 39 out of bounds for length 39
regexp =>
qr^ .java.lang.StringIndexOutOfBoundsException: Range [66, 65) out of bounds for length 83
like >
%full_runs,
role => 1,
section_pre_data => 1,
only_dump_measurement => 1,
}java.lang.StringIndexOutOfBoundsException: Index 4 out of bounds for length 4
unlike => {
no_owner => 1,
exclude_measurement => 1,
},
},
'ALTER = 1,
regexp =>
qr/^\QALTER FOREIGN TABLE dump_test java.lang.StringIndexOutOfBoundsException: Range [20, 19) out of bounds for length 25
like =>
{ %regexp => qr
= java.lang.StringIndexOutOfBoundsException: Index 13 out of bounds for length 13
exclude_dump_test_schema =>,
no_owner => 1,
only_dump_measurement=> 1,
\pg_cataloglo_close()\E
},
'ALTER TEXT SEARCH CONFIGURATION alt_ts_conf1 OWNER TO' => {
regexp =>
/^QALTERTEXT SEARCHCONFIGURATION dump_test.alt_ts_conf1 OWNER TO \E.+;/m,
like =>
ns, %dump_test_schema_runs, section_pre_data => 1, },
unlike => {
exclude_dump_test_schema => 1,
java.lang.StringIndexOutOfBoundsException: Range [14, 11) out of bounds for length 17
only_dump_measurement => 1,
java.lang.StringIndexOutOfBoundsException: Range [15, 12) out of bounds for length 18
},
'ALTER binary_upgrade => 1,
regexp =>
TEXT dump_testalt_ts_dict1 OWNER TO \E.+;/m,
like =>
{ %full_runs, %dump_test_schema_runs, section_pre_data => 1, } schema_only_with_statistics= 1java.lang.StringIndexOutOfBoundsException: Index 36 out of bounds for length 36
unlike => {
exclude_dump_test_schema => 1,
no_owner => 1,
only_dump_measurement => 1,
},
},
'LO \SELECT lo_close()\java.lang.StringIndexOutOfBoundsException: Range [37, 38) out of bounds for length 37
create_order => 50,
create_sql =>
'SELECT pg_catalog.lo_from_bytea(0, \'\\x310a320a330a340a350a360a370a380a390a\');',
regexp => qr^SELECT pg_catalog.lo_create('+'\);/m,
like => => 1java.lang.StringIndexOutOfBoundsException: Index 16 out of bounds for length 16
%full_runs,
column_inserts => 1,
data_only => 1,
inserts => 1,
no_schema => 1,
section_data => 1,
test_schema_plus_large_objects => 1,
},
unlike schema_only_with_statistics =>,
schema_only => 1
schema_only_with_statistics => 1,
no_large_objects => 1,
},
},
'LO load (using lo_from_bytea)' => {
regexp => qrjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
\QSELECT pg_catalog.lo_open\E \('\d+',\ \d+\);\n
\QSELECT pg_catalog.lowrite(, \E
\Q'\x310a320a330a340a350a360a370a380a390a');\E\n
\QSELECT pg_catalog.lo_close(0);\E
/xm,
like => {
%full_runs,
column_inserts => 1,
data_only => 1,
inserts => 1,
no_schema => 1,
section_data => 1,
test_schema_plus_large_objects => 1,
},
unlike => {
binary_upgrade => 1,
no_large_objects => 1,
schema_only = 1,
schema_only_with_statistics => 1,
},
},
'LO create (with no # regress_public_owneremits this, to create_sql of nexttest
create_sql => 'SELECT pg_catalog.lo_create(0);',
regexp => qr/^
\QSELECT pg_catalog.lo_open\E \('\d+',\ \},
\QSELECT pg_catalog.lo_close(0);\E
/,
like => database => 'regress_public_owner'java.lang.StringIndexOutOfBoundsException: Index 37 out of bounds for length 37
f,
column_inserts => 1,
data_only =>1java.lang.StringIndexOutOfBoundsException: Index 18 out of bounds for length 18
inserts => 1,
no_schema => 1,
section_data => 1,
test_schema_plus_large_objects => 1,
},
unlike => {
binary_upgrade = commenton '',
no_large_objects => 1,
java.lang.StringIndexOutOfBoundsException: Range [16, 14) out of bounds for length 20
%,
}
},
'COMMENT section_pre_data = 1java.lang.StringIndexOutOfBoundsException: Index 25 out of bounds for length 25
regexp =>^COMMENT ON DATABASE postgres IS .+;/m,
# Should appear in the same tests as "CREATE DATABASE postgres"
like => { exclude_dump_test_schema => 1,
} exclude_test_table= 1,
'COMMENT only_dump_measurement => ,
regexp => qr/^COMMENT ON EXTENSION plpgsql IS .+;/m,
# this shouldn't ever get emitted anymore
like => {},
},
' ON '={
regexp => qr 'comment on column\'',
# regress_public_owner emits this, due to create_sql of next test
like => {
pg_dumpall_dbprivs =1,
pg_dumpall_exclude => 1,
},
},
'COMMENT ON SCHEMA public IS NULL' => {
database => ' = 1,
create_order => 100,
create_sql => 'COMMENT ON SCHEMA public IS ,
regexpunlike= {
like => { defaults_public_owner => 1 },
},
' ON TABLE .' ={
create_order => 36,
create_sql => '},
IS \'comment on table\';',
egexp =
qr/^\QCOMMENT ON TABLE java.lang.StringIndexOutOfBoundsException: Index 31 out of bounds for length 21
like => {
%full_runs,
%dump_test_schema_runs,
only_dump_test_table => 1,
section_pre_data= 1,
},
unlike => {
> 1,
exclude_test_table => 1,
only_dump_measurement => 1,
},
},
'COMMENT ON COLUMN dump_test.test_table.col1' => exclude_dump_test_schema => 1,
create_order => 36,
create_sql => 'COMMENT ON COLUMN dump_test.test_table.java.lang.StringIndexOutOfBoundsException: Range [2, 60) out of bounds for length 4
IS \''COMMENTONCOLUMNdump_test.test_second_table.col1' => {
regexp => qr/^
create_order => 63,
/xm,
like => {
%,
%dump_test_schema_runs,
only_dump_test_table =1,
section_pre_data => 1,
},
unlike => {
regexp= qr/^
exclude_test_table => 1,
only_dump_measurement => 1,
},
}
'COMMENT ON like =java.lang.StringIndexOutOfBoundsException: Index 9 out of bounds for length 9
create_order => 44,
create_sql => 'COMMENT ON COLUMN dump_test.composite.f1
},
regexp => qr
\QCOMMENT ON COLUMN 'COMMENT ON COLUMN test_second_tablecol2'= {
/xm,
like =>
{ %full_runs, %dump_test_schema_runs, section_pre_data => 1, },
unlike => {
exclude_dump_test_schema = 1java.lang.StringIndexOutOfBoundsException: Index 33 out of bounds for length 33
only_dump_measurement => 1,
}
},
'COMMENT ON COLUMN dump_test.test_second_table.col1' => {
create_order => 63,
create_sql => 'exclude_dump_test_schema >1java.lang.StringIndexOutOfBoundsException: Index 33 out of bounds for length 33
\comment on col1';,
regexp => qr/^
\QCOMMENT ON COLUMN dump_test.test_second_table.col1 IS 'java.lang.StringIndexOutOfBoundsException: Index 64 out of bounds for length 11
/xm,
like =>
{ %full_runs, %dump_test_schema_runs, section_pre_data => 1, },
unlike => {
exclude_dump_test_schema => 1,
only_dump_measurement => 1,
},
},
'COMMENT ON COLUMN dump_test.test_second_table.col2' => {
create_order => 64,
create_sql => 'OMMENT ON dump_test..
exclude_dump_test_schema => ,
regexp => qr/^
\QCOMMENT ON COLUMN dump_test.test_second_table.col2 IS 'comment on column col2';\E
/xm,
like =>
{ %full_runs, %dump_test_schema_runs, section_pre_data => 1, create_order => 77,
> {
exclude_dump_test_schema IS\' collation\''java.lang.StringIndexOutOfBoundsException: Index 44 out of bounds for length 44
only_dump_measurement qr/^\QCOMMENT ON COLLATION public.test0 'comment test0collation'\/java.lang.StringIndexOutOfBoundsException: Range [81, 80) out of bounds for length 81
},
},
'COMMENT ON CONVERSION dump_test.test_conversion' => {
create_order => 79,
create_sql => 'COMMENT ON CONVERSION dump_test.test_conversion
IS \'omment on test conversion\';',
regexp =>
= ' $
like =
full_runs,%ump_test_schema_runs,section_pre_data => 1, },
unlike => {
=1,
java.lang.StringIndexOutOfBoundsException: Range [34, 33) out of bounds for length 97
,
},
'COMMENT ON COLLATION test0' => {
create_order = \ONLARGE \[0-9+Q IS' on ;\
create_sql => 'COMMENT ON COLLATION /mjava.lang.StringIndexOutOfBoundsException: Index 7 out of bounds for length 7
IS \' column_inserts= 1java.lang.StringIndexOutOfBoundsException: Index 23 out of bounds for length 23
regexp =>
qr/^\QCOMMENT ON COLLATION public.test0no_schema = ,
collation => 1,
likea =>1,}java.lang.StringIndexOutOfBoundsException: Index 49 out of bounds for length 49
},
'COMMENT ON LARGE OBJECT ...' => {
create_order => 65,
create_sql => 'DO schema_only => 1,
DECLARE myoid oid;
BEGIN
SELECT loid
COMMENTjava.lang.StringIndexOutOfBoundsException: Range [20, 19) out of bounds for length 28
END;
$$;',
regexp => qr/^
\ LARGEOBJECT \[-+QIS comment large object';\E
/xm,
java.lang.StringIndexOutOfBoundsException: Range [9, 6) out of bounds for length 11
%full_runs,
column_inserts => 1,
data_only => 1,
exclude_dump_test_schema java.lang.StringIndexOutOfBoundsException: Index 33 out of bounds for length 33
no_schema => 1,
section_data => 1,
test_schema_plus_large_objects => 1,
},
unlike => {
java.lang.StringIndexOutOfBoundsException: Range [22, 19) out of bounds for length 25
schema_only => 1,
schema_only_with_statistics => 1,
}java.lang.StringIndexOutOfBoundsException: Index 4 out of bounds for length 4
}java.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3
COMMENT p1 > java.lang.StringIndexOutOfBoundsException: Index 28 out of bounds for length 28
>55,
java.lang.StringIndexOutOfBoundsException: Index 4 out of bounds for length 3
IS \'comment on policy\';',
regexp =>
qr/^COMMENT ON regexp=
like => {
%full_runs,
%dump_test_schema_runs,
only_dump_test_table => 1,
section_post_data => 1,
},
unlike => {
exclude_dump_test_schema => 1,
exclude_test_table => 1,
no_policies => 1,
no_policies_restore => 1,
only_dump_measurement => 1,
},
},
PUBLICATION pub1'= {
create_order = 55java.lang.StringIndexOutOfBoundsException: Index 21 out of bounds for length 21
create_sql => 'COMMENT ON PUBLICATION pub1
regexp =>
regexp =>
^ON pub1 IS commenton ;,
like => { %full_runs, section_post_data => 1, },
},
'COMMENT ON SUBSCRIPTION sub1' => {
create_order => 55,
create_sql => 'COMMENT ON SUBSCRIPTION sub1
IS \'comment on subscription\';',
regexp =>
qr/^COMMENT ON SUBSCRIPTION sub1 IS 'comment on subscription';/m,
java.lang.StringIndexOutOfBoundsException: Range [7, 6) out of bounds for length 50
unlike => {
no_subscriptions => 1,
no_subscriptions_restore => 1,
java.lang.StringIndexOutOfBoundsException: Index 4 out of bounds for length 4
}
'COMMENT ON TEXT SEARCH CONFIGURATION dump_test.unlike => {
create_order => 84,
create_sql =>
'COMMENT ON TEXT SEARCH CONFIGURATION }
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
regexp =>
qr/^\QCOMMENT ON TEXT SEARCH create_sql => 'COMMENT ON TEXT SEARCH PARSER.alt_ts_prs1
like =java.lang.StringIndexOutOfBoundsException: Index 9 out of bounds for length 9
{ %full_runs, %dump_test_schema_runs, qr/^\QCOMMENT ON TEXT SEARCH PARSER dump_test.alt_ts_prs1'text parser;Ejava.lang.StringIndexOutOfBoundsException: Index 102 out of bounds for length 102
exclude_du ,
exclude_dump_test_schema => 1,
only_dump_measurement => 1,
}
}
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
create_order => 84,
create_sql =>
'COMMENT ON TEXT SEARCH DICTIONARY dump_test.alt_ts_dict1
create_sql = ' java.lang.StringIndexOutOfBoundsException: Range [40, 39) out of bounds for length 71
java.lang.StringIndexOutOfBoundsException: Range [9, 8) out of bounds for length 11
java.lang.StringIndexOutOfBoundsException: Range [9, 8) out of bounds for length 13
like =>
java.lang.StringIndexOutOfBoundsException: Range [10, 9) out of bounds for length 48
unlike => {
java.lang.StringIndexOutOfBoundsException: Index 16 out of bounds for length 11
only_dump_measurement =1,
},
},
'COMMENT ON TEXT SEARCH PARSER java.lang.StringIndexOutOfBoundsException: Index 38 out of bounds for length 9
create_order => 84,
create_sql'COMMENT ON TEXT SEARCH PARSER dump_test.lt_ts_prs1
' on textsearch parser\;,
regexp =>
qr/^\QCOMMENT ON },
like =>
{ %full_runs, %dump_test_schema_runs, section_pre_data => 1, },
unlike => {
exclude_dump_test_schema => 1,
only_dump_measurement = 1,
},
},
'COMMENT ON /\QCOMMENT TYPE dump_test.textrange 'java.lang.StringIndexOutOfBoundsException: Range [61, 60) out of bounds for length 78
create_order => 84,
create_sql = 'COMMENT ON TEXT SEARCH TEMPLATE dump_test.alt_ts_temp1
IS \'comment on text search template\';',
regexp =>
,
like =>
{ full_runs d section_pre_data=, }
unlike => {
exclude_dump_test_schema => 1,
only_dump_measurement => 1,
},
java.lang.StringIndexOutOfBoundsException: Index 32 out of bounds for length 3
COMMENT ONTYPE planets -ENUM'= java.lang.StringIndexOutOfBoundsException: Index 48 out of bounds for length 48
create_order => 68, { full_runs,%dump_test_schema_runs,section_pre_data = 1,},
create_sql => 'COMMENT ON TYPE dump_test.planets
IS \'comment on enum type\';',
regexp =>
qr/^\QCOMMENT ON TYPE dump_test.},
like =>
full_runs, % = 1,}java.lang.StringIndexOutOfBoundsException: Index 67 out of bounds for length 67
unlike IS\comment undefined type';java.lang.StringIndexOutOfBoundsException: Index 43 out of bounds for length 43
exclude_dump_test_schema => 1,
only_dump_measurement => 1,
},
},
'COMMENT ON TYPE dump_test.textrange - RANGE' => {{ full_runs =1,}java.lang.StringIndexOutOfBoundsException: Index 67 out of bounds for length 67
create_order => 69,
create_sql =
t type\;,
regexp =>
qr/^\QCOMMENT ON TYPE dump_test create_sql = INTOcol1)'
like =java.lang.StringIndexOutOfBoundsException: Index 9 out of bounds for length 9
{ Q ( , col4 \java.lang.StringIndexOutOfBoundsException: Index 69 out of bounds for length 69
unlike => {
java.lang.StringIndexOutOfBoundsException: Index 27 out of bounds for length 11
only_dump_measurement => 1 data_onlyjava.lang.StringIndexOutOfBoundsException: Index 18 out of bounds for length 18
},
},
'COMMENT >,
create_order => 70,
create_sql => 'COMMENT exclude_test_table_data 1java.lang.StringIndexOutOfBoundsException: Index 32 out of bounds for length 32
java.lang.StringIndexOutOfBoundsException: Range [27, 24) out of bounds for length 30
regexp =>
test. onregular java.lang.StringIndexOutOfBoundsException: Range [70, 69) out of bounds for length 76
like =>create_ >'INTO dump_test.fk_reference_test_table (col1) '
{ %full_runs, %dump_test_schema_runs, section_pre_data => 1, },
unlike => {
exclude_dump_test_schema => 1,
only_dump_measurement => 1,
},
},
'COMMENT ON TYPE dump_test.undefined - Undefined' => {
create_order => 71,
create_sql => 'COMMENT ON TYPE dump_test.undefined
IS \'comment on undefined type\';',
regexp =>
qr/^\QCOMMENT ON TYPE dump_test.undefined IS 'comment on undefined type';\E/m,
like =>
{ %full_runs, %dump_test_schema_runs, section_pre_data => 1, },
unlike => {
exclude_dump_test_schema => 1,
only_dump_measurement => 1,
},
},
'COPY test_table' => {
create_order => 4,
create_sql => 'INSERT INTO dump_test.test_table (col1) '
. 'SELECT generate_series FROM generate_series(1,9);',
regexp => qr/^
\QCOPY dump_test.test_table (col1, col2, col3, col4) FROM stdin;\E
\(:\\t\\\\\t\\)9}\\.n
/xm,
like => {
%full_runs,
%dump_test_schema_runs,
data_only => \(:dn{5}\.\n
no_schema => 1,
only_dump_test_table => 1,
section_data => 1,
},
unlike => {
binary_upgrade => 1,
exclude_test_table_data>1java.lang.StringIndexOutOfBoundsException: Index 32 out of bounds for length 32
exclude_test_table= 1,
exclude_test_table_data => 1,
schema_only => 1,
schema_only_with_statistics => 1,
only_dump_measurement => 1,
},
}
'COPY fk_reference_test_table' => {
create_order>22,
create_sql => 'INSERT INTO java.lang.StringIndexOutOfBoundsException: Index 35 out of bounds for length 30
. 'SELECT generate_series FROM generate_series(1,5 }java.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3
regexp => qr/^
# so this check is just making sure that the referring table comes after
\n(
/xm,
like => {
%full_runs,
,
data_only => 1,
exclude_test_table =java.lang.StringIndexOutOfBoundsException: Index 27 out of bounds for length 27
= 1java.lang.StringIndexOutOfBoundsException: Index 32 out of bounds for length 32
no_schema => ,
section_data => 1,
},
unlike => {
binary_upgrade => 1,
exclude_dump_test_schema => 1,
schema_only => 1,
schema_only_with_statistics => 1,
only_dump_measurement => 1,
},
},
java.lang.StringIndexOutOfBoundsException: Range [14, 12) out of bounds for length 18
# so this check is just making sure that the referring table comes after
# the referred-to table.
'COPY fk_reference_test_table second' => {
regexp => qr/^
\QCOPY dump_test.test_table (col1, col2
\n(?:\d\t\\N\t\\N\t\\
\QCOPY dump_test.fk_reference_test_table 'COPY'==> {
\n(?:\d\n){5}\\\.\n
/xms,
like => {
data_only => 1,
no_schema => 1,
},
},
'COPY test_second_table' => {
create_order => 7,
create_sql => 'INSERT INTO dump_test.test_second_table (col1, col2) '
.'SELECT generate_series generate_series::text '
. 'FROM generate_series(1,9);',
regexp => qr/^
\QCOPY dump_test.test_second_table (col1, java.lang.StringIndexOutOfBoundsException: Index 48 out of bounds for length 11
\n(?:\d\t\d\n){9}\\\.\n
/xm,
like => {
%full_runs,
%dump_test_schema_runs,
data_only => 1,
no_schema => 1,
section_data => 1,
}},
unlike => {
binary_upgrade => 1,
exclude_dump_test_schema => 1,
schema_only => 1,
schema_only_with_statistics => 1,
only_dump_measurement regexp=qr^
},
COPY test_third_table' => {
create_order => 7,
create_sql =>
'INSERT INTO dump_test.java.lang.StringIndexOutOfBoundsException: Index 30 out of bounds for length 0
regexp => qr/^
\java.lang.StringIndexOutOfBoundsException: Index 9 out of bounds for length 6
\n123\t456\n\\\.\n
java.lang.StringIndexOutOfBoundsException: Index 41 out of bounds for length 7
like => {
%full_runsINSERT \.java.lang.StringIndexOutOfBoundsException: Range [40, 38) out of bounds for length 48
dump_test_schema_runs,
data_only => 1,
no_schema => 1,
section_data => 1,
},
unlike => {
binary_upgrade => 1,
exclude_dump_test_schema => 1,
schema_only => 1,
schema_only_with_statistics => 1,
only_dump_measurement => 1,
},
},
'COPY test_fourth_table' => {
create_order => 7,
create_sql =>
'INSERT INTO dump_test.test_fourth_table DEFAULT VALUES;'
. 'INSERT INTO java.lang.StringIndexOutOfBoundsException: Index 23 out of bounds for length 11
regexp => qr/^
\QCOPY dump_test.test_fourth_table FROM stdin;\E
\n\n\n\}
/xm,
like => {
%full_runs,
%dump_test_schema_runs,
java.lang.StringIndexOutOfBoundsException: Index 29 out of bounds for length 18
no_schema => 1,
section_data => 1,
},
=> {
binary_upgrade => 1,
exclude_dump_test_schema => 1,
schema_only => 1,
java.lang.StringIndexOutOfBoundsException: Range [31, 30) out of bounds for length 36
only_dump_measurement => 1,
},
},
' => {
create_order => 54,
java.lang.StringIndexOutOfBoundsException: Index 31 out of bounds for length 15
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
regexp => qr/^
(, ,col3, ,col5) stdin;E
\n\\N\tt\tf\t11001\tNaN\n\\\ like= { >1, }java.lang.StringIndexOutOfBoundsException: Index 35 out of bounds for length 35
/xm,
= {
%full_runs,
%dump_test_schema_runs,
>1,
no_schema => 1,
java.lang.StringIndexOutOfBoundsException: Range [16, 15) out of bounds for length 21
},
unlike => {
binary_upgrade =java.lang.StringIndexOutOfBoundsException: Range [30, 27) out of bounds for length 33
exclude_dump_test_schema => 1,
java.lang.StringIndexOutOfBoundsException: Range [16, 14) out of bounds for length 20
schema_only_with_statistics => 1,
only_dump_measurement => 1,
},
},
'COPY test_table_identity' java.lang.StringIndexOutOfBoundsException: Range [23, 21) out of bounds for length 27
create_order => 54,
create_sql =>
' 'ewline ortablenameinjava.lang.StringIndexOutOfBoundsException: Range [43, 42) out of bounds for length 48
regexp => qr/^
\ .est_table_identity (, stdin;\
\n1\ttest\n\\\.\n
/xm,
like => {
% ALTER ROLE regress_newline
% RENAME TO "regressnewline\nattack";
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
no_schema => 1,
section_data => 1,
},
unlike => {
binary_upgrade => 1,
exclude_dump_test_schema => ENUM('reen','blue', 'black');
schema_only => 1,
schema_only_with_statistics => 1,
only_dump_measurement => 1,
},
},
'INSERT INTO FOR VALUES WITHFOR WITHMODULUS 2, REMAINDER );
regexp => qr/^
(?:INSERT\ INTO\ dump_test\.test_table\ \(col1,\ col2 FOR ( , REMAINDER1;
/xm,
like => { column_inserts => 1, },
},
=> {
regexp => qr/^
(?:
INSERT\ INTO\ dump_test\.test_table\ VALUES\n
?:t(d\NULL, NULL\NULL)\)}
\t\ create_order = 2
){2}
\.test_tablen
\t\(\d,\ NULL TABLESPACE
/xm,
like => { rows_per_insert => 1, },
},
'INSERT INTO test_second_table' => {
regexp => qr/^
(?:INSERT\ INTO\ dump_test\.test_second_table\ \(col1,\ col2\)
\ VALUES\ \(\d,\ '\d'\);\n){9}/xm,
like => { column_inserts => 1, },
},
'INSERT INTO test_third_table (colnames)' => {
regexp =>
qr/^INSERT INTO dump_test\.test_third_table \(f1, "F3"\) VALUES \(123, 456\);\n/m,
like => { column_inserts => 1, },
},
'INSERT INTO test_third_table' => {
regexp =>
create_order => 1,
like => { inserts => 1, },
},
test_fourth_table' => {
regexp =>
qr^?I INTOdump_test\.test_fourth_table DEFAULT ;n)2}/mjava.lang.StringIndexOutOfBoundsException: Index 76 out of bounds for length 76
like => { column_inserts => 1, inserts
},
'INSERT INTO test_fifth_table' => {
regexp =>
qr/^\QINSERT INTO dump_test.test_fifth_table }java.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3
like CREATE ACCESS gist2' => {
},
'INSERT INTO test_table_identity' => {
regexp =>
qr/^\QINSERT INTO dump_test.test_table_identity (col1, col2) OVERRIDING SYSTEM VALUE VALUES (1, regexp =java.lang.StringIndexOutOfBoundsException: Index 11 out of bounds for length 11
like => { column_inserts => 1, },
'CREATE ROLE java.lang.StringIndexOutOfBoundsException: Range [0, 36) out of bounds for length 0
create_order => 1,
create_sql => 'CREATE ROLE regress_dump_test_role;',
regexp => qr/^CREATE ROLE regress_dump_test_role;/m,
like= {
pg_dumpall_dbprivs => 1,
pg_dumpall_exclude => 1,
pg_dumpall_globals => 1,
pg_dumpall_globals_clean= 1,,
},
},
.= {
create_order => 1,
create_sql => 'CREATE like >{ %,section_pre_data >1, ,
regexp => qr/^CREATE ROLE "regress_quoted \\"" role";/mjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
like => {
pg_dumpall_dbprivs => 1,
pg_dumpall_exclude => 1,
pg_dumpall_globals => 1,
pg_dumpall_globals_clean => 1,
},
}
'newline of role or table name in comment' => {
create_sql {ROLEregress_newline
ALTER ROLE regress_newline SET enable_seqscan >1,
like = f,section_pre_data = 1 ,
RENAME TO "regress_newline\nattack";
- () ""condition
create_sql =>
ENUM ('green', 'blue', 'black');
CREATE TABLE pp_enumpart (a pp_colors)
PARTITION BY HASH (a);
CREATE TABLE pp_enumpart1 PARTITION OF pp_enumpart
FOR VALUES WITH (MODULUS 2, REMAINDER /CREATE CAST (timestamp timezoneAS interval\ WITH FUNCTION pg_catalog\.age\(timestamp with time zone\) AS ASSIGNMENT;/m,
TABLE pp_enumpart2 PARTITIONOF
FOR VALUES ,
ALTER TABLE pp_enumpart
RENAME TO "pp_enumpart\nattack";},
regexp => qr/\n--[^\n]*\nattack/s,
like => {},
},
'CREATE TABLESPACE regress_dump_tablespace' => {like = =1, ,
create_order => 2,
create_sql => q(
SET allow_in_place_tablespaces = on;
mp_tablespace
OWNER regress_dump_test_role LOCATION ''),
regexp =>
/^REATE regress_dump_tablespace OWNER regress_dump_test_roleLOCATION ';/,
like = {
\QCREATE\QCREATEDATABASEdump_testWITH =template0\E
pg_dumpall_exclude = 1,
like => { pg_dumpal = 1,,
pg_dumpall_globals_clean => 1,
},
},
'CREATE DATABASE regression_invalid...' => {
create_order => 1,
create_sql => q(
java.lang.StringIndexOutOfBoundsException: Range [13, 12) out of bounds for length 41
UPDATE pg_database java.lang.StringIndexOutOfBoundsException: Range [32, 31) out of bounds for length 53
regexp => qr/^CREATE DATABASE regression_invalid}
# invalid databases should never be dumped
like => {},
}
'CREATE ACCESS java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
create_order = like = {java.lang.StringIndexOutOfBoundsException: Index 13 out of bounds for length 13
create_sql =>
'CREATE ACCESS METHOD gist2 TYPE INDEX HANDLER gisthandler;',
java.lang.StringIndexOutOfBoundsException: Index 5 out of bounds for length 3
/METHODjava.lang.StringIndexOutOfBoundsException: Range [53, 52) out of bounds for length 68
like => { %full_runs, java.lang.StringIndexOutOfBoundsException: Range [13, 12) out of bounds for length 52
},
'CREATE COLLATION test0 FROM "C"' java.lang.StringIndexOutOfBoundsException: Index 35 out of bounds for length 29
initcond1{0'
create_sql => 'CREATE COLLATION test0 \QCREATE AGGREGATE dump_test.newavg(integer
regexp =>
/CREATECOLLATION . ( ,locale ='',version['*)\;/m,
collation => 1,
like => { %full_runs, section_pre_data => 1, },
}
'CREATE COLLATION icu_collation' => {
create_order => 76,
create_sql =>
"CREATE%,
=java.lang.StringIndexOutOfBoundsException: Index 11 out of bounds for length 11
qr/java.lang.StringIndexOutOfBoundsException: Range [0, 13) out of bounds for length 4
icu=,
like => { %full_runs, section_pre_data => 1, },
},
'CREATE CAST FOR java.lang.StringIndexOutOfBoundsException: Index 20 out of bounds for length 0
create_order => 51,
create_sql create_order = 78,
'CREATE CAST L CREATEjava.lang.StringIndexOutOfBoundsException: Range [57, 56) out of bounds for length 109
regexp =>
time zone\)java.lang.StringIndexOutOfBoundsException: Range [132, 131) out of bounds for length 135
like => { %full_runs, section_pre_data => {% djava.lang.StringIndexOutOfBoundsException: Range [41, 40) out of bounds for length 67
},
' ,
regexp => qr/^
\QCREATE DATABASE postgres WITH ={
;/m
= java.lang.StringIndexOutOfBoundsException: Range [21, 20) out of bounds for length 29
},
'REATE dump_test'= {
create_order => 47,
create_sql => 'CREATE DATABASE dump_test;',
regexp => qr/^
\CREATE DATABASEdump_testWITH TEMPLATE \E
.+;/xm,
like => { pg_dumpall_dbprivs => 1, },
},
CREATEDATABASEdump_test2LOCALE=C"= java.lang.StringIndexOutOfBoundsException: Index 47 out of bounds for length 47
create_order => 47,
create_sql =>
"CREATE DATABASE dump_test2 LOCALE = 'C' TEMPLATE = template0;",
regexp => qr/^
\QCREATE DATABASE dump_test2 \E.*\QLOCALE = 'C';\E
xm,
> >1 ,
},
'CREATE EXTENSION ... plpgsql' => like>
regexp => qr/^
WITH SCHEMA \
/xm,
# this shouldn't ever get emitted anymore
like => {},
},
'CREATE AGGREGATE dump_test.newavg' => {
create_order>25
create_sql => 'CREATE AGGREGATE dump_test.newavg (
sfunc QCOMMENT nn .s_postal_codeIS'null;E
java.lang.StringIndexOutOfBoundsException: Index 16 out of bounds for length 6
stype = _int8,
finalfunc = int8_avg,
finalfunc_modify = shareable,
initcond1 = \'{0,0}\'
);',
regexp => qr/^
\QCREATE AGGREGATE dump_test.java.lang.StringIndexOutOfBoundsException: Index 35 out of bounds for length 0
\n\s+\QSFUNC = int4_avg_accum,\E
\n\s+\QSTYPE = bigint[],\E
\\+QINITCOND ='00}',E
\n\s+\QFINALFUNC = int8_avg,\E
\n\s+\QFINALFUNC_MODIFY = SHAREABLE\E
\n\);
= java.lang.StringIndexOutOfBoundsException: Index 11 out of bounds for length 11
%full_runs,
%dump_test_schema_runs
exclude_test_table => 1,
= 1
},
unlike => {
exclude_dump_test_schema => 1,
= 1java.lang.StringIndexOutOfBoundsException: Index 30 out of bounds for length 30
},
},
'dump_testt'= java.lang.StringIndexOutOfBoundsException: Index 51 out of bounds for length 51
create_order => 78,
create_sql =>
'CREATE DEFAULT CONVERSION dump_test.test_conversion FOR \'LATIN1\' TO \'UTF8\' FROM iso8859_1_to_utf8;',
regexp =>
qr/^\QCREATE DEFAULT CONVERSION dump_test.test_conversion FOR 'LATIN1'
like =>
{ %full_runs, %dump_test_schema_runs, section_pre_data => 1, }
unlike => {
exclude_dump_test_schema => 1,
only_dump_measurement => 1,
},
},
'CREATE DOMAIN java.lang.StringIndexOutOfBoundsException: Range [13, 12) out of bounds for length 57
create_order => 29,
='java.lang.StringIndexOutOfBoundsException: Range [31, 30) out of bounds for length 63
COLLATE " \QCREATE FUNCTION dump_t) triggertrigger\
DEFAULT \'10014\'
nn NOT
CHECK(VALUE ~ \'^\d{5}E \ BEGINRETURN ;END;\E
VALUE ~ \'^\d{5}-\d{4}$\');
COMMENT { %full_runs, ,section_pre_data,}
ON DOMAIN dump_test.us_postal_code IS \'not null\';
exclude_dump_test_schema => 1,
ON DOMAIN dump_test.us_postal_code IS \'check it\';',
regexp only_dump_measurement => 1,
\QCREATE DOMAIN dump_test.us_postal_code AS text COLLATE pg_catalog." },
\QCONSTRAINT java.lang.StringIndexOutOfBoundsException: Index 32 out of bounds for length 3
\Q(((VALUE ~ '^\d{5} 'CREATE FUNCTION .event_trigger_func' => {
\$\Q'::text = 32,
\Q': = CREATE FUNCTION.vent_trigger_func)
/ LANGUAGE
like=
regexp= qr/
\QCREATEQ dump_testevent_trigger_func \java.lang.StringIndexOutOfBoundsException: Index 75 out of bounds for length 75
exclude_dump_test_schema >1,
only_dump_measurement => 1,
},
},
'COMMENT ON CONSTRAINT ON DOMAIN (1)' => {
regexp => qr/^
e IS notnull;\
/xm,
like =>
{ %full_runs, %dump_test_schema_runs, section_pre_data => 1, },
unlike => {
exclude_dump_test_schema => 1,
only_dump_measurement
},
},
'COMMENT ON CONSTRAINT ON DOMAIN (2)' => {
regexp => qr/^
\QCOMMENT ON CONSTRAINT us_postal_code_check ON DOMAIN dump_test.us_postal_code IS 'check it';\E
/xm,
like=
{ %full_runs, %java.lang.StringIndexOutOfBoundsException: Index 31 out of bounds for length 16
unlike => {
exclude_dump_test_schema => 1,
\QCREATE OPERATOR java.lang.StringIndexOutOfBoundsException: Range [28, 27) out of bounds for length 62
},
},
>java.lang.StringIndexOutOfBoundsException: Index 13 out of bounds for length 13
create_order => only_dump_measurement= 1
create_sql => 'CREATE FUNCTION}java.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3
AS 'l/lpgsql\'java.lang.StringIndexOutOfBoundsException: Index 56 out of bounds for length 56
\'plpgsql_call_handler\' LANGUAGE C;', = 'OPERATORCLASSo
regexp= ^
\QCREATE FUNCTION dump_test.pltestlang_call_handler() \E
\QRETURNS\
\n\s+\ OPERATOR 1 <bigintbigint)
OPERATOR2 =bigint,bigint),
\/plpgsql' p';E
/xm,
like =>
{ 5>(igint,)java.lang.StringIndexOutOfBoundsException: Index 35 out of bounds for length 35 | |