[REL6.4] Mixed case table name problems with some fixes.

From: "Billy G(dot) Allie" <Bill(dot)Allie(at)mug(dot)org>
To: pgsql-hackers(at)postgresql(dot)org, pgsql-bugs(at)postgresql(dot)org
Subject: [REL6.4] Mixed case table name problems with some fixes.
Date: 1998-11-15 06:56:47
Message-ID: 199811150656.BAA20572@bgalli.mug.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

This is a multipart MIME message.

- --==_Exmh_18043825520
Content-Type: text/plain; charset=us-ascii

============================================================================
POSTGRESQL BUG REPORT TEMPLATE
============================================================================

Your name : Billy G. Allie
Your email address : Bill(dot)Allie(at)mug(dot)org

System Configuration
- ---------------------
Architecture (example: Intel Pentium) : Intel 486DX2

Operating System (example: Linux 2.0.26 ELF) : UnixWare 7.0

PostgreSQL version (example: PostgreSQL-6.4) : PostgreSQL-6.4

Compiler used (example: gcc 2.8.0) : Optimizing C Compilation System
(CCS) 3.2 08/18/98 (u701)

Please enter a FULL description of your problem:
- ------------------------------------------------
There are a number of problems with using mixed case table names:

1. Using constraints on tables whose name contains mixed case will fail.

2. Creating triggers on tables whose name contains mixed case will fail.

3. In pgsql, the command '\d *' will fail.

Please describe a way to repeat the problem. Please try to provide a
concise reproducible example, if at all possible:
- ----------------------------------------------------------------------
1. Create a table that has a mixed case name and a constraint such as
a default or a primary key.

2. Create a trigger on a table with a mixed case name.

3. In psql, execute the '\d *' command in a database that has tables
mixed case names.

If you know how this problem might be fixed, list the solution below:
- ---------------------------------------------------------------------
The following patch file fixes problems 1 and 3. Thomas G. Lockhart's
patch to fix problem 1 was incomplete. I added the additional changes
to 'heap.c' that were needed to complete the fix.

- --==_Exmh_18043825520
Content-Type: application/x-patch ; name="uw7-0.patch"
Content-Description: uw7-0.patch
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="uw7-0.patch"

