Skip to content

Instantly share code, notes, and snippets.

@ronaldbradford
Last active June 11, 2024 17:45
Show Gist options
  • Save ronaldbradford/197d407a433357d93db2282452eaa111 to your computer and use it in GitHub Desktop.
Save ronaldbradford/197d407a433357d93db2282452eaa111 to your computer and use it in GitHub Desktop.
MySQL 8.0 Memory capacity 'range_optimizer_max_mem_size' exceeded.

An experiment to trigger the "Range optimization was not done for this query" Warning

Warning (Code 3170): Memory capacity of 8388608 bytes for 'range_optimizer_max_mem_size' exceeded. Range optimization was not done for this query.

This was produced with 1M rows of data.

> SELECT COUNT(*) FROM sysbench.filler2;   # Will match total number of events
+----------+
| COUNT(*) |
+----------+
|  1074663 |
+----------+

QEP


> EXPLAIN SELECT ...
+----+-------------+---------+------------+------+---------------+------+---------+-------+------+----------+-----------------------------------------------------+
| id | select_type | table   | partitions | type | possible_keys | key  | key_len | ref   | rows | filtered | Extra                                               |
+----+-------------+---------+------------+------+---------------+------+---------+-------+------+----------+-----------------------------------------------------+
|  1 | SIMPLE      | filler2 | NULL       | ref  | i1,i2,e1      | e1   | 1       | const | 4880 |    50.00 | Using index condition; Using where; Using temporary |
+----+-------------+---------+------------+------+---------------+------+---------+-------+------+----------+-----------------------------------------------------+

> SET SESSION range_optimizer_max_mem_size=0;
> EXPLAIN SELECT ...
+----+-------------+---------+------------+------+---------------+------+---------+-------+--------+----------+-----------------------------------------------------+
| id | select_type | table   | partitions | type | possible_keys | key  | key_len | ref   | rows   | filtered | Extra                                               |
+----+-------------+---------+------------+------+---------------+------+---------+-------+--------+----------+-----------------------------------------------------+
|  1 | SIMPLE      | filler2 | NULL       | ref  | i1,i2,e1      | e1   | 1       | const | 510647 |    50.00 | Using index condition; Using where; Using temporary |
+----+-------------+---------+------------+------+---------------+------+---------+-------+--------+----------+-----------------------------------------------------+


> EXPLAIN SELECT DISTINCT i3 FROM filler2 USE INDEX (i1) ...
+----+-------------+---------+------------+------+---------------+------+---------+------+---------+----------+----------------------------------------------+
| id | select_type | table   | partitions | type | possible_keys | key  | key_len | ref  | rows    | filtered | Extra                                        |
+----+-------------+---------+------------+------+---------------+------+---------+------+---------+----------+----------------------------------------------+
|  1 | SIMPLE      | filler2 | NULL       | ALL  | i1            | NULL | NULL    | NULL | 1021294 |    25.00 | Using where; Using temporary; Using filesort |
+----+-------------+---------+------------+------+---------------+------+---------+------+---------+----------+----------------------------------------------+

> EXPLAIN SELECT DISTINCT i3 FROM filler2 USE INDEX (i2) WHERE i1 IN ...
+----+-------------+---------+------------+------+---------------+------+---------+------+---------+----------+----------------------------------------------+
| id | select_type | table   | partitions | type | possible_keys | key  | key_len | ref  | rows    | filtered | Extra                                        |
+----+-------------+---------+------------+------+---------------+------+---------+------+---------+----------+----------------------------------------------+
|  1 | SIMPLE      | filler2 | NULL       | ALL  | i2            | NULL | NULL    | NULL | 1021294 |   100.00 | Using where; Using temporary; Using filesort |
+----+-------------+---------+------------+------+---------------+------+---------+------+---------+----------+----------------------------------------------+

What are the possible options?

  • SET SESSION optimizer_switch='derived_merge=off'; - Does not drop the warning (from random google response).
  • SET SESSION range_optimizer_max_mem_size=0; - Removes warning, but increases query execution from 0.34 to 1.18s, second example 0.38s to 1.46s
  • SET SESSION range_optimizer_max_mem_size= > necessary; - Removes warning, but increases query execution
> select @@session.range_optimizer_max_mem_size;
+----------------------------------------+
| @@session.range_optimizer_max_mem_size |
+----------------------------------------+
|                                8388608 |
+----------------------------------------+
1 row in set (0.00 sec)

> SELECT ...
1000 rows in set, 1 warning (0.34 sec)

> set session range_optimizer_max_mem_size=0;

SELECT ... 
1000 rows in set (1.18 sec)

Looking at memory summary for the specific query.

> select * from performance_schema.memory_summary_by_thread_by_event_name where thread_id=PS_CURRENT_THREAD_ID() and event_name='memory/sql/test_quick_select'\G
*************************** 1. row ***************************
                   THREAD_ID: 6193
                  EVENT_NAME: memory/sql/test_quick_select
                 COUNT_ALLOC: 0
                  COUNT_FREE: 0
   SUM_NUMBER_OF_BYTES_ALLOC: 0
    SUM_NUMBER_OF_BYTES_FREE: 0
              LOW_COUNT_USED: 0
          CURRENT_COUNT_USED: 0
             HIGH_COUNT_USED: 0
    LOW_NUMBER_OF_BYTES_USED: 0
CURRENT_NUMBER_OF_BYTES_USED: 0
   HIGH_NUMBER_OF_BYTES_USED: 0
   
   
> SELECT ...


> select * from performance_schema.memory_summary_by_thread_by_event_name where thread_id=PS_CURRENT_THREAD_ID() and event_name='memory/sql/test_quick_select'\G
*************************** 1. row ***************************
                   THREAD_ID: 6193
                  EVENT_NAME: memory/sql/test_quick_select
                 COUNT_ALLOC: 18
                  COUNT_FREE: 18
   SUM_NUMBER_OF_BYTES_ALLOC: 12099576
    SUM_NUMBER_OF_BYTES_FREE: 12099576
              LOW_COUNT_USED: 0
          CURRENT_COUNT_USED: 0
             HIGH_COUNT_USED: 18
    LOW_NUMBER_OF_BYTES_USED: 0
