Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1w2wJp-000kQ3-0X for pgsql-hackers@arkaria.postgresql.org; Wed, 18 Mar 2026 19:12:37 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1w2wJn-00Ddfw-1o for pgsql-hackers@arkaria.postgresql.org; Wed, 18 Mar 2026 19:12:35 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1w2wJn-00Ddfh-07 for pgsql-hackers@lists.postgresql.org; Wed, 18 Mar 2026 19:12:35 +0000 Received: from mail-ua1-x92f.google.com ([2607:f8b0:4864:20::92f]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.98.2) (envelope-from ) id 1w2wJj-00000000Pcp-20IE for pgsql-hackers@lists.postgresql.org; Wed, 18 Mar 2026 19:12:34 +0000 Received: by mail-ua1-x92f.google.com with SMTP id a1e0cc1a2514c-94e2ad66abcso37927241.1 for ; Wed, 18 Mar 2026 12:12:32 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1773861152; cv=none; d=google.com; s=arc-20240605; b=V5whSNuWPQD5E88bW8HFSEdppAVsjgSS1aO6Ohzb7zbP6K5mWkEDlvGsspIuCQ+nZg OaotGSBNjLqHvATfW0ndVvSQPa/QUwntD71Fg0LXdXYosd8d4eqH7aO8JWSyCtWyrj1Q D0WRtTNuKjrBZemBmHCqWIxztpH8V7savRxRhn/0CT8zoISjsZCUB+633AyRTDHLPNaB 6XCibKUjwDMjqBtS8IF+oY3o79G1a8MtrrMR//dmKVhOCfNBIG2RMnZY5ZpSjU7R+ylk lVirwJTUG72BAQcVnq7fVDFU9K+rMJ4nSxttgZJ9+I52kdTcpD0D0AI66A/IWBKOYWD3 K6Ww== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:dkim-signature; bh=UExUmpMwspQqWvVANdNi3ALJS52JzR5Ut5lfn8QUgtU=; fh=mBzHp+3R/Rpy8lUK0lPwNCRhI6rlerQj6rbqFVYYVgs=; b=iLG5djWSRuEXCF6ELlCv1ZB2p6XIVci3hu9hxPdMF+TLFSMp9hu4kC7gFON0ggBVfR TQI49fSfkXx0umBcn5+33BK+kejHlR40eZcKmkmYperLS7CpzgRw7isxtIwRcc5J7Nyy UxJGMPoji4dRw1q4n1hpvVbsAgMwA80TIF6Xf0onTw47veipxZj5J5DcqSNaZpIGKcTf s7rCFbatsZ16lKgX3JqkWZHj6hx+2VLs4Gq6PtPp9vz+aWSUHqjf8Vu/XEw5m7dzloOp aD+JLGLgwiosEY8xpca4SulqemUgegXVY3XbKVFUT8iJknVAWQI3r4hVl2r1igg4moYN qvjQ==; darn=lists.postgresql.org ARC-Authentication-Results: i=1; mx.google.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1773861152; x=1774465952; darn=lists.postgresql.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=UExUmpMwspQqWvVANdNi3ALJS52JzR5Ut5lfn8QUgtU=; b=DQDC+vCv0YFMOcQW7QRP6Me5L81wpWh1UbE9CrTfTTYL/cs7JDqSVEI2jyEwt3AXrv t9LTbv0e4cA/slLHqoIn7uy4jFbKBq+Qp+Mn0YCg/6ZtMqxCqCpEh2ENNk3H8IQ0rFoN 4PNBwt18Zf+EHoYDDk3qK1wfO5RgkkXv6fJqEgWLvlX9IUFUlCdiCC7mRY6N6Q30JGhx k24uHQqpYtMqoBmoApo1wc2w8eN7d3MqDEMHyj7qRbur5tCkFqhB1bPr1SEhwItMPIOo xphQef28N9ieVMyx0NJt23VzrsqEmLxx4PHaJHcnO3j69TltT4IXyyG0trDuVO1QkbB0 4baw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1773861152; x=1774465952; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=UExUmpMwspQqWvVANdNi3ALJS52JzR5Ut5lfn8QUgtU=; b=YZ/XBr+LK+fbYQtMlnp6eXQQBp8IGCPJ/LpREmhBVO335mFwaFVjfW9P7Pe3C0Psey zm9oAWyRlZ4DPNi8O8XuXpRTbZ8RdVZI7jd+zh5sK+87ZFfW8tYnBdf0k/WXAvnigFvj dlGA/DhZBTLea83o6Ng2kpHzjM7shy0TIvPIyzDkU5LyakwPzMLEEQS8/W0/SDo2pBiR JKvPXSD5lfvmFOHVempXDN+FRSYP4ETwTVM6I9isu4sHr53L7ganOCIwgnIeyFxZjWPd S7hGnCuxKrReFjnQ2tJnSJ539fKggmpxOKCyj/MrBVOTNhh3aO2bwQJ9y0yU7OxfnUgL Uz3g== X-Forwarded-Encrypted: i=1; AJvYcCUmXtffE7z5l/2LiC9BK392pvSz0Px2QdmS3XkeRA9ZbCairj9rbNS5SIuB3pZOiDBuRCwwPUvQu1Xb3Dd0@lists.postgresql.org X-Gm-Message-State: AOJu0YwsYJO0gCQu+7o2a83dJM8Mzv5VsF6OFq0c9VyLwOk3cK9an3l/ EFgDHKhc4X+j6sNN16TZ/P8mkAUwrx2qph55ZD703TYWcrHJtRrZKtrt6N/lmCTjXiPTPJjDbmU e6o83MWQ6VxTlJemLBnQmHOyJUb+vP1U= X-Gm-Gg: ATEYQzw1zCI5zWMC5nEsmkYd1QKY//nb6oe0seARwqL0rhzXp0E0ykmJdADhQLkb0Kp AmI3QHmDfca1TNevrfP5PMmCbtbQoTYQNXbMx+EI2jvGPofITaENJfNdHkTnyAiafNyjH5iPZXH Ym2Lc6Ps+1rVqNzJrC4Xp9oKRLEqVAegI5appCDhUg7qxL1aHDj8P6XJ5tvua8z75ALVjhzMrxh MES6hcF/NlAJv91ut/0uHZfMXTerw3fz8Ifpq2pDvfVB7roc8yfyGeZt0/cd4InaXPV2KkoRKVz d039Y8iNu5ALUohvA6M/ZgkJFCaWwF0L7ycEUVYsp4MSFj+r0qTrjT7QYFtfC1cCvnFAsWah8hr IY0UPQ4KA08W/RkqXKhw5+z+2fg== X-Received: by 2002:a05:6102:3711:b0:5ff:188a:f8ff with SMTP id ada2fe7eead31-6027d40df44mr1879866137.37.1773861151962; Wed, 18 Mar 2026 12:12:31 -0700 (PDT) MIME-Version: 1.0 References: <202603162202.l2sibdzviih7@alvherre.pgsql> <9548.1773744820@localhost> <91049.1773777426@localhost> In-Reply-To: <91049.1773777426@localhost> From: Srinath Reddy Sadipiralla Date: Thu, 19 Mar 2026 00:42:19 +0530 X-Gm-Features: AaiRm50ow5LU2IauGzEHKbU2xpvkj7pkmeBLMOEsqxk5C7cVGThP2SXBjmIYbj0 Message-ID: Subject: Re: Adding REPACK [concurrently] To: Antonin Houska Cc: Alvaro Herrera , Matthias van de Meent , Mihail Nikalayeu , Pg Hackers , Robert Treat Content-Type: multipart/mixed; boundary="000000000000d831d2064d513bc3" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --000000000000d831d2064d513bc3 Content-Type: multipart/alternative; boundary="000000000000d831d0064d513bc1" --000000000000d831d0064d513bc1 Content-Type: text/plain; charset="UTF-8" Hello, While i was doing concurrency test onn V41 patches ,i found this crash because of the assert failure, TRAP: failed Assert("RelationGetRelid(relation) == ((RepackDecodingState *) ctx->output_writer_private)->relid"), File: "pgoutput_repack.c", Line: 97, PID: 397007 postgres: REPACK decoding worker for relation "stress_victim" (ExceptionalCondition+0x98)[0xaaaad9361698] /home/srinath/Desktop/pgbuild/lib/postgresql/pgoutput_repack.so(+0xfe8)[0xffff90e00fe8] postgres: REPACK decoding worker for relation "stress_victim" (+0x679e14)[0xaaaad9049e14] postgres: REPACK decoding worker for relation "stress_victim" (+0x689cd0)[0xaaaad9059cd0] postgres: REPACK decoding worker for relation "stress_victim" (+0x68a65c)[0xaaaad905a65c] postgres: REPACK decoding worker for relation "stress_victim" (+0x68b2f0)[0xaaaad905b2f0] postgres: REPACK decoding worker for relation "stress_victim" (ReorderBufferCommit+0x74)[0xaaaad905b374] postgres: REPACK decoding worker for relation "stress_victim" (+0x671ec4)[0xaaaad9041ec4] postgres: REPACK decoding worker for relation "stress_victim" (xact_decode+0x1a0)[0xaaaad9040edc] postgres: REPACK decoding worker for relation "stress_victim" (LogicalDecodingProcessRecord+0xd4)[0xaaaad9040a80] postgres: REPACK decoding worker for relation "stress_victim" (+0x33f558)[0xaaaad8d0f558] postgres: REPACK decoding worker for relation "stress_victim" (+0x341ccc)[0xaaaad8d11ccc] postgres: REPACK decoding worker for relation "stress_victim" (RepackWorkerMain+0x1ac)[0xaaaad8d11bd4] postgres: REPACK decoding worker for relation "stress_victim" (BackgroundWorkerMain+0x2b0)[0xaaaad900d21c] postgres: REPACK decoding worker for relation "stress_victim" (postmaster_child_launch+0x1f0)[0xaaaad9012070] postgres: REPACK decoding worker for relation "stress_victim" (+0x64b974)[0xaaaad901b974] postgres: REPACK decoding worker for relation "stress_victim" (+0x64bc64)[0xaaaad901bc64] postgres: REPACK decoding worker for relation "stress_victim" (+0x64a3e4)[0xaaaad901a3e4] postgres: REPACK decoding worker for relation "stress_victim" (+0x647648)[0xaaaad9017648] postgres: REPACK decoding worker for relation "stress_victim" (PostmasterMain+0x160c)[0xaaaad9016d98] postgres: REPACK decoding worker for relation "stress_victim" (main+0x3dc)[0xaaaad8ea7a38] /lib/aarch64-linux-gnu/libc.so.6(+0x284c4)[0xffff9c5c84c4] /lib/aarch64-linux-gnu/libc.so.6(__libc_start_main+0x98)[0xffff9c5c8598] postgres: REPACK decoding worker for relation "stress_victim" (_start+0x30)[0xaaaad8abc970] 2026-03-16 19:40:21.622 IST [393820] LOG: background worker "REPACK decoding worker" (PID 397007) was terminated by signal 6: Aborted 2026-03-16 19:40:21.622 IST [393820] LOG: terminating any other active server processes 2026-03-16 19:40:21.632 IST [397036] FATAL: the database system is in recovery mode This crash happens if we run REPACK (concurrently) on a table while a heavy pgbench workload is concurrently executing multi-table(setup.sql) transactions(dual_chaos.sql). It triggers after a few back to back REPACK (concurrently) runs. i think i found the cause for this crash , because there were some changes which slipped under the nose of the change_useless_for_repack filter , which led some changes which are not related to the relation which we are currently doing REPACK (concurrently) got decoded and added into the reorderbuffer queue, the reason for this is repacked_rel_locator.relNumber is by default set to InvalidOid, this is actually set to the target relation during setup_logical_decoding but this done after DecodingContextFindStartpoint, in DecodingContextFindStartpoint changes are not filtered even if its not related to the target relation , because rm_decode->change_useless_for_repack->am_decoding_for_repack where repacked_rel_locator.relNumber is still InvalidOid, which makes it skip the filtering even its not the target relation, this makes it to be added to reorder buffer queue, so during the processing of reorder buffer plugin_change is called where assert fails, i have attached a diff patch to solve this. thoughts? -- Thanks, Srinath Reddy Sadipiralla EDB: https://www.enterprisedb.com/ --000000000000d831d0064d513bc1 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Hello,

