Extend maximum object name/identifier from about 64 to 100 or 128
> give a flexibility since to short in these days.
or
> by setting length in the configuration file
make people stop using abbreviation that like alien language needed to refer another text match/mapping table which make work slower. Even windows OS has actually unlimited 1024 byte path name from 255 MAX.
New generation dont need any limitation.
Thanks for the feature requests. It would be quite helpful if different feature requests end up in different JIRA items. Can you edit this down to just the first feature, adjust the title (searchability helps) and put the other items in a separate ticket now.
Can you also include more information in the individually created tickets as to why and under what circumstances the feature is useful, and if other features/functions exist within the relm of the problem, why they aren't a sufficient solution.
Daniel Black
added a comment - Thanks for the feature requests. It would be quite helpful if different feature requests end up in different JIRA items. Can you edit this down to just the first feature, adjust the title (searchability helps) and put the other items in a separate ticket now.
Can you also include more information in the individually created tickets as to why and under what circumstances the feature is useful, and if other features/functions exist within the relm of the problem, why they aren't a sufficient solution.
Please keep in mind that the identifier names are being stored in some persistent data structures where there may be surprising limits. One such place are the tables mysql.innodb_index_stats and mysql.innodb_table_stats, especially when using innodb_page_size=4k. The maximum length of an identifier there is already some 4*5*64 characters, plus some delimiters /, #P#, #SP#. The filename-safe encoding can expand each utf8mb3 character up to 5 ASCII characters. To storage engines, each partition or subpartition of a table is presented as a separate table, whose name consists of up to 4 components: schema, table, partition, subpartition name. If we implement catalogs (multi-tenancy), a 5th component (catalog name) will have to be added somewhere.
Marko Mäkelä
added a comment - Please keep in mind that the identifier names are being stored in some persistent data structures where there may be surprising limits. One such place are the tables mysql.innodb_index_stats and mysql.innodb_table_stats , especially when using innodb_page_size=4k . The maximum length of an identifier there is already some 4*5*64 characters, plus some delimiters / , #P# , #SP# . The filename-safe encoding can expand each utf8mb3 character up to 5 ASCII characters. To storage engines, each partition or subpartition of a table is presented as a separate table, whose name consists of up to 4 components: schema, table, partition, subpartition name. If we implement catalogs (multi-tenancy), a 5th component (catalog name) will have to be added somewhere.
It's not a huge task, I think, but the one where it's difficult to predict what it'll affect. Lots of places make assumptions about the max identifier length. All system tables, InnoDB data dictionary, frms, file names, protocol, perhaps, too, and lots of internal data structures. Most of the internal data structures will auto-adjust, for sure. But going from 64 to 1000 might notably affect the heap and stack usage.
Sergei Golubchik
added a comment - It's not a huge task, I think, but the one where it's difficult to predict what it'll affect. Lots of places make assumptions about the max identifier length. All system tables, InnoDB data dictionary, frms, file names, protocol, perhaps, too, and lots of internal data structures. Most of the internal data structures will auto-adjust, for sure. But going from 64 to 1000 might notably affect the heap and stack usage.
Yes, better. I think we could try to go to a larger number first, like, 1000, and if it'll cause too many problems that we won't be able to fix, then 128 could be an option.
Sergei Golubchik
added a comment - Yes, better. I think we could try to go to a larger number first, like, 1000, and if it'll cause too many problems that we won't be able to fix, then 128 could be an option.
People
Unassigned
Mitchell Lee
Votes:
2Vote for this issue
Watchers:
8Start watching this issue
Dates
Created:
Updated:
Git Integration
Error rendering 'com.xiplink.jira.git.jira_git_plugin:git-issue-webpanel'. Please contact your Jira administrators.
{"report":{"fcp":810.3999998569489,"ttfb":165.09999990463257,"pageVisibility":"visible","entityId":119178,"key":"jira.project.issue.view-issue","isInitial":true,"threshold":1000,"elementTimings":{},"userDeviceMemory":8,"userDeviceProcessors":64,"apdex":1,"journeyId":"6fd2ba7e-565c-48e2-8a16-f3b619fe5cb6","navigationType":0,"readyForUser":899.6999998092651,"redirectCount":0,"resourceLoadedEnd":539,"resourceLoadedStart":173.19999980926514,"resourceTiming":[{"duration":8.200000047683716,"initiatorType":"link","name":"https://jira.mariadb.org/s/2c21342762a6a02add1c328bed317ffd-CDN/lu2bu7/820016/12ta74/0a8bac35585be7fc6c9cc5a0464cd4cf/_/download/contextbatch/css/_super/batch.css","startTime":173.19999980926514,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":173.19999980926514,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":181.39999985694885,"responseStart":0,"secureConnectionStart":0},{"duration":7.799999952316284,"initiatorType":"link","name":"https://jira.mariadb.org/s/7ebd35e77e471bc30ff0eba799ebc151-CDN/lu2bu7/820016/12ta74/8679b4946efa1a0bb029a3a22206fb5d/_/download/contextbatch/css/jira.browse.project,project.issue.navigator,jira.view.issue,jira.general,jira.global,atl.general,-_super/batch.css?agile_global_admin_condition=true&jag=true&jira.create.linked.issue=true&slack-enabled=true","startTime":174,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":174,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":181.79999995231628,"responseStart":0,"secureConnectionStart":0},{"duration":239.79999995231628,"initiatorType":"script","name":"https://jira.mariadb.org/s/fbf975c0cce4b1abf04784eeae9ba1f4-CDN/lu2bu7/820016/12ta74/0a8bac35585be7fc6c9cc5a0464cd4cf/_/download/contextbatch/js/_super/batch.js?locale=en","startTime":174.09999990463257,"connectEnd":189.79999995231628,"connectStart":189.79999995231628,"domainLookupEnd":189.79999995231628,"domainLookupStart":189.79999995231628,"fetchStart":174.09999990463257,"redirectEnd":0,"redirectStart":0,"requestStart":191.29999995231628,"responseEnd":413.89999985694885,"responseStart":208,"secureConnectionStart":189.79999995231628},{"duration":364.80000019073486,"initiatorType":"script","name":"https://jira.mariadb.org/s/099b33461394b8015fc36c0a4b96e19f-CDN/lu2bu7/820016/12ta74/8679b4946efa1a0bb029a3a22206fb5d/_/download/contextbatch/js/jira.browse.project,project.issue.navigator,jira.view.issue,jira.general,jira.global,atl.general,-_super/batch.js?agile_global_admin_condition=true&jag=true&jira.create.linked.issue=true&locale=en&slack-enabled=true","startTime":174.19999980926514,"connectEnd":174.19999980926514,"connectStart":174.19999980926514,"domainLookupEnd":174.19999980926514,"domainLookupStart":174.19999980926514,"fetchStart":174.19999980926514,"redirectEnd":0,"redirectStart":0,"requestStart":193.59999990463257,"responseEnd":539,"responseStart":221.79999995231628,"secureConnectionStart":174.19999980926514},{"duration":67,"initiatorType":"script","name":"https://jira.mariadb.org/s/d41d8cd98f00b204e9800998ecf8427e-CDN/lu2bu7/820016/12ta74/1.0/_/download/batch/jira.webresources:calendar-en/jira.webresources:calendar-en.js","startTime":174.29999995231628,"connectEnd":174.29999995231628,"connectStart":174.29999995231628,"domainLookupEnd":174.29999995231628,"domainLookupStart":174.29999995231628,"fetchStart":174.29999995231628,"redirectEnd":0,"redirectStart":0,"requestStart":194.09999990463257,"responseEnd":241.29999995231628,"responseStart":236.89999985694885,"secureConnectionStart":174.29999995231628},{"duration":67.39999985694885,"initiatorType":"script","name":"https://jira.mariadb.org/s/94c15bff32baef80f4096a08aceae8bc-CDN/lu2bu7/820016/12ta74/c92c0caa9a024ae85b0ebdbed7fb4bd7/_/download/contextbatch/js/atl.global,-_super/batch.js?locale=en","startTime":174.29999995231628,"connectEnd":174.29999995231628,"connectStart":174.29999995231628,"domainLookupEnd":174.29999995231628,"domainLookupStart":174.29999995231628,"fetchStart":174.29999995231628,"redirectEnd":0,"redirectStart":0,"requestStart":194,"responseEnd":241.69999980926514,"responseStart":238.29999995231628,"secureConnectionStart":174.29999995231628},{"duration":49.299999952316284,"initiatorType":"script","name":"https://jira.mariadb.org/s/d41d8cd98f00b204e9800998ecf8427e-CDN/lu2bu7/820016/12ta74/1.0/_/download/batch/jira.webresources:calendar-localisation-moment/jira.webresources:calendar-localisation-moment.js","startTime":174.5,"connectEnd":174.5,"connectStart":174.5,"domainLookupEnd":174.5,"domainLookupStart":174.5,"fetchStart":174.5,"redirectEnd":0,"redirectStart":0,"requestStart":194.79999995231628,"responseEnd":223.79999995231628,"responseStart":220.89999985694885,"secureConnectionStart":174.5},{"duration":17,"initiatorType":"link","name":"https://jira.mariadb.org/s/b04b06a02d1959df322d9cded3aeecc1-CDN/lu2bu7/820016/12ta74/a2ff6aa845ffc9a1d22fe23d9ee791fc/_/download/contextbatch/css/jira.global.look-and-feel,-_super/batch.css","startTime":174.59999990463257,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":174.59999990463257,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":191.59999990463257,"responseStart":0,"secureConnectionStart":0},{"duration":67.70000004768372,"initiatorType":"script","name":"https://jira.mariadb.org/rest/api/1.0/shortcuts/820016/47140b6e0a9bc2e4913da06536125810/shortcuts.js?context=issuenavigation&context=issueaction","startTime":174.69999980926514,"connectEnd":174.69999980926514,"connectStart":174.69999980926514,"domainLookupEnd":174.69999980926514,"domainLookupStart":174.69999980926514,"fetchStart":174.69999980926514,"redirectEnd":0,"redirectStart":0,"requestStart":195.19999980926514,"responseEnd":242.39999985694885,"responseStart":238.69999980926514,"secureConnectionStart":174.69999980926514},{"duration":18.700000047683716,"initiatorType":"link","name":"https://jira.mariadb.org/s/3ac36323ba5e4eb0af2aa7ac7211b4bb-CDN/lu2bu7/820016/12ta74/d176f0986478cc64f24226b3d20c140d/_/download/contextbatch/css/com.atlassian.jira.projects.sidebar.init,-_super,-project.issue.navigator,-jira.view.issue/batch.css?jira.create.linked.issue=true","startTime":174.79999995231628,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":174.79999995231628,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":193.5,"responseStart":0,"secureConnectionStart":0},{"duration":70,"initiatorType":"script","name":"https://jira.mariadb.org/s/3339d87fa2538a859872f2df449bf8d0-CDN/lu2bu7/820016/12ta74/d176f0986478cc64f24226b3d20c140d/_/download/contextbatch/js/com.atlassian.jira.projects.sidebar.init,-_super,-project.issue.navigator,-jira.view.issue/batch.js?jira.create.linked.issue=true&locale=en","startTime":174.79999995231628,"connectEnd":174.79999995231628,"connectStart":174.79999995231628,"domainLookupEnd":174.79999995231628,"domainLookupStart":174.79999995231628,"fetchStart":174.79999995231628,"redirectEnd":0,"redirectStart":0,"requestStart":195.69999980926514,"responseEnd":244.79999995231628,"responseStart":239.69999980926514,"secureConnectionStart":174.79999995231628},{"duration":316.5,"initiatorType":"script","name":"https://jira.mariadb.org/s/d41d8cd98f00b204e9800998ecf8427e-CDN/lu2bu7/820016/12ta74/1.0/_/download/batch/jira.webresources:bigpipe-js/jira.webresources:bigpipe-js.js","startTime":185,"connectEnd":185,"connectStart":185,"domainLookupEnd":185,"domainLookupStart":185,"fetchStart":185,"redirectEnd":0,"redirectStart":0,"requestStart":224,"responseEnd":501.5,"responseStart":495.69999980926514,"secureConnectionStart":185},{"duration":316.60000014305115,"initiatorType":"script","name":"https://jira.mariadb.org/s/d41d8cd98f00b204e9800998ecf8427e-CDN/lu2bu7/820016/12ta74/1.0/_/download/batch/jira.webresources:bigpipe-init/jira.webresources:bigpipe-init.js","startTime":185.19999980926514,"connectEnd":185.19999980926514,"connectStart":185.19999980926514,"domainLookupEnd":185.19999980926514,"domainLookupStart":185.19999980926514,"fetchStart":185.19999980926514,"redirectEnd":0,"redirectStart":0,"requestStart":227.19999980926514,"responseEnd":501.7999999523163,"responseStart":496.5,"secureConnectionStart":185.19999980926514},{"duration":95.29999995231628,"initiatorType":"xmlhttprequest","name":"https://jira.mariadb.org/rest/webResources/1.0/resources","startTime":569.5999999046326,"connectEnd":569.5999999046326,"connectStart":569.5999999046326,"domainLookupEnd":569.5999999046326,"domainLookupStart":569.5999999046326,"fetchStart":569.5999999046326,"redirectEnd":0,"redirectStart":0,"requestStart":630.6999998092651,"responseEnd":664.8999998569489,"responseStart":663.5,"secureConnectionStart":569.5999999046326},{"duration":146.29999995231628,"initiatorType":"script","name":"https://www.google-analytics.com/analytics.js","startTime":803.7999999523163,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":803.7999999523163,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":950.0999999046326,"responseStart":0,"secureConnectionStart":0},{"duration":178,"initiatorType":"xmlhttprequest","name":"https://jira.mariadb.org/rest/webResources/1.0/resources","startTime":810.3999998569489,"connectEnd":810.3999998569489,"connectStart":810.3999998569489,"domainLookupEnd":810.3999998569489,"domainLookupStart":810.3999998569489,"fetchStart":810.3999998569489,"redirectEnd":0,"redirectStart":0,"requestStart":951.6999998092651,"responseEnd":988.3999998569489,"responseStart":986.5,"secureConnectionStart":810.3999998569489}],"fetchStart":0,"domainLookupStart":0,"domainLookupEnd":0,"connectStart":0,"connectEnd":0,"requestStart":14,"responseStart":165,"responseEnd":184,"domLoading":169,"domInteractive":957,"domContentLoadedEventStart":957,"domContentLoadedEventEnd":1001,"domComplete":1617,"loadEventStart":1617,"loadEventEnd":1618,"userAgent":"Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)","marks":[{"name":"bigPipe.sidebar-id.start","time":935},{"name":"bigPipe.sidebar-id.end","time":935.7999999523163},{"name":"bigPipe.activity-panel-pipe-id.start","time":936},{"name":"bigPipe.activity-panel-pipe-id.end","time":937.5999999046326},{"name":"activityTabFullyLoaded","time":1020.5}],"measures":[],"correlationId":"9b0e7255e2eaaa","effectiveType":"4g","downlink":9.5,"rtt":0,"serverDuration":85,"dbReadsTimeInMs":9,"dbConnsTimeInMs":16,"applicationHash":"9d11dbea5f4be3d4cc21f03a88dd11d8c8687422","experiments":[]}}
Thanks for the feature requests. It would be quite helpful if different feature requests end up in different JIRA items. Can you edit this down to just the first feature, adjust the title (searchability helps) and put the other items in a separate ticket now.
Can you also include more information in the individually created tickets as to why and under what circumstances the feature is useful, and if other features/functions exist within the relm of the problem, why they aren't a sufficient solution.