CURRENT_NUMBER_OF_BYTES_USED: 0
   HIGH_NUMBER_OF_BYTES_USED: 12099576
15:16:06 (8.0.34) [sysbench]  > SELECT EVENT_NAME, COUNT_ALLOC,HIGH_COUNT_USED, SUM_NUMBER_OF_BYTES_ALLOC, SUM_NUMBER_OF_BYTES_FREE,HIGH_NUMBER_OF_BYTES_USED from performance_schema.memory_summary_by_thread_by_event_name where thread_id=PS_CURRENT_THREAD_ID() AND count_alloc>0;
+--------------------------------------+-------------+-----------------+---------------------------+--------------------------+---------------------------+
| EVENT_NAME                           | COUNT_ALLOC | HIGH_COUNT_USED | SUM_NUMBER_OF_BYTES_ALLOC | SUM_NUMBER_OF_BYTES_FREE | HIGH_NUMBER_OF_BYTES_USED |
+--------------------------------------+-------------+-----------------+---------------------------+--------------------------+---------------------------+
| memory/sql/THD::main_mem_root        |          39 |              11 |                   3115272 |                  3069096 |                   1431704 |
| memory/sql/test_quick_select         |          23 |              18 |                  12120296 |                 12120296 |                  12099576 |
| memory/sql/String::value             |          18 |               5 |                     37760 |                    20560 |                     32928 |
| memory/sql/THD::db                   |           1 |               1 |                        41 |                        0 |                        41 |
| memory/sql/MYSQL_LOCK                |          10 |               2 |                       784 |                      704 |                       160 |
| memory/sql/NET::buff                 |           1 |               1 |                     28711 |                        0 |                     28711 |
| memory/sql/dd::infrastructure        |          27 |              12 |                      2736 |                     2736 |                      1216 |
| memory/sql/dd::String_type           |          16 |               8 |                       988 |                      988 |                       508 |
| memory/sql/THD::variables            |           1 |               1 |                       160 |                        0 |                       160 |
| memory/sql/MPVIO_EXT::auth_info      |           1 |               1 |                        36 |                       36 |                        36 |
| memory/sql/THD::Session_tracker      |           6 |               6 |                       528 |                        0 |                       528 |
| memory/mysqld_openssl/openssl_malloc |         431 |             174 |                     59369 |                    54531 |                     19714 |
| memory/innodb/ha_innodb              |           1 |               1 |                       104 |                        0 |                       104 |
| memory/innodb/memory                 |           1 |               1 |                       240 |                        0 |                       240 |
| memory/innodb/rem0rec                |           1 |               1 |                        46 |                        0 |                        46 |
| memory/temptable/physical_ram        |           1 |               1 |                   1048608 |                        0 |                   1048608 |
+--------------------------------------+-------------+-----------------+---------------------------+--------------------------+---------------------------+

As a byproduct, the following summary query generally used produced an error

14:41:44 (8.0.34) [sysbench]  > SELECT thread, COUNT(*) FROM sysbench.filler2 GROUP BY thread;
ERROR 1104 (42000): The SELECT would examine more than MAX_JOIN_SIZE rows; check your WHERE and use SET SQL_BIG_SELECTS=1 or SET MAX_JOIN_SIZE=# if the SELECT is okay

References