While i was doing co= ncurrency test onn V41 patches ,i found this crash because of the assert fa= ilure,

TRAP: failed Assert("RelationGetRelid(relation) =3D=3D (= (RepackDecodingState *) ctx->output_writer_private)->relid"), Fi= le: "pgoutput_repack.c", Line: 97, PID: 397007
postgres: REPAC= K decoding worker for relation "stress_victim" (ExceptionalCondit= ion+0x98)[0xaaaad9361698]
/home/srinath/Desktop/pgbuild/lib/postgresql/p= goutput_repack.so(+0xfe8)[0xffff90e00fe8]
postgres: REPACK decoding work= er for relation "stress_victim" (+0x679e14)[0xaaaad9049e14]
po= stgres: REPACK decoding worker for relation "stress_victim" (+0x6= 89cd0)[0xaaaad9059cd0]
postgres: REPACK decoding worker for relation &qu= ot;stress_victim" (+0x68a65c)[0xaaaad905a65c]
postgres: REPACK deco= ding worker for relation "stress_victim" (+0x68b2f0)[0xaaaad905b2= f0]
postgres: REPACK decoding worker for relation "stress_victim&qu= ot; (ReorderBufferCommit+0x74)[0xaaaad905b374]
postgres: REPACK decoding= worker for relation "stress_victim" (+0x671ec4)[0xaaaad9041ec4]<= br>postgres: REPACK decoding worker for relation "stress_victim" = (xact_decode+0x1a0)[0xaaaad9040edc]
postgres: REPACK decoding worker for= relation "stress_victim" (LogicalDecodingProcessRecord+0xd4)[0xa= aaad9040a80]
postgres: REPACK decoding worker for relation "stress_= victim" (+0x33f558)[0xaaaad8d0f558]
postgres: REPACK decoding worke= r for relation "stress_victim" (+0x341ccc)[0xaaaad8d11ccc]
pos= tgres: REPACK decoding worker for relation "stress_victim" (Repac= kWorkerMain+0x1ac)[0xaaaad8d11bd4]
postgres: REPACK decoding worker for = relation "stress_victim" (BackgroundWorkerMain+0x2b0)[0xaaaad900d= 21c]
postgres: REPACK decoding worker for relation "stress_victim&q= uot; (postmaster_child_launch+0x1f0)[0xaaaad9012070]
postgres: REPACK de= coding worker for relation "stress_victim" (+0x64b974)[0xaaaad901= b974]
postgres: REPACK decoding worker for relation "stress_victim&= quot; (+0x64bc64)[0xaaaad901bc64]
postgres: REPACK decoding worker for r= elation "stress_victim" (+0x64a3e4)[0xaaaad901a3e4]
postgres: = REPACK decoding worker for relation "stress_victim" (+0x647648)[0= xaaaad9017648]
postgres: REPACK decoding worker for relation "stres= s_victim" (PostmasterMain+0x160c)[0xaaaad9016d98]
postgres: REPACK = decoding worker for relation "stress_victim" (main+0x3dc)[0xaaaad= 8ea7a38]
/lib/aarch64-linux-gnu/libc.so.6(+0x284c4)[0xffff9c5c84c4]
/= lib/aarch64-linux-gnu/libc.so.6(__libc_start_main+0x98)[0xffff9c5c8598]
= postgres: REPACK decoding worker for relation "stress_victim" (_s= tart+0x30)[0xaaaad8abc970]
2026-03-16 19:40:21.622 IST [393820] LOG: =C2= =A0background worker "REPACK decoding worker" (PID 397007) was te= rminated by signal 6: Aborted
2026-03-16 19:40:21.622 IST [393820] LOG: = =C2=A0terminating any other active server processes
2026-03-16 19:40:21.= 632 IST [397036] FATAL: =C2=A0the database system is in recovery mode
This crash happens if we run REPACK (concurrently) on a table while a hea= vy
pgbench workload is concurrently executing multi-table(setup.sql) tra= nsactions(dual_chaos.sql).
It triggers after a few back to back REPACK (= concurrently) runs.

