itscaro

PG10 Logical Replication Segfault

Jul 28th, 2018
270
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. --
  2.  
  3. CREATE EXTENSION IF NOT EXISTS postgis;
  4. CREATE EXTENSION IF NOT EXISTS ltree;
  5. CREATE EXTENSION IF NOT EXISTS intarray;
  6. CREATE EXTENSION IF NOT EXISTS hstore;
  7. CREATE EXTENSION IF NOT EXISTS unaccent;
  8. CREATE EXTENSION IF NOT EXISTS pgcrypto;
  9.  
  10. CREATE SCHEMA IF NOT EXISTS itscaro;
  11.  
  12. CREATE DOMAIN public.tag3level AS ltree
  13.   constraint tag3level_check CHECK (public.nlevel(VALUE) = 3);
  14.  
  15. CREATE OR REPLACE FUNCTION public.is_valid_array_tag3level(ltree[])
  16.   RETURNS boolean AS
  17. $BODY$
  18.  
  19.   SELECT NOT EXISTS (
  20.     SELECT 1
  21.     FROM unnest ($1) tag
  22.     WHERE tag operator(public.<>) tag::public.tag3level
  23.   )
  24.  
  25. $BODY$
  26.   LANGUAGE sql IMMUTABLE STRICT;
  27.  
  28. CREATE DOMAIN tag3level_array AS ltree[] CHECK ((public.is_valid_array_tag3level(VALUE)));
  29.  
  30. CREATE TABLE IF NOT EXISTS itscaro.test
  31. (
  32.     id int,
  33.     tag public.tag3level_array DEFAULT '{}'
  34. );
  35.  
  36. insert into itscaro.test values (2, '{test1.test2.test3}');
  37. -- NOTE: initial data copy is done correctly
  38.  
  39. -- Pub/Sub
  40.  
  41. -- Master
  42. CREATE PUBLICATION itscaro_test
  43.     FOR TABLE itscaro.test;
  44.  
  45. -- Slave
  46. --  On slave as this moment we have all domains, functions, extensions and testing table
  47. CREATE SUBSCRIPTION itscaro_test
  48.   CONNECTION 'postgresql://postgres@<FILL IN MASTER IP>/postgres'
  49.   PUBLICATION itscaro_test;
  50.  
  51. -- Inserting new data after subscription is registered
  52.  
  53. insert into itscaro.test values (2, '{tefghjfgqst.qdqsdsq.qdqsdgfjhfghqs}'),
  54. (3, '{teqghjghjgfst.qdqsdsq.qdqsdqssqdqsdqsd}'),
  55. (4, '{tjgfjhghjgfjheqst.qdqqsdqsdjghjdsdsq.qdqsdqsqsdqsdqs}'),
  56. (5, '{teqsqsdqsdqsdqsdqs.qdqsdsq.qdqsqsddazfdgfdhgfjhgfjhgdqs}'),
  57. (6, '{teqdqqsdqsdqsdqsdqsst.qdqsdsq.qdqsdqs}'),
  58. (7, '{teqst.qdqsdsq.qdqsdqsdqsdqsdqsdqsqs}'),
  59. (8, '{teqsdqsdqssazdazdqdqsdqsdsqdqsdqst.qdqsdsq.qdqsdsdsqdqsdqsqs}'),
  60. (9, '{teqqsdqsdqsdqsdqsdqsdqsdqsdqsst.qdqsdsq.qdqsdqsdqsdqsdqsqs}');
  61.  
  62. --
  63.  
  64. -- After executing the insert batch on master, failure occurs on slave
  65. --
  66. -- 2018-07-28 10:46:05.230 CEST [3132] LOG:  database system is ready to accept connections
  67. -- 2018-07-28 10:46:05.240 CEST [3705] LOG:  logical replication apply worker for subscription "itscaro_test" has started
  68. -- 2018-07-28 10:46:05.269 CEST [3132] LOG:  worker process: logical replication worker for subscription 275990 (PID 3705) was terminated by signal 11: Segmentation fault
  69. -- 2018-07-28 10:46:05.269 CEST [3132] LOG:  terminating any other active server processes
  70. -- 2018-07-28 10:46:05.274 CEST [3702] WARNING:  terminating connection because of crash of another server process
Add Comment
Please, Sign In to add comment