#include <assert.h>
#include <sys/types.h>
#include <cstring>
#include "my_inttypes.h"
#include "sql/enum_query_type.h"
#include "sql/handler.h"
#include "sql/mem_root_array.h"
#include "sql/sql_array.h"
#include "sql/sql_lex.h"
#include "sql/sql_list.h"
#include "sql/table.h"
#include "sql/thr_malloc.h"
Go to the source code of this file.
|
constexpr int | kMaxWindows = 127 |
| The number of windows is limited to avoid the stack blowing up when constructing iterators recursively. More...
|
|
◆ Func_ptr_array
◆ Window_retrieve_cached_row_reason
Position hints for the frame buffer are saved for these kind of row accesses, cf.
Window::m_frame_buffer_positions.
Enumerator |
---|
WONT_UPDATE_HINT | |
FIRST_IN_PARTITION | |
CURRENT | |
FIRST_IN_FRAME | |
LAST_IN_FRAME | |
LAST_IN_PEERSET | |
MISC_POSITIONS | |
◆ kMaxWindows
constexpr int kMaxWindows = 127 |
|
constexpr |
The number of windows is limited to avoid the stack blowing up when constructing iterators recursively.
There used to be no limit, but it would be unsafe since QEP_shared::m_idx of tmp tables assigned for windows would exceed the old range of its type plan_idx (int8). It has now been widened, so the max number of windows could be increased if need be, modulo other problems. We could also make it a system variable.