i think i found the cause for this crash , becau= se there were some changes which
slipped under the nose of the=C2=A0chan= ge_useless_for_repack filter , which led some
changes which are not rela= ted to the relation which we are currently doing REPACK (concurrently)
g= ot decoded and added into the reorderbuffer=C2=A0queue, the reason for this= is=C2=A0repacked_rel_locator.relNumber
is by default set to=C2=A0Invali= dOid, this is actually set to the target relation during=C2=A0setup_logical= _decoding
but this done after=C2=A0DecodingContextFindStartpoint, in Dec= odingContextFindStartpoint changes are not
filtered even if its not rela= ted to the target relation , because rm_decode->change_useless_for_repac= k->am_decoding_for_repack
where=C2=A0repacked_rel_locator.relN= umber is still InvalidOid, which makes it skip the filtering even its not t= he target relation,
this makes it to be added to reorder buffer queue, s= o during the processing of reorder buffer plugin_change is called
where = assert fails, i have attached a diff patch to solve this.

thoughts?<= br>

--
Thanks,
Srinath Reddy Sadipiralla
EDB:=C2=A0https://www.enterprisedb.com/
--000000000000d831d0064d513bc1-- --000000000000d831d2064d513bc3 Content-Type: application/octet-stream; name="fix_diff.norobots" Content-Disposition: attachment; filename="fix_diff.norobots" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_mmwey09m0 ZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL2NvbW1hbmRzL2NsdXN0ZXIuYyBiL3NyYy9iYWNrZW5k L2NvbW1hbmRzL2NsdXN0ZXIuYwppbmRleCA4YjU1NzEzNzRkMC4uNTNiMGZlZjkwNWMgMTAwNjQ0 Ci0tLSBhL3NyYy9iYWNrZW5kL2NvbW1hbmRzL2NsdXN0ZXIuYworKysgYi9zcmMvYmFja2VuZC9j b21tYW5kcy9jbHVzdGVyLmMKQEAgLTI2NzEsNiArMjY3MSwyMSBAQCBzZXR1cF9sb2dpY2FsX2Rl Y29kaW5nKE9pZCByZWxpZCkKwqAgwqAgwqAgwqAgwqAqLwrCoCDCoCDCoCDCoCBBc3NlcnQoIWN0 eC0+ZmFzdF9mb3J3YXJkKTsKwqAKKyDCoCDCoCDCoCAvKiBBdm9pZCBsb2dpY2FsIGRlY29kaW5n IG9mIG90aGVyIHJlbGF0aW9ucy4gKi8KKyDCoCDCoCDCoCByZWwgPSB0YWJsZV9vcGVuKHJlbGlk LCBBY2Nlc3NTaGFyZUxvY2spOworIMKgIMKgIMKgIHJlcGFja2VkX3JlbF9sb2NhdG9yID0gcmVs LT5yZF9sb2NhdG9yOworIMKgIMKgIMKgIHRvYXN0cmVsaWQgPSByZWwtPnJkX3JlbC0+cmVsdG9h c3RyZWxpZDsKKyDCoCDCoCDCoCBpZiAoT2lkSXNWYWxpZCh0b2FzdHJlbGlkKSkKKyDCoCDCoCDC oCB7CisgwqAgwqAgwqAgwqAgwqAgwqAgwqAgUmVsYXRpb24gwqAgwqAgwqAgwqB0b2FzdHJlbDsK KworIMKgIMKgIMKgIMKgIMKgIMKgIMKgIC8qIEF2b2lkIGxvZ2ljYWwgZGVjb2Rpbmcgb2Ygb3Ro ZXIgVE9BU1QgcmVsYXRpb25zLiAqLworIMKgIMKgIMKgIMKgIMKgIMKgIMKgIHRvYXN0cmVsID0g dGFibGVfb3Blbih0b2FzdHJlbGlkLCBBY2Nlc3NTaGFyZUxvY2spOworIMKgIMKgIMKgIMKgIMKg IMKgIMKgIHJlcGFja2VkX3JlbF90b2FzdF9sb2NhdG9yID0gdG9hc3RyZWwtPnJkX2xvY2F0b3I7 CisgwqAgwqAgwqAgwqAgwqAgwqAgwqAgdGFibGVfY2xvc2UodG9hc3RyZWwsIEFjY2Vzc1NoYXJl TG9jayk7CisgwqAgwqAgwqAgfQorIMKgIMKgIMKgIHRhYmxlX2Nsb3NlKHJlbCwgQWNjZXNzU2hh cmVMb2NrKTsKKyDCoCDCoCDCoCAKwqAgwqAgwqAgwqAgRGVjb2RpbmdDb250ZXh0RmluZFN0YXJ0 cG9pbnQoY3R4KTsKwqAKwqAgwqAgwqAgwqAgLyoKQEAgLTI3MDcsMjAgKzI3MjIsNyBAQCBzZXR1 cF9sb2dpY2FsX2RlY29kaW5nKE9pZCByZWxpZCkKwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAg wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAg wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAiUkVQ QUNLIC0gY2hhbmdlIiwKwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAg wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAg wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqBBTExPQ1NFVF9ERUZBVUxUX1NJ WkVTKTsKwqAKLSDCoCDCoCDCoCAvKiBBdm9pZCBsb2dpY2FsIGRlY29kaW5nIG9mIG90aGVyIHJl bGF0aW9ucy4gKi8KLSDCoCDCoCDCoCByZWwgPSB0YWJsZV9vcGVuKHJlbGlkLCBBY2Nlc3NTaGFy ZUxvY2spOwotIMKgIMKgIMKgIHJlcGFja2VkX3JlbF9sb2NhdG9yID0gcmVsLT5yZF9sb2NhdG9y Ow== --000000000000d831d2064d513bc3 Content-Type: application/octet-stream; name="dual_chaos.sql" Content-Disposition: attachment; filename="dual_chaos.sql" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_mmwf3n9h1 XHNldCBpZCByYW5kb21femlwZmlhbigxLCA1MDAwMDAwLCAyLjUpClxzZXQgcmVhZF9pZCByYW5k b20oMSwgNTAwMDAwMCkKXHNldCB2YWwgcmFuZG9tKDEsIDEwMDApCgpCRUdJTjsKICBVUERBVEUg c3RyZXNzX3ZpY3RpbSBTRVQgYmFsYW5jZSA9IDp2YWwgV0hFUkUgaWQgPSA6aWQ7CgogIFVQREFU RSBzdHJlc3Nfc2hhZG93IFNFVCBiYWxhbmNlID0gOnZhbCBXSEVSRSBpZCA9IDppZDsKICAKICBE RUxFVEUgRlJPTSBzdHJlc3NfdmljdGltIFdIRVJFIGlkID0gOmlkICsgMTsKICBERUxFVEUgRlJP TSBzdHJlc3Nfc2hhZG93IFdIRVJFIGlkID0gOmlkICsgMTsKICAKICBJTlNFUlQgSU5UTyBzdHJl c3NfdmljdGltIChpZCwgYmFsYW5jZSwgcGF5bG9hZCkgCiAgVkFMVUVTICg6aWQgKyAxLCA6dmFs LCAnbmV3JykKICBPTiBDT05GTElDVCAoaWQpIERPIFVQREFURSBTRVQgYmFsYW5jZSA9IEVYQ0xV REVELmJhbGFuY2UsIHBheWxvYWQgPSBFWENMVURFRC5wYXlsb2FkOwogIAogIElOU0VSVCBJTlRP IHN0cmVzc19zaGFkb3cgKGlkLCBiYWxhbmNlLCBwYXlsb2FkKSAKICBWQUxVRVMgKDppZCArIDEs IDp2YWwsICduZXcnKQogIE9OIENPTkZMSUNUIChpZCkgRE8gVVBEQVRFIFNFVCBiYWxhbmNlID0g RVhDTFVERUQuYmFsYW5jZSwgcGF5bG9hZCA9IEVYQ0xVREVELnBheWxvYWQ7CkNPTU1JVDs= --000000000000d831d2064d513bc3 Content-Type: application/octet-stream; name="setup.sql" Content-Disposition: attachment; filename="setup.sql" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_mmwf3n9l2 RFJPUCBUQUJMRSBJRiBFWElTVFMgc3RyZXNzX3ZpY3RpbTsKRFJPUCBUQUJMRSBJRiBFWElTVFMg c3RyZXNzX3NoYWRvdzsKCkNSRUFURSBUQUJMRSBzdHJlc3NfdmljdGltICgKICAgIGlkIFNFUklB TCBQUklNQVJZIEtFWSwKICAgIGJhbGFuY2UgSU5ULAogICAgcGF5bG9hZCBURVhUCik7CgpDUkVB VEUgVEFCTEUgc3RyZXNzX3NoYWRvdyAoCiAgICBpZCBTRVJJQUwgUFJJTUFSWSBLRVksCiAgICBi YWxhbmNlIElOVCwKICAgIHBheWxvYWQgVEVYVAopOwoKSU5TRVJUIElOVE8gc3RyZXNzX3ZpY3Rp bSAoYmFsYW5jZSwgcGF5bG9hZCkKU0VMRUNUIAogICAgKHJhbmRvbSgpKjEwMDApOjppbnQsIAog ICAgcmVwZWF0KG1kNShyYW5kb20oKTo6dGV4dCksIDYpCkZST00gZ2VuZXJhdGVfc2VyaWVzKDEs IDUwMDAwMDApOwoKSU5TRVJUIElOVE8gc3RyZXNzX3NoYWRvdyBTRUxFQ1QgKiBGUk9NIHN0cmVz c192aWN0aW07Cg== --000000000000d831d2064d513bc3--