-- filler2.lua
--
-- 1. Ensure you have a 'sysbench' user and privileges to manage objects in schema 'sysbench'. e.g.
--
-- mysql> CREATE USER sysbench@'%' IDENTIFIED BY 'RM#aEq29waQE';
-- mysql> GRANT ALL ON sysbench.* TO sysbench@'%';
-- mysql> CREATE SCHEMA sysbench;
--
-- 2. Create the filler table with:
--
-- $ sysbench filler2.lua --mysql-host=${ENDPOINT} prepare
--
-- 3. Run a benchmark with:
--
-- $ sysbench filler2.lua --mysql-host=${ENDPOINT} --time=600 --report-interval=1 --threads=25 run
--
-- 4. Verify results
--
-- mysql> SELECT COUNT(*) FROM sysbench.filler2; # Will match total number of events
--
-- 5. Cleanup (shows summary results also)
--
-- $ sysbench filler.lua --mysql-host=${ENDPOINT} cleanup
--
if sysbench.cmdline.command == nil then
error("A command is required. Supported commands are: prepare|run|cleanup")
end
sysbench.cmdline.options = {
mysql_user = {"MySQL user", "sysbench"},
mysql_password = {"MySQL password", "RM#aEq29waQE"},
mysql_db = {"Database schema", "sysbench"},
db_driver = {"Type of RDBMS", "mysql"},
}
table_name='filler2'
function get_conn()
drv = sysbench.sql.driver()
return drv:connect()
end
function prepare()
print ("Preparing "..table_name.." benchmark")
con = get_conn()
con:query("CREATE SCHEMA IF NOT EXISTS ".. sysbench.opt.mysql_db)
con:query("DROP TABLE IF EXISTS "..table_name)
query = string.format([[
CREATE TABLE %s (
id INT NOT NULL AUTO_INCREMENT,
i1 INT NOT NULL,
i2 INT NOT NULL,
i3 INT NOT NULL,
e1 enum('TRUE','FALSE') NOT NULL DEFAULT 'FALSE',
ts DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP(),
thread SMALLINT UNSIGNED NULL,
PRIMARY KEY (id),
KEY (i1),
KEY (i2, i1, e1),
KEY (e1, i3)
)
]], table_name)
con:query(query)
end
function init()
print("Benchmark Initialized")
end
function thread_init(thread_id)
con = get_conn()
math.randomseed(os.time() + thread_id)
end
function event(thread_id)
local i1 = math.random(1, 10000)*(thread_id+1)
local i2 = math.random(1, 10000)+(thread_id*math.random(1,16))
local i3 = math.random(1, 1000000)
local e1 = math.random(1, 2)
query = "INSERT INTO "..table_name.."(id, ts, thread, i1, i2, i3, e1)"..
"values (NULL, NOW(), "..thread_id..","..i1..","..i2..","..i3..","..e1..")"
con:query(query)
end
function thread_done(thread_id)
con:disconnect()
end
function done(thread_id)
print("Benchmark Done")
end
function cleanup()
print("Benchmark Results")
con = get_conn()
query = string.format([[
SELECT thread, COUNT(*) AS cnt
FROM %s
GROUP BY thread
UNION
SELECT 'all' AS thread, COUNT(*) AS cnt
FROM %s
ORDER BY thread
]], table_name, table_name)
local rs = con:query(query)
for i = 1, rs.nrows do
print(string.format("Thread Id: %s, Rows: %s", unpack(rs:fetch_row(), 1, rs.nfields)))
end
con:query("DROP TABLE ".. table_name)
end
SELECT DISTINCT i3 FROM filler2 WHERE i1 IN (
13860,15840,6840,8400,5460,10080,10920,8280,3000,36720,25344,23760,25080,27300,6660,19320,15600,41400,2640,4800,23040,57960,12240,18480,15912,13464,13920,8316,4200,4620,1320,5376,3024,3360,6552,9360,1680,9000,12600,11340,11040,17640,37800,47520,40320,43680,18720,14280,10560,6336,6480,7560,4860,5280,960,9120,840,29700,25200,22800,23520,23184,6300,3600,8448,6120,4320,4704,5040,42840,16500,18270,18240,9792,11088,15660,14760,64680,42000,22440,25740,32832,33180,21528,27720,23940,3168,2880,2220,4410,9240,16200,13440,19800,19872,17760,14460,10710,10500
,55440,50400,52080,26460,33264,73920,44400,43470,18180,15696,9936,15000,9520,120,2460,3780,336,2100,6720,5076,7056,1080,5400,3060,6240,2280,2112,2040,1872,8736,1584,8784,1380,1260,7080,5208,5472,78624,53424,29400,33660,31920,23400,19152,16128,13104,13200,19530,11520,16560,18000,17820,17520,15120,12936,18360,16632,15456,15300,60480,3220,3276,3420,7728,7700,2320,8580,420,6000,4752,8940,7020,5700,5520,864,26928,33696,23256,28560,34272,37440,38640,39000,39312,35640,44520,37320,36792,35280,47880,50904,60060,56160,16320,12144,12432,12120,19200,18816,12672
,16080,11700,19500,13500,9900,15624,17388,17136,29904,32760,25992,29736,29520,29376,24840,23100,31200,28350,21420,24000,31500,28440,9552,8040,96,3384,2772,2520,240,3960,1980,4368,1890,4400,4560,9312,5880,1176,9072,3312,7920,3456,6510,2400,7320,1560,8800,4830,1170,5232,48300,38520,34320,36540,34650,46200,35910,30060,30240,26160,26280,26640,26880,24480,12320,16380,18900,21000,18600,11580,19656,18192,13608,11280,9828,19920,14364,10680,10584,10350,20520,16296,16272,12096,12540,18840,11970,18768,12840,13056,9780,20880,10944,19992,10800,20790,17472,14784,10296,17040
,20592,8100,8160,3480,6216,9400,4032,2160,6600,2016,7488,1848,7392,450,7350,7280,540,1296,600,1008,984,48960,54600,52920,54000,75240,79560,30000,25380,22176,21120,32640,22932,30960,31080,31680,34200,37560,37200,47250,34560,36120,44640,35700,35520,43200,94080,57120,52800,19068,12480,9660,18312,13800,19908,14160,17808,16800,14688,17280,20376,6360,7956,3432,7800,3640,2352,252,2310,4140,4180,6072,8568,9328,1656,4848,5160,5304,5712,9060,6930,924,5544,770,46620,38280,38400,41040,46920,40950,37128,47160,38880,39060,40680,34776,77760,65100,30030,29900
,25872,33000,28080,29640,28224,22050,26400,22000,26520,29040,32340,24570,24180,24024,32032,29988,31800,28200,33120,26208,22080,30800,24780,21168,28320,24420,28776,21504,27456,27468,24200,19040,18960,18942,11940,9648,11844,18648,13176,11550,19536,19560,20916,15960,18144,9840,14064,15708,20160,10620,14700,9996,15168,17100,15264,95760,48510,48720,58968,58464,51744,56640,54768,53460,69300,67200,65880,73080,3120,6440,9540,3528,9480,3744,9450,288,8550,7500,4500,1800,8700,7344,4608,7296,1638,1512,4920,4950,4968,7140,624,1200,8976,660,6960,9216,990,9200,900,9180
,5600,38304,41184,45000,47124,46368,38808,46332,43800,34800,39240,40020,41370,37704,37680,47040,36960,39780,39270,35784,47700,43560,87360,86760,83160,25680,25620,25440,22260,23640,29610,30600,21960,26544,24960,30780,34020,24624,21660,27360,27600,12180,9576,18864,12768,13320,9744,18300,18060,9864,14112,10980,15720,17680,14472,17568,14640,17460,10416,14940,10368,15180,17010,16980,15400,3072,6384,8208,144,180,3672,2412,7680,8442,4128,4176,6060,1920,414,4392,1776,5940,8820,1400,4980,5200,7014,7000,5320,5720,5670,800,63840,63648,63360,48840,56364,52416,54648,77280
,66528,66240,72072,68880,76176,67620,70560,71820,72000,24720,25920,26040,22848,29250,24660,27000,28980,27180,24336,28728,31360,27540,27984,44100,38016,39960,38700,44856,42480,45540,36000,40560,43120,35000,109800,99000,60720,58212,58140,57750,57456,57000,56100,49500,49560,12285,12150,12528,12000,16160,12852,19404,11704,13090,9720,11466,9768,11232,11220,13872,11160,15792,16720,9870,15750,14520,10640,9960,10440,10332,15240,15372,20640,3150,2976,2964,7980,72,3444,126,8232,8250,7740,3900,264,2268,2208,2200,2184,7590,8496,8520,6624,6024,4356,7440,8640,4440,7380,1764
,8694,8712,8760,4824,1386,8910,8928,5148,5760,1140,936,912,870,6864,5616,6426,8064,3132,3180,2910,3336,9504,7896,2736,7854,2700,2592,8320,2484,6528,8370,7704,2376,3840,6210,7668,2304,3936,280,7620,2178,2090,2088,4224,1968,8592,1840,4488,1728,6696,7224,6700,7200,6732,5080,5796,8988,1152,1056,1050,720,5688,5664,882,5628,792,25704,32928,22500,21336,30096,25560,21360,23310,32130,34080,28770,29680,25320,22140,24540,24640,21720,33516,26910,30528,21780,22008,26760,29232,28272,28260,78120,75000,66120,79200,46704,39984,37840,40110
,41940,37296,47340,38976,36360,40656,44688,35970,44625,48024,34980,43344,19080,19000,12408,12576,12624,18810,18696,13020,13032,13248,19520,13300,13356,18288,11440,11400,13560,18150,18048,13968,14040,14100,14196,14400,14430,10728,20240,20286,17352,14820,10224,10200,10188,16920,15312,20664,91080,93600,49950,59400,51240,51840,56304,52200,54936,54240,53040,61600,60984,60000,59904,51000,59040,51282,51408,56340,49680,55860,55800,54810,52740,53760,53352,68544,76608,76230,75600,75504,71136,71400,64260,6408,6380,2940,3264,9500,3400,7848,3520,2688,7812,6264,6516,204,3816,2340,6192,7656
,3990,8480,4080,4116,4230,7480,7476,6636,4530,520,1500,4896,560,5820,5060,1224,5784,8960,1160,6768,6984,5340,5360,980,5418,9086,888,5640,5580,104832,23904,25800,22356,32040,28512,33840,29820,25956,28656,29760,32160,24288,26064,24360,27240,21616,27900,22704,21672,26352,21744,25116,22770,22032,22968,30576,33390,23688,151200,90288,85680,38220,45360,41160,45864,43890,45900,37180,42168,44880,42336,34680,42600,34704,39744,39732,36036,42960,35760,34920,48000,47760,35420,39480,19140,12012,12648,11900,12760,16464,11820,12900,13050,18432,13230,18396,19584,19600,19620,11376
,15939)
and i2 IN (
4279,8257,6577,3332,1060,5839,4424,8362,824,3220,5412,7303,4151,8705,3739,8395,3576,987,5503,5801,1797,4373,3790,5116,3272,1102,7759,5723,7532,7475,2438,2065,4410,8808,631,3586,960,977,7988,7969,3217,2757,1699,2559,7079,9755,8732,503,3284,2895,1652,9098,4038,3959,367,4853,3652,973,7980,5387,3136,7794,5762,2906,2824,6955,1957,1981,6807,2322,2304,2151,4378,4605,4683,8763,404,3846,3772,5113,914,3373,8004,3112,7488,1497,2839,1524,5980,7255,6941,2140,9478,9642,9882,9904,9551,9601,4516
,4522,8745,8619,3656,4976,3609,3592,3584,5052,778,3478,8080,3328,8001,1065,7857,1158,5537,3048,5645,7536,2770,1644,2682,1733,6180,2550,1874,6930,2270,2127,6571,6591,2206,6609,4332,9247,4180,9194,4588,324,8767,509,3737,4904,772,795,862,895,3322,5301,3249,1218,5568,2997,5654,2980,7633,5741,5844,7383,2760,5945,2727,7316,2709,7270,7175,1800,2495,6308,6357,6883,6408,6760,6756,9815,9826,9853,9897,9431,9529,9630,9654,9773,9876,9901,4177,4389,4391,9136,4430,4090,4505,8964,3952,8819,8778,8728,463
,4805,531,3725,560,8358,837,5157,3445,860,8209,8137,954,8042,3321,3237,5444,3133,5484,1272,7632,7520,1448,2873,1488,2854,7411,2803,5878,5942,2744,5962,6066,1717,6114,1792,7121,1815,7047,2504,6274,2473,1964,6849,2240,2153,6604,4252,4381,4103,9010,4597,270,8849,4665,3902,3872,8689,434,4737,3792,4796,4797,4856,633,727,3508,3499,5171,3421,8179,884,5252,8051,5321,3262,5358,3222,5400,5437,1144,1148,5452,3147,7827,7719,7717,5606,7637,1388,1403,1463,7474,2827,1545,5898,7342,1616,5987,5994,1635
,6046,1682,7224,6076,2636,2623,7151,1810,7083,1848,6320,6876,6439,2337,2285,2136,2232,2157,9464,9508,9597,9648,9742,9845,9994,9605,9813,9868,9930,9407,9398,9330,9297,9273,4161,9161,9072,9070,9015,8997,4508,8954,8928,8915,257,3916,3915,3898,3857,412,8703,3829,462,3773,4826,8591,4870,4986,703,716,736,5098,812,827,8247,3394,920,8113,8081,961,8038,7976,1052,7947,3245,3244,1088,7912,5445,7845,3132,7808,7743,3029,1375,7595,5727,7547,2916,7538,7512,2847,5895,7352,2736,7291,2693,2619,2610,7122
,1824,6220,1880,1898,6307,6998,6322,2456,2453,6338,6898,2326,6646,9399,9363,4246,4317,4190,9075,4086,9006,4490,8969,8904,8856,3960,8845,4617,310,4646,3924,422,4723,8692,3840,3830,4780,3786,4794,3774,499,524,8557,3715,3681,8485,8412,8409,3588,3585,8340,754,8316,8286,3474,8243,3428,5193,3418,8119,946,3356,953,3292,7948,5366,5380,7898,5423,5469,1239,3052,1281,5582,3021,2992,7648,7619,1380,5694,5711,7541,7481,5808,7394,7370,7364,2759,7315,7194,2573,6206,6209,6283,2469,6946,1966,1969,6365,1987
,6395,2389,2056,6469,6475,6487,2301,6506,2260,6537,6542,2165,2193,9414,9625,9740,9908,9991,9427,9500,9528,9530,9592,9653,9674,9865,9900,9404,9301,9294,4374,9187,4395,9064,9049,9029,4523,8942,4569,4571,4003,8916,4606,3956,313,4633,335,8790,8758,4709,8725,4738,438,3828,3817,3809,470,471,3781,8656,8642,493,8625,3748,8579,555,4900,8482,3648,8471,3625,8428,668,8415,713,5034,757,760,780,3496,806,5134,5162,8187,909,5213,5216,8128,5243,3359,5267,996,3318,1014,1040,7974,7938,3258,1098,5428
,1145,1198,1206,1223,1238,7763,1259,7750,7745,1274,1279,5604,7703,5620,2995,5662,5677,7625,7578,5740,7527,1439,2863,1511,5834,5919,7351,5964,1676,2665,2634,2629,1749,7130,2560,2556,1814,1843,2526,2518,1896,7005,2474,7000,6973,2457,1934,6920,1971,6892,2409,2381,6416,2370,6817,2043,2354,6516,2118,2138,6623,9394,4286,9346,4242,9267,4376,4392,4137,4133,4425,4447,9056,9040,4479,4580,3986,8874,8844,8818,386,4708,8694,4786,8657,8655,8641,4820,3755,8616,8614,3726,4859,4877,4880,3704,3695,4903,8514,8493
,8491,4949,655,3603,8411,706,725,8355,5068,3544,3535,8328,765,3516,3510,8293,3497,5125,3485,3462,5142,5176,5177,864,8202,8193,8182,8166,3407,5205,3387,970,3338,8046,992,5288,8035,5296,5319,3282,1049,3226,1127,5442,3166,7849,1214,7789,7788,5518,3082,5563,1322,7686,1334,1346,7661,7623,7617,5697,7589,7576,5758,1428,2905,7511,5767,1460,7444,7432,1514,7429,2841,7416,1528,2819,5955,6008,2702,7286,6041,2662,7222,1728,6129,6145,7153,7135,1778,7067,6279,6300,1895,1903,1910,1928,1945,6919,6369,6422
,2348,2312,6488,2299,6515,2113,6544,6683,2156,2225,9585,9686,9748,9776,9824,9956,9502,9507,9555,9639,9662,9726,9802,9837,9872,9895,9941,9953,9960,9973,9341,9332,9325,9309,4362,9243,4443,9073,4509,4046,8960,4529,4535,4567,8918,3988,258,4603,8854,8852,4616,3942,3941,4622,4627,315,4641,8823,8798,3903,4674,3894,3889,363,8755,3850,4720,4721,8686,443,4815,8600,8594,8570,4879,8539,8515,4911,4916,3665,8492,621,8483,8481,639,4970,3621,8449,8427,8423,3587,8360,3554,774,8306,3515,786,5110,5121,8261
,8259,5133,5136,828,830,3441,5170,5178,5183,8196,8149,904,8130,930,8110,8099,5265,5310,3288,7966,7965,7934,7905,3223,5401,1152,1171,7836,3139,3131,1190,5476,3117,3115,3103,1241,3075,3073,5548,5558,5584,3031,2999,1329,5663,7665,7649,1359,7621,2956,5692,2952,7615,7592,5716,1410,1411,5751,5780,1477,2869,2858,7442,7433,7431,5845,2811,7387,1577,2756,2751,1601,2740,1605,1606,7309,1665,1670,7260,1674,7252,1708,2642,1711,7182,7172,1757,7161,7156,6179,7127,7110,2546,1863,6254,7027,7021,6337,6931,6923
,2424,1983,2401,6865,6864,6831,2362,2355,6814,6443,6784,6492,6532,6710,6708,6548,2164,6659,6643,4288,4232,4307,4222,4310,9287,4207,9251,4184,9218,9196,4164,4419,9131,4124,4439,9107,9090,4111,4107,9038,4470,4476,4481,9005,8987,4517,8973,4048,4539,8893,8890,8877,8870,8868,8866,3958,294,8841,4618,8797,347,3878,3877,3863,4713,8722,414,432,3820,457,3800,4839,8588,4845,4846,572,575,4898,8521,3686,596,4931,635,4954,8457,4979,3605,3599,676,702,8376,3574,8361,3565,5059,3538,8339,5088,3523,3519
,782,8304,8224,3447,5161,3405,8145,8100,5260,8064,8025,8020,1012,5313,5323,7973,5344,1072,1084,3241,7885,3202,1123,3183,3180,1141,7855,3116,7797,5505,5511,7786,7775,7747,5577,5589,5598,1308,5630,5642,1337,2969,7639,1378,2948,2943,7583,5754,1423,1431,2910,2903,2899,5777,1462,2888,5783,7472,1481,2859,5817,1512,1518,2830,1529,7393,7371,7369,2720,5997,7301,6021,7276,7272,6028,1677,7235,7232,2648,1712,7200,6096,6109,7169,7149,7131,6169,7125,7118,7113,7104,1819,7097,2536,7084,6231,2522,7062,7028,1884
,2485,7009,1901,7003,6971,6964,6963,1926,2455,6940,6353,2444,6916,2440,6909,2439,6378,2411,2394,6851,6843,2036,2046,6471,6781,6482,2086,6739,2280,6523,6556,2141,2146,6575,6634,9436,9514,9515,9539,9548,9580,9670,9681,9783,9843,9451,9453,9513,9647,9688,9697,9752,9754,9781,9831,9842,9852,9869,9880,9985,9988,10011,4264,9395,9384,4248,9333,9328,4291,4223,4220,9277,9241,4178,9216,9186,4156,4406,4141,9133,4426,4453,4060,8979,4040,8930,8925,3995,8871,274,4621,4644,3926,8812,3918,4656,8776,4690,3862,8739
,4712,4715,8713,8700,4733,431,8678,448,3797,4784,477,8637,497,4825,515,517,4840,8611,3728,8575,545,3724,4866,8544,8535,586,8502,608,3657,4943,4953,4965,3622,8460,8458,8456,8429,4988,4997,8394,693,8368,5056,8327,8326,8307,3502,8282,802,3457,8231,8227,3452,845,5181,874,8183,3416,8169,3409,893,5203,8159,8150,3401,5223,3383,928,3379,951,8077,976,979,5278,8047,8002,1027,5331,7951,7943,7931,7910,5390,5395,5404,7863,5450,7848,5460,5467,5472,1185,1209,5501,7778,5520,3091,1240,5526,3081
,7754,5549,1287,3038,7725,1296,5591,5621,5637,5653,1343,1344,7644,7620,1374,5703,7598,7588,5737,7546,7524,7518,7509,5769,2892,7484,2876,5797,5798,2826,5868,2767,1581,5937,7357,5940,1608,5963,1613,5970,5979,1636,6010,7290,2695,6033,2670,2664,2655,7234,2647,6069,7205,7190,2632,6093,6103,1740,2613,1748,6116,6141,7150,2574,1783,1790,2552,6207,6211,7093,6224,2528,1844,1845,7081,7045,1866,7041,1871,7032,7026,7006,6321,1929,6954,6927,6356,6907,1965,6905,2433,2422,6373,2413,2010,6848,6833,6827,2033,2035
,2058,2320,2077,2092,6495,6504,6728,2264,2119,6553,6559,6585,2218,2170,6598,6644,6636,6630,9393,9388,9383,9382,4249,9378,9377,9372,9351,9347,9344,9331,9326,9283,9256,4193,4366,4187,4185,9193,9185,9178,9172,9170,4148,4427,9110,4108,9065,4462,4482,9009,4075,4513,4545,4549,4025,4023,4562,4573,4584,8900,8879,3964,3962,291,8838,8836,4648,334,8782,3895,3893,4680,359,4685,8769,4703,4704,4707,389,8738,4718,8707,8693,3841,428,4750,8676,3814,458,459,4773,478,3779,485,4811,8622,511,3750,516,8606
,3740,4843,8576,8564,8556,4851,8553,563,8542,4891,4907,8510,598,4918,8498,4933,617,4946,649,4980,3606,4995,8406,8404,3590,695,3582,8380,5006,3573,5028,5037,726,5062,8342,5087,5089,5095,5100,756,763,771,777,3514,5107,803,3469,823,3466,8244,8238,838,3433,8172,5210,3393,8133,924,3377,940,3370,943,3367,3364,5262,981,3325,995,8022,5318,7992,3286,3275,5349,7933,5354,3251,7911,5378,3225,1109,1131,7870,7869,1149,7858,1151,5458,3146,5461,1181,1193,3121,5485,7796,1217,1221,1225,7783,5531
,7766,3074,5553,5556,3057,5569,7729,1290,7726,7710,5617,1312,7691,1324,2988,1333,7681,7669,5671,1361,5674,2958,5693,5715,7574,5735,7555,5738,2909,7517,7508,2901,2897,5778,7460,1490,1498,7427,7418,5836,5841,7389,5887,5890,2761,5952,7333,7330,7326,7325,7319,7293,1642,6011,1647,7287,1650,6025,1667,6059,7238,2657,7226,1705,6081,6086,1720,2626,6119,6142,6152,1772,2578,6164,1784,6191,6195,2551,6205,1827,6212,6213,1840,7064,2503,2501,1879,6297,7016,1904,2465,1916,6976,2461,1931,1937,1940,6376,1989,1992
,2396,2003,6863,6862,6397,6406,2367,6788,2324,6763,2076,2095,6502,6507,6727,6514,6720,6525,2120,6535,6543,2137,6563,6665,6578,6589,9440,9462,9521,9526,9599,9676,9683,9724,9727,9729,9753,9792,9805,9810,9896,9907,9921,9965,9968,9419,9458,9473,9506,9550,9567,9570,9582,9603,9623,9673,9696,9738,9769,9791,9801,9811,9851,9910,9919,9926,9929,9943,9990,9999,10000,10002,4273,9345,9327,4236,9317,9303,9302,4219,4214,4335,9270,4341,9212,9207,9203,9202,4165,4160,4154,4149,4414,9113,4116,4450,9079,4459,9060,9053
,4466,4081,4486,4491,8991,8972,4554,4557,4019,4017,4004,3998,3989,3984,3966,8859,8839,4619,8827,8825,4653,338,4682,362,4696,377,380,381,383,4706,3860,8717,4716,415,8702,8683,8680,4742,4768,4785,8654,4798,492,4830,518,3730,3729,3714,4886,4890,8527,4912,4917,3661,3660,3634,8467,4964,3618,3616,663,4992,4999,8384,5023,8354,5064,8344,3541,5080,3521,3520,775,5103,8296,8279,8276,8262,3473,5156,3449,8223,8218,872,3424,3417,896,5206,8134,8131,8117,5231,955,3355,8074,5255,5266,5269,978,984
,8045,3307,5311,8005,3299,3296,3291,3280,1043,3278,5333,3276,7971,7962,7945,3261,1077,7929,5368,5370,1096,1101,5382,1113,7887,1125,5426,3162,5455,5474,7817,3130,3128,1199,5488,3104,1220,5513,7776,5541,5543,1263,5564,1266,7742,7736,1292,3034,5600,5632,2987,1341,5665,1350,2968,7635,1384,7604,1387,7585,1441,7519,2891,2890,2889,5807,2852,7443,1505,5811,5818,2845,1537,1539,5847,5872,1553,1562,7373,7362,7361,5943,7347,2738,2715,6000,7299,7289,2686,1666,2652,1700,2633,6095,2625,6105,6108,6111,6112,2612
,6122,2594,6140,7157,7152,1779,1785,7123,1795,7117,1807,7112,6201,7096,7086,1839,2523,2521,6233,1860,6242,2510,1868,1875,2477,6305,6994,6354,6917,2426,6372,2419,6392,6860,6853,2384,2021,6409,6838,6423,6434,6442,2315,6768,2073,2302,6497,2098,2117,2124,2126,6698,2252,6586,2204,2181,6641,6620,4262,4293,4231,4221,4356,4368,4369,4169,4387,4163,4147,4127,4461,4099,4094,4484,4518,4536,4024,4002,4577,4596,3954,4615,3920,4654,3901,4688,4697,3866,4732,4740,3826,4761,3787,3759,3735,4849,3720,4863,4878,3672
,4924,4941,3653,4973,3611,3597,3593,5003,5015,5016,5046,5047,5053,3522,3517,3498,3483,5130,5152,3444,3443,5184,5201,3398,5232,3376,3375,3369,5235,5246,3352,5274,5303,3309,5305,5308,5316,3274,3270,3268,5347,5350,5379,3221,3190,5431,3173,5435,3163,3160,3158,5451,5457,3141,3125,5499,3066,5573,5575,5597,3005,3001,5704,2923,5752,5760,2912,2884,5781,2881,2879,5791,2870,5856,5863,5870,2804,5874,5879,5894,5900,5917,5928,2766,5941,2688,6027,6055,6056,2659,6065,6067,2645,6074,2601,6158,6187,6193,2517,6247
,6340,6352,2436,6370,2406,2403,6394,2376,6415,6421,6427,2341,6456,6459,2305,2303,6489,2294,6493,2243,2241,2235,2234,6587,6588,2211,2205,2173,2169,6663,6667,6676,6677,6680,6701,2109,6724,2102,6744,6747,2085,6759,2066,6782,2059,9268,6809,6825,2023,2020,2006,1991,1986,1968,1962,6913,6965,9150,6980,9147,1906,7008,7015,7022,7033,9125,1856,7069,7073,1851,1842,9112,7087,9111,1823,9086,7158,1759,9026,7165,9003,7188,8986,7248,8974,8966,8959,8956,224,1634,1607,7348,1583,1579,7374,7385,1554,7396,7398,8909
,1530,8898,1506,7457,278,7478,1467,1466,7498,8850,1451,1437,289,8847,8837,1405,7601,7605,1381,307,8829,7634,8828,1348,1335,7685,1330,1323,1315,327,7707,1304,7730,342,343,1273,8784,1264,1262,1261,7753,7771,1215,370,8764,1197,7818,8750,8748,1160,1159,1157,1135,8709,1121,423,7893,7901,7907,430,7913,442,7942,1046,1044,7977,7985,1025,8003,1004,1003,997,460,8044,8048,8057,8070,8078,947,8665,941,8102,933,8139,8660,890,8173,857,855,8225,8234,826,821,819,8255,8265,8285,779,758,8337
,8615,8613,8356,533,711,707,701,8397,677,8559,661,8555,643,8495,8538,597,8509,8519,9424,9472,9477,9481,9482,9522,9540,9565,9587,9598,9627,9646,9703,9741,9761,9777,9817,9825,9870,9878,9888,9917,9934,9980,9989,9475,9491,9527,9531,9535,9536,9537,9538,9544,9577,9578,9591,9593,9596,9616,9621,9635,9636,9716,9730,9762,9797,9807,9816,9835,9839,9899,9970,9982,10008,2192,2188,6619,6649,6652,6600,6653,4268,9389,9380,6565,4280,9353,2144,2242,6557,6696,4290,6546,6713,2114,6718,2271,6521,6721,2276,2281
,2100,6503,6737,9308,6478,6771,6780,2327,4320,6786,4202,6440,4195,6429,6832,9236,2382,2385,9225,9219,6389,9211,2412,4168,4167,9209,9183,2427,6906,2442,6926,9157,9153,1925,6330,6328,6316,4413,7013,9144,9143,4416,6293,6276,2496,6261,1876,6259,9130,6234,2519,1850,4121,9109,2539,4114,9088,1804,9083,9068,1781,7144,7146,4092,6149,4472,6126,4085,9021,1750,2611,7184,2639,7203,4061,2646,7219,1694,4514,7247,2663,2671,6051,7267,7269,7273,2690,4534,1654,222,6006,7306,225,4548,4030,7314,4028,4027,7321,7322
,7345,2745,1599,2747,1596,1595,1588,7358,4012,7368,1572,7378,1565,5881,8917,7402,1546,2809,4583,5852,5851,1540,1538,1532,5840,7421,5831,7424,4590,5822,1519,7434,7450,4601,8872,4608,2878,7468,7492,7507,2913,7537,3953,7543,1414,7559,301,7568,7581,7584,5712,2940,7586,2942,1394,5698,5696,8835,1372,2954,3943,2965,7676,5655,5647,3930,1325,2998,7690,5626,4652,5615,8805,8799,7724,3036,3039,3049,7740,4668,1265,1250,352,5542,7767,4678,5528,3891,4684,4686,1216,3107,5494,369,371,8766,7798,7810,1196,3127
,1188,1187,1182,8747,3143,5459,5453,8733,1154,1153,1146,7862,3853,8718,3182,3185,7876,3192,5402,1122,5394,3209,3211,3214,4725,5384,3835,5377,3238,5371,1091,1089,8685,7919,439,3248,7922,8684,1080,7932,1068,7946,5348,7956,8677,7968,1029,3294,1023,1005,5299,5298,3319,4770,5283,8049,8053,4772,5263,8069,5257,4774,4776,466,8087,5238,8105,5230,910,3396,906,8148,5198,5194,887,8192,8198,8205,865,863,3771,4804,3455,3763,5144,834,8242,5135,822,4813,3475,5131,816,8260,5115,8274,3495,800,8627,3507
,787,506,781,508,3518,8313,8317,8330,3526,3537,8345,8348,5058,8349,3553,3558,5043,712,8413,8420,8421,667,553,3614,557,654,4855,646,558,642,4967,8552,8466,3632,3636,3638,567,3642,8480,4945,628,4942,568,569,8487,570,3659,3663,8503,578,3680,4894,593,3692,2189,2194,6637,6642,2203,4254,9400,2168,9381,6581,6664,6669,6569,6684,2145,6554,6552,2123,6711,4298,6729,6494,2292,6491,4306,9300,2306,2309,2074,9290,4313,2317,2325,4213,4318,4208,9279,6460,6455,6453,2340,9275,4344,4200,2047,2042
,6818,2360,6426,9252,6822,9246,2368,2032,4367,6836,9238,9237,2017,9224,6867,1999,9215,4380,1997,6385,2405,2407,4171,6383,1985,1982,6888,9174,6893,6363,2441,9166,9165,1936,9160,1932,6326,2463,6977,6312,1894,6295,2484,6292,6288,1887,6281,9142,9135,6271,6260,7038,6246,6232,4126,9118,7076,6228,6218,4436,1830,2538,9095,2547,6199,7107,9093,6190,7119,6182,6175,9062,4463,6162,2577,1771,1769,6148,1760,2593,2596,6118,1745,4078,1742,4076,7179,6100,6098,4485,4489,4501,7218,2649,7228,6063,8978,8976,7250,7251
,6044,8970,8968,8963,8962,7265,1661,2692,8955,1643,5995,2712,5983,2717,2718,7318,1617,5966,233,7341,8938,236,4015,5936,4010,2765,2769,4006,2777,5901,8923,2790,2791,5877,3997,5867,8914,3994,5849,2822,1533,7413,2833,2834,5828,1502,3977,1499,2855,7449,2861,2864,3967,279,7473,7487,2885,1464,7500,5776,7502,5770,7513,5766,2907,8848,4610,3955,4611,5746,7552,2926,7554,5734,2932,5717,309,2961,4629,5676,7643,2971,316,7677,3931,7683,2991,321,3925,5629,3009,3919,7708,5593,1298,3032,3033,5588,3909,5579
,3047,1283,1278,5551,1256,4672,7760,1251,3886,5508,8771,8770,3122,7811,8757,7822,7824,7833,7838,3152,3858,7852,3157,1162,3161,3855,7860,7874,5420,3188,7878,5408,7880,419,3203,3207,3212,426,1118,3219,429,3234,3246,5361,5360,7927,4747,5337,1045,7982,1034,1021,4758,8008,4763,4767,5293,8031,5286,5281,5275,4771,5270,3340,5258,8667,962,8083,3361,5236,8090,3793,5233,934,3378,8116,473,916,5219,4790,8164,3415,8186,8645,8201,5175,3436,858,8215,4810,3448,844,841,839,3464,8248,3470,820,3480,3761
,809,5126,8273,3494,8280,8287,5108,8624,8308,762,8332,5096,512,5094,750,8618,740,3547,734,5041,722,8589,8365,534,8369,5019,539,4998,4993,8416,4990,658,4977,8459,8550,3630,4865,634,8477,566,4948,3646,8545,8490,612,3668,8496,4885,4895,588,8524,8532,9421,9444,9455,9470,9489,9525,9553,9563,9564,9589,9615,9649,9671,9679,9693,9709,9719,9763,9820,9889,9961,9978,9429,9434,9446,9459,9471,9501,9517,9518,9524,9583,9594,9595,9614,9643,9660,9677,9685,9689,9705,9706,9723,9765,9782,9794,9844,9854
,9913,9914,9923,9924,9992,6625,4265,2201,4255,2210,6593,6567,2231,4283,6685,6690,6695,4287,2133,2132,4294,6534,4234,2115,9314,9313,2269,6723,6511,4305,6731,6736,2097,2093,2090,2295,2296,2297,6748,6754,4218,6775,9286,6776,6474,6787,2346,6441,6812,6430,2359,9253,6424,2365,9245,6840,2383,6845,2012,9223,6857,2399,4382,1988,2417,2428,2429,6367,4157,6904,6939,1944,1933,9152,6985,4411,2470,1909,1890,4139,6263,7037,4131,7046,7056,6241,4128,2515,7089,7095,1828,1825,6202,7103,1817,7105,7109,1794,1788,7129
,4102,9034,2581,2585,4471,1765,6137,4474,7162,9025,9023,9016,2608,1747,7174,7178,1736,1735,2621,1731,8995,4500,1704,7229,2654,8984,6061,6058,4052,2669,2672,6048,7256,7274,4532,6020,6017,7302,7310,5984,1623,2722,5978,2728,2730,1614,4556,7340,5961,2742,4559,8933,1590,1589,237,2763,239,1570,4572,4007,7376,8926,5905,244,1564,4001,5888,7388,7390,7391,2797,1552,2807,8910,2817,4585,1534,4586,2832,8899,8883,7435,5814,5802,7458,1491,2867,3973,1486,1485,4604,3965,8864,5779,1465,8853,1454,1445,300,1421
,7548,7553,5729,303,1373,308,5683,2963,1365,3936,5672,2974,4642,4643,2978,7667,7668,5656,7687,1319,8815,5631,7695,3010,5623,7696,3017,1306,3022,5596,8787,1294,3912,7732,5581,4664,349,5550,1257,4671,3069,3071,5546,8773,3896,353,1244,5535,7773,8772,358,1226,1222,3883,5500,3880,365,4700,3120,3871,3869,5477,7816,1189,7821,1177,7828,8741,394,8734,5449,3856,5440,8730,7864,8729,8714,5418,3189,8695,4722,5399,3204,7884,3208,7888,7894,4729,7896,7899,2191,3227,1104,3235,1090,3252,5355,5352,1066,1061
,1056,5326,5324,7987,3818,1030,4754,3815,1019,454,5309,8014,1006,5304,8029,983,5276,975,8062,3342,968,8666,465,8085,3371,3372,8101,468,8106,8115,8664,8122,8135,474,8662,4789,3397,5207,8151,479,8168,481,5199,5197,8181,8184,5189,4795,488,8650,4803,853,8221,8222,3450,3458,5138,3465,3477,3479,3484,808,4814,5112,3500,3501,3758,791,504,789,5104,5102,3753,513,4831,8617,747,744,3540,743,4837,8352,731,8353,3559,4841,3741,3564,8597,3736,3734,8586,537,8385,5005,8387,8585,690,689,8396
,685,8567,3602,3607,4984,657,8461,559,8479,3641,4947,626,3651,8484,620,8494,4932,609,4884,576,3673,3676,600,4913,4905,8534,7900,9408,4266,4271,9379,9324,9322,9318,4299,9311,9292,9280,4322,4198,4358,9235,4183,9230,4176,4170,9210,9197,9180,4390,9164,4393,9139,4421,9063,9036,4469,4093,4473,4077,9007,4073,4071,4069,8996,8989,4062,4059,4050,8957,4546,8945,230,8940,8939,8924,8922,8921,3990,8907,8896,3981,4598,4602,3972,8869,3963,3949,302,3927,3921,8809,8793,3914,4657,8783,354,355,356,360
,3874,8756,8735,4714,405,8701,427,4735,444,8681,449,3822,3821,452,4751,8673,4759,8672,8671,3804,4779,8663,4791,3782,8639,4802,8636,3765,500,4832,3746,4842,8580,542,8565,8546,577,4887,7774,6130,6125,6124,7154,6123,7166,1752,1737,7183,1729,6156,7189,7195,7198,1714,6078,1782,7215,1706,1688,6174,2568,6181,6057,7254,7262,6038,1799,6031,1656,1805,7284,6019,7116,2553,7099,7295,1631,1629,7312,5986,1831,2719,2721,5974,1832,2732,1612,1609,5960,7090,1598,5948,7356,6225,7363,6227,5922,7061,5899,7042
,1560)
AND e1 = TRUE
ORDER BY i3;
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment