DBZ-3124 Add ENUM column type support for Vitess 9.0.0#20
Conversation
gunnarmorling
left a comment
There was a problem hiding this comment.
LGTM; some small suggestions inline.
|
@ani-sha, just seeing that the JIRA-key-less commit message didn't trigger a build failure here. Could you look into setting up the commit message job for this (and potentially other) repo? Thx! |
|
@keweishang, sorry, just noticed one more thing is missing for the docs update in core: the data type table still lists enums as unsupported. |
@gunnarmorling, sorry I missed that. I just created a PR for updating the documentation - data type table lists enums as supported: |
|
@ani-sha I'll push an amend-commit (a.k.a. |
4569ecc to
0b3e58d
Compare
0b3e58d to
9e9f48e
Compare
gunnarmorling
left a comment
There was a problem hiding this comment.
LGTM now, thx! Can you merge yourself and resolve the issue once CI has passed? Thanks a lot!
|
Sure, I'll merge the PR and resolve the issue once CI has passed. |
Enable support for enums during vstream copy phase.
There are two reasons that the connector does not handle `enum` for PSDB branches.
1. The upstream debezium-connector-vitess simply does not support
`enum` during the VStream copy phase. It tries to cast the row value
to an integer, but the value is a string. It seems support for
`enum` landed in 2021
debezium#20, and
support for snapshots (VStream Copy) landed in 2022
debezium#112,
without taking the former into account. This is easily fixed by
finding finding the index of the string
value in the list of values obtained from `column_type` during the
schema discovery phase at the beginning of the VStream.
2. However, this isn't working on some PSDB branches which don't have
the fix vitessio/vitess#13045 for this bug
vitessio/vitess#12981. Fixable by
backporting the bugfix or upgrading those branches.
Signed-off-by: Max Englander <max@planetscale.com>
Enable support for enums during vstream copy phase.
There are two reasons that the connector does not handle `enum` for PSDB branches.
1. The upstream debezium-connector-vitess simply does not support
`enum` during the VStream copy phase. It tries to cast the row value
to an integer, but the value is a string. It seems support for
`enum` landed in 2021
debezium#20, and
support for snapshots (VStream Copy) landed in 2022
debezium#112,
without taking the former into account. This is easily fixed by
finding finding the index of the string
value in the list of values obtained from `column_type` during the
schema discovery phase at the beginning of the VStream.
2. However, this isn't working on some PSDB branches which don't have
the fix vitessio/vitess#13045 for this bug
vitessio/vitess#12981. Fixable by
backporting the bugfix or upgrading those branches.
Signed-off-by: Max Englander <max@planetscale.com>
Enable support for enums during vstream copy phase.
There are two reasons that the connector does not handle `enum` for PSDB branches.
1. The upstream debezium-connector-vitess simply does not support
`enum` during the VStream copy phase. It tries to cast the row value
to an integer, but the value is a string. It seems support for
`enum` landed in 2021
debezium#20, and
support for snapshots (VStream Copy) landed in 2022
debezium#112,
without taking the former into account. This is easily fixed by
finding finding the index of the string
value in the list of values obtained from `column_type` during the
schema discovery phase at the beginning of the VStream.
2. However, this isn't working on some PSDB branches which don't have
the fix vitessio/vitess#13045 for this bug
vitessio/vitess#12981. Fixable by
backporting the bugfix or upgrading those branches.
Signed-off-by: Max Englander <max@planetscale.com>
Enable support for enums during vstream copy phase.
There are two reasons that the connector does not handle `enum` for PSDB branches.
1. The upstream debezium-connector-vitess simply does not support
`enum` during the VStream copy phase. It tries to cast the row value
to an integer, but the value is a string. It seems support for
`enum` landed in 2021
debezium#20, and
support for snapshots (VStream Copy) landed in 2022
debezium#112,
without taking the former into account. This is easily fixed by
finding finding the index of the string
value in the list of values obtained from `column_type` during the
schema discovery phase at the beginning of the VStream.
2. However, this isn't working on some PSDB branches which don't have
the fix vitessio/vitess#13045 for this bug
vitessio/vitess#12981. Fixable by
backporting the bugfix or upgrading those branches.
Signed-off-by: Max Englander <max@planetscale.com>
Enable support for enums during vstream copy phase.
There are two reasons that the connector does not handle `enum` for PSDB branches.
1. The upstream debezium-connector-vitess simply does not support
`enum` during the VStream copy phase. It tries to cast the row value
to an integer, but the value is a string. It seems support for
`enum` landed in 2021
debezium#20, and
support for snapshots (VStream Copy) landed in 2022
debezium#112,
without taking the former into account. This is easily fixed by
finding finding the index of the string
value in the list of values obtained from `column_type` during the
schema discovery phase at the beginning of the VStream.
2. However, this isn't working on some PSDB branches which don't have
the fix vitessio/vitess#13045 for this bug
vitessio/vitess#12981. Fixable by
backporting the bugfix or upgrading those branches.
Signed-off-by: Max Englander <max@planetscale.com>
Enable support for enums during vstream copy phase.
There are two reasons that the connector does not handle `enum` for PSDB branches.
1. The upstream debezium-connector-vitess simply does not support
`enum` during the VStream copy phase. It tries to cast the row value
to an integer, but the value is a string. It seems support for
`enum` landed in 2021
debezium#20, and
support for snapshots (VStream Copy) landed in 2022
debezium#112,
without taking the former into account. This is easily fixed by
finding finding the index of the string
value in the list of values obtained from `column_type` during the
schema discovery phase at the beginning of the VStream.
2. However, this isn't working on some PSDB branches which don't have
the fix vitessio/vitess#13045 for this bug
vitessio/vitess#12981. Fixable by
backporting the bugfix or upgrading those branches.
Signed-off-by: Max Englander <max@planetscale.com>
Enable support for enums during vstream copy phase.
There are two reasons that the connector does not handle `enum` for PSDB branches.
1. The upstream debezium-connector-vitess simply does not support
`enum` during the VStream copy phase. It tries to cast the row value
to an integer, but the value is a string. It seems support for
`enum` landed in 2021
debezium#20, and
support for snapshots (VStream Copy) landed in 2022
debezium#112,
without taking the former into account. This is easily fixed by
finding finding the index of the string
value in the list of values obtained from `column_type` during the
schema discovery phase at the beginning of the VStream.
2. However, this isn't working on some PSDB branches which don't have
the fix vitessio/vitess#13045 for this bug
vitessio/vitess#12981. Fixable by
backporting the bugfix or upgrading those branches.
Signed-off-by: Max Englander <max@planetscale.com>
Enable support for enums during vstream copy phase.
There are two reasons that the connector does not handle `enum` for PSDB branches.
1. The upstream debezium-connector-vitess simply does not support
`enum` during the VStream copy phase. It tries to cast the row value
to an integer, but the value is a string. It seems support for
`enum` landed in 2021
debezium#20, and
support for snapshots (VStream Copy) landed in 2022
debezium#112,
without taking the former into account. This is easily fixed by
finding finding the index of the string
value in the list of values obtained from `column_type` during the
schema discovery phase at the beginning of the VStream.
2. However, this isn't working on some PSDB branches which don't have
the fix vitessio/vitess#13045 for this bug
vitessio/vitess#12981. Fixable by
backporting the bugfix or upgrading those branches.
Signed-off-by: Max Englander <max@planetscale.com>

https://issues.redhat.com/browse/DBZ-3124
Related PRs: