Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1nxCZh-00068y-Gy for pgsql-bugs@arkaria.postgresql.org; Fri, 03 Jun 2022 19:03:10 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1nxCZf-0002rD-3h for pgsql-bugs@arkaria.postgresql.org; Fri, 03 Jun 2022 19:03:07 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1nxCZe-0002r4-Gp for pgsql-bugs@lists.postgresql.org; Fri, 03 Jun 2022 19:03:06 +0000 Received: from mail.postgrespro.ru ([93.174.131.139]) by makus.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1nxCZY-00025G-6R for pgsql-bugs@lists.postgresql.org; Fri, 03 Jun 2022 19:03:05 +0000 Received: from [192.168.28.53] (cyclops.postgrespro.ru [93.174.131.138]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client did not present a certificate) by mail.postgrespro.ru (Postfix) with ESMTPSA id 4A47521C3877; Fri, 3 Jun 2022 22:02:57 +0300 (MSK) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=postgrespro.ru; s=mail; t=1654282977; bh=gHVJxg1Bd0fG6DwkEzPfrD6/JemhG8zPIK7DDqDNTJk=; h=Date:To:Cc:From:Subject; b=Bh4qdwj8t9EUB9qmtV58/l8abYq59tCvvI8ihr6OIiaDShlTGN1WEeg4l+c1dJbV2 yut5kd9WcjmLLqDYIqrBJYl5YpmGC3V4MYzvbVWWybHB9GoaOyYoGi+v6FcFrYnUeq 3Z89Cd0g1U22uTMy9JbQJfNvOs6Zatv9Lri/GfYc= Content-Type: multipart/mixed; boundary="------------opYCZ5dJoISMMHMqynmNSK8R" Message-ID: <121e286f-3796-c9d7-9eab-6fb8e0b9c701@postgrespro.ru> Date: Fri, 3 Jun 2022 22:02:56 +0300 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:91.0) Gecko/20100101 Thunderbird/91.10.0 Content-Language: en-US To: PostgreSQL mailing lists Cc: d.koval@postgrespro.ru From: Andrey Lepikhov Subject: Postgres do not allow to create many tables with more than 63-symbols prefix Organization: Postgres Professional List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk This is a multi-part message in MIME format. --------------opYCZ5dJoISMMHMqynmNSK8R Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit According to subj you can try to create many tables (induced by the case of partitioned table) with long prefix - see 6727v.sql for reproduction. But now it's impossible because of logic of the makeUniqueTypeName() routine. You get the error: ERROR: could not form array type name for type ... It is very corner case, of course. But solution is easy and short. So, why not to fix? - See the patch in attachment. -- regards, Andrey Lepikhov Postgres Professional --------------opYCZ5dJoISMMHMqynmNSK8R Content-Type: application/sql; name="6727v.sql" Content-Disposition: attachment; filename="6727v.sql" Content-Transfer-Encoding: base64 Q1JFQVRFIE9SIFJFUExBQ0UgRlVOQ1RJT04gZ2VuZXJhdGVfdGFibGVzKG4gaW50KSBSRVRV Uk5TIHZvaWQgTEFOR1VBR0UgcGxwZ3NxbA0KQVMgJGJvZHkkDQpERUNMQVJFDQogICAgaSBp bnQ7DQogICAgcXJ5IHZhcmNoYXI7DQpCRUdJTg0KCUZPUiBpIElOIDEuLm4gTE9PUA0KCSAg ICBxcnkgPSAnQ1JFQVRFIFRBQkxFIHRlc3RfdGFibGVfd2l0aF9sZW5fNjNfYWFhYWFhYWFh YWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFheCcgfHwgdG9fY2hhcihpLCAnRk0wMDAnKSB8 fCAnIChpIGludCknOw0KCQlSQUlTRSBOT1RJQ0UgJ0V4ZWN1dGluZzogJScsIHFyeTsNCgkJ RVhFQ1VURSBxcnk7DQoJRU5EIExPT1A7DQpFTkQ7DQokYm9keSQ7DQoNClNFTEVDVCBnZW5l cmF0ZV90YWJsZXMoMTAwKTsNCg== --------------opYCZ5dJoISMMHMqynmNSK8R Content-Type: text/plain; charset=UTF-8; name="0001-Allow-postgresql-to-generate-more-relations-with-the.patch" Content-Disposition: attachment; filename*0="0001-Allow-postgresql-to-generate-more-relations-with-the.pa"; filename*1="tch" Content-Transfer-Encoding: base64 RnJvbSBlMjhlMGI4OGNlN2JmZTc5ZWJkM2ZhODJhMzEyNGJmOTI0YTlmYjUzIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiAiQW5kcmV5IFYuIExlcGlraG92IiA8YS5sZXBpa2hv dkBwb3N0Z3Jlc3Byby5ydT4KRGF0ZTogRnJpLCAzIEp1biAyMDIyIDIxOjQwOjAxICswMzAw ClN1YmplY3Q6IFtQQVRDSF0gQWxsb3cgcG9zdGdyZXNxbCB0byBnZW5lcmF0ZSBtb3JlIHJl bGF0aW9ucyB3aXRoIHRoZSBzYW1lIDYzCiBzeW1ib2xzIGxvbmcgcHJlZml4LiBSZXdyaXRl IHRoZSBtYWtlVW5pcXVlVHlwZU5hbWUgcm91dGluZSAtIGdlbmVyYXRvciBvZgogdW5pcXVl IG5hbWUgaXMgYmFzZWQgb24gdGhlIHNhbWUgaWRlYSBhcyB0aGUgQ2hvb3NlUmVsYXRpb25O YW1lKCkgcm91dGluZS4KCkF1dGhvcnM6IERtaXRyeSBLb3ZhbCA8ZC5rb3ZhbEBwb3N0Z3Jl c3Byby5ydT4sIEFuZHJleSBMZXBpa2hvdiA8YS5sZXBpa2hvdkBwb3N0Z3Jlc3Byby5ydT4K LS0tCiBzcmMvYmFja2VuZC9jYXRhbG9nL3BnX3R5cGUuYyAgICAgICAgICAgICB8IDQxICsr KysrKysrKysrKystLS0tLS0tLS0tCiBzcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL2FsdGVy X3RhYmxlLm91dCB8ICA2ICsrLS0KIDIgZmlsZXMgY2hhbmdlZCwgMjcgaW5zZXJ0aW9ucygr KSwgMjAgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQvY2F0YWxvZy9w Z190eXBlLmMgYi9zcmMvYmFja2VuZC9jYXRhbG9nL3BnX3R5cGUuYwppbmRleCAwMzc4OGNi OTc1Li42OTc3Mzc3ZjQwIDEwMDY0NAotLS0gYS9zcmMvYmFja2VuZC9jYXRhbG9nL3BnX3R5 cGUuYworKysgYi9zcmMvYmFja2VuZC9jYXRhbG9nL3BnX3R5cGUuYwpAQCAtMjYsNiArMjYs NyBAQAogI2luY2x1ZGUgImNhdGFsb2cvcGdfbmFtZXNwYWNlLmgiCiAjaW5jbHVkZSAiY2F0 YWxvZy9wZ19wcm9jLmgiCiAjaW5jbHVkZSAiY2F0YWxvZy9wZ190eXBlLmgiCisjaW5jbHVk ZSAiY29tbWFuZHMvZGVmcmVtLmgiCiAjaW5jbHVkZSAiY29tbWFuZHMvdHlwZWNtZHMuaCIK ICNpbmNsdWRlICJtYi9wZ193Y2hhci5oIgogI2luY2x1ZGUgIm1pc2NhZG1pbi5oIgpAQCAt OTM2LDE3ICs5MzcsMTcgQEAgbWFrZU11bHRpcmFuZ2VUeXBlTmFtZShjb25zdCBjaGFyICpy YW5nZVR5cGVOYW1lLCBPaWQgdHlwZU5hbWVzcGFjZSkKICAqIG1ha2VVbmlxdWVUeXBlTmFt ZQogICoJCUdlbmVyYXRlIGEgdW5pcXVlIG5hbWUgZm9yIGEgcHJvc3BlY3RpdmUgbmV3IHR5 cGUKICAqCi0gKiBHaXZlbiBhIHR5cGVOYW1lLCByZXR1cm4gYSBuZXcgcGFsbG9jJ2VkIG5h bWUgYnkgcHJlcGVuZGluZyB1bmRlcnNjb3JlcwotICogdW50aWwgYSBub24tY29uZmxpY3Rp bmcgbmFtZSByZXN1bHRzLgorICogR2l2ZW4gYSB0eXBlTmFtZSwgcmV0dXJuIGEgbmV3IHBh bGxvYydlZCBuYW1lIGJ5IHByZXBlbmRpbmcgdW5kZXJzY29yZQorICogYW5kIChpZiBuZWVk ZWQpIGFkZGluZyBhIHN1ZmZpeCB0byB0aGUgZW5kIG9mIHRoZSB0eXBlIG5hbWUuCiAgKgog ICogSWYgdHJ5T3JpZ2luYWwsIGZpcnN0IHRyeSB3aXRoIHplcm8gdW5kZXJzY29yZXMuCiAg Ki8KIHN0YXRpYyBjaGFyICoKIG1ha2VVbmlxdWVUeXBlTmFtZShjb25zdCBjaGFyICp0eXBl TmFtZSwgT2lkIHR5cGVOYW1lc3BhY2UsIGJvb2wgdHJ5T3JpZ2luYWwpCiB7Ci0JaW50CQkJ aTsKLQlpbnQJCQluYW1lbGVuOwotCWNoYXIJCWRlc3RbTkFNRURBVEFMRU5dOworCWludAkJ cGFzcyA9IDA7CisJY2hhcglzdWZmaXhbTkFNRURBVEFMRU5dOworCWNoYXIgICAqdHlwZV9u YW1lOwogCiAJQXNzZXJ0KHN0cmxlbih0eXBlTmFtZSkgPD0gTkFNRURBVEFMRU4gLSAxKTsK IApAQCAtOTU2LDIzICs5NTcsMjkgQEAgbWFrZVVuaXF1ZVR5cGVOYW1lKGNvbnN0IGNoYXIg KnR5cGVOYW1lLCBPaWQgdHlwZU5hbWVzcGFjZSwgYm9vbCB0cnlPcmlnaW5hbCkKIAkJCQkJ CQkgICBPYmplY3RJZEdldERhdHVtKHR5cGVOYW1lc3BhY2UpKSkKIAkJcmV0dXJuIHBzdHJk dXAodHlwZU5hbWUpOwogCisJLyogUHJlcGFyZSBpbml0aWFsIG9iamVjdCBuYW1lLiBKdXN0 IGZvciBjb21wYXRpYmlsaXR5LiAqLworCXR5cGVfbmFtZSA9IG1ha2VPYmplY3ROYW1lKCIi LCB0eXBlTmFtZSwgTlVMTCk7CisKIAkvKgotCSAqIFRoZSBpZGVhIGlzIHRvIHByZXBlbmQg dW5kZXJzY29yZXMgYXMgbmVlZGVkIHVudGlsIHdlIG1ha2UgYSBuYW1lIHRoYXQKLQkgKiBk b2Vzbid0IGNvbGxpZGUgd2l0aCBhbnl0aGluZyAuLi4KKwkgKiBUaGUgaWRlYSBvZiB1bmlx dWUgbmFtZSBnZW5lcmF0aW9uIGlzIHNpbWlsYXIgdG8gQ2hvb3NlUmVsYXRpb25OYW1lKCkK KwkgKiBpbXBsZW1lbnRhdGlvbiBsb2dpYy4KIAkgKi8KLQluYW1lbGVuID0gc3RybGVuKHR5 cGVOYW1lKTsKLQlmb3IgKGkgPSAxOyBpIDwgTkFNRURBVEFMRU4gLSAxOyBpKyspCisJZG8K IAl7Ci0JCWRlc3RbaSAtIDFdID0gJ18nOwotCQlzdHJsY3B5KGRlc3QgKyBpLCB0eXBlTmFt ZSwgTkFNRURBVEFMRU4gLSBpKTsKLQkJaWYgKG5hbWVsZW4gKyBpID49IE5BTUVEQVRBTEVO KQotCQkJdHJ1bmNhdGVfaWRlbnRpZmllcihkZXN0LCBOQU1FREFUQUxFTiwgZmFsc2UpOwot CiAJCWlmICghU2VhcmNoU3lzQ2FjaGVFeGlzdHMyKFRZUEVOQU1FTlNQLAotCQkJCQkJCQkg ICBDU3RyaW5nR2V0RGF0dW0oZGVzdCksCisJCQkJCQkJCSAgIENTdHJpbmdHZXREYXR1bSh0 eXBlX25hbWUpLAogCQkJCQkJCQkgICBPYmplY3RJZEdldERhdHVtKHR5cGVOYW1lc3BhY2Up KSkKLQkJCXJldHVybiBwc3RyZHVwKGRlc3QpOwotCX0KKwkJCXJldHVybiB0eXBlX25hbWU7 CiAKKwkJLyogUHJldmlvdXMgYXR0ZW1wdCB3YXMgZmFpbGVkLiBQcmVwYXJlIGEgbmV3IG9u ZS4gKi8KKwkJcGZyZWUodHlwZV9uYW1lKTsKKwkJc25wcmludGYoc3VmZml4LCBzaXplb2Yo c3VmZml4KSwgIiVkIiwgcGFzcysrKTsKKwkJdHlwZV9uYW1lID0gbWFrZU9iamVjdE5hbWUo IiIsIHR5cGVOYW1lLCBzdWZmaXgpOworCX0gd2hpbGUgKHBhc3MgPj0gMCk7CisKKwkvKgor CSAqIFJldHVybiBOVUxMIG9ubHkgYWZ0ZXIgaW50ZWdlciBvdmVyZmxvdy4gSXQgc2VlbXMg aW1wb3NzaWJsZSBiZWNhdXNlCisJICogb2YgT0lEIGxpbWl0cy4KKwkgKi8KIAlyZXR1cm4g TlVMTDsKIH0KZGlmZiAtLWdpdCBhL3NyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvYWx0ZXJf dGFibGUub3V0IGIvc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC9hbHRlcl90YWJsZS5vdXQK aW5kZXggNWVkZTU2ZDliNS4uNDFhMDE5ZWFiNyAxMDA2NDQKLS0tIGEvc3JjL3Rlc3QvcmVn cmVzcy9leHBlY3RlZC9hbHRlcl90YWJsZS5vdXQKKysrIGIvc3JjL3Rlc3QvcmVncmVzcy9l eHBlY3RlZC9hbHRlcl90YWJsZS5vdXQKQEAgLTE5Nyw5ICsxOTcsOSBAQCBTRUxFQ1QgdHlw bmFtZSBGUk9NIHBnX3R5cGUgV0hFUkUgb2lkID0gJ2F0dG1wX2FycmF5W10nOjpyZWd0eXBl OwogKDEgcm93KQogCiBTRUxFQ1QgdHlwbmFtZSBGUk9NIHBnX3R5cGUgV0hFUkUgb2lkID0g J19hdHRtcF9hcnJheVtdJzo6cmVndHlwZTsKLSAgICB0eXBuYW1lICAgICAKLS0tLS0tLS0t LS0tLS0tLS0KLSBfX19hdHRtcF9hcnJheQorICAgICB0eXBuYW1lICAgICAKKy0tLS0tLS0t LS0tLS0tLS0tCisgX19hdHRtcF9hcnJheV8wCiAoMSByb3cpCiAKIERST1AgVEFCTEUgX2F0 dG1wX2FycmF5OwotLSAKMi4zNi4xCgo= --------------opYCZ5dJoISMMHMqynmNSK8R--