luozihen commented on issue #11878:
URL: https://github.com/apache/seatunnel/issues/11878#issuecomment-5390117765
@SEZ9
<html>
<body>
<!--StartFragment--><p class="ds-markdown-paragraph" style="margin: 16px
0px; color: rgb(15, 17, 21); font-family: quote-cjk-patch, Inter, system-ui,
-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen,
Ubuntu, Cantarell, "Open Sans", "Helvetica Neue",
sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures:
normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal;
orphans: 2; text-align: start; text-indent: 0px; text-transform: none; widows:
2; word-spacing: 0px; -webkit-text-stroke-width: 0px; white-space: normal;
background-color: rgb(255, 255, 255); text-decoration-thickness: initial;
text-decoration-style: initial; text-decoration-color: initial;"><span
class="">Thank you for your thoughtful suggestions. Below I address each point
in turn.</span></p><hr style="background: none 0% 0% / auto repeat scroll
padding-box border-box rgba(0, 0, 0, 0.1); border-width: medium; border-style:
none; border-color: c
urrentcolor; border-image: none; height: 1px; margin: 32px 0px; display:
block; font-family: quote-cjk-patch, Inter, system-ui, -apple-system,
BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell,
"Open Sans", "Helvetica Neue", sans-serif; font-size: 16px;
font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal;
font-weight: 400; letter-spacing: normal; orphans: 2; text-align: start;
text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px;
-webkit-text-stroke-width: 0px; white-space: normal; text-decoration-thickness:
initial; text-decoration-style: initial; text-decoration-color: initial;"><p
class="ds-markdown-paragraph" style="margin: 16px 0px; color: rgb(15, 17, 21);
font-family: quote-cjk-patch, Inter, system-ui, -apple-system,
BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell,
"Open Sans", "Helvetica Neue", sans-serif; font-size: 16px;
font-style: normal;
font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400;
letter-spacing: normal; orphans: 2; text-align: start; text-indent: 0px;
text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width:
0px; white-space: normal; background-color: rgb(255, 255, 255);
text-decoration-thickness: initial; text-decoration-style: initial;
text-decoration-color: initial;"><strong style="font-weight: 600;"><span
class="">1. Example 2 apparently truncated</span></strong></p><p
class="ds-markdown-paragraph" style="margin: 16px 0px; color: rgb(15, 17, 21);
font-family: quote-cjk-patch, Inter, system-ui, -apple-system,
BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell,
"Open Sans", "Helvetica Neue", sans-serif; font-size: 16px;
font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal;
font-weight: 400; letter-spacing: normal; orphans: 2; text-align: start;
text-indent: 0px; text-transform: none; widows
: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; white-space: normal;
background-color: rgb(255, 255, 255); text-decoration-thickness: initial;
text-decoration-style: initial; text-decoration-color: initial;"><span
class="">The configuration shown in Example 2 is actually complete – it is not
truncated. I deliberately kept it that way to illustrate the fallback
behaviour: tables that do<span> </span></span><strong style="font-weight:
600;"><span class="">not</span></strong><span class=""><span> </span>have an
entry in<span> </span></span><code style="box-sizing: border-box; font-style:
normal; font-variant: normal; font-weight: 400; font-stretch: 100%;
line-height: 22px; font-optical-sizing: auto; font-size-adjust: none;
font-kerning: auto; font-feature-settings: normal; font-variation-settings:
normal; font-language-override: normal; font-family: Menlo, Monaco, Consolas,
"Cascadia Mono", "Ubuntu Mono", "DejaVu Sans
Mono", "Liberation
Mono", "JetBrains Mono", "Fira Code", Cousine,
"Roboto Mono", "Courier New", Courier, sans-serif,
system-ui; background-color: rgb(235, 238, 242); border-radius: 6px;
align-items: center; padding: 0px 5px; display: inline-flex; font-size: 0.875em
!important;">multi_table_config</code><span class=""><span> </span>will
automatically fall back to the existing<span> </span></span><code
style="box-sizing: border-box; font-style: normal; font-variant: normal;
font-weight: 400; font-stretch: 100%; line-height: 22px; font-optical-sizing:
auto; font-size-adjust: none; font-kerning: auto; font-feature-settings:
normal; font-variation-settings: normal; font-language-override: normal;
font-family: Menlo, Monaco, Consolas, "Cascadia Mono", "Ubuntu
Mono", "DejaVu Sans Mono", "Liberation Mono",
"JetBrains Mono", "Fira Code", Cousine, "Roboto
Mono", "Courier New", Courier,
sans-serif, system-ui; background-color: rgb(235, 238, 242); border-radius:
6px; align-items: center; padding: 0px 5px; display: inline-flex; font-size:
0.875em !important;">primary_keys</code><span class=""><span>
</span>logic.</span></p><p class="ds-markdown-paragraph" style="margin: 16px
0px; color: rgb(15, 17, 21); font-family: quote-cjk-patch, Inter, system-ui,
-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen,
Ubuntu, Cantarell, "Open Sans", "Helvetica Neue",
sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures:
normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal;
orphans: 2; text-align: start; text-indent: 0px; text-transform: none; widows:
2; word-spacing: 0px; -webkit-text-stroke-width: 0px; white-space: normal;
background-color: rgb(255, 255, 255); text-decoration-thickness: initial;
text-decoration-style: initial; text-decoration-color: initial;"><span
class="">To make the change in pri
mary keys clearer, here is a side‑by‑side comparison of the source and target
tables (same table name for easy reference):</span></p><div
class="ds-scroll-area ds-scroll-area--show-on-focus-within
ds-scroll-area--enabled _1210dd7 c03cafe9"
style="--dsl-scroll-area-gutters-disappear-delay: 1s; z-index: 0; position:
relative; overflow: auto; scrollbar-width: none; --padding-left: calc(( 1872px
- (840px - 2 * 44px) ) / 2 + (840px - 2 * 44px - 100%)); --padding-right: 54px;
width: calc(100% + 506px); padding-left: calc(-100% + 1312px); padding-right:
54px; margin-left: calc(100% - 1312px); color: rgb(15, 17, 21); font-family:
quote-cjk-patch, Inter, system-ui, -apple-system, BlinkMacSystemFont,
"Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Open Sans",
"Helvetica Neue", sans-serif; font-size: 16px; font-style: normal;
font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400;
letter-spacing: normal; orphans: 2; text-align: start; text
-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px;
-webkit-text-stroke-width: 0px; white-space: normal; background-color: rgb(255,
255, 255); text-decoration-thickness: initial; text-decoration-style: initial;
text-decoration-color: initial; --container-height: 185px;"><div
class="ds-scroll-area__gutters" style="--dsl-scroll-area-scrollbar-bg: #e5e5e5;
--dsl-scroll-area-scrollbar-hover: #d4d4d4; pointer-events: none; z-index:
1000; transition: opacity 0.1s ease-out 1s; opacity: 1 !important; display:
block; --container-height: 185px; position: sticky; top: 0px; left: 0px; right:
0px; width: 1258.02px; height: 0px;"><div
class="ds-scroll-area__horizontal-gutter" style="position: absolute; left: 0px;
right: 0px; display: block; top: 171px; height: 8px;"></div><div
class="ds-scroll-area__vertical-gutter" style="position: absolute; right: 3px;
top: 3px; bottom: -182px; width: 8px;"></div></div>
Table name | Source PK | Source UK | Target PK | Target UK
-- | -- | -- | -- | --
t_nova_merchant_info | id | merchant_id | merchant_id | –
t_tyuen_txn_ext | id | id_txn_ctrl | id_txn_ctrl, data_source | –
t_nova_merge_settle_serial | id | – | id, data_source | –
</div><p class="ds-markdown-paragraph" style="margin: 16px 0px; color:
rgb(15, 17, 21); font-family: quote-cjk-patch, Inter, system-ui, -apple-system,
BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell,
"Open Sans", "Helvetica Neue", sans-serif; font-size: 16px;
font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal;
font-weight: 400; letter-spacing: normal; orphans: 2; text-align: start;
text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px;
-webkit-text-stroke-width: 0px; white-space: normal; background-color: rgb(255,
255, 255); text-decoration-thickness: initial; text-decoration-style: initial;
text-decoration-color: initial;"><span class="">(For<span> </span></span><code
style="box-sizing: border-box; font-style: normal; font-variant: normal;
font-weight: 400; font-stretch: 100%; line-height: 22px; font-optical-sizing:
auto; font-size-adjust: none; font-kerning: auto; font-feature-settings: no
rmal; font-variation-settings: normal; font-language-override: normal;
font-family: Menlo, Monaco, Consolas, "Cascadia Mono", "Ubuntu
Mono", "DejaVu Sans Mono", "Liberation Mono",
"JetBrains Mono", "Fira Code", Cousine, "Roboto
Mono", "Courier New", Courier, sans-serif, system-ui;
background-color: rgb(235, 238, 242); border-radius: 6px; align-items: center;
padding: 0px 5px; display: inline-flex; font-size: 0.875em
!important;">t_nova_merge_settle_serial</code><span class="">, the source has
no unique key, so the target uses<span> </span></span><code style="box-sizing:
border-box; font-style: normal; font-variant: normal; font-weight: 400;
font-stretch: 100%; line-height: 22px; font-optical-sizing: auto;
font-size-adjust: none; font-kerning: auto; font-feature-settings: normal;
font-variation-settings: normal; font-language-override: normal; font-family:
Menlo, Monaco, Consolas, "Cascadia Mono&quo
t;, "Ubuntu Mono", "DejaVu Sans Mono", "Liberation
Mono", "JetBrains Mono", "Fira Code", Cousine,
"Roboto Mono", "Courier New", Courier, sans-serif,
system-ui; background-color: rgb(235, 238, 242); border-radius: 6px;
align-items: center; padding: 0px 5px; display: inline-flex; font-size: 0.875em
!important;">id, data_source</code><span class=""><span> </span>as the
composite PK.)</span></p><hr style="background: none 0% 0% / auto repeat scroll
padding-box border-box rgba(0, 0, 0, 0.1); border-width: medium; border-style:
none; border-color: currentcolor; border-image: none; height: 1px; margin: 32px
0px; display: block; font-family: quote-cjk-patch, Inter, system-ui,
-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen,
Ubuntu, Cantarell, "Open Sans", "Helvetica Neue",
sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures:
normal; font-variant-caps: normal
; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: start;
text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px;
-webkit-text-stroke-width: 0px; white-space: normal; text-decoration-thickness:
initial; text-decoration-style: initial; text-decoration-color: initial;"><p
class="ds-markdown-paragraph" style="margin: 16px 0px; color: rgb(15, 17, 21);
font-family: quote-cjk-patch, Inter, system-ui, -apple-system,
BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell,
"Open Sans", "Helvetica Neue", sans-serif; font-size: 16px;
font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal;
font-weight: 400; letter-spacing: normal; orphans: 2; text-align: start;
text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px;
-webkit-text-stroke-width: 0px; white-space: normal; background-color: rgb(255,
255, 255); text-decoration-thickness: initial; text-decoration-style: initial;
text-decoration
-color: initial;"><strong style="font-weight: 600;"><span class="">2. Regex
matching semantics</span></strong></p><p class="ds-markdown-paragraph"
style="margin: 16px 0px; color: rgb(15, 17, 21); font-family: quote-cjk-patch,
Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI",
Roboto, Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica
Neue", sans-serif; font-size: 16px; font-style: normal;
font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400;
letter-spacing: normal; orphans: 2; text-align: start; text-indent: 0px;
text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width:
0px; white-space: normal; background-color: rgb(255, 255, 255);
text-decoration-thickness: initial; text-decoration-style: initial;
text-decoration-color: initial;"><span class="">My plan is to evaluate the
patterns<span> </span></span><strong style="font-weight: 600;"><span
class="">in the order they are defined</span></strong><
span class=""><span> </span>– the first matching pattern is applied. Of
course, in practice, one should avoid overlapping patterns for the same table;
we will highlight this in the documentation with a clear warning.</span></p><p
class="ds-markdown-paragraph" style="margin: 16px 0px; color: rgb(15, 17, 21);
font-family: quote-cjk-patch, Inter, system-ui, -apple-system,
BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell,
"Open Sans", "Helvetica Neue", sans-serif; font-size: 16px;
font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal;
font-weight: 400; letter-spacing: normal; orphans: 2; text-align: start;
text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px;
-webkit-text-stroke-width: 0px; white-space: normal; background-color: rgb(255,
255, 255); text-decoration-thickness: initial; text-decoration-style: initial;
text-decoration-color: initial;"><span class="">If a table does<span>
</span></span
><strong style="font-weight: 600;"><span class="">not</span></strong><span
>class=""><span> </span>match any pattern, it falls back to the legacy<span>
></span></span><code style="box-sizing: border-box; font-style: normal;
>font-variant: normal; font-weight: 400; font-stretch: 100%; line-height:
>22px; font-optical-sizing: auto; font-size-adjust: none; font-kerning: auto;
>font-feature-settings: normal; font-variation-settings: normal;
>font-language-override: normal; font-family: Menlo, Monaco, Consolas,
>"Cascadia Mono", "Ubuntu Mono", "DejaVu Sans
>Mono", "Liberation Mono", "JetBrains Mono",
>"Fira Code", Cousine, "Roboto Mono", "Courier
>New", Courier, sans-serif, system-ui; background-color: rgb(235, 238,
>242); border-radius: 6px; align-items: center; padding: 0px 5px; display:
>inline-flex; font-size: 0.875em !important;">primary_keys</code><span
>class=""><span> </span>behaviour (as also shown in the exam
ple above).</span></p><hr style="background: none 0% 0% / auto repeat scroll
padding-box border-box rgba(0, 0, 0, 0.1); border-width: medium; border-style:
none; border-color: currentcolor; border-image: none; height: 1px; margin: 32px
0px; display: block; font-family: quote-cjk-patch, Inter, system-ui,
-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen,
Ubuntu, Cantarell, "Open Sans", "Helvetica Neue",
sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures:
normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal;
orphans: 2; text-align: start; text-indent: 0px; text-transform: none; widows:
2; word-spacing: 0px; -webkit-text-stroke-width: 0px; white-space: normal;
text-decoration-thickness: initial; text-decoration-style: initial;
text-decoration-color: initial;"><p class="ds-markdown-paragraph"
style="margin: 16px 0px; color: rgb(15, 17, 21); font-family: quote-cjk-patch,
Inter, system-ui, -apple-system,
BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell,
"Open Sans", "Helvetica Neue", sans-serif; font-size: 16px;
font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal;
font-weight: 400; letter-spacing: normal; orphans: 2; text-align: start;
text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px;
-webkit-text-stroke-width: 0px; white-space: normal; background-color: rgb(255,
255, 255); text-decoration-thickness: initial; text-decoration-style: initial;
text-decoration-color: initial;"><strong style="font-weight: 600;"><span
class="">3. Placeholder usage and semantics</span></strong></p><p
class="ds-markdown-paragraph" style="margin: 16px 0px; color: rgb(15, 17, 21);
font-family: quote-cjk-patch, Inter, system-ui, -apple-system,
BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell,
"Open Sans", "Helvetica Neue", sans-serif; font-size: 16px;
font-style: normal;
font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400;
letter-spacing: normal; orphans: 2; text-align: start; text-indent: 0px;
text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width:
0px; white-space: normal; background-color: rgb(255, 255, 255);
text-decoration-thickness: initial; text-decoration-style: initial;
text-decoration-color: initial;"><span class="">I agree with your
interpretation: the existing<span> </span></span><code style="box-sizing:
border-box; font-style: normal; font-variant: normal; font-weight: 400;
font-stretch: 100%; line-height: 22px; font-optical-sizing: auto;
font-size-adjust: none; font-kerning: auto; font-feature-settings: normal;
font-variation-settings: normal; font-language-override: normal; font-family:
Menlo, Monaco, Consolas, "Cascadia Mono", "Ubuntu Mono",
"DejaVu Sans Mono", "Liberation Mono", "JetBrains
Mono", "Fira Code", Cousine, "Ro
boto Mono", "Courier New", Courier, sans-serif, system-ui;
background-color: rgb(235, 238, 242); border-radius: 6px; align-items: center;
padding: 0px 5px; display: inline-flex; font-size: 0.875em
!important;">primary_keys</code><span class=""><span> </span>option remains
unchanged. However, within the<span> </span></span><code style="box-sizing:
border-box; font-style: normal; font-variant: normal; font-weight: 400;
font-stretch: 100%; line-height: 22px; font-optical-sizing: auto;
font-size-adjust: none; font-kerning: auto; font-feature-settings: normal;
font-variation-settings: normal; font-language-override: normal; font-family:
Menlo, Monaco, Consolas, "Cascadia Mono", "Ubuntu Mono",
"DejaVu Sans Mono", "Liberation Mono", "JetBrains
Mono", "Fira Code", Cousine, "Roboto Mono",
"Courier New", Courier, sans-serif, system-ui; background-color:
rgb(235, 238, 242); border-radius: 6px; alig
n-items: center; padding: 0px 5px; display: inline-flex; font-size: 0.875em
!important;">multi_table_config</code><span class=""><span> </span>section,
the<span> </span></span><code style="box-sizing: border-box; font-style:
normal; font-variant: normal; font-weight: 400; font-stretch: 100%;
line-height: 22px; font-optical-sizing: auto; font-size-adjust: none;
font-kerning: auto; font-feature-settings: normal; font-variation-settings:
normal; font-language-override: normal; font-family: Menlo, Monaco, Consolas,
"Cascadia Mono", "Ubuntu Mono", "DejaVu Sans
Mono", "Liberation Mono", "JetBrains Mono", "Fira
Code", Cousine, "Roboto Mono", "Courier New", Courier,
sans-serif, system-ui; background-color: rgb(235, 238, 242); border-radius:
6px; align-items: center; padding: 0px 5px; display: inline-flex; font-size:
0.875em !important;">primary_keys</code><span class=""><span> </span>field can
be given a<span
> </span></span><strong style="font-weight: 600;"><span
>class="">re‑interpreted semantics</span></strong><span class=""><span>
></span>because the context is different – it is now a per‑table override that
>may include placeholders like<span> </span></span><code style="box-sizing:
>border-box; font-style: normal; font-variant: normal; font-weight: 400;
>font-stretch: 100%; line-height: 22px; font-optical-sizing: auto;
>font-size-adjust: none; font-kerning: auto; font-feature-settings: normal;
>font-variation-settings: normal; font-language-override: normal; font-family:
>Menlo, Monaco, Consolas, "Cascadia Mono", "Ubuntu Mono",
>"DejaVu Sans Mono", "Liberation Mono", "JetBrains
>Mono", "Fira Code", Cousine, "Roboto Mono",
>"Courier New", Courier, sans-serif, system-ui; background-color:
>rgb(235, 238, 242); border-radius: 6px; align-items: center; padding: 0px
>5px; display: inline-flex; font-size: 0.875em !
important;">${primary_key}</code><span class="">. Since the logic is
completely separate from the legacy option, we only need to define the
expansion rules inside the new<span> </span></span><code style="box-sizing:
border-box; font-style: normal; font-variant: normal; font-weight: 400;
font-stretch: 100%; line-height: 22px; font-optical-sizing: auto;
font-size-adjust: none; font-kerning: auto; font-feature-settings: normal;
font-variation-settings: normal; font-language-override: normal; font-family:
Menlo, Monaco, Consolas, "Cascadia Mono", "Ubuntu Mono",
"DejaVu Sans Mono", "Liberation Mono", "JetBrains
Mono", "Fira Code", Cousine, "Roboto Mono",
"Courier New", Courier, sans-serif, system-ui; background-color:
rgb(235, 238, 242); border-radius: 6px; align-items: center; padding: 0px 5px;
display: inline-flex; font-size: 0.875em
!important;">multi_table_config</code><span class=""><span> </span>scope
.</span></p><p class="ds-markdown-paragraph" style="margin: 16px 0px; color:
rgb(15, 17, 21); font-family: quote-cjk-patch, Inter, system-ui, -apple-system,
BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell,
"Open Sans", "Helvetica Neue", sans-serif; font-size: 16px;
font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal;
font-weight: 400; letter-spacing: normal; orphans: 2; text-align: start;
text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px;
-webkit-text-stroke-width: 0px; white-space: normal; background-color: rgb(255,
255, 255); text-decoration-thickness: initial; text-decoration-style: initial;
text-decoration-color: initial;"><span class="">If you see a potential issue
with this approach, or if you think the naming could cause confusion, I am very
open to discussing alternatives.</span></p><hr style="background: none 0% 0% /
auto repeat scroll padding-box border-box rgba(0, 0, 0, 0.1); bord
er-width: medium; border-style: none; border-color: currentcolor;
border-image: none; height: 1px; margin: 32px 0px; display: block; font-family:
quote-cjk-patch, Inter, system-ui, -apple-system, BlinkMacSystemFont,
"Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Open Sans",
"Helvetica Neue", sans-serif; font-size: 16px; font-style: normal;
font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400;
letter-spacing: normal; orphans: 2; text-align: start; text-indent: 0px;
text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width:
0px; white-space: normal; text-decoration-thickness: initial;
text-decoration-style: initial; text-decoration-color: initial;"><p
class="ds-markdown-paragraph" style="margin: 16px 0px; color: rgb(15, 17, 21);
font-family: quote-cjk-patch, Inter, system-ui, -apple-system,
BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell,
"Open Sans", "Helvetica Neue&qu
ot;, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures:
normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal;
orphans: 2; text-align: start; text-indent: 0px; text-transform: none; widows:
2; word-spacing: 0px; -webkit-text-stroke-width: 0px; white-space: normal;
background-color: rgb(255, 255, 255); text-decoration-thickness: initial;
text-decoration-style: initial; text-decoration-color: initial;"><strong
style="font-weight: 600;"><span class="">4. Documentation and
implementation</span></strong></p><p class="ds-markdown-paragraph"
style="margin: 16px 0px; color: rgb(15, 17, 21); font-family: quote-cjk-patch,
Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI",
Roboto, Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica
Neue", sans-serif; font-size: 16px; font-style: normal;
font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400;
letter-spacing: normal; orphans: 2; text-align
: start; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px;
-webkit-text-stroke-width: 0px; white-space: normal; background-color: rgb(255,
255, 255); text-decoration-thickness: initial; text-decoration-style: initial;
text-decoration-color: initial;"><span class="">Once we reach consensus on the
design, I will update my current implementation accordingly and provide
comprehensive documentation (both English and Chinese) covering:</span></p><ul
style="margin: 16px 0px; padding-left: 18px; color: rgb(15, 17, 21);
font-family: quote-cjk-patch, Inter, system-ui, -apple-system,
BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell,
"Open Sans", "Helvetica Neue", sans-serif; font-size: 16px;
font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal;
font-weight: 400; letter-spacing: normal; orphans: 2; text-align: start;
text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px;
-webkit-text-strok
e-width: 0px; white-space: normal; background-color: rgb(255, 255, 255);
text-decoration-thickness: initial; text-decoration-style: initial;
text-decoration-color: initial;"><li><p class="ds-markdown-paragraph"
style="margin-top: 0px !important; margin-right: 0px; margin-bottom: 0px;
margin-left: 0px;"><span class="">the interaction with generated
SQL,</span></p></li><li style="margin-top: 6px;"><p
class="ds-markdown-paragraph" style="margin-top: 0px !important; margin-right:
0px; margin-bottom: 0px; margin-left: 0px;"><span class="">behaviour for
auto‑created tables,</span></p></li><li style="margin-top: 6px;"><p
class="ds-markdown-paragraph" style="margin-top: 0px !important; margin-right:
0px; margin-bottom: 0px; margin-left: 0px;"><span class="">the
precedence/fallback chain,</span></p></li><li style="margin-top: 6px;"><p
class="ds-markdown-paragraph" style="margin-top: 0px !important; margin-right:
0px; margin-bottom: 0px; margin-left: 0px;"><span class="">and the placeholder
expansion rules.</span></p></li></ul><hr style="background: none 0% 0% / auto
repeat scroll padding-box border-box rgba(0, 0, 0, 0.1); border-width: medium;
border-style: none; border-color: currentcolor; border-image: none; height:
1px; margin: 32px 0px; display: block; font-family: quote-cjk-patch, Inter,
system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto,
Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue",
sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures:
normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal;
orphans: 2; text-align: start; text-indent: 0px; text-transform: none; widows:
2; word-spacing: 0px; -webkit-text-stroke-width: 0px; white-space: normal;
text-decoration-thickness: initial; text-decoration-style: initial;
text-decoration-color: initial;"><p class="ds-markdown-paragraph"
style="margin: 16px 0px; color: rgb(15, 17, 21); font-family: quote-cjk-patch,
Inter, system-ui
, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen,
Ubuntu, Cantarell, "Open Sans", "Helvetica Neue",
sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures:
normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal;
orphans: 2; text-align: start; text-indent: 0px; text-transform: none; widows:
2; word-spacing: 0px; -webkit-text-stroke-width: 0px; white-space: normal;
background-color: rgb(255, 255, 255); text-decoration-thickness: initial;
text-decoration-style: initial; text-decoration-color: initial;"><span
class="">I hope this clarifies all the points you raised. Any further
suggestions or differing views are very welcome – thank you again for driving
this discussion forward.</span></p><!--EndFragment-->
</body>
</html>
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]