File tree Expand file tree Collapse file tree 1 file changed +10
-0
lines changed Expand file tree Collapse file tree 1 file changed +10
-0
lines changed Original file line number Diff line number Diff line change @@ -3018,6 +3018,16 @@ static UCHAR* find_space(thread_db* tdbb,
3018
3018
const SSHORT aligned_size = ROUNDUP(size, ODS_ALIGNMENT);
3019
3019
data_page* page = (data_page*) rpb->getWindow(tdbb).win_buffer;
3020
3020
3021
+ if ((page->dpg_count > 0) && (type == DPM_primary) && (page->dpg_header.pag_flags & dpg_secondary))
3022
+ {
3023
+ // Attempt to put primary record on secondary data page - seems
3024
+ // flags on PP is not correct. Fix flags and let caller to find
3025
+ // space for record at another data page.
3026
+
3027
+ mark_full(tdbb, rpb);
3028
+ return NULL;
3029
+ }
3030
+
3021
3031
// Scan allocated lines looking for an empty slot, the high water mark,
3022
3032
// and the amount of space potentially available on the page
3023
3033
You can’t perform that action at this time.
0 commit comments