1
0
mirror of https://github.com/MariaDB/server.git synced 2025-07-30 16:24:05 +03:00

First step for WL 2025

Not yet fully working
Scan reads work fine, not scan updates


ndb/include/kernel/ndb_limits.h:
  Introducing a new parameter plus increasing the max no of parallel
  operations per scan in LQH, first step in WL 2025
ndb/include/kernel/signaldata/ScanFrag.hpp:
  Only need one clientOpPtr
  Concurrency is batch_size to use in this scan
  batch_byte_size is max no of bytes sent in a batch
  first_batch_size is the batch size in the first batch
ndb/include/kernel/signaldata/ScanTab.hpp:
  apiOperationPtr is sent as long signal data
  batch_byte_size and first_batch_size is needed for further transport
  to LQH
  batch size can now be bigger than before
ndb/include/kernel/signaldata/TcKeyReq.hpp:
  More concurrency means more size for scanInfo also in TCKEYREQ
ndb/include/ndbapi/NdbReceiver.hpp:
  New subroutine to caclculate batch size and similar parameters
ndb/include/ndbapi/NdbScanOperation.hpp:
  batch size calculated before sending, not necessary to store anymore
ndb/src/common/debugger/signaldata/ScanTab.cpp:
  Updated signal printer for SCAN_TABREQ
ndb/src/kernel/blocks/backup/Backup.cpp:
  Fixes to make it compile, not fixed for BACKUP being useful yet
ndb/src/kernel/blocks/dblqh/Dblqh.hpp:
  Removed parameters no longer needed and added some new ones.
ndb/src/kernel/blocks/dblqh/DblqhMain.cpp:
  Fix for cmaxAccOps that was using the wrong constant
  Removed old code
  New SCAN_FRAGREQ signal
ndb/src/kernel/blocks/dbtc/Dbtc.hpp:
  New variables
  Removed dead code
ndb/src/kernel/blocks/dbtc/DbtcMain.cpp:
  New SCAN_TABREQ, SCAN_FRAGREQ, SCAN_FRAGCONF and SCAN_TABCONF
  Fixed some error handling to be more efficient
ndb/src/kernel/blocks/suma/Suma.cpp:
  Fixes to make it compile, not yet usable for SUMA features
ndb/src/kernel/vm/Configuration.cpp:
  Fix for wrong constant
ndb/src/ndbapi/NdbApiSignal.cpp:
  Fix for not using constants
ndb/src/ndbapi/NdbApiSignal.hpp:
  Added possibility to get signal sending node from signal
ndb/src/ndbapi/NdbConnectionScan.cpp:
  Moved declaration
ndb/src/ndbapi/NdbReceiver.cpp:
  New routine to calculate batch_size etc.
ndb/src/ndbapi/NdbScanOperation.cpp:
  Various fixes for sending SCAN_TABREQ and other stuff
This commit is contained in:
unknown
2004-08-09 17:43:15 +02:00
parent 01e1451ad8
commit fd566261a4
19 changed files with 254 additions and 236 deletions

View File

@ -68,7 +68,22 @@
* API can order a multiple of this number of records at a time since
* fragments can be scanned in parallel.
*/
#define MAX_PARALLEL_OP_PER_SCAN 16
#define MAX_PARALLEL_OP_PER_SCAN 64
/*
* When calculating the number of records sent from LQH in each batch
* one uses SCAN_BATCH_SIZE divided by the expected size of signals
* per row. This gives the batch size used for the scan. The NDB API
* will receive one batch from each node at a time so there has to be
* some care taken also so that the NDB API is not overloaded with
* signals.
*/
#define SCAN_BATCH_SIZE 32768
/*
* To protect the NDB API from overload we also define a maximum total
* batch size from all nodes. This parameter should most likely be
* configurable, or dependent on sendBufferSize.
*/
#define MAX_SCAN_BATCH_SIZE 196608
/*
* Maximum number of Parallel Scan queries on one hash index fragment
*/