KioqIHNyYy9iYWNrZW5kL2NhdGFsb2cvaGVhcC5jLm9yaWcJU2F0IE5vdiAxNCAyMjoyMDo0
NiAxOTk4Ci0tLSBzcmMvYmFja2VuZC9jYXRhbG9nL2hlYXAuYwlTYXQgTm92IDE0IDIyOjI1
OjI3IDE5OTgKKioqKioqKioqKioqKioqCioqKiAxNDQ0LDE0NTAgKioqKgogIAlleHRlcm4g
R2xvYmFsTWVtb3J5IENhY2hlQ3h0OwogIAogIHN0YXJ0OjsKISAJc3ByaW50ZihzdHIsICJz
ZWxlY3QgJXMlcyBmcm9tICUuKnMiLCBhdHRyZGVmLT5hZHNyYywgY2FzdCwKICAJCQlOQU1F
REFUQUxFTiwgcmVsLT5yZF9yZWwtPnJlbG5hbWUuZGF0YSk7CiAgCXNldGhlYXBvdmVycmlk
ZSh0cnVlKTsKICAJcGxhblRyZWVfbGlzdCA9IChMaXN0ICopIHBnX3BhcnNlX2FuZF9wbGFu
KHN0ciwgTlVMTCwgMCwgJnF1ZXJ5VHJlZV9saXN0LCBOb25lLCBGQUxTRSk7Ci0tLSAxNDQ0
LDE0NTMgLS0tLQogIAlleHRlcm4gR2xvYmFsTWVtb3J5IENhY2hlQ3h0OwogIAogIHN0YXJ0
OjsKISAJLyogU3Vycm91bmQgdGFibGUgbmFtZSB3aXRoIGRvdWJsZSBxdW90ZXMgdG8gYWxs
b3cgbWl4ZWQtY2FzZSBhbmQKISAJICogd2hpdGVzcGFjZXMgaW4gbmFtZXMuIC0gQkdBIDE5
OTgtMTEtMTQKISAJICovCiEgCXNwcmludGYoc3RyLCAic2VsZWN0ICVzJXMgZnJvbSBcIiUu
KnNcIiIsIGF0dHJkZWYtPmFkc3JjLCBjYXN0LAogIAkJCU5BTUVEQVRBTEVOLCByZWwtPnJk
X3JlbC0+cmVsbmFtZS5kYXRhKTsKICAJc2V0aGVhcG92ZXJyaWRlKHRydWUpOwogIAlwbGFu
VHJlZV9saXN0ID0gKExpc3QgKikgcGdfcGFyc2VfYW5kX3BsYW4oc3RyLCBOVUxMLCAwLCAm
cXVlcnlUcmVlX2xpc3QsIE5vbmUsIEZBTFNFKTsKKioqKioqKioqKioqKioqCioqKiAxNTE1
LDE1MjEgKioqKgogIAljaGFyCQludWxsc1s0XSA9IHsnICcsICcgJywgJyAnLCAnICd9Owog
IAlleHRlcm4gR2xvYmFsTWVtb3J5IENhY2hlQ3h0OwogIAohIAlzcHJpbnRmKHN0ciwgInNl
bGVjdCAxIGZyb20gJS4qcyB3aGVyZSAlcyIsCiAgCQkJTkFNRURBVEFMRU4sIHJlbC0+cmRf
cmVsLT5yZWxuYW1lLmRhdGEsIGNoZWNrLT5jY3NyYyk7CiAgCXNldGhlYXBvdmVycmlkZSh0
cnVlKTsKICAJcGxhblRyZWVfbGlzdCA9IChMaXN0ICopIHBnX3BhcnNlX2FuZF9wbGFuKHN0
ciwgTlVMTCwgMCwgJnF1ZXJ5VHJlZV9saXN0LCBOb25lLCBGQUxTRSk7Ci0tLSAxNTE4LDE1
MjcgLS0tLQogIAljaGFyCQludWxsc1s0XSA9IHsnICcsICcgJywgJyAnLCAnICd9OwogIAll
eHRlcm4gR2xvYmFsTWVtb3J5IENhY2hlQ3h0OwogIAohIAkvKiBDaGVjayBmb3IgdGFibGUn
cyBleGlzdGFuY2UuIFN1cnJvdW5kIHRhYmxlIG5hbWUgd2l0aCBkb3VibGUtcXVvdGVzCiEg
CSAqIHRvIGFsbG93IG1peGVkLWNhc2UgYW5kIHdoaXRlc3BhY2UgbmFtZXMuIC0gdGhvbWFz
IDE5OTgtMTEtMTIKISAJICovCiEgCXNwcmludGYoc3RyLCAic2VsZWN0IDEgZnJvbSBcIiUu
KnNcIiB3aGVyZSAlcyIsCiAgCQkJTkFNRURBVEFMRU4sIHJlbC0+cmRfcmVsLT5yZWxuYW1l
LmRhdGEsIGNoZWNrLT5jY3NyYyk7CiAgCXNldGhlYXBvdmVycmlkZSh0cnVlKTsKICAJcGxh
blRyZWVfbGlzdCA9IChMaXN0ICopIHBnX3BhcnNlX2FuZF9wbGFuKHN0ciwgTlVMTCwgMCwg
JnF1ZXJ5VHJlZV9saXN0LCBOb25lLCBGQUxTRSk7CioqKiBzcmMvYmluL3BzcWwvcHNxbC5j
Lm9yaWcJU3VuIE5vdiAxNSAwMDo1NjozNCAxOTk4Ci0tLSBzcmMvYmluL3BzcWwvcHNxbC5j
CVN1biBOb3YgMTUgMDE6MzI6NTQgMTk5OAoqKioqKioqKioqKioqKioKKioqIDQ2MCw0NzEg
KioqKgogIAkJCQlwZXJyb3IoIm1hbGxvYyIpOwogIAogIAkJCS8qIGxvYWQgdGFibGUgdGFi
bGUgKi8KICAJCQlmb3IgKGkgPSAwOyBpIDwgbkNvbHVtbnM7IGkrKykKICAJCQl7CiEgCQkJ
CXRhYmxlW2ldID0gKGNoYXIgKikgbWFsbG9jKFBRZ2V0bGVuZ3RoKHJlcywgaSwgMSkgKiBz
aXplb2YoY2hhcikgKyAxKTsKICAJCQkJaWYgKHRhYmxlW2ldID09IE5VTEwpCiAgCQkJCQlw
ZXJyb3IoIm1hbGxvYyIpOwohIAkJCQlzdHJjcHkodGFibGVbaV0sIFBRZ2V0dmFsdWUocmVz
LCBpLCAxKSk7CiAgCQkJfQogIAogIAkJCVBRY2xlYXIocmVzKTsKLS0tIDQ2MCw0NzYgLS0t
LQogIAkJCQlwZXJyb3IoIm1hbGxvYyIpOwogIAogIAkJCS8qIGxvYWQgdGFibGUgdGFibGUg
Ki8KKyAJCQkvKiBQdXQgZG91YmxlIHF1b3RlcyBhcm91bmQgdGhlIHRhYmxlIG5hbWUgdG8g
YWxsb3cgZm9yIG1peGVkLWNhc2UKKyAJCQkgKiBhbmQgd2hpdGVzcGFjZXMgaW4gdGhlIHRh
YmxlIG5hbWUuIC0gQkdBIDE5OTgtMTEtMTQKKyAJCQkgKi8KICAJCQlmb3IgKGkgPSAwOyBp
IDwgbkNvbHVtbnM7IGkrKykKICAJCQl7CiEgCQkJCXRhYmxlW2ldID0gKGNoYXIgKikgbWFs
bG9jKFBRZ2V0bGVuZ3RoKHJlcywgaSwgMSkgKiBzaXplb2YoY2hhcikgKyAzKTsKICAJCQkJ
aWYgKHRhYmxlW2ldID09IE5VTEwpCiAgCQkJCQlwZXJyb3IoIm1hbGxvYyIpOwohIAkJCQlz
dHJjcHkodGFibGVbaV0sICJcIiIpOwohIAkJCQlzdHJjYXQodGFibGVbaV0sIFBRZ2V0dmFs
dWUocmVzLCBpLCAxKSk7CiEgCQkJCXN0cmNhdCh0YWJsZVtpXSwgIlwiIik7CiAgCQkJfQog
IAogIAkJCVBRY2xlYXIocmVzKTsK

- --==_Exmh_18043825520
Content-Type: text/plain; charset=us-ascii

____ | Billy G. Allie | Domain....: Bill(dot)Allie(at)mug(dot)org
| /| | 7436 Hartwell | Compuserve: 76337,2061
|-/-|----- | Dearborn, MI 48126| MSN.......: B_G_Allie(at)email(dot)msn(dot)com
|/ |LLIE | (313) 582-1540 |

- --==_Exmh_18043825520--

-----BEGIN PGP SIGNATURE-----
Version: PGPfreeware 5.0i for non-commercial use
Charset: noconv

iQA/AwUBNk57LqFebSRz8o+3EQL40QCfUplxf/CSLceopBQlLXUb+v+cMaoAoNW3
hA5qlmdH9XtfGsTpkzruCyI2
=eurJ
-----END PGP SIGNATURE-----

Browse pgsql-hackers by date

  From Date Subject
Next Message Billy G. Allie 1998-11-15 07:02:36 [REL6.4] Mixed case table name problems with some fixes.
Previous Message Tom Lane 1998-11-15 06:43:29 Re: [HACKERS] BIG grant problem