I use a bi-temp table (application time period and system time versioning) with an autoincrement id. If I update a record with "FOR PORTION OF" the part of id in primary key changes automatically. I think, this isn't correct. The id expresses the associated business fact.
Example and reproduction:
Starting Position:
Create the table:
CREATE TABLE `t1` (
|
`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
|
`price_for` varchar(100) DEFAULT NULL,
|
`price` integer DEFAULT NULL,
|
`date_1` date NOT NULL,
|
`date_2` date NOT NULL,
|
`row_start` timestamp(6) GENERATED ALWAYS AS ROW START,
|
`row_end` timestamp(6) GENERATED ALWAYS AS ROW END,
|
PRIMARY KEY (`id`,`date_2`,`row_start`,`row_end`),
|
PERIOD FOR SYSTEM_TIME (`row_start`, `row_end`),
|
PERIOD FOR `application_time` (`date_1`, `date_2`)
|
) WITH SYSTEM VERSIONING
|
Enter one record, result

Behaviour of using FOR PORTION OF:
Update query:
update t1 for portion of application_time
|
from '2021-04-01' to '9999-12-31'
|
set id=1, price = 6000
|
where id=1
|
Given result:

Line 1 is old versiones record as expected. Line 3 is new price record under id = 1 valid from 2021-04-01 as expected. But the old price which was valid between 2021-01-01 and 2021-04-01 has been stored automatically under id = 2 instead of id = 1 (it's still the price for procuct 1)
Think what would happen if this table had a related child table. The fk reference is broken.
Expected result:
Query to produce it manually:
update t2
|
set id = 1, date_2 = '2021-04-01'
|
where id = 1;
|
|
insert into t2 (id, date_1, date_2, price_for, price)
|
values (1, '2021-04-01', '9999-12-31', 'Product 1', 6000);
|
expected result:

Now, the same business fact has a correct application time line and the change is versioned correctly.
- relates to
-
MDEV-33346
Improve application-time periods documentation
-
-
Open
{"report":{"fcp":1256.5999999046326,"ttfb":233.89999985694885,"pageVisibility":"visible","entityId":98623,"key":"jira.project.issue.view-issue","isInitial":true,"threshold":1000,"elementTimings":{},"userDeviceMemory":8,"userDeviceProcessors":64,"apdex":0.5,"journeyId":"08f161e7-473c-47c9-834a-828610d42ad0","navigationType":0,"readyForUser":1360.0999999046326,"redirectCount":0,"resourceLoadedEnd":1756.8999998569489,"resourceLoadedStart":239.69999980926514,"resourceTiming":[{"duration":472.80000019073486,"initiatorType":"link","name":"https://jira.mariadb.org/s/2c21342762a6a02add1c328bed317ffd-CDN/lu2cib/820016/12ta74/0a8bac35585be7fc6c9cc5a0464cd4cf/_/download/contextbatch/css/_super/batch.css","startTime":239.69999980926514,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":239.69999980926514,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":712.5,"responseStart":0,"secureConnectionStart":0},{"duration":472.90000009536743,"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":240.09999990463257,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":240.09999990463257,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":713,"responseStart":0,"secureConnectionStart":0},{"duration":483.2000000476837,"initiatorType":"script","name":"https://jira.mariadb.org/s/0917945aaa57108d00c5076fea35e069-CDN/lu2cib/820016/12ta74/0a8bac35585be7fc6c9cc5a0464cd4cf/_/download/contextbatch/js/_super/batch.js?locale=en","startTime":240.19999980926514,"connectEnd":240.19999980926514,"connectStart":240.19999980926514,"domainLookupEnd":240.19999980926514,"domainLookupStart":240.19999980926514,"fetchStart":240.19999980926514,"redirectEnd":0,"redirectStart":0,"requestStart":240.19999980926514,"responseEnd":723.3999998569489,"responseStart":723.3999998569489,"secureConnectionStart":240.19999980926514},{"duration":554.2999999523163,"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":240.39999985694885,"connectEnd":240.39999985694885,"connectStart":240.39999985694885,"domainLookupEnd":240.39999985694885,"domainLookupStart":240.39999985694885,"fetchStart":240.39999985694885,"redirectEnd":0,"redirectStart":0,"requestStart":240.39999985694885,"responseEnd":794.6999998092651,"responseStart":794.6999998092651,"secureConnectionStart":240.39999985694885},{"duration":557.2000000476837,"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":240.69999980926514,"connectEnd":240.69999980926514,"connectStart":240.69999980926514,"domainLookupEnd":240.69999980926514,"domainLookupStart":240.69999980926514,"fetchStart":240.69999980926514,"redirectEnd":0,"redirectStart":0,"requestStart":240.69999980926514,"responseEnd":797.8999998569489,"responseStart":797.8999998569489,"secureConnectionStart":240.69999980926514},{"duration":557.5,"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":240.89999985694885,"connectEnd":240.89999985694885,"connectStart":240.89999985694885,"domainLookupEnd":240.89999985694885,"domainLookupStart":240.89999985694885,"fetchStart":240.89999985694885,"redirectEnd":0,"redirectStart":0,"requestStart":240.89999985694885,"responseEnd":798.3999998569489,"responseStart":798.3999998569489,"secureConnectionStart":240.89999985694885},{"duration":557.7999999523163,"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":241,"connectEnd":241,"connectStart":241,"domainLookupEnd":241,"domainLookupStart":241,"fetchStart":241,"redirectEnd":0,"redirectStart":0,"requestStart":241,"responseEnd":798.7999999523163,"responseStart":798.7999999523163,"secureConnectionStart":241},{"duration":638.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":241.19999980926514,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":241.19999980926514,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":879.3999998569489,"responseStart":0,"secureConnectionStart":0},{"duration":558.2999999523163,"initiatorType":"script","name":"https://jira.mariadb.org/rest/api/1.0/shortcuts/820016/47140b6e0a9bc2e4913da06536125810/shortcuts.js?context=issuenavigation&context=issueaction","startTime":241.39999985694885,"connectEnd":241.39999985694885,"connectStart":241.39999985694885,"domainLookupEnd":241.39999985694885,"domainLookupStart":241.39999985694885,"fetchStart":241.39999985694885,"redirectEnd":0,"redirectStart":0,"requestStart":241.39999985694885,"responseEnd":799.6999998092651,"responseStart":799.6999998092651,"secureConnectionStart":241.39999985694885},{"duration":637.8999998569489,"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":241.5,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":241.5,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":879.3999998569489,"responseStart":0,"secureConnectionStart":0},{"duration":558.6000001430511,"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":241.69999980926514,"connectEnd":241.69999980926514,"connectStart":241.69999980926514,"domainLookupEnd":241.69999980926514,"domainLookupStart":241.69999980926514,"fetchStart":241.69999980926514,"redirectEnd":0,"redirectStart":0,"requestStart":241.69999980926514,"responseEnd":800.2999999523163,"responseStart":800.2999999523163,"secureConnectionStart":241.69999980926514},{"duration":1054.7000000476837,"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":247.59999990463257,"connectEnd":247.59999990463257,"connectStart":247.59999990463257,"domainLookupEnd":247.59999990463257,"domainLookupStart":247.59999990463257,"fetchStart":247.59999990463257,"redirectEnd":0,"redirectStart":0,"requestStart":247.59999990463257,"responseEnd":1302.2999999523163,"responseStart":1302.2999999523163,"secureConnectionStart":247.59999990463257},{"duration":1499.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":250.69999980926514,"connectEnd":250.69999980926514,"connectStart":250.69999980926514,"domainLookupEnd":250.69999980926514,"domainLookupStart":250.69999980926514,"fetchStart":250.69999980926514,"redirectEnd":0,"redirectStart":0,"requestStart":250.69999980926514,"responseEnd":1749.8999998569489,"responseStart":1749.8999998569489,"secureConnectionStart":250.69999980926514},{"duration":54,"initiatorType":"xmlhttprequest","name":"https://jira.mariadb.org/rest/webResources/1.0/resources","startTime":895.3999998569489,"connectEnd":895.3999998569489,"connectStart":895.3999998569489,"domainLookupEnd":895.3999998569489,"domainLookupStart":895.3999998569489,"fetchStart":895.3999998569489,"redirectEnd":0,"redirectStart":0,"requestStart":895.3999998569489,"responseEnd":949.3999998569489,"responseStart":949.3999998569489,"secureConnectionStart":895.3999998569489},{"duration":467.5,"initiatorType":"link","name":"https://jira.mariadb.org/s/d5715adaadd168a9002b108b2b039b50-CDN/lu2cib/820016/12ta74/be4b45e9cec53099498fa61c8b7acba4/_/download/contextbatch/css/jira.project.sidebar,-_super,-project.issue.navigator,-jira.general,-jira.browse.project,-jira.view.issue,-jira.global,-atl.general,-com.atlassian.jira.projects.sidebar.init/batch.css?agile_global_admin_condition=true&jag=true&jira.create.linked.issue=true&slack-enabled=true&whisper-enabled=true","startTime":970.8999998569489,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":970.8999998569489,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":1438.3999998569489,"responseStart":0,"secureConnectionStart":0},{"duration":778.7999999523163,"initiatorType":"script","name":"https://jira.mariadb.org/s/d41d8cd98f00b204e9800998ecf8427e-CDN/lu2cib/820016/12ta74/e65b778d185daf5aee24936755b43da6/_/download/contextbatch/js/browser-metrics-plugin.contrib,-_super,-project.issue.navigator,-jira.view.issue,-atl.general/batch.js?agile_global_admin_condition=true&jag=true&jira.create.linked.issue=true&slack-enabled=true&whisper-enabled=true","startTime":972,"connectEnd":972,"connectStart":972,"domainLookupEnd":972,"domainLookupStart":972,"fetchStart":972,"redirectEnd":0,"redirectStart":0,"requestStart":972,"responseEnd":1750.7999999523163,"responseStart":1750.7999999523163,"secureConnectionStart":972},{"duration":784.3999998569489,"initiatorType":"script","name":"https://jira.mariadb.org/s/097ae97cb8fbec7d6ea4bbb1f26955b9-CDN/lu2cib/820016/12ta74/be4b45e9cec53099498fa61c8b7acba4/_/download/contextbatch/js/jira.project.sidebar,-_super,-project.issue.navigator,-jira.general,-jira.browse.project,-jira.view.issue,-jira.global,-atl.general,-com.atlassian.jira.projects.sidebar.init/batch.js?agile_global_admin_condition=true&jag=true&jira.create.linked.issue=true&locale=en&slack-enabled=true&whisper-enabled=true","startTime":972.5,"connectEnd":972.5,"connectStart":972.5,"domainLookupEnd":972.5,"domainLookupStart":972.5,"fetchStart":972.5,"redirectEnd":0,"redirectStart":0,"requestStart":972.5,"responseEnd":1756.8999998569489,"responseStart":1756.8999998569489,"secureConnectionStart":972.5},{"duration":530.5999999046326,"initiatorType":"script","name":"https://www.google-analytics.com/analytics.js","startTime":1240.7999999523163,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":1240.7999999523163,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":1771.3999998569489,"responseStart":0,"secureConnectionStart":0}],"fetchStart":0,"domainLookupStart":0,"domainLookupEnd":0,"connectStart":0,"connectEnd":0,"requestStart":73,"responseStart":234,"responseEnd":251,"domLoading":238,"domInteractive":1779,"domContentLoadedEventStart":1779,"domContentLoadedEventEnd":1834,"domComplete":2847,"loadEventStart":2847,"loadEventEnd":2847,"userAgent":"Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)","marks":[{"name":"bigPipe.sidebar-id.start","time":1755},{"name":"bigPipe.sidebar-id.end","time":1755.8999998569489},{"name":"bigPipe.activity-panel-pipe-id.start","time":1756},{"name":"bigPipe.activity-panel-pipe-id.end","time":1757.5999999046326},{"name":"activityTabFullyLoaded","time":1859.3999998569489}],"measures":[],"correlationId":"d84ef60622c3","effectiveType":"4g","downlink":9.3,"rtt":0,"serverDuration":100,"dbReadsTimeInMs":11,"dbConnsTimeInMs":21,"applicationHash":"9d11dbea5f4be3d4cc21f03a88dd11d8c8687422","experiments":[]}}
You're right that the standard says "statement should contain a DEFAULT value for the identity column", for the reference, it's in SQL:2016, Part 2, 15.13 Effect of replacing rows in base tables, paragraph 10) b) i)
But there's no concept of "IDENTITY WITHOUT OVERLAPS" in the standard, this is our extension and we can define its behavior as we want. So, fine, let's try to make it to keep old values when a row is split.