[MCOL-1213] SystemCatalog.getTable("table name") doesn't support uppercase letters Created: 2018-02-12  Updated: 2023-10-26  Resolved: 2018-03-22

Status: Closed
Project: MariaDB ColumnStore
Component/s: None
Affects Version/s: 1.1.2
Fix Version/s: 1.1.4

Type: Bug Priority: Minor
Reporter: Jens Röwekamp (Inactive) Assignee: Daniel Lee (Inactive)
Resolution: Fixed Votes: 0
Labels: None
Environment:

Python, Java, C++ not tested


Issue Links:
Relates
relates to MCOL-1179 Pentaho Data Integration / Kettle - B... Closed
Sprint: 2018-05, 2018-06

 Description   

Using SystemCatalogTable.getColumn(columnName) fails if using a column name with uppercase letters like "helloWorld". Using the lowercase name works. Tested in Python and Java.

Same issue for SystemCatalog.getTable(tableName)

To reproduce:

In mcsmysql:

create table tmp1 (v int, c char(3), helloWorld bigint) engine=columnstore;

In Python:

import pymcsapi
d = pymcsapi.ColumnStoreDriver()
c = d.getSystemCatalog()
t = c.getTable("test", "tmp1")
col = t.getColumn("v")
col = t.getColumn("helloWorld")
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/lib/python2.7/dist-packages/pymcsapi.py", line 284, in getColumn
    return _pymcsapi.ColumnStoreSystemCatalogTable_getColumn(self, *args)
RuntimeError: test.tmp1.helloWorld not found
col = t.getColumn("helloworld")



 Comments   
Comment by Jens Röwekamp (Inactive) [ 2018-02-13 ]

Also the same for ColumnStoreSystemCatalogColumn.getColumnName(), returns only the lower case column name even though a column shows upper case letters in mcsmysql.

Comment by Andrew Hutchings (Inactive) [ 2018-03-08 ]

ColumnStore's System Catalogue only stores the names in lowercase so we should make matches case insensitive and document accordingly.

Comment by Andrew Hutchings (Inactive) [ 2018-03-08 ]

Patch makes getTable and getColumn case insensitive. Also updates the documentation to point out that system catalog is lower case.

For QA: system catalog test in API's build-in regression suite updated for this.

Comment by Daniel Lee (Inactive) [ 2018-03-22 ]

Build verified: 1.1.4-1 source

/root/columnstore/mariadb-columnstore-server
commit 3b5242143b394423dbdf96d888410a3c33f9ff97
Merge: b7d93b7 23900e6
Author: benthompson15 <ben.thompson@mariadb.com>
Date: Wed Mar 7 10:39:40 2018 -0600

Merge pull request #104 from mariadb-corporation/davidhilldallas-patch-3

update version

/root/columnstore/mariadb-columnstore-server/mariadb-columnstore-engine
commit 4e167285c6665c9aa0e204eac2de0add61709be4
Merge: 819c69c b800fc7
Author: benthompson15 <ben.thompson@mariadb.com>
Date: Wed Mar 14 13:25:21 2018 -0500

Merge pull request #427 from mariadb-corporation/MCOL-1225

Mcol 1225 - fix mysql/lib library path

commit 8f4f304e22c8629e6b5feb0bb9724b09ae89b787
Merge: acf32cc a2ec28a
Author: sneJ p <sneJ-@users.noreply.github.com>
Date: Thu Mar 22 00:59:01 2018 -0700

Merge pull request #61 from mariadb-corporation/1.1-mergeup-20180322

Merge develop-1.1 into develop

Reproduced the issue in 1.1.3-1 and verified the fix in 1.1.4-1 source above.

Spent time on getting the build environment updated

Generated at Thu Feb 08 02:27:03 UTC 2024 using Jira 8.20.16#820016-sha1:9d11dbea5f4be3d4cc21f03a88dd11d8c8687422.