Commit 4e7ee16
committed
MDEV-18295 IMPORT TABLESPACE fails with instant-altered tables
When importing a tablespace, we must initialize dummy DEFAULT NULL values for any instantly added columns in order to avoid a debug assertion failure when PageConverter::update_records() invokes rec_get_offsets(). Finally, when the operation completes, we must evict and reload the table definition, so that the correct default values for instantly added columns will be loaded. ha_innobase::discard_or_import_tablespace(): On successful IMPORT TABLESPACE, evict and reload the table definition, so that btr_cur_instant_init() will load the correct metadata. PageConverter::update_index_page(): Fill in dummy DEFAULT NULL values for instantly added columns. These will be replaced upon the completion of the operation by evicting and reloading the metadata. row_discard_tablespace(): Invoke dict_table_t::remove_instant(). After DISCARD TABLESPACE, the table is no longer in "instant ALTER" format, because there is no data file attached.1 parent 4eae9ee commit 4e7ee16
File tree
5 files changed
+160
-31
lines changed- mysql-test/suite/innodb
- r
- t
- storage/innobase
- handler
- row
5 files changed
+160
-31
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
4 | 4 | | |
5 | 5 | | |
6 | 6 | | |
7 | | - | |
| 7 | + | |
8 | 8 | | |
9 | 9 | | |
10 | 10 | | |
| |||
12682 | 12682 | | |
12683 | 12683 | | |
12684 | 12684 | | |
12685 | | - | |
12686 | | - | |
12687 | | - | |
12688 | | - | |
| 12685 | + | |
12689 | 12686 | | |
12690 | 12687 | | |
12691 | 12688 | | |
12692 | 12689 | | |
12693 | 12690 | | |
12694 | 12691 | | |
12695 | 12692 | | |
12696 | | - | |
| 12693 | + | |
12697 | 12694 | | |
12698 | 12695 | | |
12699 | 12696 | | |
12700 | | - | |
| 12697 | + | |
12701 | 12698 | | |
12702 | 12699 | | |
12703 | 12700 | | |
| |||
12706 | 12703 | | |
12707 | 12704 | | |
12708 | 12705 | | |
12709 | | - | |
| 12706 | + | |
12710 | 12707 | | |
12711 | 12708 | | |
12712 | 12709 | | |
| |||
12719 | 12716 | | |
12720 | 12717 | | |
12721 | 12718 | | |
12722 | | - | |
| 12719 | + | |
12723 | 12720 | | |
12724 | 12721 | | |
12725 | 12722 | | |
12726 | | - | |
| 12723 | + | |
12727 | 12724 | | |
12728 | 12725 | | |
12729 | 12726 | | |
12730 | | - | |
| 12727 | + | |
12731 | 12728 | | |
12732 | | - | |
| 12729 | + | |
12733 | 12730 | | |
12734 | 12731 | | |
12735 | 12732 | | |
12736 | 12733 | | |
12737 | 12734 | | |
12738 | | - | |
| 12735 | + | |
12739 | 12736 | | |
12740 | 12737 | | |
12741 | 12738 | | |
12742 | 12739 | | |
12743 | | - | |
| 12740 | + | |
12744 | 12741 | | |
12745 | 12742 | | |
12746 | 12743 | | |
12747 | | - | |
| 12744 | + | |
12748 | 12745 | | |
12749 | 12746 | | |
12750 | 12747 | | |
| |||
12760 | 12757 | | |
12761 | 12758 | | |
12762 | 12759 | | |
12763 | | - | |
12764 | | - | |
| 12760 | + | |
| 12761 | + | |
| 12762 | + | |
| 12763 | + | |
| 12764 | + | |
| 12765 | + | |
| 12766 | + | |
| 12767 | + | |
| 12768 | + | |
| 12769 | + | |
| 12770 | + | |
| 12771 | + | |
| 12772 | + | |
| 12773 | + | |
| 12774 | + | |
| 12775 | + | |
| 12776 | + | |
| 12777 | + | |
| 12778 | + | |
| 12779 | + | |
| 12780 | + | |
| 12781 | + | |
| 12782 | + | |
| 12783 | + | |
| 12784 | + | |
12765 | 12785 | | |
12766 | 12786 | | |
12767 | 12787 | | |
12768 | | - | |
| 12788 | + | |
12769 | 12789 | | |
12770 | 12790 | | |
12771 | 12791 | | |
| |||
12775 | 12795 | | |
12776 | 12796 | | |
12777 | 12797 | | |
12778 | | - | |
| 12798 | + | |
| 12799 | + | |
12779 | 12800 | | |
12780 | 12801 | | |
12781 | 12802 | | |
12782 | | - | |
| 12803 | + | |
12783 | 12804 | | |
12784 | 12805 | | |
12785 | 12806 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
3 | 3 | | |
4 | | - | |
| 4 | + | |
5 | 5 | | |
6 | 6 | | |
7 | 7 | | |
| |||
1820 | 1820 | | |
1821 | 1821 | | |
1822 | 1822 | | |
| 1823 | + | |
| 1824 | + | |
1823 | 1825 | | |
1824 | | - | |
1825 | | - | |
1826 | | - | |
1827 | | - | |
1828 | | - | |
1829 | | - | |
| 1826 | + | |
| 1827 | + | |
| 1828 | + | |
| 1829 | + | |
| 1830 | + | |
| 1831 | + | |
| 1832 | + | |
| 1833 | + | |
| 1834 | + | |
| 1835 | + | |
| 1836 | + | |
| 1837 | + | |
| 1838 | + | |
1830 | 1839 | | |
1831 | 1840 | | |
1832 | 1841 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
3074 | 3074 | | |
3075 | 3075 | | |
3076 | 3076 | | |
3077 | | - | |
| 3077 | + | |
| 3078 | + | |
3078 | 3079 | | |
3079 | | - | |
3080 | | - | |
3081 | | - | |
| 3080 | + | |
| 3081 | + | |
3082 | 3082 | | |
3083 | 3083 | | |
| 3084 | + | |
3084 | 3085 | | |
3085 | 3086 | | |
3086 | 3087 | | |
| |||
0 commit comments