The Spider storage engine provides two ways to specify remote data nodes. One is by the COMMENT clause and the other is by the CONNECTION clause (see below links for existing options). However, writing every specification in a single connection string is not very user-friendly.
We introduce new engine-defined attributes to specify remote data nodes. The engine attributes do not cover all the existing DSN parameters because most of the parameters need not be specified at the table level. So, we first introduce engine-defined attributes that correspond to essential parameters. If users complain that a parameter they need is missing, we can introduce it later.
I believe that the following attributes are enough:
engine-defined attribute
corresponding DNS parameter
REMOTE_SERVER
srv
REMOTE_DATABASE
database
REMOTE_TABLE
tbl
Writing a raw password in the COMMENT or engine-defined option is not preferable from the viewpoint of security because the password might be logged in slow log or general log. Therefore, we should encourage the use of the CREATE SERVER statement, and not introduce attributes such as REMOTE_USER and REMOTE_PASSWORD.
SSL-related parameters might be essential but I believe that they should be covered by CREATE SERVER statement rather than per-table or per-partition attributes.
If, for example, both COMMENT='table "t1"' and REMOTE_TABLE="t2" are specified for a single table or a single partition, the Spider returns an error.
OK to push. However, I am still running a generic crash test against the feature branch (including the MDEV-27521 patch). Results from that will be available around next week Wednesday.
Roel Van de Paar
added a comment - OK to push. However, I am still running a generic crash test against the feature branch (including the MDEV-27521 patch). Results from that will be available around next week Wednesday.
From the same run, logged MDEV-27575 SIGSEGV in intern_plugin_lock on SHUTDOWN when setting Spider as default storage engine (temporary or global)
Roel Van de Paar
added a comment - - edited From the same run, logged MDEV-27575 SIGSEGV in intern_plugin_lock on SHUTDOWN when setting Spider as default storage engine (temporary or global)
Roel Van de Paar
added a comment - - edited Logged MDEV-27676 Assertion `str.alloced_length() >= str.length() + data_len' failed in spider_string::q_append
Hi greenman, how much work do you think is needed to document the nice feature introduced in this ticket in the KB?
Yuchen Pei
added a comment - - edited Hi greenman , how much work do you think is needed to document the nice feature introduced in this ticket in the KB?
Yuchen Pei
added a comment - > Hi Ian Gilfillan, how much work do you think is needed to document the nice feature introduced in this ticket in the KB?
I added to the kb two weeks ago: https://mariadb.com/kb/en/spider-storage-engine-overview/#basic-usage
People
Nayuta Yanagisawa (Inactive)
Geoff Montee (Inactive)
Votes:
0Vote for this issue
Watchers:
10Start watching this issue
Dates
Created:
Updated:
Resolved:
Git Integration
Error rendering 'com.xiplink.jira.git.jira_git_plugin:git-issue-webpanel'. Please contact your Jira administrators.
{"report":{"fcp":1232,"ttfb":487.10000014305115,"pageVisibility":"visible","entityId":86852,"key":"jira.project.issue.view-issue","isInitial":true,"threshold":1000,"elementTimings":{},"userDeviceMemory":8,"userDeviceProcessors":64,"apdex":0.5,"journeyId":"09933c64-49ac-48fd-a88d-9f97f50e231c","navigationType":0,"readyForUser":1321.4000000953674,"redirectCount":0,"resourceLoadedEnd":1821.6000001430511,"resourceLoadedStart":495.40000009536743,"resourceTiming":[{"duration":215.79999995231628,"initiatorType":"link","name":"https://jira.mariadb.org/s/2c21342762a6a02add1c328bed317ffd-CDN/lu2cib/820016/12ta74/0a8bac35585be7fc6c9cc5a0464cd4cf/_/download/contextbatch/css/_super/batch.css","startTime":495.40000009536743,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":495.40000009536743,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":711.2000000476837,"responseStart":0,"secureConnectionStart":0},{"duration":216.39999985694885,"initiatorType":"link","name":"https://jira.mariadb.org/s/7ebd35e77e471bc30ff0eba799ebc151-CDN/lu2cib/820016/12ta74/494e4c556ecbb29f90a3d3b4f09cb99c/_/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&whisper-enabled=true","startTime":495.60000014305115,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":495.60000014305115,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":712,"responseStart":0,"secureConnectionStart":0},{"duration":273.89999985694885,"initiatorType":"script","name":"https://jira.mariadb.org/s/0917945aaa57108d00c5076fea35e069-CDN/lu2cib/820016/12ta74/0a8bac35585be7fc6c9cc5a0464cd4cf/_/download/contextbatch/js/_super/batch.js?locale=en","startTime":495.90000009536743,"connectEnd":495.90000009536743,"connectStart":495.90000009536743,"domainLookupEnd":495.90000009536743,"domainLookupStart":495.90000009536743,"fetchStart":495.90000009536743,"redirectEnd":0,"redirectStart":0,"requestStart":495.90000009536743,"responseEnd":769.7999999523163,"responseStart":769.7999999523163,"secureConnectionStart":495.90000009536743},{"duration":367.7999999523163,"initiatorType":"script","name":"https://jira.mariadb.org/s/2d8175ec2fa4c816e8023260bd8c1786-CDN/lu2cib/820016/12ta74/494e4c556ecbb29f90a3d3b4f09cb99c/_/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&whisper-enabled=true","startTime":496,"connectEnd":496,"connectStart":496,"domainLookupEnd":496,"domainLookupStart":496,"fetchStart":496,"redirectEnd":0,"redirectStart":0,"requestStart":496,"responseEnd":863.7999999523163,"responseStart":863.7999999523163,"secureConnectionStart":496},{"duration":371.39999985694885,"initiatorType":"script","name":"https://jira.mariadb.org/s/a9324d6758d385eb45c462685ad88f1d-CDN/lu2cib/820016/12ta74/c92c0caa9a024ae85b0ebdbed7fb4bd7/_/download/contextbatch/js/atl.global,-_super/batch.js?locale=en","startTime":496.40000009536743,"connectEnd":496.40000009536743,"connectStart":496.40000009536743,"domainLookupEnd":496.40000009536743,"domainLookupStart":496.40000009536743,"fetchStart":496.40000009536743,"redirectEnd":0,"redirectStart":0,"requestStart":496.40000009536743,"responseEnd":867.7999999523163,"responseStart":867.7999999523163,"secureConnectionStart":496.40000009536743},{"duration":371.90000009536743,"initiatorType":"script","name":"https://jira.mariadb.org/s/d41d8cd98f00b204e9800998ecf8427e-CDN/lu2cib/820016/12ta74/1.0/_/download/batch/jira.webresources:calendar-en/jira.webresources:calendar-en.js","startTime":496.5,"connectEnd":496.5,"connectStart":496.5,"domainLookupEnd":496.5,"domainLookupStart":496.5,"fetchStart":496.5,"redirectEnd":0,"redirectStart":0,"requestStart":496.5,"responseEnd":868.4000000953674,"responseStart":868.4000000953674,"secureConnectionStart":496.5},{"duration":372.09999990463257,"initiatorType":"script","name":"https://jira.mariadb.org/s/d41d8cd98f00b204e9800998ecf8427e-CDN/lu2cib/820016/12ta74/1.0/_/download/batch/jira.webresources:calendar-localisation-moment/jira.webresources:calendar-localisation-moment.js","startTime":496.7000000476837,"connectEnd":496.7000000476837,"connectStart":496.7000000476837,"domainLookupEnd":496.7000000476837,"domainLookupStart":496.7000000476837,"fetchStart":496.7000000476837,"redirectEnd":0,"redirectStart":0,"requestStart":496.7000000476837,"responseEnd":868.7999999523163,"responseStart":868.7999999523163,"secureConnectionStart":496.7000000476837},{"duration":417.2000000476837,"initiatorType":"link","name":"https://jira.mariadb.org/s/b04b06a02d1959df322d9cded3aeecc1-CDN/lu2cib/820016/12ta74/a2ff6aa845ffc9a1d22fe23d9ee791fc/_/download/contextbatch/css/jira.global.look-and-feel,-_super/batch.css","startTime":496.90000009536743,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":496.90000009536743,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":914.1000001430511,"responseStart":0,"secureConnectionStart":0},{"duration":372.09999990463257,"initiatorType":"script","name":"https://jira.mariadb.org/rest/api/1.0/shortcuts/820016/47140b6e0a9bc2e4913da06536125810/shortcuts.js?context=issuenavigation&context=issueaction","startTime":497.10000014305115,"connectEnd":497.10000014305115,"connectStart":497.10000014305115,"domainLookupEnd":497.10000014305115,"domainLookupStart":497.10000014305115,"fetchStart":497.10000014305115,"redirectEnd":0,"redirectStart":0,"requestStart":497.10000014305115,"responseEnd":869.2000000476837,"responseStart":869.2000000476837,"secureConnectionStart":497.10000014305115},{"duration":417,"initiatorType":"link","name":"https://jira.mariadb.org/s/3ac36323ba5e4eb0af2aa7ac7211b4bb-CDN/lu2cib/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":497.2000000476837,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":497.2000000476837,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":914.2000000476837,"responseStart":0,"secureConnectionStart":0},{"duration":372.59999990463257,"initiatorType":"script","name":"https://jira.mariadb.org/s/5d5e8fe91fbc506585e83ea3b62ccc4b-CDN/lu2cib/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":497.40000009536743,"connectEnd":497.40000009536743,"connectStart":497.40000009536743,"domainLookupEnd":497.40000009536743,"domainLookupStart":497.40000009536743,"fetchStart":497.40000009536743,"redirectEnd":0,"redirectStart":0,"requestStart":497.40000009536743,"responseEnd":870,"responseStart":870,"secureConnectionStart":497.40000009536743},{"duration":862.5,"initiatorType":"script","name":"https://jira.mariadb.org/s/d41d8cd98f00b204e9800998ecf8427e-CDN/lu2cib/820016/12ta74/1.0/_/download/batch/jira.webresources:bigpipe-js/jira.webresources:bigpipe-js.js","startTime":499.2999999523163,"connectEnd":499.2999999523163,"connectStart":499.2999999523163,"domainLookupEnd":499.2999999523163,"domainLookupStart":499.2999999523163,"fetchStart":499.2999999523163,"redirectEnd":0,"redirectStart":0,"requestStart":499.2999999523163,"responseEnd":1361.7999999523163,"responseStart":1361.7999999523163,"secureConnectionStart":499.2999999523163},{"duration":1322.2000000476837,"initiatorType":"script","name":"https://jira.mariadb.org/s/d41d8cd98f00b204e9800998ecf8427e-CDN/lu2cib/820016/12ta74/1.0/_/download/batch/jira.webresources:bigpipe-init/jira.webresources:bigpipe-init.js","startTime":499.40000009536743,"connectEnd":499.40000009536743,"connectStart":499.40000009536743,"domainLookupEnd":499.40000009536743,"domainLookupStart":499.40000009536743,"fetchStart":499.40000009536743,"redirectEnd":0,"redirectStart":0,"requestStart":499.40000009536743,"responseEnd":1821.6000001430511,"responseStart":1821.6000001430511,"secureConnectionStart":499.40000009536743},{"duration":440.2000000476837,"initiatorType":"xmlhttprequest","name":"https://jira.mariadb.org/rest/webResources/1.0/resources","startTime":927,"connectEnd":927,"connectStart":927,"domainLookupEnd":927,"domainLookupStart":927,"fetchStart":927,"redirectEnd":0,"redirectStart":0,"requestStart":927,"responseEnd":1367.2000000476837,"responseStart":1367.2000000476837,"secureConnectionStart":927},{"duration":619.2000000476837,"initiatorType":"script","name":"https://www.google-analytics.com/analytics.js","startTime":1226,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":1226,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":1845.2000000476837,"responseStart":0,"secureConnectionStart":0}],"fetchStart":0,"domainLookupStart":0,"domainLookupEnd":0,"connectStart":0,"connectEnd":0,"requestStart":292,"responseStart":487,"responseEnd":492,"domLoading":492,"domInteractive":1869,"domContentLoadedEventStart":1869,"domContentLoadedEventEnd":1915,"domComplete":2857,"loadEventStart":2857,"loadEventEnd":2858,"userAgent":"Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)","marks":[{"name":"bigPipe.sidebar-id.start","time":1828.1000001430511},{"name":"bigPipe.sidebar-id.end","time":1828.9000000953674},{"name":"bigPipe.activity-panel-pipe-id.start","time":1829.1000001430511},{"name":"bigPipe.activity-panel-pipe-id.end","time":1830.7000000476837},{"name":"activityTabFullyLoaded","time":1933.2000000476837}],"measures":[],"correlationId":"57216637b42374","effectiveType":"4g","downlink":10,"rtt":0,"serverDuration":131,"dbReadsTimeInMs":27,"dbConnsTimeInMs":38,"applicationHash":"9d11dbea5f4be3d4cc21f03a88dd11d8c8687422","experiments":[]}}
OK to push. However, I am still running a generic crash test against the feature branch (including the
MDEV-27521patch). Results from that will be available around next week Wednesday.