[
https://issues.apache.org/jira/browse/KUDU-3332?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17435537#comment-17435537
]
Yingchun Lai commented on KUDU-3332:
------------------------------------
!image-2021-10-28-20-24-25-742.png!
> Master coredump when add columns after unsafe_rebuild master
> ------------------------------------------------------------
>
> Key: KUDU-3332
> URL: https://issues.apache.org/jira/browse/KUDU-3332
> Project: Kudu
> Issue Type: Bug
> Components: CLI
> Affects Versions: NA
> Reporter: Yingchun Lai
> Priority: Major
>
> When do master unsafe_rebuild, tables' next_column_id is set to (2^31 - 1) /
> 2, i.e. 2^30 - 1.
> After that, new added column's id is set to 2^30 - 1, 2^30, 2^30 + 1, ... We
> use an IdMapping to maintainance column id to it's index, like 2^30 - 1 ->
> 200, 2^30 -> 201, 2^30 + 1 -> 202.
> However, the IdMapping's implemention use a vector to save all the k-v pairs,
> and the key is nearly the index of IdMapping. So we have to use a very large
> vector to save a column id like 2^30, and future more, it will increase
> doubly when found capacity not enough.
> When the column id is 2^30, the double size is 2^31, which is overflow, will
> cause master crash.
>
>
--
This message was sent by Atlassian Jira
(v8.3.4#803005)