Opened 6 years ago

Closed 6 years ago

#1742 closed defect (fixed)

Exception for length of collection name overflow

Reported by: bbell Owned by: dkamov
Priority: minor Milestone: 9.7
Component: qlparser Version: development
Keywords: Cc: Dimitar Misev, Peter Baumann, Vlad Merticariu
Complexity: Easy

Description

$ rasql -q 'create collection test123123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789 GreySet' --user rasadmin --passwd rasadmin
rasql: rasdaman query tool v1.0, rasdaman 9.6.0.
opening database RASBASE at localhost:7001...ok
Executing update query...ok
rasql done.
$ rasql -q 'create collection test123123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789 GreySet' --user rasadmin --passwd rasadmin
rasql: rasdaman query tool v1.0, rasdaman 9.6.0.
opening database RASBASE at localhost:7001...ok
Executing update query...rasdaman error 955: Update error 955 in line 1, column 1, near token create: Collection name exists already.
aborting transaction...ok
rasql done.

There is an overflow for collection name length which is simply ignored. An exception or a warning should be thrown in case the name is truncated.

Change History (6)

comment:1 by Dimitar Misev, 6 years ago

FYI the collection that was created in the first query has this name:

test1231234567891234567891234567891234567891234567891234567891234567891234567891234567891234567891234567891234567891234567891234567891234567891234567891234567891234567891234567891234567891234567891234

but it's supposed to be

test123123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789

so the limit is 201 characters :)

comment:2 by Dimitar Misev, 6 years ago

Milestone: 9.69.7

comment:3 by Dimitar Misev, 6 years ago

Owner: changed from bbell to dkamov
Status: newassigned

comment:4 by Dimitar Misev, 6 years ago

Resolution: fixed
Status: assignedclosed

comment:5 by Dimitar Misev, 6 years ago

Resolution: fixed
Status: closedreopened

Please also add a few more tests with really long names (e.g. 1000 characters) to see where they fail. These should be added in systemtest/testcases_mandatory/test_type/test.sh for

  • struct/mdarray/set type names
  • struct member names

For format names/parameters it should not be an issue as they are handled as std::string.

comment:6 by dkamov, 6 years ago

Resolution: fixed
Status: reopenedclosed
Note: See TracTickets for help on using tickets.