~ubuntu-branches/ubuntu/natty/mysql-5.1/natty-proposed

« back to all changes in this revision

Viewing changes to sql/sql_yacc.cc

  • Committer: Package Import Robot
  • Author(s): Marc Deslauriers
  • Date: 2012-02-22 08:30:45 UTC
  • mfrom: (1.4.1)
  • Revision ID: package-import@ubuntu.com-20120222083045-2rd53r4bnyx7qus4
Tags: 5.1.61-0ubuntu0.11.04.1
* SECURITY UPDATE: Update to 5.1.61 to fix multiple security issues
  (LP: #937869)
  - http://www.oracle.com/technetwork/topics/security/cpujan2012-366304.html
  - CVE-2011-2262
  - CVE-2012-0075
  - CVE-2012-0112
  - CVE-2012-0113
  - CVE-2012-0114
  - CVE-2012-0115
  - CVE-2012-0116
  - CVE-2012-0117
  - CVE-2012-0118
  - CVE-2012-0119
  - CVE-2012-0120
  - CVE-2012-0484
  - CVE-2012-0485
  - CVE-2012-0486
  - CVE-2012-0487
  - CVE-2012-0488
  - CVE-2012-0489
  - CVE-2012-0490
  - CVE-2012-0491
  - CVE-2012-0492
  - CVE-2012-0493
  - CVE-2012-0494
  - CVE-2012-0495
  - CVE-2012-0496

Show diffs side-by-side

added added

removed removed

Lines of Context:
76
76
/* Copy the first part of user declarations.  */
77
77
 
78
78
/* Line 189 of yacc.c  */
79
 
#line 23 "sql_yacc.yy"
 
79
#line 25 "sql_yacc.yy"
80
80
 
81
81
/* thd is passed as an argument to yyparse(), and subsequently to yylex().
82
82
** The type will be void*, so it must be  cast to (THD*) when used.
1857
1857
{
1858
1858
 
1859
1859
/* Line 214 of yacc.c  */
1860
 
#line 628 "sql_yacc.yy"
 
1860
#line 630 "sql_yacc.yy"
1861
1861
 
1862
1862
  int  num;
1863
1863
  ulong ulong_num;
1915
1915
/* Copy the second part of user declarations.  */
1916
1916
 
1917
1917
/* Line 264 of yacc.c  */
1918
 
#line 672 "sql_yacc.yy"
 
1918
#line 674 "sql_yacc.yy"
1919
1919
 
1920
1920
bool my_yyoverflow(short **a, YYSTYPE **b, ulong *yystacksize);
1921
1921
 
3191
3191
/* YYRLINE[YYN] -- source line where rule number YYN was defined.  */
3192
3192
static const yytype_uint16 yyrline[] =
3193
3193
{
3194
 
       0,  1515,  1515,  1528,  1527,  1552,  1559,  1561,  1565,  1566,
3195
 
    1571,  1572,  1573,  1574,  1575,  1576,  1577,  1578,  1579,  1580,
3196
 
    1581,  1582,  1583,  1584,  1585,  1586,  1587,  1588,  1589,  1590,
3197
 
    1591,  1592,  1593,  1594,  1595,  1596,  1597,  1598,  1599,  1600,
3198
 
    1601,  1602,  1603,  1604,  1605,  1606,  1607,  1608,  1609,  1610,
3199
 
    1611,  1612,  1613,  1614,  1615,  1616,  1617,  1618,  1619,  1620,
3200
 
    1621,  1625,  1635,  1636,  1640,  1650,  1657,  1668,  1667,  1678,
3201
 
    1680,  1684,  1685,  1689,  1702,  1701,  1721,  1720,  1731,  1732,
3202
 
    1736,  1740,  1744,  1748,  1752,  1756,  1761,  1765,  1769,  1773,
3203
 
    1777,  1781,  1786,  1790,  1794,  1810,  1814,  1826,  1825,  1859,
3204
 
    1858,  1870,  1868,  1881,  1879,  1891,  1890,  1903,  1902,  1910,
3205
 
    1914,  1918,  1922,  1929,  1942,  1943,  1947,  1951,  1955,  1959,
3206
 
    1963,  1967,  1971,  1979,  1978,  2010,  2009,  2016,  2023,  2024,
3207
 
    2029,  2034,  2043,  2049,  2055,  2057,  2064,  2065,  2069,  2075,
3208
 
    2084,  2085,  2093,  2093,  2151,  2152,  2153,  2154,  2155,  2156,
3209
 
    2157,  2158,  2159,  2160,  2161,  2162,  2163,  2168,  2182,  2198,
3210
 
    2217,  2218,  2222,  2223,  2228,  2230,  2232,  2234,  2236,  2238,
3211
 
    2240,  2246,  2247,  2248,  2252,  2256,  2264,  2263,  2276,  2278,
3212
 
    2281,  2283,  2287,  2291,  2298,  2300,  2304,  2305,  2310,  2329,
3213
 
    2355,  2357,  2361,  2362,  2366,  2392,  2393,  2394,  2395,  2399,
3214
 
    2400,  2404,  2405,  2410,  2413,  2440,  2439,  2504,  2520,  2519,
3215
 
    2567,  2593,  2593,  2616,  2617,  2622,  2624,  2629,  2652,  2660,
3216
 
    2677,  2678,  2682,  2686,  2695,  2702,  2709,  2719,  2734,  2752,
3217
 
    2753,  2757,  2758,  2759,  2760,  2761,  2762,  2763,  2764,  2765,
3218
 
    2766,  2767,  2768,  2769,  2774,  2773,  2780,  2780,  2837,  2836,
3219
 
    2865,  2865,  2879,  2932,  2975,  2996,  2995,  3017,  3036,  3038,
3220
 
    3039,  3043,  3063,  3086,  3088,  3104,  3086,  3123,  3125,  3126,
3221
 
    3130,  3131,  3136,  3142,  3135,  3163,  3162,  3178,  3179,  3183,
3222
 
    3184,  3189,  3193,  3188,  3214,  3218,  3213,  3237,  3247,  3252,
3223
 
    3251,  3287,  3288,  3293,  3292,  3325,  3325,  3340,  3339,  3375,
3224
 
    3387,  3389,  3386,  3416,  3415,  3436,  3438,  3443,  3445,  3447,
3225
 
    3464,  3469,  3475,  3482,  3483,  3491,  3497,  3506,  3512,  3518,
3226
 
    3519,  3523,  3523,  3528,  3529,  3530,  3534,  3535,  3536,  3540,
3227
 
    3544,  3545,  3546,  3550,  3551,  3552,  3553,  3554,  3555,  3556,
3228
 
    3557,  3561,  3565,  3566,  3567,  3571,  3572,  3573,  3574,  3575,
3229
 
    3579,  3583,  3584,  3585,  3589,  3590,  3591,  3592,  3593,  3594,
3230
 
    3595,  3599,  3603,  3604,  3605,  3609,  3610,  3611,  3616,  3624,
3231
 
    3632,  3640,  3652,  3664,  3669,  3674,  3682,  3690,  3698,  3706,
3232
 
    3714,  3722,  3730,  3743,  3756,  3769,  3771,  3775,  3780,  3793,
3233
 
    3794,  3845,  3846,  3849,  3863,  3880,  3885,  3883,  3893,  3895,
3234
 
    3894,  3901,  3900,  3933,  3934,  3939,  3938,  3971,  3970,  3987,
3235
 
    3991,  3998,  3997,  4001,  4000,  4004,  4003,  4009,  4010,  4015,
3236
 
    4016,  4020,  4021,  4025,  4036,  4051,  4067,  4068,  4084,  4086,
3237
 
    4085,  4090,  4088,  4099,  4100,  4104,  4115,  4131,  4132,  4148,
3238
 
    4149,  4172,  4173,  4178,  4177,  4202,  4213,  4233,  4248,  4266,
3239
 
    4278,  4294,  4295,  4299,  4309,  4310,  4314,  4331,  4390,  4402,
3240
 
    4429,  4430,  4435,  4434,  4472,  4477,  4478,  4482,  4483,  4487,
3241
 
    4489,  4495,  4497,  4499,  4501,  4503,  4505,  4515,  4544,  4514,
3242
 
    4558,  4559,  4563,  4564,  4568,  4569,  4573,  4574,  4578,  4579,
3243
 
    4583,  4584,  4588,  4592,  4593,  4596,  4598,  4602,  4603,  4607,
3244
 
    4608,  4609,  4613,  4618,  4625,  4630,  4635,  4640,  4645,  4650,
3245
 
    4655,  4670,  4676,  4681,  4686,  4691,  4696,  4709,  4710,  4711,
3246
 
    4716,  4721,  4726,  4728,  4730,  4732,  4738,  4746,  4764,  4781,
3247
 
    4804,  4818,  4819,  4820,  4821,  4822,  4823,  4827,  4828,  4829,
3248
 
    4833,  4834,  4838,  4839,  4840,  4841,  4845,  4846,  4850,  4851,
3249
 
    4855,  4856,  4863,  4868,  4874,  4880,  4886,  4906,  4910,  4916,
3250
 
    4918,  4922,  4926,  4927,  4931,  4936,  4935,  4958,  4959,  4960,
3251
 
    4961,  4966,  4970,  4975,  4980,  4984,  4989,  4994,  5000,  5005,
3252
 
    5011,  5015,  5020,  5025,  5027,  5029,  5031,  5044,  5046,  5051,
3253
 
    5056,  5068,  5073,  5078,  5083,  5085,  5087,  5089,  5091,  5093,
3254
 
    5095,  5097,  5100,  5099,  5104,  5103,  5107,  5109,  5118,  5119,
3255
 
    5120,  5125,  5126,  5127,  5128,  5129,  5133,  5137,  5138,  5142,
3256
 
    5143,  5147,  5148,  5149,  5150,  5151,  5155,  5156,  5157,  5158,
3257
 
    5159,  5163,  5168,  5170,  5176,  5177,  5179,  5184,  5193,  5194,
3258
 
    5198,  5199,  5203,  5204,  5205,  5209,  5210,  5211,  5212,  5215,
3259
 
    5216,  5219,  5220,  5224,  5225,  5229,  5230,  5234,  5235,  5236,
3260
 
    5237,  5244,  5245,  5251,  5257,  5263,  5269,  5270,  5286,  5292,
3261
 
    5297,  5298,  5302,  5310,  5314,  5315,  5319,  5320,  5324,  5333,
3262
 
    5337,  5338,  5342,  5353,  5354,  5358,  5359,  5363,  5364,  5368,
3263
 
    5369,  5370,  5371,  5380,  5381,  5385,  5386,  5390,  5391,  5392,
3264
 
    5401,  5404,  5406,  5411,  5410,  5423,  5424,  5428,  5435,  5445,
3265
 
    5446,  5450,  5451,  5455,  5456,  5457,  5458,  5459,  5463,  5464,
3266
 
    5465,  5466,  5467,  5471,  5475,  5476,  5480,  5481,  5485,  5486,
3267
 
    5490,  5491,  5492,  5496,  5497,  5501,  5505,  5518,  5530,  5531,
3268
 
    5535,  5536,  5540,  5541,  5545,  5546,  5550,  5551,  5555,  5556,
3269
 
    5560,  5561,  5565,  5566,  5570,  5575,  5576,  5580,  5584,  5585,
3270
 
    5598,  5599,  5600,  5604,  5605,  5609,  5615,  5629,  5630,  5634,
3271
 
    5635,  5639,  5640,  5648,  5647,  5673,  5672,  5686,  5698,  5697,
3272
 
    5716,  5715,  5734,  5733,  5752,  5746,  5766,  5765,  5798,  5803,
3273
 
    5808,  5813,  5818,  5828,  5829,  5830,  5831,  5835,  5836,  5848,
3274
 
    5849,  5853,  5854,  5857,  5859,  5860,  5861,  5863,  5865,  5866,
3275
 
    5875,  5876,  5880,  5889,  5887,  5897,  5907,  5906,  5916,  5914,
3276
 
    5924,  5931,  5935,  5942,  5946,  5951,  5950,  5966,  5968,  5973,
3277
 
    5982,  5981,  5997,  6001,  6000,  6012,  6013,  6017,  6032,  6033,
3278
 
    6037,  6046,  6047,  6051,  6056,  6055,  6063,  6072,  6062,  6084,
3279
 
    6093,  6097,  6106,  6115,  6121,  6127,  6136,  6145,  6164,  6185,
3280
 
    6190,  6194,  6202,  6203,  6207,  6208,  6212,  6213,  6214,  6218,
3281
 
    6219,  6220,  6224,  6225,  6226,  6227,  6236,  6235,  6246,  6254,
3282
 
    6253,  6263,  6272,  6281,  6282,  6289,  6289,  6295,  6296,  6300,
3283
 
    6301,  6302,  6306,  6307,  6323,  6324,  6329,  6328,  6340,  6339,
3284
 
    6351,  6350,  6360,  6361,  6362,  6367,  6366,  6379,  6380,  6384,
3285
 
    6385,  6389,  6390,  6391,  6396,  6395,  6408,  6417,  6416,  6434,
3286
 
    6435,  6439,  6440,  6444,  6445,  6446,  6447,  6448,  6449,  6454,
3287
 
    6453,  6466,  6467,  6468,  6473,  6472,  6478,  6485,  6490,  6498,
3288
 
    6499,  6503,  6516,  6525,  6526,  6530,  6539,  6540,  6545,  6544,
3289
 
    6554,  6555,  6559,  6568,  6568,  6579,  6580,  6585,  6586,  6595,
3290
 
    6604,  6605,  6609,  6639,  6644,  6643,  6663,  6671,  6663,  6678,
3291
 
    6679,  6680,  6681,  6682,  6686,  6693,  6700,  6702,  6713,  6714,
3292
 
    6718,  6719,  6726,  6727,  6728,  6729,  6735,  6741,  6747,  6761,
3293
 
    6764,  6766,  6774,  6785,  6786,  6787,  6802,  6828,  6834,  6840,
3294
 
    6841,  6845,  6846,  6847,  6848,  6849,  6853,  6854,  6859,  6910,
3295
 
    6917,  6960,  6966,  6972,  6978,  6984,  6990,  6996,  7002,  7006,
3296
 
    7012,  7018,  7024,  7030,  7036,  7040,  7046,  7056,  7062,  7070,
3297
 
    7076,  7086,  7092,  7101,  7111,  7117,  7127,  7133,  7142,  7146,
3298
 
    7152,  7158,  7164,  7170,  7176,  7182,  7188,  7194,  7200,  7206,
3299
 
    7212,  7218,  7224,  7230,  7234,  7235,  7239,  7240,  7244,  7245,
3300
 
    7249,  7250,  7254,  7255,  7256,  7257,  7258,  7259,  7263,  7264,
3301
 
    7268,  7269,  7270,  7271,  7272,  7273,  7285,  7286,  7287,  7288,
3302
 
    7289,  7295,  7299,  7305,  7311,  7317,  7323,  7325,  7332,  7339,
3303
 
    7345,  7347,  7356,  7363,  7371,  7377,  7384,  7390,  7404,  7411,
3304
 
    7427,  7433,  7439,  7447,  7453,  7459,  7465,  7471,  7486,  7498,
3305
 
    7504,  7510,  7516,  7522,  7528,  7534,  7540,  7546,  7552,  7558,
3306
 
    7564,  7570,  7576,  7582,  7588,  7594,  7602,  7623,  7630,  7636,
3307
 
    7643,  7650,  7657,  7664,  7671,  7677,  7683,  7690,  7697,  7703,
3308
 
    7710,  7716,  7722,  7728,  7734,  7740,  7758,  7768,  7774,  7780,
3309
 
    7787,  7794,  7809,  7815,  7821,  7827,  7833,  7840,  7846,  7852,
3310
 
    7858,  7864,  7876,  7882,  7888,  7894,  7900,  7912,  7918,  7934,
3311
 
    7940,  7947,  7954,  7961,  7968,  7975,  7979,  7999,  7998,  8066,
3312
 
    8098,  8100,  8105,  8106,  8110,  8111,  8115,  8116,  8120,  8127,
3313
 
    8135,  8161,  8167,  8173,  8179,  8185,  8191,  8200,  8207,  8209,
3314
 
    8206,  8216,  8227,  8233,  8239,  8245,  8251,  8257,  8263,  8269,
3315
 
    8275,  8282,  8281,  8300,  8299,  8314,  8324,  8332,  8348,  8349,
3316
 
    8354,  8359,  8364,  8367,  8380,  8379,  8396,  8398,  8400,  8402,
3317
 
    8404,  8406,  8408,  8410,  8412,  8414,  8416,  8421,  8422,  8426,
3318
 
    8433,  8441,  8442,  8446,  8453,  8461,  8462,  8466,  8467,  8471,
3319
 
    8479,  8489,  8490,  8499,  8510,  8511,  8516,  8517,  8537,  8539,
3320
 
    8543,  8541,  8558,  8556,  8574,  8572,  8579,  8588,  8586,  8604,
3321
 
    8603,  8613,  8624,  8622,  8641,  8640,  8651,  8662,  8663,  8664,
3322
 
    8669,  8669,  8682,  8704,  8757,  8756,  8779,  8796,  8779,  8803,
3323
 
    8807,  8833,  8834,  8839,  8843,  8844,  8845,  8849,  8850,  8855,
3324
 
    8854,  8860,  8859,  8867,  8868,  8871,  8873,  8873,  8877,  8877,
3325
 
    8882,  8883,  8887,  8889,  8894,  8895,  8899,  8910,  8923,  8924,
3326
 
    8925,  8926,  8927,  8928,  8929,  8930,  8931,  8932,  8933,  8934,
3327
 
    8938,  8939,  8958,  8959,  8960,  8961,  8962,  8963,  8964,  8965,
3328
 
    8966,  8970,  8971,  8972,  8973,  8976,  8978,  8979,  8983,  8984,
3329
 
    8992,  8994,  8998,  9000,  8999,  9013,  9016,  9015,  9030,  9036,
3330
 
    9051,  9053,  9057,  9059,  9064,  9065,  9078,  9096,  9100,  9101,
3331
 
    9105,  9118,  9120,  9125,  9124,  9159,  9161,  9166,  9167,  9168,
3332
 
    9173,  9179,  9183,  9184,  9188,  9192,  9199,  9206,  9216,  9220,
3333
 
    9226,  9232,  9242,  9246,  9255,  9256,  9257,  9258,  9259,  9260,
3334
 
    9264,  9265,  9266,  9267,  9268,  9272,  9273,  9274,  9275,  9276,
3335
 
    9280,  9281,  9282,  9283,  9287,  9292,  9293,  9296,  9299,  9298,
3336
 
    9329,  9330,  9334,  9335,  9339,  9351,  9351,  9362,  9363,  9367,
3337
 
    9386,  9419,  9418,  9431,  9439,  9430,  9441,  9453,  9465,  9464,
3338
 
    9481,  9488,  9488,  9502,  9509,  9532,  9553,  9565,  9569,  9575,
3339
 
    9581,  9588,  9593,  9598,  9608,  9609,  9613,  9621,  9622,  9626,
3340
 
    9636,  9637,  9641,  9642,  9650,  9660,  9649,  9670,  9677,  9669,
3341
 
    9687,  9699,  9700,  9701,  9705,  9706,  9710,  9711,  9715,  9724,
3342
 
    9725,  9726,  9728,  9727,  9738,  9739,  9743,  9744,  9746,  9745,
3343
 
    9749,  9748,  9754,  9755,  9759,  9760,  9764,  9774,  9775,  9779,
3344
 
    9780,  9785,  9784,  9798,  9799,  9803,  9808,  9816,  9817,  9825,
3345
 
    9827,  9827,  9835,  9844,  9834,  9866,  9867,  9871,  9879,  9880,
3346
 
    9884,  9894,  9895,  9902,  9901,  9915,  9914,  9923,  9922,  9930,
3347
 
    9929,  9939,  9940,  9944,  9956,  9971,  9972,  9976,  9977,  9981,
3348
 
    9982,  9983,  9987,  9997,  9999, 10002, 10004, 10007, 10008, 10011,
3349
 
   10015, 10019, 10023, 10027, 10031, 10035, 10039, 10043, 10051, 10054,
3350
 
   10064, 10063, 10077, 10084, 10092, 10100, 10108, 10116, 10124, 10132,
3351
 
   10139, 10141, 10143, 10152, 10165, 10169, 10174, 10173, 10178, 10187,
3352
 
   10192, 10200, 10207, 10212, 10217, 10222, 10224, 10226, 10228, 10230,
3353
 
   10232, 10239, 10247, 10259, 10271, 10273, 10281, 10288, 10295, 10305,
3354
 
   10312, 10318, 10327, 10335, 10339, 10343, 10350, 10357, 10363, 10370,
3355
 
   10377, 10387, 10397, 10405, 10407, 10409, 10414, 10415, 10418, 10420,
3356
 
   10424, 10425, 10429, 10430, 10434, 10435, 10439, 10440, 10444, 10445,
3357
 
   10448, 10450, 10457, 10468, 10467, 10481, 10480, 10490, 10491, 10495,
3358
 
   10496, 10497, 10501, 10502, 10503, 10518, 10517, 10529, 10530, 10535,
3359
 
   10534, 10537, 10539, 10541, 10543, 10545, 10547, 10549, 10551, 10553,
3360
 
   10555, 10560, 10561, 10566, 10565, 10575, 10576, 10580, 10581, 10582,
3361
 
   10587, 10586, 10597, 10601, 10605, 10617, 10627, 10628, 10629, 10635,
3362
 
   10647, 10646, 10659, 10677, 10688, 10698, 10676, 10702, 10712, 10713,
3363
 
   10717, 10718, 10730, 10734, 10735, 10736, 10739, 10741, 10745, 10746,
3364
 
   10750, 10755, 10762, 10767, 10774, 10776, 10780, 10781, 10785, 10790,
3365
 
   10797, 10799, 10807, 10808, 10809, 10813, 10815, 10820, 10821, 10830,
3366
 
   10831, 10837, 10861, 10873, 10884, 10903, 10911, 10923, 10938, 10959,
3367
 
   10960, 10961, 10969, 10970, 10971, 10978, 10984, 10990, 10996, 11002,
3368
 
   11031, 11059, 11060, 11061, 11065, 11075, 11085, 11091, 11100, 11115,
3369
 
   11116, 11120, 11129, 11145, 11149, 11196, 11200, 11218, 11222, 11301,
3370
 
   11326, 11357, 11358, 11374, 11384, 11388, 11394, 11400, 11410, 11416,
3371
 
   11425, 11435, 11436, 11465, 11481, 11497, 11514, 11515, 11526, 11527,
3372
 
   11538, 11539, 11540, 11544, 11558, 11577, 11592, 11593, 11594, 11595,
3373
 
   11596, 11597, 11598, 11599, 11600, 11601, 11602, 11603, 11604, 11605,
3374
 
   11606, 11607, 11608, 11609, 11610, 11611, 11612, 11613, 11614, 11615,
 
3194
       0,  1517,  1517,  1530,  1529,  1554,  1561,  1563,  1567,  1568,
 
3195
    1573,  1574,  1575,  1576,  1577,  1578,  1579,  1580,  1581,  1582,
 
3196
    1583,  1584,  1585,  1586,  1587,  1588,  1589,  1590,  1591,  1592,
 
3197
    1593,  1594,  1595,  1596,  1597,  1598,  1599,  1600,  1601,  1602,
 
3198
    1603,  1604,  1605,  1606,  1607,  1608,  1609,  1610,  1611,  1612,
 
3199
    1613,  1614,  1615,  1616,  1617,  1618,  1619,  1620,  1621,  1622,
 
3200
    1623,  1627,  1637,  1638,  1642,  1652,  1659,  1670,  1669,  1680,
 
3201
    1682,  1686,  1687,  1691,  1704,  1703,  1723,  1722,  1733,  1734,
 
3202
    1738,  1742,  1746,  1750,  1754,  1758,  1763,  1767,  1771,  1775,
 
3203
    1779,  1783,  1788,  1792,  1796,  1812,  1816,  1828,  1827,  1861,
 
3204
    1860,  1872,  1870,  1883,  1881,  1893,  1892,  1905,  1904,  1912,
 
3205
    1916,  1920,  1924,  1931,  1944,  1945,  1949,  1953,  1957,  1961,
 
3206
    1965,  1969,  1973,  1981,  1980,  2012,  2011,  2018,  2025,  2026,
 
3207
    2032,  2038,  2048,  2054,  2060,  2062,  2069,  2070,  2074,  2080,
 
3208
    2089,  2090,  2098,  2098,  2156,  2157,  2158,  2159,  2160,  2161,
 
3209
    2162,  2163,  2164,  2165,  2166,  2167,  2168,  2173,  2187,  2203,
 
3210
    2222,  2223,  2227,  2228,  2233,  2235,  2237,  2239,  2241,  2243,
 
3211
    2245,  2251,  2252,  2253,  2257,  2261,  2269,  2268,  2281,  2283,
 
3212
    2286,  2288,  2292,  2296,  2303,  2305,  2309,  2310,  2315,  2334,
 
3213
    2360,  2362,  2366,  2367,  2371,  2397,  2398,  2399,  2400,  2404,
 
3214
    2405,  2409,  2410,  2415,  2418,  2445,  2444,  2509,  2525,  2524,
 
3215
    2572,  2598,  2598,  2621,  2622,  2627,  2629,  2634,  2657,  2665,
 
3216
    2682,  2683,  2687,  2691,  2700,  2707,  2714,  2724,  2739,  2757,
 
3217
    2758,  2762,  2763,  2764,  2765,  2766,  2767,  2768,  2769,  2770,
 
3218
    2771,  2772,  2773,  2774,  2779,  2778,  2785,  2785,  2842,  2841,
 
3219
    2870,  2870,  2884,  2937,  2980,  3001,  3000,  3022,  3041,  3043,
 
3220
    3044,  3048,  3068,  3091,  3093,  3109,  3091,  3128,  3130,  3131,
 
3221
    3135,  3136,  3141,  3147,  3140,  3168,  3167,  3183,  3184,  3188,
 
3222
    3189,  3194,  3198,  3193,  3219,  3223,  3218,  3242,  3252,  3257,
 
3223
    3256,  3292,  3293,  3298,  3297,  3330,  3330,  3345,  3344,  3380,
 
3224
    3392,  3394,  3391,  3421,  3420,  3441,  3443,  3448,  3450,  3452,
 
3225
    3469,  3474,  3480,  3487,  3488,  3496,  3502,  3511,  3517,  3523,
 
3226
    3524,  3528,  3528,  3533,  3534,  3535,  3539,  3540,  3541,  3545,
 
3227
    3549,  3550,  3551,  3555,  3556,  3557,  3558,  3559,  3560,  3561,
 
3228
    3562,  3566,  3570,  3571,  3572,  3576,  3577,  3578,  3579,  3580,
 
3229
    3584,  3588,  3589,  3590,  3594,  3595,  3596,  3597,  3598,  3599,
 
3230
    3600,  3604,  3608,  3609,  3610,  3614,  3615,  3616,  3621,  3629,
 
3231
    3637,  3645,  3657,  3669,  3674,  3679,  3687,  3695,  3703,  3711,
 
3232
    3719,  3727,  3735,  3748,  3761,  3774,  3776,  3780,  3785,  3798,
 
3233
    3799,  3850,  3851,  3854,  3868,  3885,  3890,  3888,  3898,  3900,
 
3234
    3899,  3906,  3905,  3938,  3939,  3944,  3943,  3976,  3975,  3992,
 
3235
    3996,  4003,  4002,  4006,  4005,  4009,  4008,  4014,  4015,  4020,
 
3236
    4021,  4025,  4026,  4030,  4041,  4056,  4072,  4073,  4089,  4091,
 
3237
    4090,  4095,  4093,  4104,  4105,  4109,  4120,  4136,  4137,  4153,
 
3238
    4154,  4177,  4178,  4183,  4182,  4207,  4218,  4238,  4253,  4271,
 
3239
    4283,  4299,  4300,  4304,  4314,  4315,  4319,  4336,  4395,  4407,
 
3240
    4434,  4435,  4440,  4439,  4477,  4482,  4483,  4487,  4488,  4492,
 
3241
    4494,  4500,  4502,  4504,  4506,  4508,  4510,  4520,  4549,  4519,
 
3242
    4563,  4564,  4568,  4569,  4573,  4574,  4578,  4579,  4583,  4584,
 
3243
    4588,  4589,  4593,  4597,  4598,  4601,  4603,  4607,  4608,  4612,
 
3244
    4613,  4614,  4618,  4623,  4630,  4635,  4640,  4645,  4650,  4655,
 
3245
    4660,  4675,  4681,  4686,  4691,  4696,  4701,  4714,  4715,  4716,
 
3246
    4721,  4726,  4731,  4733,  4735,  4737,  4743,  4751,  4769,  4786,
 
3247
    4809,  4823,  4824,  4825,  4826,  4827,  4828,  4832,  4833,  4834,
 
3248
    4838,  4839,  4843,  4844,  4845,  4846,  4850,  4851,  4855,  4856,
 
3249
    4860,  4861,  4868,  4873,  4879,  4885,  4891,  4911,  4915,  4921,
 
3250
    4923,  4927,  4931,  4932,  4936,  4941,  4940,  4963,  4964,  4965,
 
3251
    4966,  4971,  4975,  4980,  4985,  4989,  4994,  4999,  5005,  5010,
 
3252
    5016,  5020,  5025,  5030,  5032,  5034,  5036,  5049,  5051,  5056,
 
3253
    5061,  5073,  5078,  5083,  5088,  5090,  5092,  5094,  5096,  5098,
 
3254
    5100,  5102,  5105,  5104,  5109,  5108,  5112,  5114,  5123,  5124,
 
3255
    5125,  5130,  5131,  5132,  5133,  5134,  5138,  5142,  5143,  5147,
 
3256
    5148,  5152,  5153,  5154,  5155,  5156,  5160,  5161,  5162,  5163,
 
3257
    5164,  5168,  5173,  5175,  5181,  5182,  5184,  5189,  5198,  5199,
 
3258
    5203,  5204,  5208,  5209,  5210,  5214,  5215,  5216,  5217,  5220,
 
3259
    5221,  5224,  5225,  5229,  5230,  5234,  5235,  5239,  5240,  5241,
 
3260
    5242,  5249,  5250,  5256,  5262,  5268,  5274,  5275,  5291,  5297,
 
3261
    5302,  5303,  5307,  5315,  5319,  5320,  5324,  5325,  5329,  5338,
 
3262
    5342,  5343,  5347,  5358,  5359,  5363,  5364,  5368,  5369,  5373,
 
3263
    5374,  5375,  5376,  5385,  5386,  5390,  5391,  5395,  5396,  5397,
 
3264
    5406,  5409,  5411,  5416,  5415,  5428,  5429,  5433,  5440,  5450,
 
3265
    5451,  5455,  5456,  5460,  5461,  5462,  5463,  5464,  5468,  5469,
 
3266
    5470,  5471,  5472,  5476,  5480,  5481,  5485,  5486,  5490,  5491,
 
3267
    5495,  5496,  5497,  5501,  5502,  5506,  5510,  5523,  5535,  5536,
 
3268
    5540,  5541,  5545,  5546,  5550,  5551,  5555,  5556,  5560,  5561,
 
3269
    5565,  5566,  5570,  5571,  5575,  5580,  5581,  5585,  5589,  5590,
 
3270
    5603,  5604,  5605,  5609,  5610,  5614,  5620,  5634,  5635,  5639,
 
3271
    5640,  5644,  5645,  5653,  5652,  5678,  5677,  5691,  5703,  5702,
 
3272
    5721,  5720,  5739,  5738,  5757,  5751,  5771,  5770,  5803,  5808,
 
3273
    5813,  5818,  5823,  5833,  5834,  5835,  5836,  5840,  5841,  5853,
 
3274
    5854,  5858,  5859,  5862,  5864,  5865,  5866,  5868,  5870,  5871,
 
3275
    5880,  5881,  5885,  5894,  5892,  5902,  5912,  5911,  5921,  5919,
 
3276
    5929,  5936,  5940,  5947,  5951,  5956,  5955,  5971,  5973,  5978,
 
3277
    5987,  5986,  6002,  6006,  6005,  6017,  6018,  6022,  6037,  6038,
 
3278
    6042,  6051,  6052,  6056,  6061,  6060,  6068,  6077,  6067,  6089,
 
3279
    6098,  6102,  6111,  6120,  6126,  6132,  6141,  6150,  6169,  6190,
 
3280
    6195,  6199,  6207,  6208,  6212,  6213,  6217,  6218,  6219,  6223,
 
3281
    6224,  6225,  6229,  6230,  6231,  6232,  6241,  6240,  6251,  6259,
 
3282
    6258,  6268,  6277,  6286,  6287,  6294,  6294,  6300,  6301,  6305,
 
3283
    6306,  6307,  6311,  6312,  6328,  6329,  6334,  6333,  6345,  6344,
 
3284
    6356,  6355,  6365,  6366,  6367,  6372,  6371,  6384,  6385,  6389,
 
3285
    6390,  6394,  6395,  6396,  6401,  6400,  6413,  6422,  6421,  6439,
 
3286
    6440,  6444,  6445,  6449,  6450,  6451,  6452,  6453,  6454,  6459,
 
3287
    6458,  6471,  6472,  6473,  6478,  6477,  6483,  6490,  6495,  6503,
 
3288
    6504,  6508,  6521,  6530,  6531,  6535,  6544,  6545,  6550,  6549,
 
3289
    6559,  6560,  6564,  6573,  6573,  6584,  6585,  6590,  6591,  6600,
 
3290
    6609,  6610,  6614,  6644,  6649,  6648,  6668,  6676,  6668,  6683,
 
3291
    6684,  6685,  6686,  6687,  6691,  6698,  6705,  6707,  6718,  6719,
 
3292
    6723,  6724,  6731,  6732,  6733,  6734,  6740,  6746,  6752,  6766,
 
3293
    6769,  6771,  6779,  6790,  6791,  6792,  6807,  6833,  6839,  6845,
 
3294
    6846,  6850,  6851,  6852,  6853,  6854,  6858,  6859,  6864,  6915,
 
3295
    6922,  6965,  6971,  6977,  6983,  6989,  6995,  7001,  7007,  7011,
 
3296
    7017,  7023,  7029,  7035,  7041,  7045,  7051,  7061,  7067,  7075,
 
3297
    7081,  7091,  7097,  7106,  7116,  7122,  7132,  7138,  7147,  7151,
 
3298
    7157,  7163,  7169,  7175,  7181,  7187,  7193,  7199,  7205,  7211,
 
3299
    7217,  7223,  7229,  7235,  7239,  7240,  7244,  7245,  7249,  7250,
 
3300
    7254,  7255,  7259,  7260,  7261,  7262,  7263,  7264,  7268,  7269,
 
3301
    7273,  7274,  7275,  7276,  7277,  7278,  7290,  7291,  7292,  7293,
 
3302
    7294,  7300,  7304,  7310,  7316,  7322,  7328,  7330,  7337,  7344,
 
3303
    7350,  7352,  7361,  7368,  7376,  7382,  7389,  7395,  7409,  7416,
 
3304
    7432,  7438,  7444,  7452,  7458,  7464,  7470,  7476,  7491,  7503,
 
3305
    7509,  7515,  7521,  7527,  7533,  7539,  7545,  7551,  7557,  7563,
 
3306
    7569,  7575,  7581,  7587,  7593,  7599,  7607,  7628,  7635,  7641,
 
3307
    7648,  7655,  7662,  7669,  7676,  7682,  7688,  7695,  7702,  7708,
 
3308
    7715,  7721,  7727,  7733,  7739,  7745,  7763,  7773,  7779,  7785,
 
3309
    7792,  7799,  7814,  7820,  7826,  7832,  7838,  7845,  7851,  7857,
 
3310
    7863,  7869,  7881,  7887,  7893,  7899,  7905,  7917,  7923,  7939,
 
3311
    7945,  7952,  7959,  7966,  7973,  7980,  7984,  8004,  8003,  8076,
 
3312
    8118,  8120,  8125,  8126,  8130,  8131,  8135,  8136,  8140,  8147,
 
3313
    8155,  8181,  8187,  8193,  8199,  8205,  8211,  8220,  8227,  8229,
 
3314
    8226,  8236,  8247,  8253,  8259,  8265,  8271,  8277,  8283,  8289,
 
3315
    8295,  8302,  8301,  8320,  8319,  8334,  8344,  8352,  8368,  8369,
 
3316
    8374,  8379,  8384,  8387,  8400,  8399,  8416,  8418,  8420,  8422,
 
3317
    8424,  8426,  8428,  8430,  8432,  8434,  8436,  8441,  8442,  8446,
 
3318
    8453,  8461,  8462,  8466,  8473,  8481,  8482,  8486,  8487,  8491,
 
3319
    8499,  8509,  8510,  8519,  8530,  8531,  8536,  8537,  8557,  8559,
 
3320
    8563,  8561,  8578,  8576,  8594,  8592,  8599,  8608,  8606,  8624,
 
3321
    8623,  8633,  8644,  8642,  8661,  8660,  8671,  8682,  8683,  8684,
 
3322
    8689,  8689,  8702,  8724,  8777,  8776,  8799,  8816,  8799,  8823,
 
3323
    8827,  8853,  8854,  8859,  8863,  8864,  8865,  8869,  8870,  8875,
 
3324
    8874,  8880,  8879,  8887,  8888,  8891,  8893,  8893,  8897,  8897,
 
3325
    8902,  8903,  8907,  8909,  8914,  8915,  8919,  8930,  8943,  8944,
 
3326
    8945,  8946,  8947,  8948,  8949,  8950,  8951,  8952,  8953,  8954,
 
3327
    8958,  8959,  8978,  8979,  8980,  8981,  8982,  8983,  8984,  8985,
 
3328
    8986,  8990,  8991,  8992,  8993,  8996,  8998,  8999,  9003,  9004,
 
3329
    9012,  9014,  9018,  9020,  9019,  9033,  9036,  9035,  9050,  9056,
 
3330
    9071,  9073,  9077,  9079,  9084,  9085,  9098,  9116,  9120,  9121,
 
3331
    9125,  9138,  9140,  9145,  9144,  9179,  9181,  9186,  9187,  9188,
 
3332
    9193,  9199,  9203,  9204,  9208,  9212,  9219,  9226,  9236,  9240,
 
3333
    9246,  9252,  9262,  9266,  9275,  9276,  9277,  9278,  9279,  9280,
 
3334
    9284,  9285,  9286,  9287,  9288,  9292,  9293,  9294,  9295,  9296,
 
3335
    9300,  9301,  9302,  9303,  9307,  9312,  9313,  9316,  9319,  9318,
 
3336
    9349,  9350,  9354,  9355,  9359,  9371,  9371,  9382,  9383,  9387,
 
3337
    9406,  9439,  9438,  9451,  9459,  9450,  9461,  9473,  9485,  9484,
 
3338
    9501,  9508,  9508,  9522,  9529,  9552,  9573,  9585,  9589,  9595,
 
3339
    9601,  9608,  9613,  9618,  9628,  9629,  9633,  9641,  9642,  9646,
 
3340
    9656,  9657,  9661,  9662,  9670,  9680,  9669,  9690,  9697,  9689,
 
3341
    9707,  9719,  9720,  9721,  9725,  9726,  9730,  9731,  9735,  9744,
 
3342
    9745,  9746,  9748,  9747,  9758,  9759,  9763,  9764,  9766,  9765,
 
3343
    9769,  9768,  9774,  9775,  9779,  9780,  9784,  9794,  9795,  9799,
 
3344
    9800,  9805,  9804,  9818,  9819,  9823,  9828,  9836,  9837,  9845,
 
3345
    9847,  9847,  9855,  9864,  9854,  9886,  9887,  9891,  9899,  9900,
 
3346
    9904,  9914,  9915,  9922,  9921,  9935,  9934,  9943,  9942,  9950,
 
3347
    9949,  9959,  9960,  9964,  9976,  9991,  9992,  9996,  9997, 10001,
 
3348
   10002, 10003, 10007, 10017, 10019, 10022, 10024, 10027, 10028, 10031,
 
3349
   10035, 10039, 10043, 10047, 10051, 10055, 10059, 10063, 10071, 10074,
 
3350
   10084, 10083, 10097, 10104, 10112, 10120, 10128, 10136, 10144, 10152,
 
3351
   10159, 10161, 10163, 10172, 10185, 10189, 10194, 10193, 10198, 10207,
 
3352
   10212, 10220, 10227, 10232, 10237, 10242, 10244, 10246, 10248, 10250,
 
3353
   10252, 10259, 10267, 10279, 10291, 10293, 10301, 10308, 10315, 10325,
 
3354
   10332, 10338, 10347, 10355, 10359, 10363, 10370, 10377, 10383, 10390,
 
3355
   10397, 10407, 10417, 10425, 10427, 10429, 10434, 10435, 10438, 10440,
 
3356
   10444, 10445, 10449, 10450, 10454, 10455, 10459, 10460, 10464, 10465,
 
3357
   10468, 10470, 10477, 10488, 10487, 10501, 10500, 10510, 10511, 10515,
 
3358
   10516, 10517, 10521, 10522, 10523, 10538, 10537, 10549, 10550, 10555,
 
3359
   10554, 10557, 10559, 10561, 10563, 10565, 10567, 10569, 10571, 10573,
 
3360
   10575, 10580, 10581, 10586, 10585, 10595, 10596, 10600, 10601, 10602,
 
3361
   10607, 10606, 10617, 10621, 10625, 10637, 10647, 10648, 10649, 10655,
 
3362
   10667, 10666, 10679, 10697, 10708, 10718, 10696, 10722, 10732, 10733,
 
3363
   10737, 10738, 10750, 10754, 10755, 10756, 10759, 10761, 10765, 10766,
 
3364
   10770, 10775, 10782, 10787, 10794, 10796, 10800, 10801, 10805, 10810,
 
3365
   10817, 10819, 10827, 10828, 10829, 10833, 10835, 10840, 10841, 10850,
 
3366
   10851, 10857, 10881, 10893, 10904, 10923, 10931, 10943, 10958, 10979,
 
3367
   10980, 10981, 10989, 10990, 10991, 10998, 11004, 11010, 11016, 11022,
 
3368
   11051, 11079, 11080, 11081, 11085, 11095, 11105, 11111, 11120, 11135,
 
3369
   11136, 11140, 11149, 11165, 11169, 11216, 11220, 11238, 11242, 11321,
 
3370
   11346, 11377, 11378, 11394, 11404, 11408, 11414, 11420, 11430, 11436,
 
3371
   11445, 11455, 11456, 11485, 11501, 11517, 11534, 11535, 11546, 11547,
 
3372
   11558, 11559, 11560, 11564, 11578, 11597, 11612, 11613, 11614, 11615,
3375
3373
   11616, 11617, 11618, 11619, 11620, 11621, 11622, 11623, 11624, 11625,
3376
3374
   11626, 11627, 11628, 11629, 11630, 11631, 11632, 11633, 11634, 11635,
3377
 
   11636, 11637, 11638, 11639, 11640, 11641, 11651, 11652, 11653, 11654,
3378
 
   11655, 11656, 11657, 11658, 11659, 11660, 11661, 11662, 11663, 11664,
3379
 
   11665, 11666, 11667, 11668, 11669, 11670, 11671, 11672, 11673, 11674,
 
3375
   11636, 11637, 11638, 11639, 11640, 11641, 11642, 11643, 11644, 11645,
 
3376
   11646, 11647, 11648, 11649, 11650, 11651, 11652, 11653, 11654, 11655,
 
3377
   11656, 11657, 11658, 11659, 11660, 11661, 11671, 11672, 11673, 11674,
3380
3378
   11675, 11676, 11677, 11678, 11679, 11680, 11681, 11682, 11683, 11684,
3381
3379
   11685, 11686, 11687, 11688, 11689, 11690, 11691, 11692, 11693, 11694,
3382
3380
   11695, 11696, 11697, 11698, 11699, 11700, 11701, 11702, 11703, 11704,
3400
3398
   11875, 11876, 11877, 11878, 11879, 11880, 11881, 11882, 11883, 11884,
3401
3399
   11885, 11886, 11887, 11888, 11889, 11890, 11891, 11892, 11893, 11894,
3402
3400
   11895, 11896, 11897, 11898, 11899, 11900, 11901, 11902, 11903, 11904,
3403
 
   11905, 11906, 11907, 11908, 11909, 11910, 11917, 11916, 11931, 11932,
3404
 
   11936, 11937, 11941, 11941, 12023, 12024, 12025, 12026, 12030, 12031,
3405
 
   12035, 12036, 12037, 12038, 12042, 12043, 12044, 12045, 12049, 12050,
3406
 
   12054, 12096, 12115, 12126, 12139, 12153, 12168, 12187, 12214, 12227,
3407
 
   12254, 12297, 12311, 12312, 12313, 12314, 12318, 12319, 12328, 12340,
3408
 
   12341, 12342, 12348, 12354, 12366, 12365, 12381, 12382, 12386, 12387,
3409
 
   12391, 12403, 12404, 12405, 12406, 12411, 12410, 12430, 12442, 12455,
3410
 
   12454, 12480, 12481, 12485, 12486, 12490, 12491, 12492, 12493, 12495,
3411
 
   12494, 12507, 12508, 12509, 12510, 12511, 12517, 12522, 12528, 12539,
3412
 
   12550, 12557, 12562, 12569, 12581, 12595, 12597, 12601, 12602, 12609,
3413
 
   12611, 12615, 12616, 12621, 12620, 12624, 12623, 12627, 12626, 12630,
3414
 
   12629, 12632, 12633, 12634, 12635, 12636, 12637, 12638, 12639, 12640,
3415
 
   12641, 12642, 12643, 12644, 12645, 12646, 12647, 12648, 12649, 12650,
3416
 
   12651, 12652, 12653, 12654, 12655, 12656, 12660, 12661, 12665, 12666,
3417
 
   12670, 12680, 12690, 12703, 12718, 12731, 12744, 12756, 12761, 12769,
3418
 
   12774, 12782, 12809, 12811, 12817, 12821, 12825, 12826, 12830, 12857,
3419
 
   12859, 12863, 12867, 12871, 12878, 12879, 12883, 12884, 12888, 12889,
3420
 
   12895, 12901, 12907, 12917, 12916, 12926, 12927, 12932, 12933, 12934,
3421
 
   12939, 12940, 12941, 12945, 12946, 12950, 12960, 12967, 12977, 12986,
3422
 
   13000, 13001, 13006, 13005, 13046, 13047, 13048, 13052, 13052, 13076,
3423
 
   13077, 13081, 13082, 13083, 13087, 13092, 13097, 13104, 13125, 13160,
3424
 
   13162, 13164, 13169, 13170, 13171, 13172, 13173, 13177, 13178, 13179,
3425
 
   13180, 13181, 13182, 13192, 13193, 13198, 13211, 13224, 13226, 13228,
3426
 
   13233, 13238, 13240, 13242, 13248, 13249, 13251, 13257, 13256, 13270,
3427
 
   13271, 13275, 13280, 13288, 13288, 13313, 13314, 13319, 13320, 13322,
3428
 
   13324, 13342, 13348, 13353, 13335, 13414, 13432, 13457, 13489, 13493,
3429
 
   13501, 13524, 13453, 13589, 13613, 13622, 13630, 13588, 13651, 13655,
3430
 
   13659, 13663, 13667, 13671, 13678, 13685, 13692, 13702, 13703, 13707,
3431
 
   13708, 13709, 13713, 13714, 13719, 13721, 13720, 13726, 13727, 13731,
3432
 
   13741
 
3401
   11905, 11906, 11907, 11908, 11909, 11910, 11911, 11912, 11913, 11914,
 
3402
   11915, 11916, 11917, 11918, 11919, 11920, 11921, 11922, 11923, 11924,
 
3403
   11925, 11926, 11927, 11928, 11929, 11930, 11937, 11936, 11951, 11952,
 
3404
   11956, 11957, 11961, 11961, 12043, 12044, 12045, 12046, 12050, 12051,
 
3405
   12055, 12056, 12057, 12058, 12062, 12063, 12064, 12065, 12069, 12070,
 
3406
   12074, 12116, 12135, 12146, 12159, 12173, 12188, 12207, 12234, 12247,
 
3407
   12274, 12317, 12331, 12332, 12333, 12334, 12338, 12339, 12348, 12360,
 
3408
   12361, 12362, 12368, 12374, 12386, 12385, 12401, 12402, 12406, 12407,
 
3409
   12411, 12423, 12424, 12425, 12426, 12431, 12430, 12450, 12462, 12475,
 
3410
   12474, 12500, 12501, 12505, 12506, 12510, 12511, 12512, 12513, 12515,
 
3411
   12514, 12527, 12528, 12529, 12530, 12531, 12537, 12542, 12548, 12559,
 
3412
   12570, 12577, 12582, 12589, 12601, 12615, 12617, 12621, 12622, 12629,
 
3413
   12631, 12635, 12636, 12641, 12640, 12644, 12643, 12647, 12646, 12650,
 
3414
   12649, 12652, 12653, 12654, 12655, 12656, 12657, 12658, 12659, 12660,
 
3415
   12661, 12662, 12663, 12664, 12665, 12666, 12667, 12668, 12669, 12670,
 
3416
   12671, 12672, 12673, 12674, 12675, 12676, 12680, 12681, 12685, 12686,
 
3417
   12690, 12700, 12710, 12723, 12738, 12751, 12764, 12776, 12781, 12789,
 
3418
   12794, 12802, 12829, 12831, 12837, 12841, 12845, 12846, 12850, 12877,
 
3419
   12879, 12883, 12887, 12891, 12898, 12899, 12903, 12904, 12908, 12909,
 
3420
   12915, 12921, 12927, 12937, 12936, 12946, 12947, 12952, 12953, 12954,
 
3421
   12959, 12960, 12961, 12965, 12966, 12970, 12980, 12987, 12997, 13006,
 
3422
   13020, 13021, 13026, 13025, 13066, 13067, 13068, 13072, 13072, 13096,
 
3423
   13097, 13101, 13102, 13103, 13107, 13112, 13117, 13124, 13145, 13180,
 
3424
   13182, 13184, 13189, 13190, 13191, 13192, 13193, 13197, 13198, 13199,
 
3425
   13200, 13201, 13202, 13212, 13213, 13218, 13231, 13244, 13246, 13248,
 
3426
   13253, 13258, 13260, 13262, 13268, 13269, 13271, 13277, 13276, 13290,
 
3427
   13291, 13295, 13300, 13308, 13308, 13333, 13334, 13339, 13340, 13342,
 
3428
   13344, 13362, 13368, 13373, 13355, 13434, 13452, 13477, 13509, 13513,
 
3429
   13521, 13544, 13473, 13609, 13633, 13642, 13650, 13608, 13671, 13675,
 
3430
   13679, 13683, 13687, 13691, 13698, 13705, 13712, 13722, 13723, 13727,
 
3431
   13728, 13729, 13733, 13734, 13739, 13741, 13740, 13746, 13747, 13751,
 
3432
   13761
3433
3433
};
3434
3434
#endif
3435
3435
 
15908
15908
        case 2:
15909
15909
 
15910
15910
/* Line 1455 of yacc.c  */
15911
 
#line 1516 "sql_yacc.yy"
 
15911
#line 1518 "sql_yacc.yy"
15912
15912
    {
15913
15913
            THD *thd= YYTHD;
15914
15914
            if (!thd->bootstrap &&
15925
15925
  case 3:
15926
15926
 
15927
15927
/* Line 1455 of yacc.c  */
15928
 
#line 1528 "sql_yacc.yy"
 
15928
#line 1530 "sql_yacc.yy"
15929
15929
    {
15930
15930
            Lex_input_stream *lip = YYLIP;
15931
15931
 
15953
15953
  case 5:
15954
15954
 
15955
15955
/* Line 1455 of yacc.c  */
15956
 
#line 1553 "sql_yacc.yy"
 
15956
#line 1555 "sql_yacc.yy"
15957
15957
    {
15958
15958
            /* Single query, not terminated. */
15959
15959
            YYLIP->found_semicolon= NULL;
15963
15963
  case 61:
15964
15964
 
15965
15965
/* Line 1455 of yacc.c  */
15966
 
#line 1626 "sql_yacc.yy"
 
15966
#line 1628 "sql_yacc.yy"
15967
15967
    {
15968
15968
            THD *thd= YYTHD;
15969
15969
            LEX *lex= thd->lex;
15975
15975
  case 64:
15976
15976
 
15977
15977
/* Line 1455 of yacc.c  */
15978
 
#line 1641 "sql_yacc.yy"
 
15978
#line 1643 "sql_yacc.yy"
15979
15979
    {
15980
15980
            THD *thd= YYTHD;
15981
15981
            LEX *lex= thd->lex;
15987
15987
  case 65:
15988
15988
 
15989
15989
/* Line 1455 of yacc.c  */
15990
 
#line 1651 "sql_yacc.yy"
 
15990
#line 1653 "sql_yacc.yy"
15991
15991
    {
15992
15992
            THD *thd= YYTHD;
15993
15993
            LEX *lex= thd->lex;
15999
15999
  case 66:
16000
16000
 
16001
16001
/* Line 1455 of yacc.c  */
16002
 
#line 1658 "sql_yacc.yy"
 
16002
#line 1660 "sql_yacc.yy"
16003
16003
    {
16004
16004
            THD *thd= YYTHD;
16005
16005
            LEX *lex= thd->lex;
16011
16011
  case 67:
16012
16012
 
16013
16013
/* Line 1455 of yacc.c  */
16014
 
#line 1668 "sql_yacc.yy"
 
16014
#line 1670 "sql_yacc.yy"
16015
16015
    {
16016
16016
            THD *thd= YYTHD;
16017
16017
            LEX *lex= thd->lex;
16023
16023
  case 68:
16024
16024
 
16025
16025
/* Line 1455 of yacc.c  */
16026
 
#line 1675 "sql_yacc.yy"
 
16026
#line 1677 "sql_yacc.yy"
16027
16027
    {}
16028
16028
    break;
16029
16029
 
16030
16030
  case 73:
16031
16031
 
16032
16032
/* Line 1455 of yacc.c  */
16033
 
#line 1690 "sql_yacc.yy"
 
16033
#line 1692 "sql_yacc.yy"
16034
16034
    {
16035
16035
            LEX *lex=Lex;
16036
16036
            LEX_STRING *lexstr= (LEX_STRING*)sql_memdup(&(yyvsp[(2) - (2)].lex_str), sizeof(LEX_STRING));
16042
16042
  case 74:
16043
16043
 
16044
16044
/* Line 1455 of yacc.c  */
16045
 
#line 1702 "sql_yacc.yy"
 
16045
#line 1704 "sql_yacc.yy"
16046
16046
    {
16047
16047
            if (Lex->sphead)
16048
16048
            {
16055
16055
  case 75:
16056
16056
 
16057
16057
/* Line 1455 of yacc.c  */
16058
 
#line 1710 "sql_yacc.yy"
 
16058
#line 1712 "sql_yacc.yy"
16059
16059
    {
16060
16060
            LEX *lex= Lex;
16061
16061
            lex->sql_command= SQLCOM_HELP;
16066
16066
  case 76:
16067
16067
 
16068
16068
/* Line 1455 of yacc.c  */
16069
 
#line 1721 "sql_yacc.yy"
 
16069
#line 1723 "sql_yacc.yy"
16070
16070
    {
16071
16071
            LEX *lex = Lex;
16072
16072
            lex->sql_command = SQLCOM_CHANGE_MASTER;
16077
16077
  case 77:
16078
16078
 
16079
16079
/* Line 1455 of yacc.c  */
16080
 
#line 1727 "sql_yacc.yy"
 
16080
#line 1729 "sql_yacc.yy"
16081
16081
    {}
16082
16082
    break;
16083
16083
 
16084
16084
  case 80:
16085
16085
 
16086
16086
/* Line 1455 of yacc.c  */
16087
 
#line 1737 "sql_yacc.yy"
 
16087
#line 1739 "sql_yacc.yy"
16088
16088
    {
16089
16089
            Lex->mi.host = (yyvsp[(3) - (3)].lex_str).str;
16090
16090
          }
16093
16093
  case 81:
16094
16094
 
16095
16095
/* Line 1455 of yacc.c  */
16096
 
#line 1741 "sql_yacc.yy"
 
16096
#line 1743 "sql_yacc.yy"
16097
16097
    {
16098
16098
            Lex->mi.user = (yyvsp[(3) - (3)].lex_str).str;
16099
16099
          }
16102
16102
  case 82:
16103
16103
 
16104
16104
/* Line 1455 of yacc.c  */
16105
 
#line 1745 "sql_yacc.yy"
 
16105
#line 1747 "sql_yacc.yy"
16106
16106
    {
16107
16107
            Lex->mi.password = (yyvsp[(3) - (3)].lex_str).str;
16108
16108
          }
16111
16111
  case 83:
16112
16112
 
16113
16113
/* Line 1455 of yacc.c  */
16114
 
#line 1749 "sql_yacc.yy"
 
16114
#line 1751 "sql_yacc.yy"
16115
16115
    {
16116
16116
            Lex->mi.port = (yyvsp[(3) - (3)].ulong_num);
16117
16117
          }
16120
16120
  case 84:
16121
16121
 
16122
16122
/* Line 1455 of yacc.c  */
16123
 
#line 1753 "sql_yacc.yy"
 
16123
#line 1755 "sql_yacc.yy"
16124
16124
    {
16125
16125
            Lex->mi.connect_retry = (yyvsp[(3) - (3)].ulong_num);
16126
16126
          }
16129
16129
  case 85:
16130
16130
 
16131
16131
/* Line 1455 of yacc.c  */
16132
 
#line 1757 "sql_yacc.yy"
 
16132
#line 1759 "sql_yacc.yy"
16133
16133
    {
16134
16134
            Lex->mi.ssl= (yyvsp[(3) - (3)].ulong_num) ? 
16135
16135
              LEX_MASTER_INFO::SSL_ENABLE : LEX_MASTER_INFO::SSL_DISABLE;
16139
16139
  case 86:
16140
16140
 
16141
16141
/* Line 1455 of yacc.c  */
16142
 
#line 1762 "sql_yacc.yy"
 
16142
#line 1764 "sql_yacc.yy"
16143
16143
    {
16144
16144
            Lex->mi.ssl_ca= (yyvsp[(3) - (3)].lex_str).str;
16145
16145
          }
16148
16148
  case 87:
16149
16149
 
16150
16150
/* Line 1455 of yacc.c  */
16151
 
#line 1766 "sql_yacc.yy"
 
16151
#line 1768 "sql_yacc.yy"
16152
16152
    {
16153
16153
            Lex->mi.ssl_capath= (yyvsp[(3) - (3)].lex_str).str;
16154
16154
          }
16157
16157
  case 88:
16158
16158
 
16159
16159
/* Line 1455 of yacc.c  */
16160
 
#line 1770 "sql_yacc.yy"
 
16160
#line 1772 "sql_yacc.yy"
16161
16161
    {
16162
16162
            Lex->mi.ssl_cert= (yyvsp[(3) - (3)].lex_str).str;
16163
16163
          }
16166
16166
  case 89:
16167
16167
 
16168
16168
/* Line 1455 of yacc.c  */
16169
 
#line 1774 "sql_yacc.yy"
 
16169
#line 1776 "sql_yacc.yy"
16170
16170
    {
16171
16171
            Lex->mi.ssl_cipher= (yyvsp[(3) - (3)].lex_str).str;
16172
16172
          }
16175
16175
  case 90:
16176
16176
 
16177
16177
/* Line 1455 of yacc.c  */
16178
 
#line 1778 "sql_yacc.yy"
 
16178
#line 1780 "sql_yacc.yy"
16179
16179
    {
16180
16180
            Lex->mi.ssl_key= (yyvsp[(3) - (3)].lex_str).str;
16181
16181
          }
16184
16184
  case 91:
16185
16185
 
16186
16186
/* Line 1455 of yacc.c  */
16187
 
#line 1782 "sql_yacc.yy"
 
16187
#line 1784 "sql_yacc.yy"
16188
16188
    {
16189
16189
            Lex->mi.ssl_verify_server_cert= (yyvsp[(3) - (3)].ulong_num) ?
16190
16190
              LEX_MASTER_INFO::SSL_ENABLE : LEX_MASTER_INFO::SSL_DISABLE;
16194
16194
  case 93:
16195
16195
 
16196
16196
/* Line 1455 of yacc.c  */
16197
 
#line 1791 "sql_yacc.yy"
 
16197
#line 1793 "sql_yacc.yy"
16198
16198
    {
16199
16199
            Lex->mi.log_file_name = (yyvsp[(3) - (3)].lex_str).str;
16200
16200
          }
16203
16203
  case 94:
16204
16204
 
16205
16205
/* Line 1455 of yacc.c  */
16206
 
#line 1795 "sql_yacc.yy"
 
16206
#line 1797 "sql_yacc.yy"
16207
16207
    {
16208
16208
            Lex->mi.pos = (yyvsp[(3) - (3)].ulonglong_number);
16209
16209
            /* 
16224
16224
  case 95:
16225
16225
 
16226
16226
/* Line 1455 of yacc.c  */
16227
 
#line 1811 "sql_yacc.yy"
 
16227
#line 1813 "sql_yacc.yy"
16228
16228
    {
16229
16229
            Lex->mi.relay_log_name = (yyvsp[(3) - (3)].lex_str).str;
16230
16230
          }
16233
16233
  case 96:
16234
16234
 
16235
16235
/* Line 1455 of yacc.c  */
16236
 
#line 1815 "sql_yacc.yy"
 
16236
#line 1817 "sql_yacc.yy"
16237
16237
    {
16238
16238
            Lex->mi.relay_log_pos = (yyvsp[(3) - (3)].ulong_num);
16239
16239
            /* Adjust if < BIN_LOG_HEADER_SIZE (same comment as Lex->mi.pos) */
16244
16244
  case 97:
16245
16245
 
16246
16246
/* Line 1455 of yacc.c  */
16247
 
#line 1826 "sql_yacc.yy"
 
16247
#line 1828 "sql_yacc.yy"
16248
16248
    {
16249
16249
            THD *thd= YYTHD;
16250
16250
            LEX *lex= thd->lex;
16258
16258
            lex->change=NullS;
16259
16259
            bzero((char*) &lex->create_info,sizeof(lex->create_info));
16260
16260
            lex->create_info.options=(yyvsp[(2) - (5)].num) | (yyvsp[(4) - (5)].num);
16261
 
            lex->create_info.db_type= ha_default_handlerton(thd);
16262
16261
            lex->create_info.default_table_charset= NULL;
16263
16262
            lex->name.str= 0;
16264
16263
            lex->name.length= 0;
16268
16267
  case 98:
16269
16268
 
16270
16269
/* Line 1455 of yacc.c  */
16271
 
#line 1845 "sql_yacc.yy"
 
16270
#line 1846 "sql_yacc.yy"
16272
16271
    {
16273
16272
            LEX *lex= YYTHD->lex;
16274
16273
            lex->current_select= &lex->select_lex; 
16275
 
            if (!lex->create_info.db_type)
 
16274
            if ((lex->create_info.used_fields & HA_CREATE_USED_ENGINE) &&
 
16275
                !lex->create_info.db_type)
16276
16276
            {
16277
16277
              lex->create_info.db_type= ha_default_handlerton(YYTHD);
16278
16278
              push_warning_printf(YYTHD, MYSQL_ERROR::WARN_LEVEL_WARN,
16287
16287
  case 99:
16288
16288
 
16289
16289
/* Line 1455 of yacc.c  */
16290
 
#line 1859 "sql_yacc.yy"
 
16290
#line 1861 "sql_yacc.yy"
16291
16291
    {
16292
16292
            if (add_create_index_prepare(Lex, (yyvsp[(7) - (7)].table)))
16293
16293
              MYSQL_YYABORT;
16297
16297
  case 100:
16298
16298
 
16299
16299
/* Line 1455 of yacc.c  */
16300
 
#line 1864 "sql_yacc.yy"
 
16300
#line 1866 "sql_yacc.yy"
16301
16301
    {
16302
16302
            if (add_create_index(Lex, (yyvsp[(2) - (12)].key_type), (yyvsp[(4) - (12)].lex_str).str))
16303
16303
              MYSQL_YYABORT;
16307
16307
  case 101:
16308
16308
 
16309
16309
/* Line 1455 of yacc.c  */
16310
 
#line 1870 "sql_yacc.yy"
 
16310
#line 1872 "sql_yacc.yy"
16311
16311
    {
16312
16312
            if (add_create_index_prepare(Lex, (yyvsp[(7) - (7)].table)))
16313
16313
              MYSQL_YYABORT;
16317
16317
  case 102:
16318
16318
 
16319
16319
/* Line 1455 of yacc.c  */
16320
 
#line 1875 "sql_yacc.yy"
 
16320
#line 1877 "sql_yacc.yy"
16321
16321
    {
16322
16322
            if (add_create_index(Lex, (yyvsp[(2) - (12)].key_type), (yyvsp[(4) - (12)].lex_str).str))
16323
16323
              MYSQL_YYABORT;
16327
16327
  case 103:
16328
16328
 
16329
16329
/* Line 1455 of yacc.c  */
16330
 
#line 1881 "sql_yacc.yy"
 
16330
#line 1883 "sql_yacc.yy"
16331
16331
    {
16332
16332
            if (add_create_index_prepare(Lex, (yyvsp[(7) - (7)].table)))
16333
16333
              MYSQL_YYABORT;
16337
16337
  case 104:
16338
16338
 
16339
16339
/* Line 1455 of yacc.c  */
16340
 
#line 1886 "sql_yacc.yy"
 
16340
#line 1888 "sql_yacc.yy"
16341
16341
    {
16342
16342
            if (add_create_index(Lex, (yyvsp[(2) - (12)].key_type), (yyvsp[(4) - (12)].lex_str).str))
16343
16343
              MYSQL_YYABORT;
16347
16347
  case 105:
16348
16348
 
16349
16349
/* Line 1455 of yacc.c  */
16350
 
#line 1891 "sql_yacc.yy"
 
16350
#line 1893 "sql_yacc.yy"
16351
16351
    {
16352
16352
            Lex->create_info.default_table_charset= NULL;
16353
16353
            Lex->create_info.used_fields= 0;
16357
16357
  case 106:
16358
16358
 
16359
16359
/* Line 1455 of yacc.c  */
16360
 
#line 1896 "sql_yacc.yy"
 
16360
#line 1898 "sql_yacc.yy"
16361
16361
    {
16362
16362
            LEX *lex=Lex;
16363
16363
            lex->sql_command=SQLCOM_CREATE_DB;
16369
16369
  case 107:
16370
16370
 
16371
16371
/* Line 1455 of yacc.c  */
16372
 
#line 1903 "sql_yacc.yy"
 
16372
#line 1905 "sql_yacc.yy"
16373
16373
    {
16374
16374
            Lex->create_view_mode= VIEW_CREATE_NEW;
16375
16375
            Lex->create_view_algorithm= VIEW_ALGORITHM_UNDEFINED;
16380
16380
  case 108:
16381
16381
 
16382
16382
/* Line 1455 of yacc.c  */
16383
 
#line 1909 "sql_yacc.yy"
 
16383
#line 1911 "sql_yacc.yy"
16384
16384
    {}
16385
16385
    break;
16386
16386
 
16387
16387
  case 109:
16388
16388
 
16389
16389
/* Line 1455 of yacc.c  */
16390
 
#line 1911 "sql_yacc.yy"
 
16390
#line 1913 "sql_yacc.yy"
16391
16391
    {
16392
16392
            Lex->sql_command = SQLCOM_CREATE_USER;
16393
16393
          }
16396
16396
  case 110:
16397
16397
 
16398
16398
/* Line 1455 of yacc.c  */
16399
 
#line 1915 "sql_yacc.yy"
 
16399
#line 1917 "sql_yacc.yy"
16400
16400
    {
16401
16401
            Lex->alter_tablespace_info->ts_cmd_type= CREATE_LOGFILE_GROUP;
16402
16402
          }
16405
16405
  case 111:
16406
16406
 
16407
16407
/* Line 1455 of yacc.c  */
16408
 
#line 1919 "sql_yacc.yy"
 
16408
#line 1921 "sql_yacc.yy"
16409
16409
    {
16410
16410
            Lex->alter_tablespace_info->ts_cmd_type= CREATE_TABLESPACE;
16411
16411
          }
16414
16414
  case 112:
16415
16415
 
16416
16416
/* Line 1455 of yacc.c  */
16417
 
#line 1923 "sql_yacc.yy"
 
16417
#line 1925 "sql_yacc.yy"
16418
16418
    {
16419
16419
            Lex->sql_command= SQLCOM_CREATE_SERVER;
16420
16420
          }
16423
16423
  case 113:
16424
16424
 
16425
16425
/* Line 1455 of yacc.c  */
16426
 
#line 1934 "sql_yacc.yy"
 
16426
#line 1936 "sql_yacc.yy"
16427
16427
    {
16428
16428
            Lex->server_options.server_name= (yyvsp[(2) - (10)].lex_str).str;
16429
16429
            Lex->server_options.server_name_length= (yyvsp[(2) - (10)].lex_str).length;
16434
16434
  case 116:
16435
16435
 
16436
16436
/* Line 1455 of yacc.c  */
16437
 
#line 1948 "sql_yacc.yy"
 
16437
#line 1950 "sql_yacc.yy"
16438
16438
    {
16439
16439
            Lex->server_options.username= (yyvsp[(2) - (2)].lex_str).str;
16440
16440
          }
16443
16443
  case 117:
16444
16444
 
16445
16445
/* Line 1455 of yacc.c  */
16446
 
#line 1952 "sql_yacc.yy"
 
16446
#line 1954 "sql_yacc.yy"
16447
16447
    {
16448
16448
            Lex->server_options.host= (yyvsp[(2) - (2)].lex_str).str;
16449
16449
          }
16452
16452
  case 118:
16453
16453
 
16454
16454
/* Line 1455 of yacc.c  */
16455
 
#line 1956 "sql_yacc.yy"
 
16455
#line 1958 "sql_yacc.yy"
16456
16456
    {
16457
16457
            Lex->server_options.db= (yyvsp[(2) - (2)].lex_str).str;
16458
16458
          }
16461
16461
  case 119:
16462
16462
 
16463
16463
/* Line 1455 of yacc.c  */
16464
 
#line 1960 "sql_yacc.yy"
 
16464
#line 1962 "sql_yacc.yy"
16465
16465
    {
16466
16466
            Lex->server_options.owner= (yyvsp[(2) - (2)].lex_str).str;
16467
16467
          }
16470
16470
  case 120:
16471
16471
 
16472
16472
/* Line 1455 of yacc.c  */
16473
 
#line 1964 "sql_yacc.yy"
 
16473
#line 1966 "sql_yacc.yy"
16474
16474
    {
16475
16475
            Lex->server_options.password= (yyvsp[(2) - (2)].lex_str).str;
16476
16476
          }
16479
16479
  case 121:
16480
16480
 
16481
16481
/* Line 1455 of yacc.c  */
16482
 
#line 1968 "sql_yacc.yy"
 
16482
#line 1970 "sql_yacc.yy"
16483
16483
    {
16484
16484
            Lex->server_options.socket= (yyvsp[(2) - (2)].lex_str).str;
16485
16485
          }
16488
16488
  case 122:
16489
16489
 
16490
16490
/* Line 1455 of yacc.c  */
16491
 
#line 1972 "sql_yacc.yy"
 
16491
#line 1974 "sql_yacc.yy"
16492
16492
    {
16493
16493
            Lex->server_options.port= (yyvsp[(2) - (2)].ulong_num);
16494
16494
          }
16497
16497
  case 123:
16498
16498
 
16499
16499
/* Line 1455 of yacc.c  */
16500
 
#line 1979 "sql_yacc.yy"
 
16500
#line 1981 "sql_yacc.yy"
16501
16501
    {
16502
16502
            THD *thd= YYTHD;
16503
16503
            LEX *lex=Lex;
16518
16518
  case 124:
16519
16519
 
16520
16520
/* Line 1455 of yacc.c  */
16521
 
#line 1999 "sql_yacc.yy"
 
16521
#line 2001 "sql_yacc.yy"
16522
16522
    {
16523
16523
            /*
16524
16524
              sql_command is set here because some rules in ev_sql_stmt
16531
16531
  case 125:
16532
16532
 
16533
16533
/* Line 1455 of yacc.c  */
16534
 
#line 2010 "sql_yacc.yy"
 
16534
#line 2012 "sql_yacc.yy"
16535
16535
    {
16536
16536
            Lex->event_parse_data->item_expression= (yyvsp[(2) - (3)].item);
16537
16537
            Lex->event_parse_data->interval= (yyvsp[(3) - (3)].interval);
16541
16541
  case 127:
16542
16542
 
16543
16543
/* Line 1455 of yacc.c  */
16544
 
#line 2017 "sql_yacc.yy"
 
16544
#line 2019 "sql_yacc.yy"
16545
16545
    {
16546
16546
            Lex->event_parse_data->item_execute_at= (yyvsp[(2) - (2)].item);
16547
16547
          }
16550
16550
  case 128:
16551
16551
 
16552
16552
/* Line 1455 of yacc.c  */
16553
 
#line 2023 "sql_yacc.yy"
 
16553
#line 2025 "sql_yacc.yy"
16554
16554
    { (yyval.num)= 0; }
16555
16555
    break;
16556
16556
 
16557
16557
  case 129:
16558
16558
 
16559
16559
/* Line 1455 of yacc.c  */
16560
 
#line 2025 "sql_yacc.yy"
 
16560
#line 2027 "sql_yacc.yy"
16561
16561
    {
16562
16562
            Lex->event_parse_data->status= Event_parse_data::ENABLED;
 
16563
            Lex->event_parse_data->status_changed= true;
16563
16564
            (yyval.num)= 1;
16564
16565
          }
16565
16566
    break;
16567
16568
  case 130:
16568
16569
 
16569
16570
/* Line 1455 of yacc.c  */
16570
 
#line 2030 "sql_yacc.yy"
 
16571
#line 2033 "sql_yacc.yy"
16571
16572
    {
16572
16573
            Lex->event_parse_data->status= Event_parse_data::SLAVESIDE_DISABLED;
 
16574
            Lex->event_parse_data->status_changed= true; 
16573
16575
            (yyval.num)= 1;
16574
16576
          }
16575
16577
    break;
16577
16579
  case 131:
16578
16580
 
16579
16581
/* Line 1455 of yacc.c  */
16580
 
#line 2035 "sql_yacc.yy"
 
16582
#line 2039 "sql_yacc.yy"
16581
16583
    {
16582
16584
            Lex->event_parse_data->status= Event_parse_data::DISABLED;
 
16585
            Lex->event_parse_data->status_changed= true;
16583
16586
            (yyval.num)= 1;
16584
16587
          }
16585
16588
    break;
16587
16590
  case 132:
16588
16591
 
16589
16592
/* Line 1455 of yacc.c  */
16590
 
#line 2043 "sql_yacc.yy"
 
16593
#line 2048 "sql_yacc.yy"
16591
16594
    {
16592
16595
            Item *item= new (YYTHD->mem_root) Item_func_now_local();
16593
16596
            if (item == NULL)
16599
16602
  case 133:
16600
16603
 
16601
16604
/* Line 1455 of yacc.c  */
16602
 
#line 2050 "sql_yacc.yy"
 
16605
#line 2055 "sql_yacc.yy"
16603
16606
    {
16604
16607
            Lex->event_parse_data->item_starts= (yyvsp[(2) - (2)].item);
16605
16608
          }
16608
16611
  case 135:
16609
16612
 
16610
16613
/* Line 1455 of yacc.c  */
16611
 
#line 2058 "sql_yacc.yy"
 
16614
#line 2063 "sql_yacc.yy"
16612
16615
    {
16613
16616
            Lex->event_parse_data->item_ends= (yyvsp[(2) - (2)].item);
16614
16617
          }
16617
16620
  case 136:
16618
16621
 
16619
16622
/* Line 1455 of yacc.c  */
16620
 
#line 2064 "sql_yacc.yy"
 
16623
#line 2069 "sql_yacc.yy"
16621
16624
    { (yyval.num)= 0; }
16622
16625
    break;
16623
16626
 
16624
16627
  case 138:
16625
16628
 
16626
16629
/* Line 1455 of yacc.c  */
16627
 
#line 2070 "sql_yacc.yy"
 
16630
#line 2075 "sql_yacc.yy"
16628
16631
    {
16629
16632
            Lex->event_parse_data->on_completion=
16630
16633
                                  Event_parse_data::ON_COMPLETION_PRESERVE;
16635
16638
  case 139:
16636
16639
 
16637
16640
/* Line 1455 of yacc.c  */
16638
 
#line 2076 "sql_yacc.yy"
 
16641
#line 2081 "sql_yacc.yy"
16639
16642
    {
16640
16643
            Lex->event_parse_data->on_completion=
16641
16644
                                  Event_parse_data::ON_COMPLETION_DROP;
16646
16649
  case 140:
16647
16650
 
16648
16651
/* Line 1455 of yacc.c  */
16649
 
#line 2084 "sql_yacc.yy"
 
16652
#line 2089 "sql_yacc.yy"
16650
16653
    { (yyval.num)= 0; }
16651
16654
    break;
16652
16655
 
16653
16656
  case 141:
16654
16657
 
16655
16658
/* Line 1455 of yacc.c  */
16656
 
#line 2086 "sql_yacc.yy"
 
16659
#line 2091 "sql_yacc.yy"
16657
16660
    {
16658
16661
            Lex->comment= Lex->event_parse_data->comment= (yyvsp[(2) - (2)].lex_str);
16659
16662
            (yyval.num)= 1;
16663
16666
  case 142:
16664
16667
 
16665
16668
/* Line 1455 of yacc.c  */
16666
 
#line 2093 "sql_yacc.yy"
 
16669
#line 2098 "sql_yacc.yy"
16667
16670
    {
16668
16671
            THD *thd= YYTHD;
16669
16672
            LEX *lex= thd->lex;
16711
16714
  case 143:
16712
16715
 
16713
16716
/* Line 1455 of yacc.c  */
16714
 
#line 2136 "sql_yacc.yy"
 
16717
#line 2141 "sql_yacc.yy"
16715
16718
    {
16716
16719
            THD *thd= YYTHD;
16717
16720
            LEX *lex= thd->lex;
16729
16732
  case 157:
16730
16733
 
16731
16734
/* Line 1455 of yacc.c  */
16732
 
#line 2168 "sql_yacc.yy"
 
16735
#line 2173 "sql_yacc.yy"
16733
16736
    {
16734
16737
           LEX *lex=Lex;
16735
16738
           lex->users_list.empty();
16746
16749
  case 158:
16747
16750
 
16748
16751
/* Line 1455 of yacc.c  */
16749
 
#line 2183 "sql_yacc.yy"
 
16752
#line 2188 "sql_yacc.yy"
16750
16753
    {
16751
16754
            if (!(yyvsp[(1) - (3)].lex_str).str || check_db_name(&(yyvsp[(1) - (3)].lex_str)))
16752
16755
            {
16767
16770
  case 159:
16768
16771
 
16769
16772
/* Line 1455 of yacc.c  */
16770
 
#line 2199 "sql_yacc.yy"
 
16773
#line 2204 "sql_yacc.yy"
16771
16774
    {
16772
16775
            THD *thd= YYTHD;
16773
16776
            LEX *lex= thd->lex;
16788
16791
  case 160:
16789
16792
 
16790
16793
/* Line 1455 of yacc.c  */
16791
 
#line 2217 "sql_yacc.yy"
 
16794
#line 2222 "sql_yacc.yy"
16792
16795
    {}
16793
16796
    break;
16794
16797
 
16795
16798
  case 161:
16796
16799
 
16797
16800
/* Line 1455 of yacc.c  */
16798
 
#line 2218 "sql_yacc.yy"
 
16801
#line 2223 "sql_yacc.yy"
16799
16802
    {}
16800
16803
    break;
16801
16804
 
16802
16805
  case 162:
16803
16806
 
16804
16807
/* Line 1455 of yacc.c  */
16805
 
#line 2222 "sql_yacc.yy"
 
16808
#line 2227 "sql_yacc.yy"
16806
16809
    {}
16807
16810
    break;
16808
16811
 
16809
16812
  case 163:
16810
16813
 
16811
16814
/* Line 1455 of yacc.c  */
16812
 
#line 2223 "sql_yacc.yy"
 
16815
#line 2228 "sql_yacc.yy"
16813
16816
    {}
16814
16817
    break;
16815
16818
 
16816
16819
  case 164:
16817
16820
 
16818
16821
/* Line 1455 of yacc.c  */
16819
 
#line 2229 "sql_yacc.yy"
 
16822
#line 2234 "sql_yacc.yy"
16820
16823
    { Lex->sp_chistics.comment= (yyvsp[(2) - (2)].lex_str); }
16821
16824
    break;
16822
16825
 
16823
16826
  case 165:
16824
16827
 
16825
16828
/* Line 1455 of yacc.c  */
16826
 
#line 2231 "sql_yacc.yy"
 
16829
#line 2236 "sql_yacc.yy"
16827
16830
    { /* Just parse it, we only have one language for now. */ }
16828
16831
    break;
16829
16832
 
16830
16833
  case 166:
16831
16834
 
16832
16835
/* Line 1455 of yacc.c  */
16833
 
#line 2233 "sql_yacc.yy"
 
16836
#line 2238 "sql_yacc.yy"
16834
16837
    { Lex->sp_chistics.daccess= SP_NO_SQL; }
16835
16838
    break;
16836
16839
 
16837
16840
  case 167:
16838
16841
 
16839
16842
/* Line 1455 of yacc.c  */
16840
 
#line 2235 "sql_yacc.yy"
 
16843
#line 2240 "sql_yacc.yy"
16841
16844
    { Lex->sp_chistics.daccess= SP_CONTAINS_SQL; }
16842
16845
    break;
16843
16846
 
16844
16847
  case 168:
16845
16848
 
16846
16849
/* Line 1455 of yacc.c  */
16847
 
#line 2237 "sql_yacc.yy"
 
16850
#line 2242 "sql_yacc.yy"
16848
16851
    { Lex->sp_chistics.daccess= SP_READS_SQL_DATA; }
16849
16852
    break;
16850
16853
 
16851
16854
  case 169:
16852
16855
 
16853
16856
/* Line 1455 of yacc.c  */
16854
 
#line 2239 "sql_yacc.yy"
 
16857
#line 2244 "sql_yacc.yy"
16855
16858
    { Lex->sp_chistics.daccess= SP_MODIFIES_SQL_DATA; }
16856
16859
    break;
16857
16860
 
16858
16861
  case 170:
16859
16862
 
16860
16863
/* Line 1455 of yacc.c  */
16861
 
#line 2241 "sql_yacc.yy"
 
16864
#line 2246 "sql_yacc.yy"
16862
16865
    {}
16863
16866
    break;
16864
16867
 
16865
16868
  case 171:
16866
16869
 
16867
16870
/* Line 1455 of yacc.c  */
16868
 
#line 2246 "sql_yacc.yy"
 
16871
#line 2251 "sql_yacc.yy"
16869
16872
    { }
16870
16873
    break;
16871
16874
 
16872
16875
  case 172:
16873
16876
 
16874
16877
/* Line 1455 of yacc.c  */
16875
 
#line 2247 "sql_yacc.yy"
 
16878
#line 2252 "sql_yacc.yy"
16876
16879
    { Lex->sp_chistics.detistic= TRUE; }
16877
16880
    break;
16878
16881
 
16879
16882
  case 173:
16880
16883
 
16881
16884
/* Line 1455 of yacc.c  */
16882
 
#line 2248 "sql_yacc.yy"
 
16885
#line 2253 "sql_yacc.yy"
16883
16886
    { Lex->sp_chistics.detistic= FALSE; }
16884
16887
    break;
16885
16888
 
16886
16889
  case 174:
16887
16890
 
16888
16891
/* Line 1455 of yacc.c  */
16889
 
#line 2253 "sql_yacc.yy"
 
16892
#line 2258 "sql_yacc.yy"
16890
16893
    {
16891
16894
            Lex->sp_chistics.suid= SP_IS_SUID;
16892
16895
          }
16895
16898
  case 175:
16896
16899
 
16897
16900
/* Line 1455 of yacc.c  */
16898
 
#line 2257 "sql_yacc.yy"
 
16901
#line 2262 "sql_yacc.yy"
16899
16902
    {
16900
16903
            Lex->sp_chistics.suid= SP_IS_NOT_SUID;
16901
16904
          }
16904
16907
  case 176:
16905
16908
 
16906
16909
/* Line 1455 of yacc.c  */
16907
 
#line 2264 "sql_yacc.yy"
 
16910
#line 2269 "sql_yacc.yy"
16908
16911
    {
16909
16912
            LEX *lex = Lex;
16910
16913
 
16918
16921
  case 177:
16919
16922
 
16920
16923
/* Line 1455 of yacc.c  */
16921
 
#line 2272 "sql_yacc.yy"
 
16924
#line 2277 "sql_yacc.yy"
16922
16925
    {}
16923
16926
    break;
16924
16927
 
16925
16928
  case 182:
16926
16929
 
16927
16930
/* Line 1455 of yacc.c  */
16928
 
#line 2288 "sql_yacc.yy"
 
16931
#line 2293 "sql_yacc.yy"
16929
16932
    {
16930
16933
           Lex->value_list.push_back((yyvsp[(3) - (3)].item));
16931
16934
          }
16934
16937
  case 183:
16935
16938
 
16936
16939
/* Line 1455 of yacc.c  */
16937
 
#line 2292 "sql_yacc.yy"
 
16940
#line 2297 "sql_yacc.yy"
16938
16941
    {
16939
16942
            Lex->value_list.push_back((yyvsp[(1) - (1)].item));
16940
16943
          }
16943
16946
  case 188:
16944
16947
 
16945
16948
/* Line 1455 of yacc.c  */
16946
 
#line 2310 "sql_yacc.yy"
 
16949
#line 2315 "sql_yacc.yy"
16947
16950
    {
16948
16951
            LEX *lex= Lex;
16949
16952
 
16965
16968
  case 189:
16966
16969
 
16967
16970
/* Line 1455 of yacc.c  */
16968
 
#line 2330 "sql_yacc.yy"
 
16971
#line 2335 "sql_yacc.yy"
16969
16972
    {
16970
16973
            LEX *lex= Lex;
16971
16974
            sp_pcontext *spc= lex->spcont;
16993
16996
  case 194:
16994
16997
 
16995
16998
/* Line 1455 of yacc.c  */
16996
 
#line 2367 "sql_yacc.yy"
 
16999
#line 2372 "sql_yacc.yy"
16997
17000
    {
16998
17001
            LEX *lex= Lex;
16999
17002
            sp_pcontext *spc= lex->spcont;
17021
17024
  case 195:
17022
17025
 
17023
17026
/* Line 1455 of yacc.c  */
17024
 
#line 2392 "sql_yacc.yy"
 
17027
#line 2397 "sql_yacc.yy"
17025
17028
    { (yyval.num)= sp_param_in; }
17026
17029
    break;
17027
17030
 
17028
17031
  case 196:
17029
17032
 
17030
17033
/* Line 1455 of yacc.c  */
17031
 
#line 2393 "sql_yacc.yy"
 
17034
#line 2398 "sql_yacc.yy"
17032
17035
    { (yyval.num)= sp_param_in; }
17033
17036
    break;
17034
17037
 
17035
17038
  case 197:
17036
17039
 
17037
17040
/* Line 1455 of yacc.c  */
17038
 
#line 2394 "sql_yacc.yy"
 
17041
#line 2399 "sql_yacc.yy"
17039
17042
    { (yyval.num)= sp_param_out; }
17040
17043
    break;
17041
17044
 
17042
17045
  case 198:
17043
17046
 
17044
17047
/* Line 1455 of yacc.c  */
17045
 
#line 2395 "sql_yacc.yy"
 
17048
#line 2400 "sql_yacc.yy"
17046
17049
    { (yyval.num)= sp_param_inout; }
17047
17050
    break;
17048
17051
 
17049
17052
  case 199:
17050
17053
 
17051
17054
/* Line 1455 of yacc.c  */
17052
 
#line 2399 "sql_yacc.yy"
 
17055
#line 2404 "sql_yacc.yy"
17053
17056
    {}
17054
17057
    break;
17055
17058
 
17056
17059
  case 201:
17057
17060
 
17058
17061
/* Line 1455 of yacc.c  */
17059
 
#line 2404 "sql_yacc.yy"
 
17062
#line 2409 "sql_yacc.yy"
17060
17063
    {}
17061
17064
    break;
17062
17065
 
17063
17066
  case 203:
17064
17067
 
17065
17068
/* Line 1455 of yacc.c  */
17066
 
#line 2410 "sql_yacc.yy"
 
17069
#line 2415 "sql_yacc.yy"
17067
17070
    {
17068
17071
            (yyval.spblock).vars= (yyval.spblock).conds= (yyval.spblock).hndlrs= (yyval.spblock).curs= 0;
17069
17072
          }
17072
17075
  case 204:
17073
17076
 
17074
17077
/* Line 1455 of yacc.c  */
17075
 
#line 2414 "sql_yacc.yy"
 
17078
#line 2419 "sql_yacc.yy"
17076
17079
    {
17077
17080
            /* We check for declarations out of (standard) order this way
17078
17081
              because letting the grammar rules reflect it caused tricky
17100
17103
  case 205:
17101
17104
 
17102
17105
/* Line 1455 of yacc.c  */
17103
 
#line 2440 "sql_yacc.yy"
 
17106
#line 2445 "sql_yacc.yy"
17104
17107
    {
17105
17108
            LEX *lex= Lex;
17106
17109
 
17112
17115
  case 206:
17113
17116
 
17114
17117
/* Line 1455 of yacc.c  */
17115
 
#line 2448 "sql_yacc.yy"
 
17118
#line 2453 "sql_yacc.yy"
17116
17119
    {
17117
17120
            THD *thd= YYTHD;
17118
17121
            LEX *lex= Lex;
17174
17177
  case 207:
17175
17178
 
17176
17179
/* Line 1455 of yacc.c  */
17177
 
#line 2505 "sql_yacc.yy"
 
17180
#line 2510 "sql_yacc.yy"
17178
17181
    {
17179
17182
            LEX *lex= Lex;
17180
17183
            sp_pcontext *spc= lex->spcont;
17194
17197
  case 208:
17195
17198
 
17196
17199
/* Line 1455 of yacc.c  */
17197
 
#line 2520 "sql_yacc.yy"
 
17200
#line 2525 "sql_yacc.yy"
17198
17201
    {
17199
17202
            LEX *lex= Lex;
17200
17203
            sp_head *sp= lex->sphead;
17215
17218
  case 209:
17216
17219
 
17217
17220
/* Line 1455 of yacc.c  */
17218
 
#line 2536 "sql_yacc.yy"
 
17221
#line 2541 "sql_yacc.yy"
17219
17222
    {
17220
17223
            LEX *lex= Lex;
17221
17224
            sp_head *sp= lex->sphead;
17252
17255
  case 210:
17253
17256
 
17254
17257
/* Line 1455 of yacc.c  */
17255
 
#line 2568 "sql_yacc.yy"
 
17258
#line 2573 "sql_yacc.yy"
17256
17259
    {
17257
17260
            LEX *lex= Lex;
17258
17261
            sp_head *sp= lex->sphead;
17280
17283
  case 211:
17281
17284
 
17282
17285
/* Line 1455 of yacc.c  */
17283
 
#line 2593 "sql_yacc.yy"
 
17286
#line 2598 "sql_yacc.yy"
17284
17287
    {
17285
17288
            Lex->sphead->reset_lex(YYTHD);
17286
17289
          }
17289
17292
  case 212:
17290
17293
 
17291
17294
/* Line 1455 of yacc.c  */
17292
 
#line 2597 "sql_yacc.yy"
 
17295
#line 2602 "sql_yacc.yy"
17293
17296
    {
17294
17297
            LEX *lex= Lex;
17295
17298
 
17311
17314
  case 213:
17312
17315
 
17313
17316
/* Line 1455 of yacc.c  */
17314
 
#line 2616 "sql_yacc.yy"
 
17317
#line 2621 "sql_yacc.yy"
17315
17318
    { (yyval.num)= SP_HANDLER_EXIT; }
17316
17319
    break;
17317
17320
 
17318
17321
  case 214:
17319
17322
 
17320
17323
/* Line 1455 of yacc.c  */
17321
 
#line 2617 "sql_yacc.yy"
 
17324
#line 2622 "sql_yacc.yy"
17322
17325
    { (yyval.num)= SP_HANDLER_CONTINUE; }
17323
17326
    break;
17324
17327
 
17325
17328
  case 215:
17326
17329
 
17327
17330
/* Line 1455 of yacc.c  */
17328
 
#line 2623 "sql_yacc.yy"
 
17331
#line 2628 "sql_yacc.yy"
17329
17332
    { (yyval.num)= 1; }
17330
17333
    break;
17331
17334
 
17332
17335
  case 216:
17333
17336
 
17334
17337
/* Line 1455 of yacc.c  */
17335
 
#line 2625 "sql_yacc.yy"
 
17338
#line 2630 "sql_yacc.yy"
17336
17339
    { (yyval.num)+= 1; }
17337
17340
    break;
17338
17341
 
17339
17342
  case 217:
17340
17343
 
17341
17344
/* Line 1455 of yacc.c  */
17342
 
#line 2630 "sql_yacc.yy"
 
17345
#line 2635 "sql_yacc.yy"
17343
17346
    {
17344
17347
            LEX *lex= Lex;
17345
17348
            sp_head *sp= lex->sphead;
17364
17367
  case 218:
17365
17368
 
17366
17369
/* Line 1455 of yacc.c  */
17367
 
#line 2653 "sql_yacc.yy"
 
17370
#line 2658 "sql_yacc.yy"
17368
17371
    { /* mysql errno */
17369
17372
            (yyval.spcondtype)= (sp_cond_type_t *)YYTHD->alloc(sizeof(sp_cond_type_t));
17370
17373
            if ((yyval.spcondtype) == NULL)
17377
17380
  case 219:
17378
17381
 
17379
17382
/* Line 1455 of yacc.c  */
17380
 
#line 2661 "sql_yacc.yy"
 
17383
#line 2666 "sql_yacc.yy"
17381
17384
    { /* SQLSTATE */
17382
17385
            if (!sp_cond_check(&(yyvsp[(3) - (3)].lex_str)))
17383
17386
            {
17396
17399
  case 220:
17397
17400
 
17398
17401
/* Line 1455 of yacc.c  */
17399
 
#line 2677 "sql_yacc.yy"
 
17402
#line 2682 "sql_yacc.yy"
17400
17403
    {}
17401
17404
    break;
17402
17405
 
17403
17406
  case 221:
17404
17407
 
17405
17408
/* Line 1455 of yacc.c  */
17406
 
#line 2678 "sql_yacc.yy"
 
17409
#line 2683 "sql_yacc.yy"
17407
17410
    {}
17408
17411
    break;
17409
17412
 
17410
17413
  case 222:
17411
17414
 
17412
17415
/* Line 1455 of yacc.c  */
17413
 
#line 2683 "sql_yacc.yy"
 
17416
#line 2688 "sql_yacc.yy"
17414
17417
    {
17415
17418
            (yyval.spcondtype)= (yyvsp[(1) - (1)].spcondtype);
17416
17419
          }
17419
17422
  case 223:
17420
17423
 
17421
17424
/* Line 1455 of yacc.c  */
17422
 
#line 2687 "sql_yacc.yy"
 
17425
#line 2692 "sql_yacc.yy"
17423
17426
    {
17424
17427
            (yyval.spcondtype)= Lex->spcont->find_cond(&(yyvsp[(1) - (1)].lex_str));
17425
17428
            if ((yyval.spcondtype) == NULL)
17433
17436
  case 224:
17434
17437
 
17435
17438
/* Line 1455 of yacc.c  */
17436
 
#line 2696 "sql_yacc.yy"
 
17439
#line 2701 "sql_yacc.yy"
17437
17440
    {
17438
17441
            (yyval.spcondtype)= (sp_cond_type_t *)YYTHD->alloc(sizeof(sp_cond_type_t));
17439
17442
            if ((yyval.spcondtype) == NULL)
17445
17448
  case 225:
17446
17449
 
17447
17450
/* Line 1455 of yacc.c  */
17448
 
#line 2703 "sql_yacc.yy"
 
17451
#line 2708 "sql_yacc.yy"
17449
17452
    {
17450
17453
            (yyval.spcondtype)= (sp_cond_type_t *)YYTHD->alloc(sizeof(sp_cond_type_t));
17451
17454
            if ((yyval.spcondtype) == NULL)
17457
17460
  case 226:
17458
17461
 
17459
17462
/* Line 1455 of yacc.c  */
17460
 
#line 2710 "sql_yacc.yy"
 
17463
#line 2715 "sql_yacc.yy"
17461
17464
    {
17462
17465
            (yyval.spcondtype)= (sp_cond_type_t *)YYTHD->alloc(sizeof(sp_cond_type_t));
17463
17466
            if ((yyval.spcondtype) == NULL)
17469
17472
  case 227:
17470
17473
 
17471
17474
/* Line 1455 of yacc.c  */
17472
 
#line 2720 "sql_yacc.yy"
 
17475
#line 2725 "sql_yacc.yy"
17473
17476
    {
17474
17477
            /* NOTE: field definition is filled in sp_decl section. */
17475
17478
 
17489
17492
  case 228:
17490
17493
 
17491
17494
/* Line 1455 of yacc.c  */
17492
 
#line 2735 "sql_yacc.yy"
 
17495
#line 2740 "sql_yacc.yy"
17493
17496
    {
17494
17497
            /* NOTE: field definition is filled in sp_decl section. */
17495
17498
 
17509
17512
  case 229:
17510
17513
 
17511
17514
/* Line 1455 of yacc.c  */
17512
 
#line 2752 "sql_yacc.yy"
 
17515
#line 2757 "sql_yacc.yy"
17513
17516
    { (yyval.item) = NULL; }
17514
17517
    break;
17515
17518
 
17516
17519
  case 230:
17517
17520
 
17518
17521
/* Line 1455 of yacc.c  */
17519
 
#line 2753 "sql_yacc.yy"
 
17522
#line 2758 "sql_yacc.yy"
17520
17523
    { (yyval.item) = (yyvsp[(2) - (2)].item); }
17521
17524
    break;
17522
17525
 
17523
17526
  case 244:
17524
17527
 
17525
17528
/* Line 1455 of yacc.c  */
17526
 
#line 2774 "sql_yacc.yy"
 
17529
#line 2779 "sql_yacc.yy"
17527
17530
    { Lex->sphead->new_cont_backpatch(NULL); }
17528
17531
    break;
17529
17532
 
17530
17533
  case 245:
17531
17534
 
17532
17535
/* Line 1455 of yacc.c  */
17533
 
#line 2776 "sql_yacc.yy"
 
17536
#line 2781 "sql_yacc.yy"
17534
17537
    { Lex->sphead->do_cont_backpatch(); }
17535
17538
    break;
17536
17539
 
17537
17540
  case 246:
17538
17541
 
17539
17542
/* Line 1455 of yacc.c  */
17540
 
#line 2780 "sql_yacc.yy"
 
17543
#line 2785 "sql_yacc.yy"
17541
17544
    {
17542
17545
            THD *thd= YYTHD;
17543
17546
            LEX *lex= thd->lex;
17551
17554
  case 247:
17552
17555
 
17553
17556
/* Line 1455 of yacc.c  */
17554
 
#line 2789 "sql_yacc.yy"
 
17557
#line 2794 "sql_yacc.yy"
17555
17558
    {
17556
17559
            THD *thd= YYTHD;
17557
17560
            LEX *lex= thd->lex;
17601
17604
  case 248:
17602
17605
 
17603
17606
/* Line 1455 of yacc.c  */
17604
 
#line 2837 "sql_yacc.yy"
 
17607
#line 2842 "sql_yacc.yy"
17605
17608
    { Lex->sphead->reset_lex(YYTHD); }
17606
17609
    break;
17607
17610
 
17608
17611
  case 249:
17609
17612
 
17610
17613
/* Line 1455 of yacc.c  */
17611
 
#line 2839 "sql_yacc.yy"
 
17614
#line 2844 "sql_yacc.yy"
17612
17615
    {
17613
17616
            LEX *lex= Lex;
17614
17617
            sp_head *sp= lex->sphead;
17637
17640
  case 250:
17638
17641
 
17639
17642
/* Line 1455 of yacc.c  */
17640
 
#line 2865 "sql_yacc.yy"
 
17643
#line 2870 "sql_yacc.yy"
17641
17644
    { /* Unlabeled controls get a secret label. */
17642
17645
            LEX *lex= Lex;
17643
17646
 
17648
17651
  case 251:
17649
17652
 
17650
17653
/* Line 1455 of yacc.c  */
17651
 
#line 2871 "sql_yacc.yy"
 
17654
#line 2876 "sql_yacc.yy"
17652
17655
    {
17653
17656
            LEX *lex= Lex;
17654
17657
 
17659
17662
  case 252:
17660
17663
 
17661
17664
/* Line 1455 of yacc.c  */
17662
 
#line 2880 "sql_yacc.yy"
 
17665
#line 2885 "sql_yacc.yy"
17663
17666
    {
17664
17667
            LEX *lex= Lex;
17665
17668
            sp_head *sp = lex->sphead;
17714
17717
  case 253:
17715
17718
 
17716
17719
/* Line 1455 of yacc.c  */
17717
 
#line 2933 "sql_yacc.yy"
 
17720
#line 2938 "sql_yacc.yy"
17718
17721
    {
17719
17722
            LEX *lex= Lex;
17720
17723
            sp_head *sp= lex->sphead;
17759
17762
  case 254:
17760
17763
 
17761
17764
/* Line 1455 of yacc.c  */
17762
 
#line 2976 "sql_yacc.yy"
 
17765
#line 2981 "sql_yacc.yy"
17763
17766
    {
17764
17767
            LEX *lex= Lex;
17765
17768
            sp_head *sp= lex->sphead;
17781
17784
  case 255:
17782
17785
 
17783
17786
/* Line 1455 of yacc.c  */
17784
 
#line 2996 "sql_yacc.yy"
 
17787
#line 3001 "sql_yacc.yy"
17785
17788
    {
17786
17789
            LEX *lex= Lex;
17787
17790
            sp_head *sp= lex->sphead;
17803
17806
  case 256:
17804
17807
 
17805
17808
/* Line 1455 of yacc.c  */
17806
 
#line 3013 "sql_yacc.yy"
 
17809
#line 3018 "sql_yacc.yy"
17807
17810
    {}
17808
17811
    break;
17809
17812
 
17810
17813
  case 257:
17811
17814
 
17812
17815
/* Line 1455 of yacc.c  */
17813
 
#line 3018 "sql_yacc.yy"
 
17816
#line 3023 "sql_yacc.yy"
17814
17817
    {
17815
17818
            LEX *lex= Lex;
17816
17819
            sp_head *sp= lex->sphead;
17832
17835
  case 261:
17833
17836
 
17834
17837
/* Line 1455 of yacc.c  */
17835
 
#line 3044 "sql_yacc.yy"
 
17838
#line 3049 "sql_yacc.yy"
17836
17839
    {
17837
17840
            LEX *lex= Lex;
17838
17841
            sp_head *sp= lex->sphead;
17857
17860
  case 262:
17858
17861
 
17859
17862
/* Line 1455 of yacc.c  */
17860
 
#line 3064 "sql_yacc.yy"
 
17863
#line 3069 "sql_yacc.yy"
17861
17864
    {
17862
17865
            LEX *lex= Lex;
17863
17866
            sp_head *sp= lex->sphead;
17882
17885
  case 263:
17883
17886
 
17884
17887
/* Line 1455 of yacc.c  */
17885
 
#line 3086 "sql_yacc.yy"
 
17888
#line 3091 "sql_yacc.yy"
17886
17889
    { Lex->sphead->reset_lex(YYTHD); }
17887
17890
    break;
17888
17891
 
17889
17892
  case 264:
17890
17893
 
17891
17894
/* Line 1455 of yacc.c  */
17892
 
#line 3088 "sql_yacc.yy"
 
17895
#line 3093 "sql_yacc.yy"
17893
17896
    {
17894
17897
            LEX *lex= Lex;
17895
17898
            sp_head *sp= lex->sphead;
17910
17913
  case 265:
17911
17914
 
17912
17915
/* Line 1455 of yacc.c  */
17913
 
#line 3104 "sql_yacc.yy"
 
17916
#line 3109 "sql_yacc.yy"
17914
17917
    {
17915
17918
            sp_head *sp= Lex->sphead;
17916
17919
            sp_pcontext *ctx= Lex->spcont;
17927
17930
  case 266:
17928
17931
 
17929
17932
/* Line 1455 of yacc.c  */
17930
 
#line 3116 "sql_yacc.yy"
 
17933
#line 3121 "sql_yacc.yy"
17931
17934
    {
17932
17935
            LEX *lex= Lex;
17933
17936
 
17938
17941
  case 272:
17939
17942
 
17940
17943
/* Line 1455 of yacc.c  */
17941
 
#line 3136 "sql_yacc.yy"
 
17944
#line 3141 "sql_yacc.yy"
17942
17945
    {
17943
17946
            LEX *lex= Lex;
17944
17947
            case_stmt_action_case(lex);
17949
17952
  case 273:
17950
17953
 
17951
17954
/* Line 1455 of yacc.c  */
17952
 
#line 3142 "sql_yacc.yy"
 
17955
#line 3147 "sql_yacc.yy"
17953
17956
    {
17954
17957
            LEX *lex= Lex;
17955
17958
            if (case_stmt_action_expr(lex, (yyvsp[(3) - (3)].item)))
17964
17967
  case 274:
17965
17968
 
17966
17969
/* Line 1455 of yacc.c  */
17967
 
#line 3155 "sql_yacc.yy"
 
17970
#line 3160 "sql_yacc.yy"
17968
17971
    {
17969
17972
            LEX *lex= Lex;
17970
17973
            case_stmt_action_end_case(lex, true);
17974
17977
  case 275:
17975
17978
 
17976
17979
/* Line 1455 of yacc.c  */
17977
 
#line 3163 "sql_yacc.yy"
 
17980
#line 3168 "sql_yacc.yy"
17978
17981
    {
17979
17982
            LEX *lex= Lex;
17980
17983
            case_stmt_action_case(lex);
17984
17987
  case 276:
17985
17988
 
17986
17989
/* Line 1455 of yacc.c  */
17987
 
#line 3171 "sql_yacc.yy"
 
17990
#line 3176 "sql_yacc.yy"
17988
17991
    {
17989
17992
            LEX *lex= Lex;
17990
17993
            case_stmt_action_end_case(lex, false);
17994
17997
  case 281:
17995
17998
 
17996
17999
/* Line 1455 of yacc.c  */
17997
 
#line 3189 "sql_yacc.yy"
 
18000
#line 3194 "sql_yacc.yy"
17998
18001
    {
17999
18002
            Lex->sphead->reset_lex(YYTHD); /* For expr $3 */
18000
18003
          }
18003
18006
  case 282:
18004
18007
 
18005
18008
/* Line 1455 of yacc.c  */
18006
 
#line 3193 "sql_yacc.yy"
 
18009
#line 3198 "sql_yacc.yy"
18007
18010
    {
18008
18011
            /* Simple case: <caseval> = <whenval> */
18009
18012
 
18019
18022
  case 283:
18020
18023
 
18021
18024
/* Line 1455 of yacc.c  */
18022
 
#line 3205 "sql_yacc.yy"
 
18025
#line 3210 "sql_yacc.yy"
18023
18026
    {
18024
18027
            LEX *lex= Lex;
18025
18028
            if (case_stmt_action_then(lex))
18030
18033
  case 284:
18031
18034
 
18032
18035
/* Line 1455 of yacc.c  */
18033
 
#line 3214 "sql_yacc.yy"
 
18036
#line 3219 "sql_yacc.yy"
18034
18037
    {
18035
18038
            Lex->sphead->reset_lex(YYTHD); /* For expr $3 */
18036
18039
          }
18039
18042
  case 285:
18040
18043
 
18041
18044
/* Line 1455 of yacc.c  */
18042
 
#line 3218 "sql_yacc.yy"
 
18045
#line 3223 "sql_yacc.yy"
18043
18046
    {
18044
18047
            LEX *lex= Lex;
18045
18048
            if (case_stmt_action_when(lex, (yyvsp[(3) - (3)].item), false))
18053
18056
  case 286:
18054
18057
 
18055
18058
/* Line 1455 of yacc.c  */
18056
 
#line 3228 "sql_yacc.yy"
 
18059
#line 3233 "sql_yacc.yy"
18057
18060
    {
18058
18061
            LEX *lex= Lex;
18059
18062
            if (case_stmt_action_then(lex))
18064
18067
  case 287:
18065
18068
 
18066
18069
/* Line 1455 of yacc.c  */
18067
 
#line 3237 "sql_yacc.yy"
 
18070
#line 3242 "sql_yacc.yy"
18068
18071
    {
18069
18072
            LEX *lex= Lex;
18070
18073
            sp_head *sp= lex->sphead;
18080
18083
  case 289:
18081
18084
 
18082
18085
/* Line 1455 of yacc.c  */
18083
 
#line 3252 "sql_yacc.yy"
 
18086
#line 3257 "sql_yacc.yy"
18084
18087
    {
18085
18088
            LEX *lex= Lex;
18086
18089
            sp_pcontext *ctx= lex->spcont;
18103
18106
  case 290:
18104
18107
 
18105
18108
/* Line 1455 of yacc.c  */
18106
 
#line 3270 "sql_yacc.yy"
 
18109
#line 3275 "sql_yacc.yy"
18107
18110
    {
18108
18111
            LEX *lex= Lex;
18109
18112
            sp_label_t *lab= lex->spcont->pop_label();
18123
18126
  case 291:
18124
18127
 
18125
18128
/* Line 1455 of yacc.c  */
18126
 
#line 3287 "sql_yacc.yy"
 
18129
#line 3292 "sql_yacc.yy"
18127
18130
    { (yyval.lex_str)= null_lex_str; }
18128
18131
    break;
18129
18132
 
18130
18133
  case 292:
18131
18134
 
18132
18135
/* Line 1455 of yacc.c  */
18133
 
#line 3288 "sql_yacc.yy"
 
18136
#line 3293 "sql_yacc.yy"
18134
18137
    { (yyval.lex_str)= (yyvsp[(1) - (1)].lex_str); }
18135
18138
    break;
18136
18139
 
18137
18140
  case 293:
18138
18141
 
18139
18142
/* Line 1455 of yacc.c  */
18140
 
#line 3293 "sql_yacc.yy"
 
18143
#line 3298 "sql_yacc.yy"
18141
18144
    {
18142
18145
            LEX *lex= Lex;
18143
18146
            sp_pcontext *ctx= lex->spcont;
18158
18161
  case 294:
18159
18162
 
18160
18163
/* Line 1455 of yacc.c  */
18161
 
#line 3309 "sql_yacc.yy"
 
18164
#line 3314 "sql_yacc.yy"
18162
18165
    {
18163
18166
            LEX *lex= Lex;
18164
18167
            sp_label_t *lab= lex->spcont->pop_label();
18177
18180
  case 295:
18178
18181
 
18179
18182
/* Line 1455 of yacc.c  */
18180
 
#line 3325 "sql_yacc.yy"
 
18183
#line 3330 "sql_yacc.yy"
18181
18184
    { /* Unlabeled blocks get a secret label. */
18182
18185
            LEX *lex= Lex;
18183
18186
            uint ip= lex->sphead->instructions();
18189
18192
  case 296:
18190
18193
 
18191
18194
/* Line 1455 of yacc.c  */
18192
 
#line 3332 "sql_yacc.yy"
 
18195
#line 3337 "sql_yacc.yy"
18193
18196
    {
18194
18197
            LEX *lex= Lex;
18195
18198
            lex->spcont->pop_label();
18199
18202
  case 297:
18200
18203
 
18201
18204
/* Line 1455 of yacc.c  */
18202
 
#line 3340 "sql_yacc.yy"
 
18205
#line 3345 "sql_yacc.yy"
18203
18206
    { /* QQ This is just a dummy for grouping declarations and statements
18204
18207
              together. No [[NOT] ATOMIC] yet, and we need to figure out how
18205
18208
              make it coexist with the existing BEGIN COMMIT/ROLLBACK. */
18211
18214
  case 298:
18212
18215
 
18213
18216
/* Line 1455 of yacc.c  */
18214
 
#line 3349 "sql_yacc.yy"
 
18217
#line 3354 "sql_yacc.yy"
18215
18218
    {
18216
18219
            LEX *lex= Lex;
18217
18220
            sp_head *sp= lex->sphead;
18240
18243
  case 299:
18241
18244
 
18242
18245
/* Line 1455 of yacc.c  */
18243
 
#line 3377 "sql_yacc.yy"
 
18246
#line 3382 "sql_yacc.yy"
18244
18247
    {
18245
18248
            LEX *lex= Lex;
18246
18249
            uint ip= lex->sphead->instructions();
18255
18258
  case 300:
18256
18259
 
18257
18260
/* Line 1455 of yacc.c  */
18258
 
#line 3387 "sql_yacc.yy"
 
18261
#line 3392 "sql_yacc.yy"
18259
18262
    { Lex->sphead->reset_lex(YYTHD); }
18260
18263
    break;
18261
18264
 
18262
18265
  case 301:
18263
18266
 
18264
18267
/* Line 1455 of yacc.c  */
18265
 
#line 3389 "sql_yacc.yy"
 
18268
#line 3394 "sql_yacc.yy"
18266
18269
    {
18267
18270
            LEX *lex= Lex;
18268
18271
            sp_head *sp= lex->sphead;
18283
18286
  case 302:
18284
18287
 
18285
18288
/* Line 1455 of yacc.c  */
18286
 
#line 3405 "sql_yacc.yy"
 
18289
#line 3410 "sql_yacc.yy"
18287
18290
    {
18288
18291
            LEX *lex= Lex;
18289
18292
            uint ip= lex->sphead->instructions();
18299
18302
  case 303:
18300
18303
 
18301
18304
/* Line 1455 of yacc.c  */
18302
 
#line 3416 "sql_yacc.yy"
 
18305
#line 3421 "sql_yacc.yy"
18303
18306
    { Lex->sphead->reset_lex(YYTHD); }
18304
18307
    break;
18305
18308
 
18306
18309
  case 304:
18307
18310
 
18308
18311
/* Line 1455 of yacc.c  */
18309
 
#line 3418 "sql_yacc.yy"
 
18312
#line 3423 "sql_yacc.yy"
18310
18313
    {
18311
18314
            LEX *lex= Lex;
18312
18315
            uint ip= lex->sphead->instructions();
18327
18330
  case 305:
18328
18331
 
18329
18332
/* Line 1455 of yacc.c  */
18330
 
#line 3437 "sql_yacc.yy"
 
18333
#line 3442 "sql_yacc.yy"
18331
18334
    { Lex->trg_chistics.action_time= TRG_ACTION_BEFORE; }
18332
18335
    break;
18333
18336
 
18334
18337
  case 306:
18335
18338
 
18336
18339
/* Line 1455 of yacc.c  */
18337
 
#line 3439 "sql_yacc.yy"
 
18340
#line 3444 "sql_yacc.yy"
18338
18341
    { Lex->trg_chistics.action_time= TRG_ACTION_AFTER; }
18339
18342
    break;
18340
18343
 
18341
18344
  case 307:
18342
18345
 
18343
18346
/* Line 1455 of yacc.c  */
18344
 
#line 3444 "sql_yacc.yy"
 
18347
#line 3449 "sql_yacc.yy"
18345
18348
    { Lex->trg_chistics.event= TRG_EVENT_INSERT; }
18346
18349
    break;
18347
18350
 
18348
18351
  case 308:
18349
18352
 
18350
18353
/* Line 1455 of yacc.c  */
18351
 
#line 3446 "sql_yacc.yy"
 
18354
#line 3451 "sql_yacc.yy"
18352
18355
    { Lex->trg_chistics.event= TRG_EVENT_UPDATE; }
18353
18356
    break;
18354
18357
 
18355
18358
  case 309:
18356
18359
 
18357
18360
/* Line 1455 of yacc.c  */
18358
 
#line 3448 "sql_yacc.yy"
 
18361
#line 3453 "sql_yacc.yy"
18359
18362
    { Lex->trg_chistics.event= TRG_EVENT_DELETE; }
18360
18363
    break;
18361
18364
 
18362
18365
  case 313:
18363
18366
 
18364
18367
/* Line 1455 of yacc.c  */
18365
 
#line 3482 "sql_yacc.yy"
 
18368
#line 3487 "sql_yacc.yy"
18366
18369
    {}
18367
18370
    break;
18368
18371
 
18369
18372
  case 314:
18370
18373
 
18371
18374
/* Line 1455 of yacc.c  */
18372
 
#line 3484 "sql_yacc.yy"
 
18375
#line 3489 "sql_yacc.yy"
18373
18376
    {
18374
18377
            LEX *lex= Lex;
18375
18378
            lex->alter_tablespace_info->logfile_group_name= (yyvsp[(4) - (4)].lex_str).str;
18379
18382
  case 315:
18380
18383
 
18381
18384
/* Line 1455 of yacc.c  */
18382
 
#line 3494 "sql_yacc.yy"
 
18385
#line 3499 "sql_yacc.yy"
18383
18386
    { 
18384
18387
            Lex->alter_tablespace_info->ts_alter_tablespace_type= ALTER_TABLESPACE_ADD_FILE; 
18385
18388
          }
18388
18391
  case 316:
18389
18392
 
18390
18393
/* Line 1455 of yacc.c  */
18391
 
#line 3500 "sql_yacc.yy"
 
18394
#line 3505 "sql_yacc.yy"
18392
18395
    { 
18393
18396
            Lex->alter_tablespace_info->ts_alter_tablespace_type= ALTER_TABLESPACE_DROP_FILE; 
18394
18397
          }
18397
18400
  case 321:
18398
18401
 
18399
18402
/* Line 1455 of yacc.c  */
18400
 
#line 3523 "sql_yacc.yy"
 
18403
#line 3528 "sql_yacc.yy"
18401
18404
    {}
18402
18405
    break;
18403
18406
 
18404
18407
  case 368:
18405
18408
 
18406
18409
/* Line 1455 of yacc.c  */
18407
 
#line 3617 "sql_yacc.yy"
 
18410
#line 3622 "sql_yacc.yy"
18408
18411
    {
18409
18412
            LEX *lex= Lex;
18410
18413
            lex->alter_tablespace_info->data_file_name= (yyvsp[(2) - (2)].lex_str).str;
18414
18417
  case 369:
18415
18418
 
18416
18419
/* Line 1455 of yacc.c  */
18417
 
#line 3625 "sql_yacc.yy"
 
18420
#line 3630 "sql_yacc.yy"
18418
18421
    {
18419
18422
            LEX *lex= Lex;
18420
18423
            lex->alter_tablespace_info->undo_file_name= (yyvsp[(2) - (2)].lex_str).str;
18424
18427
  case 370:
18425
18428
 
18426
18429
/* Line 1455 of yacc.c  */
18427
 
#line 3633 "sql_yacc.yy"
 
18430
#line 3638 "sql_yacc.yy"
18428
18431
    {
18429
18432
            LEX *lex= Lex;
18430
18433
            lex->alter_tablespace_info->redo_file_name= (yyvsp[(2) - (2)].lex_str).str;
18434
18437
  case 371:
18435
18438
 
18436
18439
/* Line 1455 of yacc.c  */
18437
 
#line 3641 "sql_yacc.yy"
 
18440
#line 3646 "sql_yacc.yy"
18438
18441
    {
18439
18442
            LEX *lex= Lex;
18440
18443
            lex->alter_tablespace_info= new st_alter_tablespace();
18448
18451
  case 372:
18449
18452
 
18450
18453
/* Line 1455 of yacc.c  */
18451
 
#line 3653 "sql_yacc.yy"
 
18454
#line 3658 "sql_yacc.yy"
18452
18455
    {
18453
18456
            LEX *lex= Lex;
18454
18457
            lex->alter_tablespace_info= new st_alter_tablespace();
18462
18465
  case 373:
18463
18466
 
18464
18467
/* Line 1455 of yacc.c  */
18465
 
#line 3665 "sql_yacc.yy"
 
18468
#line 3670 "sql_yacc.yy"
18466
18469
    {
18467
18470
            LEX *lex= Lex;
18468
18471
            lex->alter_tablespace_info->ts_access_mode= TS_READ_ONLY;
18472
18475
  case 374:
18473
18476
 
18474
18477
/* Line 1455 of yacc.c  */
18475
 
#line 3670 "sql_yacc.yy"
 
18478
#line 3675 "sql_yacc.yy"
18476
18479
    {
18477
18480
            LEX *lex= Lex;
18478
18481
            lex->alter_tablespace_info->ts_access_mode= TS_READ_WRITE;
18482
18485
  case 375:
18483
18486
 
18484
18487
/* Line 1455 of yacc.c  */
18485
 
#line 3675 "sql_yacc.yy"
 
18488
#line 3680 "sql_yacc.yy"
18486
18489
    {
18487
18490
            LEX *lex= Lex;
18488
18491
            lex->alter_tablespace_info->ts_access_mode= TS_NOT_ACCESSIBLE;
18492
18495
  case 376:
18493
18496
 
18494
18497
/* Line 1455 of yacc.c  */
18495
 
#line 3683 "sql_yacc.yy"
 
18498
#line 3688 "sql_yacc.yy"
18496
18499
    {
18497
18500
            LEX *lex= Lex;
18498
18501
            lex->alter_tablespace_info->initial_size= (yyvsp[(3) - (3)].ulonglong_number);
18502
18505
  case 377:
18503
18506
 
18504
18507
/* Line 1455 of yacc.c  */
18505
 
#line 3691 "sql_yacc.yy"
 
18508
#line 3696 "sql_yacc.yy"
18506
18509
    {
18507
18510
            LEX *lex= Lex;
18508
18511
            lex->alter_tablespace_info->autoextend_size= (yyvsp[(3) - (3)].ulonglong_number);
18512
18515
  case 378:
18513
18516
 
18514
18517
/* Line 1455 of yacc.c  */
18515
 
#line 3699 "sql_yacc.yy"
 
18518
#line 3704 "sql_yacc.yy"
18516
18519
    {
18517
18520
            LEX *lex= Lex;
18518
18521
            lex->alter_tablespace_info->max_size= (yyvsp[(3) - (3)].ulonglong_number);
18522
18525
  case 379:
18523
18526
 
18524
18527
/* Line 1455 of yacc.c  */
18525
 
#line 3707 "sql_yacc.yy"
 
18528
#line 3712 "sql_yacc.yy"
18526
18529
    {
18527
18530
            LEX *lex= Lex;
18528
18531
            lex->alter_tablespace_info->extent_size= (yyvsp[(3) - (3)].ulonglong_number);
18532
18535
  case 380:
18533
18536
 
18534
18537
/* Line 1455 of yacc.c  */
18535
 
#line 3715 "sql_yacc.yy"
 
18538
#line 3720 "sql_yacc.yy"
18536
18539
    {
18537
18540
            LEX *lex= Lex;
18538
18541
            lex->alter_tablespace_info->undo_buffer_size= (yyvsp[(3) - (3)].ulonglong_number);
18542
18545
  case 381:
18543
18546
 
18544
18547
/* Line 1455 of yacc.c  */
18545
 
#line 3723 "sql_yacc.yy"
 
18548
#line 3728 "sql_yacc.yy"
18546
18549
    {
18547
18550
            LEX *lex= Lex;
18548
18551
            lex->alter_tablespace_info->redo_buffer_size= (yyvsp[(3) - (3)].ulonglong_number);
18552
18555
  case 382:
18553
18556
 
18554
18557
/* Line 1455 of yacc.c  */
18555
 
#line 3731 "sql_yacc.yy"
 
18558
#line 3736 "sql_yacc.yy"
18556
18559
    {
18557
18560
            LEX *lex= Lex;
18558
18561
            if (lex->alter_tablespace_info->nodegroup_id != UNDEF_NODEGROUP)
18567
18570
  case 383:
18568
18571
 
18569
18572
/* Line 1455 of yacc.c  */
18570
 
#line 3744 "sql_yacc.yy"
 
18573
#line 3749 "sql_yacc.yy"
18571
18574
    {
18572
18575
            LEX *lex= Lex;
18573
18576
            if (lex->alter_tablespace_info->ts_comment != NULL)
18582
18585
  case 384:
18583
18586
 
18584
18587
/* Line 1455 of yacc.c  */
18585
 
#line 3757 "sql_yacc.yy"
 
18588
#line 3762 "sql_yacc.yy"
18586
18589
    {
18587
18590
            LEX *lex= Lex;
18588
18591
            if (lex->alter_tablespace_info->storage_engine != NULL)
18598
18601
  case 387:
18599
18602
 
18600
18603
/* Line 1455 of yacc.c  */
18601
 
#line 3776 "sql_yacc.yy"
 
18604
#line 3781 "sql_yacc.yy"
18602
18605
    {
18603
18606
            LEX *lex= Lex;
18604
18607
            lex->alter_tablespace_info->wait_until_completed= TRUE;
18608
18611
  case 388:
18609
18612
 
18610
18613
/* Line 1455 of yacc.c  */
18611
 
#line 3781 "sql_yacc.yy"
 
18614
#line 3786 "sql_yacc.yy"
18612
18615
    {
18613
18616
            LEX *lex= Lex;
18614
18617
            if (!(lex->alter_tablespace_info->wait_until_completed))
18623
18626
  case 389:
18624
18627
 
18625
18628
/* Line 1455 of yacc.c  */
18626
 
#line 3793 "sql_yacc.yy"
 
18629
#line 3798 "sql_yacc.yy"
18627
18630
    { (yyval.ulonglong_number)= (yyvsp[(1) - (1)].ulong_num);}
18628
18631
    break;
18629
18632
 
18630
18633
  case 390:
18631
18634
 
18632
18635
/* Line 1455 of yacc.c  */
18633
 
#line 3795 "sql_yacc.yy"
 
18636
#line 3800 "sql_yacc.yy"
18634
18637
    {
18635
18638
            ulonglong number;
18636
18639
            uint text_shift_number= 0;
18679
18682
  case 391:
18680
18683
 
18681
18684
/* Line 1455 of yacc.c  */
18682
 
#line 3845 "sql_yacc.yy"
 
18685
#line 3850 "sql_yacc.yy"
18683
18686
    {}
18684
18687
    break;
18685
18688
 
18686
18689
  case 392:
18687
18690
 
18688
18691
/* Line 1455 of yacc.c  */
18689
 
#line 3848 "sql_yacc.yy"
 
18692
#line 3853 "sql_yacc.yy"
18690
18693
    {}
18691
18694
    break;
18692
18695
 
18693
18696
  case 393:
18694
18697
 
18695
18698
/* Line 1455 of yacc.c  */
18696
 
#line 3850 "sql_yacc.yy"
 
18699
#line 3855 "sql_yacc.yy"
18697
18700
    {
18698
18701
            THD *thd= YYTHD;
18699
18702
            TABLE_LIST *src_table;
18712
18715
  case 394:
18713
18716
 
18714
18717
/* Line 1455 of yacc.c  */
18715
 
#line 3864 "sql_yacc.yy"
 
18718
#line 3869 "sql_yacc.yy"
18716
18719
    {
18717
18720
            THD *thd= YYTHD;
18718
18721
            TABLE_LIST *src_table;
18731
18734
  case 395:
18732
18735
 
18733
18736
/* Line 1455 of yacc.c  */
18734
 
#line 3882 "sql_yacc.yy"
 
18737
#line 3887 "sql_yacc.yy"
18735
18738
    {}
18736
18739
    break;
18737
18740
 
18738
18741
  case 396:
18739
18742
 
18740
18743
/* Line 1455 of yacc.c  */
18741
 
#line 3885 "sql_yacc.yy"
 
18744
#line 3890 "sql_yacc.yy"
18742
18745
    {
18743
18746
             Select->set_braces(1);
18744
18747
             Lex->create_select_start_with_brace= TRUE;
18748
18751
  case 397:
18749
18752
 
18750
18753
/* Line 1455 of yacc.c  */
18751
 
#line 3889 "sql_yacc.yy"
 
18754
#line 3894 "sql_yacc.yy"
18752
18755
    {}
18753
18756
    break;
18754
18757
 
18755
18758
  case 398:
18756
18759
 
18757
18760
/* Line 1455 of yacc.c  */
18758
 
#line 3893 "sql_yacc.yy"
 
18761
#line 3898 "sql_yacc.yy"
18759
18762
    {}
18760
18763
    break;
18761
18764
 
18762
18765
  case 399:
18763
18766
 
18764
18767
/* Line 1455 of yacc.c  */
18765
 
#line 3895 "sql_yacc.yy"
 
18768
#line 3900 "sql_yacc.yy"
18766
18769
    {
18767
18770
            Select->set_braces(0);
18768
18771
            Lex->create_select_start_with_brace= FALSE;
18772
18775
  case 400:
18773
18776
 
18774
18777
/* Line 1455 of yacc.c  */
18775
 
#line 3899 "sql_yacc.yy"
 
18778
#line 3904 "sql_yacc.yy"
18776
18779
    {}
18777
18780
    break;
18778
18781
 
18779
18782
  case 401:
18780
18783
 
18781
18784
/* Line 1455 of yacc.c  */
18782
 
#line 3901 "sql_yacc.yy"
 
18785
#line 3906 "sql_yacc.yy"
18783
18786
    {
18784
18787
            Select->set_braces(1);
18785
18788
            Lex->create_select_start_with_brace= TRUE;
18789
18792
  case 402:
18790
18793
 
18791
18794
/* Line 1455 of yacc.c  */
18792
 
#line 3905 "sql_yacc.yy"
 
18795
#line 3910 "sql_yacc.yy"
18793
18796
    {}
18794
18797
    break;
18795
18798
 
18796
18799
  case 403:
18797
18800
 
18798
18801
/* Line 1455 of yacc.c  */
18799
 
#line 3933 "sql_yacc.yy"
 
18802
#line 3938 "sql_yacc.yy"
18800
18803
    {}
18801
18804
    break;
18802
18805
 
18803
18806
  case 405:
18804
18807
 
18805
18808
/* Line 1455 of yacc.c  */
18806
 
#line 3939 "sql_yacc.yy"
 
18809
#line 3944 "sql_yacc.yy"
18807
18810
    {
18808
18811
#ifdef WITH_PARTITION_STORAGE_ENGINE
18809
18812
            LEX *lex= Lex;
18836
18839
  case 407:
18837
18840
 
18838
18841
/* Line 1455 of yacc.c  */
18839
 
#line 3971 "sql_yacc.yy"
 
18842
#line 3976 "sql_yacc.yy"
18840
18843
    {
18841
18844
            LEX *lex= Lex;
18842
18845
            if (!lex->part_info)
18854
18857
  case 408:
18855
18858
 
18856
18859
/* Line 1455 of yacc.c  */
18857
 
#line 3983 "sql_yacc.yy"
 
18860
#line 3988 "sql_yacc.yy"
18858
18861
    {}
18859
18862
    break;
18860
18863
 
18861
18864
  case 410:
18862
18865
 
18863
18866
/* Line 1455 of yacc.c  */
18864
 
#line 3992 "sql_yacc.yy"
 
18867
#line 3997 "sql_yacc.yy"
18865
18868
    {
18866
18869
            LEX *lex= Lex;
18867
18870
            lex->part_info->list_of_part_fields= TRUE;
18872
18875
  case 411:
18873
18876
 
18874
18877
/* Line 1455 of yacc.c  */
18875
 
#line 3998 "sql_yacc.yy"
 
18878
#line 4003 "sql_yacc.yy"
18876
18879
    { Lex->part_info->part_type= HASH_PARTITION; }
18877
18880
    break;
18878
18881
 
18879
18882
  case 412:
18880
18883
 
18881
18884
/* Line 1455 of yacc.c  */
18882
 
#line 3999 "sql_yacc.yy"
 
18885
#line 4004 "sql_yacc.yy"
18883
18886
    {}
18884
18887
    break;
18885
18888
 
18886
18889
  case 413:
18887
18890
 
18888
18891
/* Line 1455 of yacc.c  */
18889
 
#line 4001 "sql_yacc.yy"
 
18892
#line 4006 "sql_yacc.yy"
18890
18893
    { Lex->part_info->part_type= RANGE_PARTITION; }
18891
18894
    break;
18892
18895
 
18893
18896
  case 414:
18894
18897
 
18895
18898
/* Line 1455 of yacc.c  */
18896
 
#line 4002 "sql_yacc.yy"
 
18899
#line 4007 "sql_yacc.yy"
18897
18900
    {}
18898
18901
    break;
18899
18902
 
18900
18903
  case 415:
18901
18904
 
18902
18905
/* Line 1455 of yacc.c  */
18903
 
#line 4004 "sql_yacc.yy"
 
18906
#line 4009 "sql_yacc.yy"
18904
18907
    { Lex->part_info->part_type= LIST_PARTITION; }
18905
18908
    break;
18906
18909
 
18907
18910
  case 416:
18908
18911
 
18909
18912
/* Line 1455 of yacc.c  */
18910
 
#line 4005 "sql_yacc.yy"
 
18913
#line 4010 "sql_yacc.yy"
18911
18914
    {}
18912
18915
    break;
18913
18916
 
18914
18917
  case 417:
18915
18918
 
18916
18919
/* Line 1455 of yacc.c  */
18917
 
#line 4009 "sql_yacc.yy"
 
18920
#line 4014 "sql_yacc.yy"
18918
18921
    {}
18919
18922
    break;
18920
18923
 
18921
18924
  case 418:
18922
18925
 
18923
18926
/* Line 1455 of yacc.c  */
18924
 
#line 4011 "sql_yacc.yy"
 
18927
#line 4016 "sql_yacc.yy"
18925
18928
    { Lex->part_info->linear_hash_ind= TRUE;}
18926
18929
    break;
18927
18930
 
18928
18931
  case 419:
18929
18932
 
18930
18933
/* Line 1455 of yacc.c  */
18931
 
#line 4015 "sql_yacc.yy"
 
18934
#line 4020 "sql_yacc.yy"
18932
18935
    {}
18933
18936
    break;
18934
18937
 
18935
18938
  case 420:
18936
18939
 
18937
18940
/* Line 1455 of yacc.c  */
18938
 
#line 4016 "sql_yacc.yy"
 
18941
#line 4021 "sql_yacc.yy"
18939
18942
    {}
18940
18943
    break;
18941
18944
 
18942
18945
  case 421:
18943
18946
 
18944
18947
/* Line 1455 of yacc.c  */
18945
 
#line 4020 "sql_yacc.yy"
 
18948
#line 4025 "sql_yacc.yy"
18946
18949
    {}
18947
18950
    break;
18948
18951
 
18949
18952
  case 422:
18950
18953
 
18951
18954
/* Line 1455 of yacc.c  */
18952
 
#line 4021 "sql_yacc.yy"
 
18955
#line 4026 "sql_yacc.yy"
18953
18956
    {}
18954
18957
    break;
18955
18958
 
18956
18959
  case 423:
18957
18960
 
18958
18961
/* Line 1455 of yacc.c  */
18959
 
#line 4026 "sql_yacc.yy"
 
18962
#line 4031 "sql_yacc.yy"
18960
18963
    {
18961
18964
            if (Lex->part_info->part_field_list.push_back((yyvsp[(1) - (1)].lex_str).str))
18962
18965
            {
18969
18972
  case 424:
18970
18973
 
18971
18974
/* Line 1455 of yacc.c  */
18972
 
#line 4037 "sql_yacc.yy"
 
18975
#line 4042 "sql_yacc.yy"
18973
18976
    {
18974
18977
            LEX *lex= Lex;
18975
18978
            uint expr_len= (uint)((yyvsp[(4) - (5)].simple_string) - (yyvsp[(2) - (5)].simple_string)) - 1;
18986
18989
  case 425:
18987
18990
 
18988
18991
/* Line 1455 of yacc.c  */
18989
 
#line 4052 "sql_yacc.yy"
 
18992
#line 4057 "sql_yacc.yy"
18990
18993
    {
18991
18994
            LEX *lex= Lex;
18992
18995
            uint expr_len= (uint)((yyvsp[(4) - (5)].simple_string) - (yyvsp[(2) - (5)].simple_string)) - 1;
19003
19006
  case 426:
19004
19007
 
19005
19008
/* Line 1455 of yacc.c  */
19006
 
#line 4067 "sql_yacc.yy"
 
19009
#line 4072 "sql_yacc.yy"
19007
19010
    {}
19008
19011
    break;
19009
19012
 
19010
19013
  case 427:
19011
19014
 
19012
19015
/* Line 1455 of yacc.c  */
19013
 
#line 4069 "sql_yacc.yy"
 
19016
#line 4074 "sql_yacc.yy"
19014
19017
    { 
19015
19018
            uint no_parts= (yyvsp[(2) - (2)].ulong_num);
19016
19019
            LEX *lex= Lex;
19028
19031
  case 428:
19029
19032
 
19030
19033
/* Line 1455 of yacc.c  */
19031
 
#line 4084 "sql_yacc.yy"
 
19034
#line 4089 "sql_yacc.yy"
19032
19035
    {}
19033
19036
    break;
19034
19037
 
19035
19038
  case 429:
19036
19039
 
19037
19040
/* Line 1455 of yacc.c  */
19038
 
#line 4086 "sql_yacc.yy"
 
19041
#line 4091 "sql_yacc.yy"
19039
19042
    { Lex->part_info->subpart_type= HASH_PARTITION; }
19040
19043
    break;
19041
19044
 
19042
19045
  case 430:
19043
19046
 
19044
19047
/* Line 1455 of yacc.c  */
19045
 
#line 4087 "sql_yacc.yy"
 
19048
#line 4092 "sql_yacc.yy"
19046
19049
    {}
19047
19050
    break;
19048
19051
 
19049
19052
  case 431:
19050
19053
 
19051
19054
/* Line 1455 of yacc.c  */
19052
 
#line 4090 "sql_yacc.yy"
 
19055
#line 4095 "sql_yacc.yy"
19053
19056
    {
19054
19057
            LEX *lex= Lex;
19055
19058
            lex->part_info->subpart_type= HASH_PARTITION;
19060
19063
  case 432:
19061
19064
 
19062
19065
/* Line 1455 of yacc.c  */
19063
 
#line 4095 "sql_yacc.yy"
 
19066
#line 4100 "sql_yacc.yy"
19064
19067
    {}
19065
19068
    break;
19066
19069
 
19067
19070
  case 433:
19068
19071
 
19069
19072
/* Line 1455 of yacc.c  */
19070
 
#line 4099 "sql_yacc.yy"
 
19073
#line 4104 "sql_yacc.yy"
19071
19074
    {}
19072
19075
    break;
19073
19076
 
19074
19077
  case 434:
19075
19078
 
19076
19079
/* Line 1455 of yacc.c  */
19077
 
#line 4100 "sql_yacc.yy"
 
19080
#line 4105 "sql_yacc.yy"
19078
19081
    {}
19079
19082
    break;
19080
19083
 
19081
19084
  case 435:
19082
19085
 
19083
19086
/* Line 1455 of yacc.c  */
19084
 
#line 4105 "sql_yacc.yy"
 
19087
#line 4110 "sql_yacc.yy"
19085
19088
    {
19086
19089
            if (Lex->part_info->subpart_field_list.push_back((yyvsp[(1) - (1)].lex_str).str))
19087
19090
            {
19094
19097
  case 436:
19095
19098
 
19096
19099
/* Line 1455 of yacc.c  */
19097
 
#line 4116 "sql_yacc.yy"
 
19100
#line 4121 "sql_yacc.yy"
19098
19101
    {
19099
19102
            LEX *lex= Lex;
19100
19103
            bool not_corr_func;
19112
19115
  case 437:
19113
19116
 
19114
19117
/* Line 1455 of yacc.c  */
19115
 
#line 4131 "sql_yacc.yy"
 
19118
#line 4136 "sql_yacc.yy"
19116
19119
    {}
19117
19120
    break;
19118
19121
 
19119
19122
  case 438:
19120
19123
 
19121
19124
/* Line 1455 of yacc.c  */
19122
 
#line 4133 "sql_yacc.yy"
 
19125
#line 4138 "sql_yacc.yy"
19123
19126
    {
19124
19127
            uint no_parts= (yyvsp[(2) - (2)].ulong_num);
19125
19128
            LEX *lex= Lex;
19136
19139
  case 439:
19137
19140
 
19138
19141
/* Line 1455 of yacc.c  */
19139
 
#line 4148 "sql_yacc.yy"
 
19142
#line 4153 "sql_yacc.yy"
19140
19143
    {}
19141
19144
    break;
19142
19145
 
19143
19146
  case 440:
19144
19147
 
19145
19148
/* Line 1455 of yacc.c  */
19146
 
#line 4150 "sql_yacc.yy"
 
19149
#line 4155 "sql_yacc.yy"
19147
19150
    {
19148
19151
            LEX *lex= Lex;
19149
19152
            partition_info *part_info= lex->part_info;
19168
19171
  case 441:
19169
19172
 
19170
19173
/* Line 1455 of yacc.c  */
19171
 
#line 4172 "sql_yacc.yy"
 
19174
#line 4177 "sql_yacc.yy"
19172
19175
    {}
19173
19176
    break;
19174
19177
 
19175
19178
  case 442:
19176
19179
 
19177
19180
/* Line 1455 of yacc.c  */
19178
 
#line 4173 "sql_yacc.yy"
 
19181
#line 4178 "sql_yacc.yy"
19179
19182
    {}
19180
19183
    break;
19181
19184
 
19182
19185
  case 443:
19183
19186
 
19184
19187
/* Line 1455 of yacc.c  */
19185
 
#line 4178 "sql_yacc.yy"
 
19188
#line 4183 "sql_yacc.yy"
19186
19189
    {
19187
19190
            LEX *lex= Lex;
19188
19191
            partition_info *part_info= lex->part_info;
19204
19207
  case 444:
19205
19208
 
19206
19209
/* Line 1455 of yacc.c  */
19207
 
#line 4198 "sql_yacc.yy"
 
19210
#line 4203 "sql_yacc.yy"
19208
19211
    {}
19209
19212
    break;
19210
19213
 
19211
19214
  case 445:
19212
19215
 
19213
19216
/* Line 1455 of yacc.c  */
19214
 
#line 4203 "sql_yacc.yy"
 
19217
#line 4208 "sql_yacc.yy"
19215
19218
    {
19216
19219
            LEX *lex= Lex;
19217
19220
            partition_info *part_info= lex->part_info;
19223
19226
  case 446:
19224
19227
 
19225
19228
/* Line 1455 of yacc.c  */
19226
 
#line 4213 "sql_yacc.yy"
 
19229
#line 4218 "sql_yacc.yy"
19227
19230
    {
19228
19231
            LEX *lex= Lex;
19229
19232
            if (! lex->is_partition_management())
19249
19252
  case 447:
19250
19253
 
19251
19254
/* Line 1455 of yacc.c  */
19252
 
#line 4234 "sql_yacc.yy"
 
19255
#line 4239 "sql_yacc.yy"
19253
19256
    {
19254
19257
            LEX *lex= Lex;
19255
19258
            if (! lex->is_partition_management())
19269
19272
  case 448:
19270
19273
 
19271
19274
/* Line 1455 of yacc.c  */
19272
 
#line 4249 "sql_yacc.yy"
 
19275
#line 4254 "sql_yacc.yy"
19273
19276
    {
19274
19277
            LEX *lex= Lex;
19275
19278
            if (! lex->is_partition_management())
19289
19292
  case 449:
19290
19293
 
19291
19294
/* Line 1455 of yacc.c  */
19292
 
#line 4267 "sql_yacc.yy"
 
19295
#line 4272 "sql_yacc.yy"
19293
19296
    {
19294
19297
            LEX *lex= Lex;
19295
19298
            if (lex->part_info->defined_max_value)
19306
19309
  case 450:
19307
19310
 
19308
19311
/* Line 1455 of yacc.c  */
19309
 
#line 4279 "sql_yacc.yy"
 
19312
#line 4284 "sql_yacc.yy"
19310
19313
    {
19311
19314
            if (Lex->part_info->defined_max_value)
19312
19315
            {
19324
19327
  case 453:
19325
19328
 
19326
19329
/* Line 1455 of yacc.c  */
19327
 
#line 4300 "sql_yacc.yy"
 
19330
#line 4305 "sql_yacc.yy"
19328
19331
    {
19329
19332
            partition_info *part_info= Lex->part_info;
19330
19333
            if (!((yyvsp[(2) - (3)].p_elem_value)->unsigned_flag))
19336
19339
  case 454:
19337
19340
 
19338
19341
/* Line 1455 of yacc.c  */
19339
 
#line 4309 "sql_yacc.yy"
 
19342
#line 4314 "sql_yacc.yy"
19340
19343
    {}
19341
19344
    break;
19342
19345
 
19343
19346
  case 455:
19344
19347
 
19345
19348
/* Line 1455 of yacc.c  */
19346
 
#line 4310 "sql_yacc.yy"
 
19349
#line 4315 "sql_yacc.yy"
19347
19350
    {}
19348
19351
    break;
19349
19352
 
19350
19353
  case 456:
19351
19354
 
19352
19355
/* Line 1455 of yacc.c  */
19353
 
#line 4315 "sql_yacc.yy"
 
19356
#line 4320 "sql_yacc.yy"
19354
19357
    {
19355
19358
            part_elem_value *value_ptr= (yyvsp[(1) - (1)].p_elem_value);
19356
19359
            partition_info *part_info= Lex->part_info;
19369
19372
  case 457:
19370
19373
 
19371
19374
/* Line 1455 of yacc.c  */
19372
 
#line 4332 "sql_yacc.yy"
 
19375
#line 4337 "sql_yacc.yy"
19373
19376
    {
19374
19377
            Item *part_expr= (yyvsp[(1) - (1)].item);
19375
19378
            THD *thd= YYTHD;
19429
19432
  case 458:
19430
19433
 
19431
19434
/* Line 1455 of yacc.c  */
19432
 
#line 4390 "sql_yacc.yy"
 
19435
#line 4395 "sql_yacc.yy"
19433
19436
    {
19434
19437
            if (Lex->part_info->no_subparts != 0 &&
19435
19438
                !Lex->part_info->use_default_subpartitions)
19447
19450
  case 459:
19448
19451
 
19449
19452
/* Line 1455 of yacc.c  */
19450
 
#line 4403 "sql_yacc.yy"
 
19453
#line 4408 "sql_yacc.yy"
19451
19454
    {
19452
19455
            LEX *lex= Lex;
19453
19456
            partition_info *part_info= lex->part_info;
19476
19479
  case 460:
19477
19480
 
19478
19481
/* Line 1455 of yacc.c  */
19479
 
#line 4429 "sql_yacc.yy"
 
19482
#line 4434 "sql_yacc.yy"
19480
19483
    {}
19481
19484
    break;
19482
19485
 
19483
19486
  case 461:
19484
19487
 
19485
19488
/* Line 1455 of yacc.c  */
19486
 
#line 4430 "sql_yacc.yy"
 
19489
#line 4435 "sql_yacc.yy"
19487
19490
    {}
19488
19491
    break;
19489
19492
 
19490
19493
  case 462:
19491
19494
 
19492
19495
/* Line 1455 of yacc.c  */
19493
 
#line 4435 "sql_yacc.yy"
 
19496
#line 4440 "sql_yacc.yy"
19494
19497
    {
19495
19498
            LEX *lex= Lex;
19496
19499
            partition_info *part_info= lex->part_info;
19529
19532
  case 463:
19530
19533
 
19531
19534
/* Line 1455 of yacc.c  */
19532
 
#line 4468 "sql_yacc.yy"
 
19535
#line 4473 "sql_yacc.yy"
19533
19536
    {}
19534
19537
    break;
19535
19538
 
19536
19539
  case 464:
19537
19540
 
19538
19541
/* Line 1455 of yacc.c  */
19539
 
#line 4473 "sql_yacc.yy"
 
19542
#line 4478 "sql_yacc.yy"
19540
19543
    { Lex->part_info->curr_part_elem->partition_name= (yyvsp[(1) - (1)].lex_str).str; }
19541
19544
    break;
19542
19545
 
19543
19546
  case 465:
19544
19547
 
19545
19548
/* Line 1455 of yacc.c  */
19546
 
#line 4477 "sql_yacc.yy"
 
19549
#line 4482 "sql_yacc.yy"
19547
19550
    {}
19548
19551
    break;
19549
19552
 
19550
19553
  case 466:
19551
19554
 
19552
19555
/* Line 1455 of yacc.c  */
19553
 
#line 4478 "sql_yacc.yy"
 
19556
#line 4483 "sql_yacc.yy"
19554
19557
    {}
19555
19558
    break;
19556
19559
 
19557
19560
  case 467:
19558
19561
 
19559
19562
/* Line 1455 of yacc.c  */
19560
 
#line 4482 "sql_yacc.yy"
 
19563
#line 4487 "sql_yacc.yy"
19561
19564
    {}
19562
19565
    break;
19563
19566
 
19564
19567
  case 468:
19565
19568
 
19566
19569
/* Line 1455 of yacc.c  */
19567
 
#line 4483 "sql_yacc.yy"
 
19570
#line 4488 "sql_yacc.yy"
19568
19571
    {}
19569
19572
    break;
19570
19573
 
19571
19574
  case 469:
19572
19575
 
19573
19576
/* Line 1455 of yacc.c  */
19574
 
#line 4488 "sql_yacc.yy"
 
19577
#line 4493 "sql_yacc.yy"
19575
19578
    { Lex->part_info->curr_part_elem->tablespace_name= (yyvsp[(3) - (3)].lex_str).str; }
19576
19579
    break;
19577
19580
 
19578
19581
  case 470:
19579
19582
 
19580
19583
/* Line 1455 of yacc.c  */
19581
 
#line 4490 "sql_yacc.yy"
 
19584
#line 4495 "sql_yacc.yy"
19582
19585
    {
19583
19586
            LEX *lex= Lex;
19584
19587
            lex->part_info->curr_part_elem->engine_type= (yyvsp[(4) - (4)].db_type);
19589
19592
  case 471:
19590
19593
 
19591
19594
/* Line 1455 of yacc.c  */
19592
 
#line 4496 "sql_yacc.yy"
 
19595
#line 4501 "sql_yacc.yy"
19593
19596
    { Lex->part_info->curr_part_elem->nodegroup_id= (uint16) (yyvsp[(3) - (3)].ulong_num); }
19594
19597
    break;
19595
19598
 
19596
19599
  case 472:
19597
19600
 
19598
19601
/* Line 1455 of yacc.c  */
19599
 
#line 4498 "sql_yacc.yy"
 
19602
#line 4503 "sql_yacc.yy"
19600
19603
    { Lex->part_info->curr_part_elem->part_max_rows= (ha_rows) (yyvsp[(3) - (3)].ulonglong_number); }
19601
19604
    break;
19602
19605
 
19603
19606
  case 473:
19604
19607
 
19605
19608
/* Line 1455 of yacc.c  */
19606
 
#line 4500 "sql_yacc.yy"
 
19609
#line 4505 "sql_yacc.yy"
19607
19610
    { Lex->part_info->curr_part_elem->part_min_rows= (ha_rows) (yyvsp[(3) - (3)].ulonglong_number); }
19608
19611
    break;
19609
19612
 
19610
19613
  case 474:
19611
19614
 
19612
19615
/* Line 1455 of yacc.c  */
19613
 
#line 4502 "sql_yacc.yy"
 
19616
#line 4507 "sql_yacc.yy"
19614
19617
    { Lex->part_info->curr_part_elem->data_file_name= (yyvsp[(4) - (4)].lex_str).str; }
19615
19618
    break;
19616
19619
 
19617
19620
  case 475:
19618
19621
 
19619
19622
/* Line 1455 of yacc.c  */
19620
 
#line 4504 "sql_yacc.yy"
 
19623
#line 4509 "sql_yacc.yy"
19621
19624
    { Lex->part_info->curr_part_elem->index_file_name= (yyvsp[(4) - (4)].lex_str).str; }
19622
19625
    break;
19623
19626
 
19624
19627
  case 476:
19625
19628
 
19626
19629
/* Line 1455 of yacc.c  */
19627
 
#line 4506 "sql_yacc.yy"
 
19630
#line 4511 "sql_yacc.yy"
19628
19631
    { Lex->part_info->curr_part_elem->part_comment= (yyvsp[(3) - (3)].lex_str).str; }
19629
19632
    break;
19630
19633
 
19631
19634
  case 477:
19632
19635
 
19633
19636
/* Line 1455 of yacc.c  */
19634
 
#line 4515 "sql_yacc.yy"
 
19637
#line 4520 "sql_yacc.yy"
19635
19638
    {
19636
19639
            LEX *lex=Lex;
19637
19640
            lex->lock_option= TL_READ_DEFAULT;
19665
19668
  case 478:
19666
19669
 
19667
19670
/* Line 1455 of yacc.c  */
19668
 
#line 4544 "sql_yacc.yy"
 
19671
#line 4549 "sql_yacc.yy"
19669
19672
    {
19670
19673
            Select->parsing_place= NO_MATTER;
19671
19674
          }
19674
19677
  case 479:
19675
19678
 
19676
19679
/* Line 1455 of yacc.c  */
19677
 
#line 4548 "sql_yacc.yy"
 
19680
#line 4553 "sql_yacc.yy"
19678
19681
    {
19679
19682
            /*
19680
19683
              The following work only with the local list, the global list
19687
19690
  case 480:
19688
19691
 
19689
19692
/* Line 1455 of yacc.c  */
19690
 
#line 4558 "sql_yacc.yy"
 
19693
#line 4563 "sql_yacc.yy"
19691
19694
    {}
19692
19695
    break;
19693
19696
 
19694
19697
  case 481:
19695
19698
 
19696
19699
/* Line 1455 of yacc.c  */
19697
 
#line 4559 "sql_yacc.yy"
 
19700
#line 4564 "sql_yacc.yy"
19698
19701
    {}
19699
19702
    break;
19700
19703
 
19701
19704
  case 482:
19702
19705
 
19703
19706
/* Line 1455 of yacc.c  */
19704
 
#line 4563 "sql_yacc.yy"
 
19707
#line 4568 "sql_yacc.yy"
19705
19708
    {}
19706
19709
    break;
19707
19710
 
19708
19711
  case 483:
19709
19712
 
19710
19713
/* Line 1455 of yacc.c  */
19711
 
#line 4564 "sql_yacc.yy"
 
19714
#line 4569 "sql_yacc.yy"
19712
19715
    {}
19713
19716
    break;
19714
19717
 
19715
19718
  case 484:
19716
19719
 
19717
19720
/* Line 1455 of yacc.c  */
19718
 
#line 4568 "sql_yacc.yy"
 
19721
#line 4573 "sql_yacc.yy"
19719
19722
    {}
19720
19723
    break;
19721
19724
 
19722
19725
  case 485:
19723
19726
 
19724
19727
/* Line 1455 of yacc.c  */
19725
 
#line 4569 "sql_yacc.yy"
 
19728
#line 4574 "sql_yacc.yy"
19726
19729
    {}
19727
19730
    break;
19728
19731
 
19729
19732
  case 486:
19730
19733
 
19731
19734
/* Line 1455 of yacc.c  */
19732
 
#line 4573 "sql_yacc.yy"
 
19735
#line 4578 "sql_yacc.yy"
19733
19736
    {}
19734
19737
    break;
19735
19738
 
19736
19739
  case 487:
19737
19740
 
19738
19741
/* Line 1455 of yacc.c  */
19739
 
#line 4574 "sql_yacc.yy"
 
19742
#line 4579 "sql_yacc.yy"
19740
19743
    {}
19741
19744
    break;
19742
19745
 
19743
19746
  case 488:
19744
19747
 
19745
19748
/* Line 1455 of yacc.c  */
19746
 
#line 4578 "sql_yacc.yy"
 
19749
#line 4583 "sql_yacc.yy"
19747
19750
    { (yyval.num)= 0; }
19748
19751
    break;
19749
19752
 
19750
19753
  case 489:
19751
19754
 
19752
19755
/* Line 1455 of yacc.c  */
19753
 
#line 4579 "sql_yacc.yy"
 
19756
#line 4584 "sql_yacc.yy"
19754
19757
    { (yyval.num)= (yyvsp[(1) - (1)].num);}
19755
19758
    break;
19756
19759
 
19757
19760
  case 490:
19758
19761
 
19759
19762
/* Line 1455 of yacc.c  */
19760
 
#line 4583 "sql_yacc.yy"
 
19763
#line 4588 "sql_yacc.yy"
19761
19764
    { (yyval.num)=(yyvsp[(1) - (1)].num); }
19762
19765
    break;
19763
19766
 
19764
19767
  case 491:
19765
19768
 
19766
19769
/* Line 1455 of yacc.c  */
19767
 
#line 4584 "sql_yacc.yy"
 
19770
#line 4589 "sql_yacc.yy"
19768
19771
    { (yyval.num)= (yyvsp[(1) - (2)].num) | (yyvsp[(2) - (2)].num); }
19769
19772
    break;
19770
19773
 
19771
19774
  case 492:
19772
19775
 
19773
19776
/* Line 1455 of yacc.c  */
19774
 
#line 4588 "sql_yacc.yy"
 
19777
#line 4593 "sql_yacc.yy"
19775
19778
    { (yyval.num)=HA_LEX_CREATE_TMP_TABLE; }
19776
19779
    break;
19777
19780
 
19778
19781
  case 493:
19779
19782
 
19780
19783
/* Line 1455 of yacc.c  */
19781
 
#line 4592 "sql_yacc.yy"
 
19784
#line 4597 "sql_yacc.yy"
19782
19785
    { (yyval.num)= 0; }
19783
19786
    break;
19784
19787
 
19785
19788
  case 494:
19786
19789
 
19787
19790
/* Line 1455 of yacc.c  */
19788
 
#line 4593 "sql_yacc.yy"
 
19791
#line 4598 "sql_yacc.yy"
19789
19792
    { (yyval.num)=HA_LEX_CREATE_IF_NOT_EXISTS; }
19790
19793
    break;
19791
19794
 
19792
19795
  case 502:
19793
19796
 
19794
19797
/* Line 1455 of yacc.c  */
19795
 
#line 4614 "sql_yacc.yy"
 
19798
#line 4619 "sql_yacc.yy"
19796
19799
    {
19797
19800
            Lex->create_info.db_type= (yyvsp[(3) - (3)].db_type);
19798
19801
            Lex->create_info.used_fields|= HA_CREATE_USED_ENGINE;
19802
19805
  case 503:
19803
19806
 
19804
19807
/* Line 1455 of yacc.c  */
19805
 
#line 4619 "sql_yacc.yy"
 
19808
#line 4624 "sql_yacc.yy"
19806
19809
    {
19807
19810
            Lex->create_info.db_type= (yyvsp[(3) - (3)].db_type);
19808
19811
            WARN_DEPRECATED(yythd, "6.0", "TYPE=storage_engine",
19814
19817
  case 504:
19815
19818
 
19816
19819
/* Line 1455 of yacc.c  */
19817
 
#line 4626 "sql_yacc.yy"
 
19820
#line 4631 "sql_yacc.yy"
19818
19821
    {
19819
19822
            Lex->create_info.max_rows= (yyvsp[(3) - (3)].ulonglong_number);
19820
19823
            Lex->create_info.used_fields|= HA_CREATE_USED_MAX_ROWS;
19824
19827
  case 505:
19825
19828
 
19826
19829
/* Line 1455 of yacc.c  */
19827
 
#line 4631 "sql_yacc.yy"
 
19830
#line 4636 "sql_yacc.yy"
19828
19831
    {
19829
19832
            Lex->create_info.min_rows= (yyvsp[(3) - (3)].ulonglong_number);
19830
19833
            Lex->create_info.used_fields|= HA_CREATE_USED_MIN_ROWS;
19834
19837
  case 506:
19835
19838
 
19836
19839
/* Line 1455 of yacc.c  */
19837
 
#line 4636 "sql_yacc.yy"
 
19840
#line 4641 "sql_yacc.yy"
19838
19841
    {
19839
19842
            Lex->create_info.avg_row_length=(yyvsp[(3) - (3)].ulong_num);
19840
19843
            Lex->create_info.used_fields|= HA_CREATE_USED_AVG_ROW_LENGTH;
19844
19847
  case 507:
19845
19848
 
19846
19849
/* Line 1455 of yacc.c  */
19847
 
#line 4641 "sql_yacc.yy"
 
19850
#line 4646 "sql_yacc.yy"
19848
19851
    {
19849
19852
            Lex->create_info.password=(yyvsp[(3) - (3)].lex_str).str;
19850
19853
            Lex->create_info.used_fields|= HA_CREATE_USED_PASSWORD;
19854
19857
  case 508:
19855
19858
 
19856
19859
/* Line 1455 of yacc.c  */
19857
 
#line 4646 "sql_yacc.yy"
 
19860
#line 4651 "sql_yacc.yy"
19858
19861
    {
19859
19862
            Lex->create_info.comment=(yyvsp[(3) - (3)].lex_str);
19860
19863
            Lex->create_info.used_fields|= HA_CREATE_USED_COMMENT;
19864
19867
  case 509:
19865
19868
 
19866
19869
/* Line 1455 of yacc.c  */
19867
 
#line 4651 "sql_yacc.yy"
 
19870
#line 4656 "sql_yacc.yy"
19868
19871
    {
19869
19872
            Lex->create_info.auto_increment_value=(yyvsp[(3) - (3)].ulonglong_number);
19870
19873
            Lex->create_info.used_fields|= HA_CREATE_USED_AUTO;
19874
19877
  case 510:
19875
19878
 
19876
19879
/* Line 1455 of yacc.c  */
19877
 
#line 4656 "sql_yacc.yy"
 
19880
#line 4661 "sql_yacc.yy"
19878
19881
    {
19879
19882
            switch((yyvsp[(3) - (3)].ulong_num)) {
19880
19883
            case 0:
19894
19897
  case 511:
19895
19898
 
19896
19899
/* Line 1455 of yacc.c  */
19897
 
#line 4671 "sql_yacc.yy"
 
19900
#line 4676 "sql_yacc.yy"
19898
19901
    {
19899
19902
            Lex->create_info.table_options&=
19900
19903
              ~(HA_OPTION_PACK_KEYS | HA_OPTION_NO_PACK_KEYS);
19905
19908
  case 512:
19906
19909
 
19907
19910
/* Line 1455 of yacc.c  */
19908
 
#line 4677 "sql_yacc.yy"
 
19911
#line 4682 "sql_yacc.yy"
19909
19912
    {
19910
19913
            Lex->create_info.table_options|= (yyvsp[(3) - (3)].ulong_num) ? HA_OPTION_CHECKSUM : HA_OPTION_NO_CHECKSUM;
19911
19914
            Lex->create_info.used_fields|= HA_CREATE_USED_CHECKSUM;
19915
19918
  case 513:
19916
19919
 
19917
19920
/* Line 1455 of yacc.c  */
19918
 
#line 4682 "sql_yacc.yy"
 
19921
#line 4687 "sql_yacc.yy"
19919
19922
    {
19920
19923
             Lex->create_info.table_options|= (yyvsp[(3) - (3)].ulong_num) ? HA_OPTION_CHECKSUM : HA_OPTION_NO_CHECKSUM;
19921
19924
             Lex->create_info.used_fields|= HA_CREATE_USED_CHECKSUM;
19925
19928
  case 514:
19926
19929
 
19927
19930
/* Line 1455 of yacc.c  */
19928
 
#line 4687 "sql_yacc.yy"
 
19931
#line 4692 "sql_yacc.yy"
19929
19932
    {
19930
19933
            Lex->create_info.table_options|= (yyvsp[(3) - (3)].ulong_num) ? HA_OPTION_DELAY_KEY_WRITE : HA_OPTION_NO_DELAY_KEY_WRITE;
19931
19934
            Lex->create_info.used_fields|= HA_CREATE_USED_DELAY_KEY_WRITE;
19935
19938
  case 515:
19936
19939
 
19937
19940
/* Line 1455 of yacc.c  */
19938
 
#line 4692 "sql_yacc.yy"
 
19941
#line 4697 "sql_yacc.yy"
19939
19942
    {
19940
19943
            Lex->create_info.row_type= (yyvsp[(3) - (3)].row_type);
19941
19944
            Lex->create_info.used_fields|= HA_CREATE_USED_ROW_FORMAT;
19945
19948
  case 516:
19946
19949
 
19947
19950
/* Line 1455 of yacc.c  */
19948
 
#line 4697 "sql_yacc.yy"
 
19951
#line 4702 "sql_yacc.yy"
19949
19952
    {
19950
19953
            /* Move the union list to the merge_list */
19951
19954
            LEX *lex=Lex;
19963
19966
  case 519:
19964
19967
 
19965
19968
/* Line 1455 of yacc.c  */
19966
 
#line 4712 "sql_yacc.yy"
 
19969
#line 4717 "sql_yacc.yy"
19967
19970
    {
19968
19971
            Lex->create_info.merge_insert_method= (yyvsp[(3) - (3)].ulong_num);
19969
19972
            Lex->create_info.used_fields|= HA_CREATE_USED_INSERT_METHOD;
19973
19976
  case 520:
19974
19977
 
19975
19978
/* Line 1455 of yacc.c  */
19976
 
#line 4717 "sql_yacc.yy"
 
19979
#line 4722 "sql_yacc.yy"
19977
19980
    {
19978
19981
            Lex->create_info.data_file_name= (yyvsp[(4) - (4)].lex_str).str;
19979
19982
            Lex->create_info.used_fields|= HA_CREATE_USED_DATADIR;
19983
19986
  case 521:
19984
19987
 
19985
19988
/* Line 1455 of yacc.c  */
19986
 
#line 4722 "sql_yacc.yy"
 
19989
#line 4727 "sql_yacc.yy"
19987
19990
    {
19988
19991
            Lex->create_info.index_file_name= (yyvsp[(4) - (4)].lex_str).str;
19989
19992
            Lex->create_info.used_fields|= HA_CREATE_USED_INDEXDIR;
19993
19996
  case 522:
19994
19997
 
19995
19998
/* Line 1455 of yacc.c  */
19996
 
#line 4727 "sql_yacc.yy"
 
19999
#line 4732 "sql_yacc.yy"
19997
20000
    {Lex->create_info.tablespace= (yyvsp[(2) - (2)].lex_str).str;}
19998
20001
    break;
19999
20002
 
20000
20003
  case 523:
20001
20004
 
20002
20005
/* Line 1455 of yacc.c  */
20003
 
#line 4729 "sql_yacc.yy"
 
20006
#line 4734 "sql_yacc.yy"
20004
20007
    {Lex->create_info.storage_media= HA_SM_DISK;}
20005
20008
    break;
20006
20009
 
20007
20010
  case 524:
20008
20011
 
20009
20012
/* Line 1455 of yacc.c  */
20010
 
#line 4731 "sql_yacc.yy"
 
20013
#line 4736 "sql_yacc.yy"
20011
20014
    {Lex->create_info.storage_media= HA_SM_MEMORY;}
20012
20015
    break;
20013
20016
 
20014
20017
  case 525:
20015
20018
 
20016
20019
/* Line 1455 of yacc.c  */
20017
 
#line 4733 "sql_yacc.yy"
 
20020
#line 4738 "sql_yacc.yy"
20018
20021
    {
20019
20022
            Lex->create_info.connect_string.str= (yyvsp[(3) - (3)].lex_str).str;
20020
20023
            Lex->create_info.connect_string.length= (yyvsp[(3) - (3)].lex_str).length;
20025
20028
  case 526:
20026
20029
 
20027
20030
/* Line 1455 of yacc.c  */
20028
 
#line 4739 "sql_yacc.yy"
 
20031
#line 4744 "sql_yacc.yy"
20029
20032
    {
20030
20033
            Lex->create_info.used_fields|= HA_CREATE_USED_KEY_BLOCK_SIZE;
20031
20034
            Lex->create_info.key_block_size= (yyvsp[(3) - (3)].ulong_num);
20035
20038
  case 527:
20036
20039
 
20037
20040
/* Line 1455 of yacc.c  */
20038
 
#line 4747 "sql_yacc.yy"
 
20041
#line 4752 "sql_yacc.yy"
20039
20042
    {
20040
20043
            HA_CREATE_INFO *cinfo= &Lex->create_info;
20041
20044
            if ((cinfo->used_fields & HA_CREATE_USED_DEFAULT_CHARSET) &&
20055
20058
  case 528:
20056
20059
 
20057
20060
/* Line 1455 of yacc.c  */
20058
 
#line 4765 "sql_yacc.yy"
 
20061
#line 4770 "sql_yacc.yy"
20059
20062
    {
20060
20063
            HA_CREATE_INFO *cinfo= &Lex->create_info;
20061
20064
            if ((cinfo->used_fields & HA_CREATE_USED_DEFAULT_CHARSET) &&
20074
20077
  case 529:
20075
20078
 
20076
20079
/* Line 1455 of yacc.c  */
20077
 
#line 4782 "sql_yacc.yy"
 
20080
#line 4787 "sql_yacc.yy"
20078
20081
    {
20079
20082
            plugin_ref plugin= ha_resolve_by_name(YYTHD, &(yyvsp[(1) - (1)].lex_str));
20080
20083
 
20099
20102
  case 530:
20100
20103
 
20101
20104
/* Line 1455 of yacc.c  */
20102
 
#line 4805 "sql_yacc.yy"
 
20105
#line 4810 "sql_yacc.yy"
20103
20106
    {
20104
20107
            plugin_ref plugin;
20105
20108
            if ((plugin= ha_resolve_by_name(YYTHD, &(yyvsp[(1) - (1)].lex_str))))
20115
20118
  case 531:
20116
20119
 
20117
20120
/* Line 1455 of yacc.c  */
20118
 
#line 4818 "sql_yacc.yy"
 
20121
#line 4823 "sql_yacc.yy"
20119
20122
    { (yyval.row_type)= ROW_TYPE_DEFAULT; }
20120
20123
    break;
20121
20124
 
20122
20125
  case 532:
20123
20126
 
20124
20127
/* Line 1455 of yacc.c  */
20125
 
#line 4819 "sql_yacc.yy"
 
20128
#line 4824 "sql_yacc.yy"
20126
20129
    { (yyval.row_type)= ROW_TYPE_FIXED; }
20127
20130
    break;
20128
20131
 
20129
20132
  case 533:
20130
20133
 
20131
20134
/* Line 1455 of yacc.c  */
20132
 
#line 4820 "sql_yacc.yy"
 
20135
#line 4825 "sql_yacc.yy"
20133
20136
    { (yyval.row_type)= ROW_TYPE_DYNAMIC; }
20134
20137
    break;
20135
20138
 
20136
20139
  case 534:
20137
20140
 
20138
20141
/* Line 1455 of yacc.c  */
20139
 
#line 4821 "sql_yacc.yy"
 
20142
#line 4826 "sql_yacc.yy"
20140
20143
    { (yyval.row_type)= ROW_TYPE_COMPRESSED; }
20141
20144
    break;
20142
20145
 
20143
20146
  case 535:
20144
20147
 
20145
20148
/* Line 1455 of yacc.c  */
20146
 
#line 4822 "sql_yacc.yy"
 
20149
#line 4827 "sql_yacc.yy"
20147
20150
    { (yyval.row_type)= ROW_TYPE_REDUNDANT; }
20148
20151
    break;
20149
20152
 
20150
20153
  case 536:
20151
20154
 
20152
20155
/* Line 1455 of yacc.c  */
20153
 
#line 4823 "sql_yacc.yy"
 
20156
#line 4828 "sql_yacc.yy"
20154
20157
    { (yyval.row_type)= ROW_TYPE_COMPACT; }
20155
20158
    break;
20156
20159
 
20157
20160
  case 537:
20158
20161
 
20159
20162
/* Line 1455 of yacc.c  */
20160
 
#line 4827 "sql_yacc.yy"
 
20163
#line 4832 "sql_yacc.yy"
20161
20164
    { (yyval.ulong_num)= MERGE_INSERT_DISABLED; }
20162
20165
    break;
20163
20166
 
20164
20167
  case 538:
20165
20168
 
20166
20169
/* Line 1455 of yacc.c  */
20167
 
#line 4828 "sql_yacc.yy"
 
20170
#line 4833 "sql_yacc.yy"
20168
20171
    { (yyval.ulong_num)= MERGE_INSERT_TO_FIRST; }
20169
20172
    break;
20170
20173
 
20171
20174
  case 539:
20172
20175
 
20173
20176
/* Line 1455 of yacc.c  */
20174
 
#line 4829 "sql_yacc.yy"
 
20177
#line 4834 "sql_yacc.yy"
20175
20178
    { (yyval.ulong_num)= MERGE_INSERT_TO_LAST; }
20176
20179
    break;
20177
20180
 
20178
20181
  case 540:
20179
20182
 
20180
20183
/* Line 1455 of yacc.c  */
20181
 
#line 4833 "sql_yacc.yy"
 
20184
#line 4838 "sql_yacc.yy"
20182
20185
    {}
20183
20186
    break;
20184
20187
 
20185
20188
  case 542:
20186
20189
 
20187
20190
/* Line 1455 of yacc.c  */
20188
 
#line 4838 "sql_yacc.yy"
 
20191
#line 4843 "sql_yacc.yy"
20189
20192
    {(yyval.num) = (int) STRING_RESULT; }
20190
20193
    break;
20191
20194
 
20192
20195
  case 543:
20193
20196
 
20194
20197
/* Line 1455 of yacc.c  */
20195
 
#line 4839 "sql_yacc.yy"
 
20198
#line 4844 "sql_yacc.yy"
20196
20199
    {(yyval.num) = (int) REAL_RESULT; }
20197
20200
    break;
20198
20201
 
20199
20202
  case 544:
20200
20203
 
20201
20204
/* Line 1455 of yacc.c  */
20202
 
#line 4840 "sql_yacc.yy"
 
20205
#line 4845 "sql_yacc.yy"
20203
20206
    {(yyval.num) = (int) DECIMAL_RESULT; }
20204
20207
    break;
20205
20208
 
20206
20209
  case 545:
20207
20210
 
20208
20211
/* Line 1455 of yacc.c  */
20209
 
#line 4841 "sql_yacc.yy"
 
20212
#line 4846 "sql_yacc.yy"
20210
20213
    {(yyval.num) = (int) INT_RESULT; }
20211
20214
    break;
20212
20215
 
20213
20216
  case 551:
20214
20217
 
20215
20218
/* Line 1455 of yacc.c  */
20216
 
#line 4857 "sql_yacc.yy"
 
20219
#line 4862 "sql_yacc.yy"
20217
20220
    {
20218
20221
            Lex->col_list.empty(); /* Alloced by sql_alloc */
20219
20222
          }
20222
20225
  case 552:
20223
20226
 
20224
20227
/* Line 1455 of yacc.c  */
20225
 
#line 4864 "sql_yacc.yy"
 
20228
#line 4869 "sql_yacc.yy"
20226
20229
    {
20227
20230
            if (add_create_index (Lex, (yyvsp[(1) - (7)].key_type), (yyvsp[(2) - (7)].simple_string)))
20228
20231
              MYSQL_YYABORT;
20232
20235
  case 553:
20233
20236
 
20234
20237
/* Line 1455 of yacc.c  */
20235
 
#line 4870 "sql_yacc.yy"
 
20238
#line 4875 "sql_yacc.yy"
20236
20239
    {
20237
20240
            if (add_create_index (Lex, (yyvsp[(1) - (8)].key_type), (yyvsp[(3) - (8)].simple_string)))
20238
20241
              MYSQL_YYABORT;
20242
20245
  case 554:
20243
20246
 
20244
20247
/* Line 1455 of yacc.c  */
20245
 
#line 4876 "sql_yacc.yy"
 
20248
#line 4881 "sql_yacc.yy"
20246
20249
    {
20247
20250
            if (add_create_index (Lex, (yyvsp[(1) - (8)].key_type), (yyvsp[(3) - (8)].simple_string)))
20248
20251
              MYSQL_YYABORT;
20252
20255
  case 555:
20253
20256
 
20254
20257
/* Line 1455 of yacc.c  */
20255
 
#line 4882 "sql_yacc.yy"
 
20258
#line 4887 "sql_yacc.yy"
20256
20259
    {
20257
20260
            if (add_create_index (Lex, (yyvsp[(2) - (8)].key_type), (yyvsp[(3) - (8)].simple_string) ? (yyvsp[(3) - (8)].simple_string) : (yyvsp[(1) - (8)].simple_string)))
20258
20261
              MYSQL_YYABORT;
20262
20265
  case 556:
20263
20266
 
20264
20267
/* Line 1455 of yacc.c  */
20265
 
#line 4887 "sql_yacc.yy"
 
20268
#line 4892 "sql_yacc.yy"
20266
20269
    {
20267
20270
            LEX *lex=Lex;
20268
20271
            const char *key_name= (yyvsp[(1) - (8)].simple_string) ? (yyvsp[(1) - (8)].simple_string) : (yyvsp[(4) - (8)].simple_string);
20287
20290
  case 557:
20288
20291
 
20289
20292
/* Line 1455 of yacc.c  */
20290
 
#line 4907 "sql_yacc.yy"
 
20293
#line 4912 "sql_yacc.yy"
20291
20294
    {
20292
20295
            Lex->col_list.empty(); /* Alloced by sql_alloc */
20293
20296
          }
20296
20299
  case 558:
20297
20300
 
20298
20301
/* Line 1455 of yacc.c  */
20299
 
#line 4911 "sql_yacc.yy"
 
20302
#line 4916 "sql_yacc.yy"
20300
20303
    {
20301
20304
            Lex->col_list.empty(); /* Alloced by sql_alloc */
20302
20305
          }
20305
20308
  case 562:
20306
20309
 
20307
20310
/* Line 1455 of yacc.c  */
20308
 
#line 4926 "sql_yacc.yy"
 
20311
#line 4931 "sql_yacc.yy"
20309
20312
    { (yyval.simple_string)=(char*) 0; }
20310
20313
    break;
20311
20314
 
20312
20315
  case 563:
20313
20316
 
20314
20317
/* Line 1455 of yacc.c  */
20315
 
#line 4927 "sql_yacc.yy"
 
20318
#line 4932 "sql_yacc.yy"
20316
20319
    { (yyval.simple_string)= (yyvsp[(1) - (1)].simple_string); }
20317
20320
    break;
20318
20321
 
20319
20322
  case 564:
20320
20323
 
20321
20324
/* Line 1455 of yacc.c  */
20322
 
#line 4931 "sql_yacc.yy"
 
20325
#line 4936 "sql_yacc.yy"
20323
20326
    { (yyval.simple_string)=(yyvsp[(2) - (2)].simple_string); }
20324
20327
    break;
20325
20328
 
20326
20329
  case 565:
20327
20330
 
20328
20331
/* Line 1455 of yacc.c  */
20329
 
#line 4936 "sql_yacc.yy"
 
20332
#line 4941 "sql_yacc.yy"
20330
20333
    {
20331
20334
            LEX *lex=Lex;
20332
20335
            lex->length=lex->dec=0;
20340
20343
  case 566:
20341
20344
 
20342
20345
/* Line 1455 of yacc.c  */
20343
 
#line 4945 "sql_yacc.yy"
 
20346
#line 4950 "sql_yacc.yy"
20344
20347
    {
20345
20348
            LEX *lex=Lex;
20346
20349
            if (add_field_to_list(lex->thd, &(yyvsp[(1) - (4)].lex_str), (enum enum_field_types) (yyvsp[(3) - (4)].num),
20356
20359
  case 567:
20357
20360
 
20358
20361
/* Line 1455 of yacc.c  */
20359
 
#line 4958 "sql_yacc.yy"
 
20362
#line 4963 "sql_yacc.yy"
20360
20363
    { (yyval.num)=(yyvsp[(1) - (3)].num); }
20361
20364
    break;
20362
20365
 
20363
20366
  case 568:
20364
20367
 
20365
20368
/* Line 1455 of yacc.c  */
20366
 
#line 4959 "sql_yacc.yy"
 
20369
#line 4964 "sql_yacc.yy"
20367
20370
    { (yyval.num)=(yyvsp[(1) - (3)].num); }
20368
20371
    break;
20369
20372
 
20370
20373
  case 569:
20371
20374
 
20372
20375
/* Line 1455 of yacc.c  */
20373
 
#line 4960 "sql_yacc.yy"
 
20376
#line 4965 "sql_yacc.yy"
20374
20377
    { (yyval.num)=MYSQL_TYPE_FLOAT; }
20375
20378
    break;
20376
20379
 
20377
20380
  case 570:
20378
20381
 
20379
20382
/* Line 1455 of yacc.c  */
20380
 
#line 4962 "sql_yacc.yy"
 
20383
#line 4967 "sql_yacc.yy"
20381
20384
    {
20382
20385
            Lex->length= (char*) "1";
20383
20386
            (yyval.num)=MYSQL_TYPE_BIT;
20387
20390
  case 571:
20388
20391
 
20389
20392
/* Line 1455 of yacc.c  */
20390
 
#line 4967 "sql_yacc.yy"
 
20393
#line 4972 "sql_yacc.yy"
20391
20394
    {
20392
20395
            (yyval.num)=MYSQL_TYPE_BIT;
20393
20396
          }
20396
20399
  case 572:
20397
20400
 
20398
20401
/* Line 1455 of yacc.c  */
20399
 
#line 4971 "sql_yacc.yy"
 
20402
#line 4976 "sql_yacc.yy"
20400
20403
    {
20401
20404
            Lex->length= (char*) "1";
20402
20405
            (yyval.num)=MYSQL_TYPE_TINY;
20406
20409
  case 573:
20407
20410
 
20408
20411
/* Line 1455 of yacc.c  */
20409
 
#line 4976 "sql_yacc.yy"
 
20412
#line 4981 "sql_yacc.yy"
20410
20413
    {
20411
20414
            Lex->length= (char*) "1";
20412
20415
            (yyval.num)=MYSQL_TYPE_TINY;
20416
20419
  case 574:
20417
20420
 
20418
20421
/* Line 1455 of yacc.c  */
20419
 
#line 4981 "sql_yacc.yy"
 
20422
#line 4986 "sql_yacc.yy"
20420
20423
    {
20421
20424
            (yyval.num)=MYSQL_TYPE_STRING;
20422
20425
          }
20425
20428
  case 575:
20426
20429
 
20427
20430
/* Line 1455 of yacc.c  */
20428
 
#line 4985 "sql_yacc.yy"
 
20431
#line 4990 "sql_yacc.yy"
20429
20432
    {
20430
20433
            Lex->length= (char*) "1";
20431
20434
            (yyval.num)=MYSQL_TYPE_STRING;
20435
20438
  case 576:
20436
20439
 
20437
20440
/* Line 1455 of yacc.c  */
20438
 
#line 4990 "sql_yacc.yy"
 
20441
#line 4995 "sql_yacc.yy"
20439
20442
    {
20440
20443
            (yyval.num)=MYSQL_TYPE_STRING;
20441
20444
            Lex->charset=national_charset_info;
20445
20448
  case 577:
20446
20449
 
20447
20450
/* Line 1455 of yacc.c  */
20448
 
#line 4995 "sql_yacc.yy"
 
20451
#line 5000 "sql_yacc.yy"
20449
20452
    {
20450
20453
            Lex->length= (char*) "1";
20451
20454
            (yyval.num)=MYSQL_TYPE_STRING;
20456
20459
  case 578:
20457
20460
 
20458
20461
/* Line 1455 of yacc.c  */
20459
 
#line 5001 "sql_yacc.yy"
 
20462
#line 5006 "sql_yacc.yy"
20460
20463
    {
20461
20464
            Lex->charset=&my_charset_bin;
20462
20465
            (yyval.num)=MYSQL_TYPE_STRING;
20466
20469
  case 579:
20467
20470
 
20468
20471
/* Line 1455 of yacc.c  */
20469
 
#line 5006 "sql_yacc.yy"
 
20472
#line 5011 "sql_yacc.yy"
20470
20473
    {
20471
20474
            Lex->length= (char*) "1";
20472
20475
            Lex->charset=&my_charset_bin;
20477
20480
  case 580:
20478
20481
 
20479
20482
/* Line 1455 of yacc.c  */
20480
 
#line 5012 "sql_yacc.yy"
 
20483
#line 5017 "sql_yacc.yy"
20481
20484
    {
20482
20485
            (yyval.num)= MYSQL_TYPE_VARCHAR;
20483
20486
          }
20486
20489
  case 581:
20487
20490
 
20488
20491
/* Line 1455 of yacc.c  */
20489
 
#line 5016 "sql_yacc.yy"
 
20492
#line 5021 "sql_yacc.yy"
20490
20493
    {
20491
20494
            (yyval.num)= MYSQL_TYPE_VARCHAR;
20492
20495
            Lex->charset=national_charset_info;
20496
20499
  case 582:
20497
20500
 
20498
20501
/* Line 1455 of yacc.c  */
20499
 
#line 5021 "sql_yacc.yy"
 
20502
#line 5026 "sql_yacc.yy"
20500
20503
    {
20501
20504
            Lex->charset=&my_charset_bin;
20502
20505
            (yyval.num)= MYSQL_TYPE_VARCHAR;
20506
20509
  case 583:
20507
20510
 
20508
20511
/* Line 1455 of yacc.c  */
20509
 
#line 5026 "sql_yacc.yy"
 
20512
#line 5031 "sql_yacc.yy"
20510
20513
    { (yyval.num)=MYSQL_TYPE_YEAR; }
20511
20514
    break;
20512
20515
 
20513
20516
  case 584:
20514
20517
 
20515
20518
/* Line 1455 of yacc.c  */
20516
 
#line 5028 "sql_yacc.yy"
 
20519
#line 5033 "sql_yacc.yy"
20517
20520
    { (yyval.num)=MYSQL_TYPE_DATE; }
20518
20521
    break;
20519
20522
 
20520
20523
  case 585:
20521
20524
 
20522
20525
/* Line 1455 of yacc.c  */
20523
 
#line 5030 "sql_yacc.yy"
 
20526
#line 5035 "sql_yacc.yy"
20524
20527
    { (yyval.num)=MYSQL_TYPE_TIME; }
20525
20528
    break;
20526
20529
 
20527
20530
  case 586:
20528
20531
 
20529
20532
/* Line 1455 of yacc.c  */
20530
 
#line 5032 "sql_yacc.yy"
 
20533
#line 5037 "sql_yacc.yy"
20531
20534
    {
20532
20535
            if (YYTHD->variables.sql_mode & MODE_MAXDB)
20533
20536
              (yyval.num)=MYSQL_TYPE_DATETIME;
20545
20548
  case 587:
20546
20549
 
20547
20550
/* Line 1455 of yacc.c  */
20548
 
#line 5045 "sql_yacc.yy"
 
20551
#line 5050 "sql_yacc.yy"
20549
20552
    { (yyval.num)=MYSQL_TYPE_DATETIME; }
20550
20553
    break;
20551
20554
 
20552
20555
  case 588:
20553
20556
 
20554
20557
/* Line 1455 of yacc.c  */
20555
 
#line 5047 "sql_yacc.yy"
 
20558
#line 5052 "sql_yacc.yy"
20556
20559
    {
20557
20560
            Lex->charset=&my_charset_bin;
20558
20561
            (yyval.num)=MYSQL_TYPE_TINY_BLOB;
20562
20565
  case 589:
20563
20566
 
20564
20567
/* Line 1455 of yacc.c  */
20565
 
#line 5052 "sql_yacc.yy"
 
20568
#line 5057 "sql_yacc.yy"
20566
20569
    {
20567
20570
            Lex->charset=&my_charset_bin;
20568
20571
            (yyval.num)=MYSQL_TYPE_BLOB;
20572
20575
  case 590:
20573
20576
 
20574
20577
/* Line 1455 of yacc.c  */
20575
 
#line 5057 "sql_yacc.yy"
 
20578
#line 5062 "sql_yacc.yy"
20576
20579
    {
20577
20580
#ifdef HAVE_SPATIAL
20578
20581
            Lex->charset=&my_charset_bin;
20589
20592
  case 591:
20590
20593
 
20591
20594
/* Line 1455 of yacc.c  */
20592
 
#line 5069 "sql_yacc.yy"
 
20595
#line 5074 "sql_yacc.yy"
20593
20596
    {
20594
20597
            Lex->charset=&my_charset_bin;
20595
20598
            (yyval.num)=MYSQL_TYPE_MEDIUM_BLOB;
20599
20602
  case 592:
20600
20603
 
20601
20604
/* Line 1455 of yacc.c  */
20602
 
#line 5074 "sql_yacc.yy"
 
20605
#line 5079 "sql_yacc.yy"
20603
20606
    {
20604
20607
            Lex->charset=&my_charset_bin;
20605
20608
            (yyval.num)=MYSQL_TYPE_LONG_BLOB;
20609
20612
  case 593:
20610
20613
 
20611
20614
/* Line 1455 of yacc.c  */
20612
 
#line 5079 "sql_yacc.yy"
 
20615
#line 5084 "sql_yacc.yy"
20613
20616
    {
20614
20617
            Lex->charset=&my_charset_bin;
20615
20618
            (yyval.num)=MYSQL_TYPE_MEDIUM_BLOB;
20619
20622
  case 594:
20620
20623
 
20621
20624
/* Line 1455 of yacc.c  */
20622
 
#line 5084 "sql_yacc.yy"
 
20625
#line 5089 "sql_yacc.yy"
20623
20626
    { (yyval.num)=MYSQL_TYPE_MEDIUM_BLOB; }
20624
20627
    break;
20625
20628
 
20626
20629
  case 595:
20627
20630
 
20628
20631
/* Line 1455 of yacc.c  */
20629
 
#line 5086 "sql_yacc.yy"
 
20632
#line 5091 "sql_yacc.yy"
20630
20633
    { (yyval.num)=MYSQL_TYPE_TINY_BLOB; }
20631
20634
    break;
20632
20635
 
20633
20636
  case 596:
20634
20637
 
20635
20638
/* Line 1455 of yacc.c  */
20636
 
#line 5088 "sql_yacc.yy"
 
20639
#line 5093 "sql_yacc.yy"
20637
20640
    { (yyval.num)=MYSQL_TYPE_BLOB; }
20638
20641
    break;
20639
20642
 
20640
20643
  case 597:
20641
20644
 
20642
20645
/* Line 1455 of yacc.c  */
20643
 
#line 5090 "sql_yacc.yy"
 
20646
#line 5095 "sql_yacc.yy"
20644
20647
    { (yyval.num)=MYSQL_TYPE_MEDIUM_BLOB; }
20645
20648
    break;
20646
20649
 
20647
20650
  case 598:
20648
20651
 
20649
20652
/* Line 1455 of yacc.c  */
20650
 
#line 5092 "sql_yacc.yy"
 
20653
#line 5097 "sql_yacc.yy"
20651
20654
    { (yyval.num)=MYSQL_TYPE_LONG_BLOB; }
20652
20655
    break;
20653
20656
 
20654
20657
  case 599:
20655
20658
 
20656
20659
/* Line 1455 of yacc.c  */
20657
 
#line 5094 "sql_yacc.yy"
 
20660
#line 5099 "sql_yacc.yy"
20658
20661
    { (yyval.num)=MYSQL_TYPE_NEWDECIMAL;}
20659
20662
    break;
20660
20663
 
20661
20664
  case 600:
20662
20665
 
20663
20666
/* Line 1455 of yacc.c  */
20664
 
#line 5096 "sql_yacc.yy"
 
20667
#line 5101 "sql_yacc.yy"
20665
20668
    { (yyval.num)=MYSQL_TYPE_NEWDECIMAL;}
20666
20669
    break;
20667
20670
 
20668
20671
  case 601:
20669
20672
 
20670
20673
/* Line 1455 of yacc.c  */
20671
 
#line 5098 "sql_yacc.yy"
 
20674
#line 5103 "sql_yacc.yy"
20672
20675
    { (yyval.num)=MYSQL_TYPE_NEWDECIMAL;}
20673
20676
    break;
20674
20677
 
20675
20678
  case 602:
20676
20679
 
20677
20680
/* Line 1455 of yacc.c  */
20678
 
#line 5100 "sql_yacc.yy"
 
20681
#line 5105 "sql_yacc.yy"
20679
20682
    {Lex->interval_list.empty();}
20680
20683
    break;
20681
20684
 
20682
20685
  case 603:
20683
20686
 
20684
20687
/* Line 1455 of yacc.c  */
20685
 
#line 5102 "sql_yacc.yy"
 
20688
#line 5107 "sql_yacc.yy"
20686
20689
    { (yyval.num)=MYSQL_TYPE_ENUM; }
20687
20690
    break;
20688
20691
 
20689
20692
  case 604:
20690
20693
 
20691
20694
/* Line 1455 of yacc.c  */
20692
 
#line 5104 "sql_yacc.yy"
 
20695
#line 5109 "sql_yacc.yy"
20693
20696
    { Lex->interval_list.empty();}
20694
20697
    break;
20695
20698
 
20696
20699
  case 605:
20697
20700
 
20698
20701
/* Line 1455 of yacc.c  */
20699
 
#line 5106 "sql_yacc.yy"
 
20702
#line 5111 "sql_yacc.yy"
20700
20703
    { (yyval.num)=MYSQL_TYPE_SET; }
20701
20704
    break;
20702
20705
 
20703
20706
  case 606:
20704
20707
 
20705
20708
/* Line 1455 of yacc.c  */
20706
 
#line 5108 "sql_yacc.yy"
 
20709
#line 5113 "sql_yacc.yy"
20707
20710
    { (yyval.num)=MYSQL_TYPE_MEDIUM_BLOB; }
20708
20711
    break;
20709
20712
 
20710
20713
  case 607:
20711
20714
 
20712
20715
/* Line 1455 of yacc.c  */
20713
 
#line 5110 "sql_yacc.yy"
 
20716
#line 5115 "sql_yacc.yy"
20714
20717
    {
20715
20718
            (yyval.num)=MYSQL_TYPE_LONGLONG;
20716
20719
            Lex->type|= (AUTO_INCREMENT_FLAG | NOT_NULL_FLAG | UNSIGNED_FLAG |
20721
20724
  case 608:
20722
20725
 
20723
20726
/* Line 1455 of yacc.c  */
20724
 
#line 5118 "sql_yacc.yy"
 
20727
#line 5123 "sql_yacc.yy"
20725
20728
    { (yyval.num)= Field::GEOM_GEOMETRY; }
20726
20729
    break;
20727
20730
 
20728
20731
  case 609:
20729
20732
 
20730
20733
/* Line 1455 of yacc.c  */
20731
 
#line 5119 "sql_yacc.yy"
 
20734
#line 5124 "sql_yacc.yy"
20732
20735
    { (yyval.num)= Field::GEOM_GEOMETRYCOLLECTION; }
20733
20736
    break;
20734
20737
 
20735
20738
  case 610:
20736
20739
 
20737
20740
/* Line 1455 of yacc.c  */
20738
 
#line 5121 "sql_yacc.yy"
 
20741
#line 5126 "sql_yacc.yy"
20739
20742
    {
20740
20743
            Lex->length= (char*)"25";
20741
20744
            (yyval.num)= Field::GEOM_POINT;
20745
20748
  case 611:
20746
20749
 
20747
20750
/* Line 1455 of yacc.c  */
20748
 
#line 5125 "sql_yacc.yy"
 
20751
#line 5130 "sql_yacc.yy"
20749
20752
    { (yyval.num)= Field::GEOM_MULTIPOINT; }
20750
20753
    break;
20751
20754
 
20752
20755
  case 612:
20753
20756
 
20754
20757
/* Line 1455 of yacc.c  */
20755
 
#line 5126 "sql_yacc.yy"
 
20758
#line 5131 "sql_yacc.yy"
20756
20759
    { (yyval.num)= Field::GEOM_LINESTRING; }
20757
20760
    break;
20758
20761
 
20759
20762
  case 613:
20760
20763
 
20761
20764
/* Line 1455 of yacc.c  */
20762
 
#line 5127 "sql_yacc.yy"
 
20765
#line 5132 "sql_yacc.yy"
20763
20766
    { (yyval.num)= Field::GEOM_MULTILINESTRING; }
20764
20767
    break;
20765
20768
 
20766
20769
  case 614:
20767
20770
 
20768
20771
/* Line 1455 of yacc.c  */
20769
 
#line 5128 "sql_yacc.yy"
 
20772
#line 5133 "sql_yacc.yy"
20770
20773
    { (yyval.num)= Field::GEOM_POLYGON; }
20771
20774
    break;
20772
20775
 
20773
20776
  case 615:
20774
20777
 
20775
20778
/* Line 1455 of yacc.c  */
20776
 
#line 5129 "sql_yacc.yy"
 
20779
#line 5134 "sql_yacc.yy"
20777
20780
    { (yyval.num)= Field::GEOM_MULTIPOLYGON; }
20778
20781
    break;
20779
20782
 
20780
20783
  case 616:
20781
20784
 
20782
20785
/* Line 1455 of yacc.c  */
20783
 
#line 5133 "sql_yacc.yy"
 
20786
#line 5138 "sql_yacc.yy"
20784
20787
    {}
20785
20788
    break;
20786
20789
 
20787
20790
  case 617:
20788
20791
 
20789
20792
/* Line 1455 of yacc.c  */
20790
 
#line 5137 "sql_yacc.yy"
 
20793
#line 5142 "sql_yacc.yy"
20791
20794
    {}
20792
20795
    break;
20793
20796
 
20794
20797
  case 618:
20795
20798
 
20796
20799
/* Line 1455 of yacc.c  */
20797
 
#line 5138 "sql_yacc.yy"
 
20800
#line 5143 "sql_yacc.yy"
20798
20801
    {}
20799
20802
    break;
20800
20803
 
20801
20804
  case 619:
20802
20805
 
20803
20806
/* Line 1455 of yacc.c  */
20804
 
#line 5142 "sql_yacc.yy"
 
20807
#line 5147 "sql_yacc.yy"
20805
20808
    {}
20806
20809
    break;
20807
20810
 
20808
20811
  case 620:
20809
20812
 
20810
20813
/* Line 1455 of yacc.c  */
20811
 
#line 5143 "sql_yacc.yy"
 
20814
#line 5148 "sql_yacc.yy"
20812
20815
    {}
20813
20816
    break;
20814
20817
 
20815
20818
  case 621:
20816
20819
 
20817
20820
/* Line 1455 of yacc.c  */
20818
 
#line 5147 "sql_yacc.yy"
 
20821
#line 5152 "sql_yacc.yy"
20819
20822
    {}
20820
20823
    break;
20821
20824
 
20822
20825
  case 622:
20823
20826
 
20824
20827
/* Line 1455 of yacc.c  */
20825
 
#line 5148 "sql_yacc.yy"
 
20828
#line 5153 "sql_yacc.yy"
20826
20829
    {}
20827
20830
    break;
20828
20831
 
20829
20832
  case 623:
20830
20833
 
20831
20834
/* Line 1455 of yacc.c  */
20832
 
#line 5149 "sql_yacc.yy"
 
20835
#line 5154 "sql_yacc.yy"
20833
20836
    {}
20834
20837
    break;
20835
20838
 
20836
20839
  case 624:
20837
20840
 
20838
20841
/* Line 1455 of yacc.c  */
20839
 
#line 5150 "sql_yacc.yy"
 
20842
#line 5155 "sql_yacc.yy"
20840
20843
    {}
20841
20844
    break;
20842
20845
 
20843
20846
  case 625:
20844
20847
 
20845
20848
/* Line 1455 of yacc.c  */
20846
 
#line 5151 "sql_yacc.yy"
 
20849
#line 5156 "sql_yacc.yy"
20847
20850
    {}
20848
20851
    break;
20849
20852
 
20850
20853
  case 626:
20851
20854
 
20852
20855
/* Line 1455 of yacc.c  */
20853
 
#line 5155 "sql_yacc.yy"
 
20856
#line 5160 "sql_yacc.yy"
20854
20857
    { (yyval.num)=MYSQL_TYPE_LONG; }
20855
20858
    break;
20856
20859
 
20857
20860
  case 627:
20858
20861
 
20859
20862
/* Line 1455 of yacc.c  */
20860
 
#line 5156 "sql_yacc.yy"
 
20863
#line 5161 "sql_yacc.yy"
20861
20864
    { (yyval.num)=MYSQL_TYPE_TINY; }
20862
20865
    break;
20863
20866
 
20864
20867
  case 628:
20865
20868
 
20866
20869
/* Line 1455 of yacc.c  */
20867
 
#line 5157 "sql_yacc.yy"
 
20870
#line 5162 "sql_yacc.yy"
20868
20871
    { (yyval.num)=MYSQL_TYPE_SHORT; }
20869
20872
    break;
20870
20873
 
20871
20874
  case 629:
20872
20875
 
20873
20876
/* Line 1455 of yacc.c  */
20874
 
#line 5158 "sql_yacc.yy"
 
20877
#line 5163 "sql_yacc.yy"
20875
20878
    { (yyval.num)=MYSQL_TYPE_INT24; }
20876
20879
    break;
20877
20880
 
20878
20881
  case 630:
20879
20882
 
20880
20883
/* Line 1455 of yacc.c  */
20881
 
#line 5159 "sql_yacc.yy"
 
20884
#line 5164 "sql_yacc.yy"
20882
20885
    { (yyval.num)=MYSQL_TYPE_LONGLONG; }
20883
20886
    break;
20884
20887
 
20885
20888
  case 631:
20886
20889
 
20887
20890
/* Line 1455 of yacc.c  */
20888
 
#line 5164 "sql_yacc.yy"
 
20891
#line 5169 "sql_yacc.yy"
20889
20892
    {
20890
20893
            (yyval.num)= YYTHD->variables.sql_mode & MODE_REAL_AS_FLOAT ?
20891
20894
              MYSQL_TYPE_FLOAT : MYSQL_TYPE_DOUBLE;
20895
20898
  case 632:
20896
20899
 
20897
20900
/* Line 1455 of yacc.c  */
20898
 
#line 5169 "sql_yacc.yy"
 
20901
#line 5174 "sql_yacc.yy"
20899
20902
    { (yyval.num)=MYSQL_TYPE_DOUBLE; }
20900
20903
    break;
20901
20904
 
20902
20905
  case 633:
20903
20906
 
20904
20907
/* Line 1455 of yacc.c  */
20905
 
#line 5171 "sql_yacc.yy"
 
20908
#line 5176 "sql_yacc.yy"
20906
20909
    { (yyval.num)=MYSQL_TYPE_DOUBLE; }
20907
20910
    break;
20908
20911
 
20909
20912
  case 634:
20910
20913
 
20911
20914
/* Line 1455 of yacc.c  */
20912
 
#line 5176 "sql_yacc.yy"
 
20915
#line 5181 "sql_yacc.yy"
20913
20916
    { Lex->dec=Lex->length= (char*)0; }
20914
20917
    break;
20915
20918
 
20916
20919
  case 635:
20917
20920
 
20918
20921
/* Line 1455 of yacc.c  */
20919
 
#line 5178 "sql_yacc.yy"
 
20922
#line 5183 "sql_yacc.yy"
20920
20923
    { Lex->dec= (char*)0; }
20921
20924
    break;
20922
20925
 
20923
20926
  case 636:
20924
20927
 
20925
20928
/* Line 1455 of yacc.c  */
20926
 
#line 5180 "sql_yacc.yy"
 
20929
#line 5185 "sql_yacc.yy"
20927
20930
    {}
20928
20931
    break;
20929
20932
 
20930
20933
  case 637:
20931
20934
 
20932
20935
/* Line 1455 of yacc.c  */
20933
 
#line 5185 "sql_yacc.yy"
 
20936
#line 5190 "sql_yacc.yy"
20934
20937
    {
20935
20938
            LEX *lex=Lex;
20936
20939
            lex->length=(yyvsp[(2) - (5)].lex_str).str;
20941
20944
  case 638:
20942
20945
 
20943
20946
/* Line 1455 of yacc.c  */
20944
 
#line 5193 "sql_yacc.yy"
 
20947
#line 5198 "sql_yacc.yy"
20945
20948
    {}
20946
20949
    break;
20947
20950
 
20948
20951
  case 639:
20949
20952
 
20950
20953
/* Line 1455 of yacc.c  */
20951
 
#line 5194 "sql_yacc.yy"
 
20954
#line 5199 "sql_yacc.yy"
20952
20955
    {}
20953
20956
    break;
20954
20957
 
20955
20958
  case 640:
20956
20959
 
20957
20960
/* Line 1455 of yacc.c  */
20958
 
#line 5198 "sql_yacc.yy"
 
20961
#line 5203 "sql_yacc.yy"
20959
20962
    {}
20960
20963
    break;
20961
20964
 
20962
20965
  case 641:
20963
20966
 
20964
20967
/* Line 1455 of yacc.c  */
20965
 
#line 5199 "sql_yacc.yy"
 
20968
#line 5204 "sql_yacc.yy"
20966
20969
    {}
20967
20970
    break;
20968
20971
 
20969
20972
  case 642:
20970
20973
 
20971
20974
/* Line 1455 of yacc.c  */
20972
 
#line 5203 "sql_yacc.yy"
 
20975
#line 5208 "sql_yacc.yy"
20973
20976
    {}
20974
20977
    break;
20975
20978
 
20976
20979
  case 643:
20977
20980
 
20978
20981
/* Line 1455 of yacc.c  */
20979
 
#line 5204 "sql_yacc.yy"
 
20982
#line 5209 "sql_yacc.yy"
20980
20983
    { Lex->type|= UNSIGNED_FLAG;}
20981
20984
    break;
20982
20985
 
20983
20986
  case 644:
20984
20987
 
20985
20988
/* Line 1455 of yacc.c  */
20986
 
#line 5205 "sql_yacc.yy"
 
20989
#line 5210 "sql_yacc.yy"
20987
20990
    { Lex->type|= UNSIGNED_FLAG | ZEROFILL_FLAG; }
20988
20991
    break;
20989
20992
 
20990
20993
  case 645:
20991
20994
 
20992
20995
/* Line 1455 of yacc.c  */
20993
 
#line 5209 "sql_yacc.yy"
 
20996
#line 5214 "sql_yacc.yy"
20994
20997
    { Lex->length= (yyvsp[(2) - (3)].lex_str).str; }
20995
20998
    break;
20996
20999
 
20997
21000
  case 646:
20998
21001
 
20999
21002
/* Line 1455 of yacc.c  */
21000
 
#line 5210 "sql_yacc.yy"
 
21003
#line 5215 "sql_yacc.yy"
21001
21004
    { Lex->length= (yyvsp[(2) - (3)].lex_str).str; }
21002
21005
    break;
21003
21006
 
21004
21007
  case 647:
21005
21008
 
21006
21009
/* Line 1455 of yacc.c  */
21007
 
#line 5211 "sql_yacc.yy"
 
21010
#line 5216 "sql_yacc.yy"
21008
21011
    { Lex->length= (yyvsp[(2) - (3)].lex_str).str; }
21009
21012
    break;
21010
21013
 
21011
21014
  case 648:
21012
21015
 
21013
21016
/* Line 1455 of yacc.c  */
21014
 
#line 5212 "sql_yacc.yy"
 
21017
#line 5217 "sql_yacc.yy"
21015
21018
    { Lex->length= (yyvsp[(2) - (3)].lex_str).str; }
21016
21019
    break;
21017
21020
 
21018
21021
  case 649:
21019
21022
 
21020
21023
/* Line 1455 of yacc.c  */
21021
 
#line 5215 "sql_yacc.yy"
 
21024
#line 5220 "sql_yacc.yy"
21022
21025
    { Lex->length=(char*) 0; /* use default length */ }
21023
21026
    break;
21024
21027
 
21025
21028
  case 650:
21026
21029
 
21027
21030
/* Line 1455 of yacc.c  */
21028
 
#line 5216 "sql_yacc.yy"
 
21031
#line 5221 "sql_yacc.yy"
21029
21032
    { }
21030
21033
    break;
21031
21034
 
21032
21035
  case 651:
21033
21036
 
21034
21037
/* Line 1455 of yacc.c  */
21035
 
#line 5219 "sql_yacc.yy"
 
21038
#line 5224 "sql_yacc.yy"
21036
21039
    {}
21037
21040
    break;
21038
21041
 
21039
21042
  case 652:
21040
21043
 
21041
21044
/* Line 1455 of yacc.c  */
21042
 
#line 5220 "sql_yacc.yy"
 
21045
#line 5225 "sql_yacc.yy"
21043
21046
    {}
21044
21047
    break;
21045
21048
 
21046
21049
  case 653:
21047
21050
 
21048
21051
/* Line 1455 of yacc.c  */
21049
 
#line 5224 "sql_yacc.yy"
 
21052
#line 5229 "sql_yacc.yy"
21050
21053
    {}
21051
21054
    break;
21052
21055
 
21053
21056
  case 654:
21054
21057
 
21055
21058
/* Line 1455 of yacc.c  */
21056
 
#line 5225 "sql_yacc.yy"
 
21059
#line 5230 "sql_yacc.yy"
21057
21060
    {}
21058
21061
    break;
21059
21062
 
21060
21063
  case 655:
21061
21064
 
21062
21065
/* Line 1455 of yacc.c  */
21063
 
#line 5229 "sql_yacc.yy"
 
21066
#line 5234 "sql_yacc.yy"
21064
21067
    {}
21065
21068
    break;
21066
21069
 
21067
21070
  case 657:
21068
21071
 
21069
21072
/* Line 1455 of yacc.c  */
21070
 
#line 5234 "sql_yacc.yy"
 
21073
#line 5239 "sql_yacc.yy"
21071
21074
    { Lex->type&= ~ NOT_NULL_FLAG; }
21072
21075
    break;
21073
21076
 
21074
21077
  case 658:
21075
21078
 
21076
21079
/* Line 1455 of yacc.c  */
21077
 
#line 5235 "sql_yacc.yy"
 
21080
#line 5240 "sql_yacc.yy"
21078
21081
    { Lex->type|= NOT_NULL_FLAG; }
21079
21082
    break;
21080
21083
 
21081
21084
  case 659:
21082
21085
 
21083
21086
/* Line 1455 of yacc.c  */
21084
 
#line 5236 "sql_yacc.yy"
 
21087
#line 5241 "sql_yacc.yy"
21085
21088
    { Lex->default_value=(yyvsp[(2) - (2)].item); }
21086
21089
    break;
21087
21090
 
21088
21091
  case 660:
21089
21092
 
21090
21093
/* Line 1455 of yacc.c  */
21091
 
#line 5238 "sql_yacc.yy"
 
21094
#line 5243 "sql_yacc.yy"
21092
21095
    {
21093
21096
            Item *item= new (YYTHD->mem_root) Item_func_now_local();
21094
21097
            if (item == NULL)
21100
21103
  case 661:
21101
21104
 
21102
21105
/* Line 1455 of yacc.c  */
21103
 
#line 5244 "sql_yacc.yy"
 
21106
#line 5249 "sql_yacc.yy"
21104
21107
    { Lex->type|= AUTO_INCREMENT_FLAG | NOT_NULL_FLAG; }
21105
21108
    break;
21106
21109
 
21107
21110
  case 662:
21108
21111
 
21109
21112
/* Line 1455 of yacc.c  */
21110
 
#line 5246 "sql_yacc.yy"
 
21113
#line 5251 "sql_yacc.yy"
21111
21114
    { 
21112
21115
            LEX *lex=Lex;
21113
21116
            lex->type|= AUTO_INCREMENT_FLAG | NOT_NULL_FLAG | UNIQUE_FLAG;
21118
21121
  case 663:
21119
21122
 
21120
21123
/* Line 1455 of yacc.c  */
21121
 
#line 5252 "sql_yacc.yy"
 
21124
#line 5257 "sql_yacc.yy"
21122
21125
    {
21123
21126
            LEX *lex=Lex;
21124
21127
            lex->type|= PRI_KEY_FLAG | NOT_NULL_FLAG;
21129
21132
  case 664:
21130
21133
 
21131
21134
/* Line 1455 of yacc.c  */
21132
 
#line 5258 "sql_yacc.yy"
 
21135
#line 5263 "sql_yacc.yy"
21133
21136
    {
21134
21137
            LEX *lex=Lex;
21135
21138
            lex->type|= UNIQUE_FLAG; 
21140
21143
  case 665:
21141
21144
 
21142
21145
/* Line 1455 of yacc.c  */
21143
 
#line 5264 "sql_yacc.yy"
 
21146
#line 5269 "sql_yacc.yy"
21144
21147
    {
21145
21148
            LEX *lex=Lex;
21146
21149
            lex->type|= UNIQUE_KEY_FLAG; 
21151
21154
  case 666:
21152
21155
 
21153
21156
/* Line 1455 of yacc.c  */
21154
 
#line 5269 "sql_yacc.yy"
 
21157
#line 5274 "sql_yacc.yy"
21155
21158
    { Lex->comment= (yyvsp[(2) - (2)].lex_str); }
21156
21159
    break;
21157
21160
 
21158
21161
  case 667:
21159
21162
 
21160
21163
/* Line 1455 of yacc.c  */
21161
 
#line 5271 "sql_yacc.yy"
 
21164
#line 5276 "sql_yacc.yy"
21162
21165
    {
21163
21166
            if (Lex->charset && !my_charset_same(Lex->charset,(yyvsp[(2) - (2)].charset)))
21164
21167
            {
21176
21179
  case 668:
21177
21180
 
21178
21181
/* Line 1455 of yacc.c  */
21179
 
#line 5287 "sql_yacc.yy"
 
21182
#line 5292 "sql_yacc.yy"
21180
21183
    {
21181
21184
            (yyval.item)= new (YYTHD->mem_root) Item_func_now_local();
21182
21185
            if ((yyval.item) == NULL)
21187
21190
  case 669:
21188
21191
 
21189
21192
/* Line 1455 of yacc.c  */
21190
 
#line 5293 "sql_yacc.yy"
 
21193
#line 5298 "sql_yacc.yy"
21191
21194
    { (yyval.item)=(yyvsp[(1) - (1)].item); }
21192
21195
    break;
21193
21196
 
21194
21197
  case 670:
21195
21198
 
21196
21199
/* Line 1455 of yacc.c  */
21197
 
#line 5297 "sql_yacc.yy"
 
21200
#line 5302 "sql_yacc.yy"
21198
21201
    {}
21199
21202
    break;
21200
21203
 
21201
21204
  case 671:
21202
21205
 
21203
21206
/* Line 1455 of yacc.c  */
21204
 
#line 5298 "sql_yacc.yy"
 
21207
#line 5303 "sql_yacc.yy"
21205
21208
    {}
21206
21209
    break;
21207
21210
 
21208
21211
  case 672:
21209
21212
 
21210
21213
/* Line 1455 of yacc.c  */
21211
 
#line 5303 "sql_yacc.yy"
 
21214
#line 5308 "sql_yacc.yy"
21212
21215
    {
21213
21216
            if (!((yyval.charset)=get_charset_by_csname((yyvsp[(1) - (1)].lex_str).str,MY_CS_PRIMARY,MYF(0))))
21214
21217
            {
21221
21224
  case 673:
21222
21225
 
21223
21226
/* Line 1455 of yacc.c  */
21224
 
#line 5310 "sql_yacc.yy"
 
21227
#line 5315 "sql_yacc.yy"
21225
21228
    { (yyval.charset)= &my_charset_bin; }
21226
21229
    break;
21227
21230
 
21228
21231
  case 674:
21229
21232
 
21230
21233
/* Line 1455 of yacc.c  */
21231
 
#line 5314 "sql_yacc.yy"
 
21234
#line 5319 "sql_yacc.yy"
21232
21235
    { (yyval.charset)=(yyvsp[(1) - (1)].charset);   }
21233
21236
    break;
21234
21237
 
21235
21238
  case 675:
21236
21239
 
21237
21240
/* Line 1455 of yacc.c  */
21238
 
#line 5315 "sql_yacc.yy"
 
21241
#line 5320 "sql_yacc.yy"
21239
21242
    { (yyval.charset)=NULL; }
21240
21243
    break;
21241
21244
 
21242
21245
  case 676:
21243
21246
 
21244
21247
/* Line 1455 of yacc.c  */
21245
 
#line 5319 "sql_yacc.yy"
 
21248
#line 5324 "sql_yacc.yy"
21246
21249
    { (yyval.charset)= NULL; }
21247
21250
    break;
21248
21251
 
21249
21252
  case 677:
21250
21253
 
21251
21254
/* Line 1455 of yacc.c  */
21252
 
#line 5320 "sql_yacc.yy"
 
21255
#line 5325 "sql_yacc.yy"
21253
21256
    { (yyval.charset)= (yyvsp[(2) - (2)].charset); }
21254
21257
    break;
21255
21258
 
21256
21259
  case 678:
21257
21260
 
21258
21261
/* Line 1455 of yacc.c  */
21259
 
#line 5325 "sql_yacc.yy"
 
21262
#line 5330 "sql_yacc.yy"
21260
21263
    {
21261
21264
            if (!((yyval.charset)=get_charset_by_csname((yyvsp[(1) - (1)].lex_str).str,MY_CS_PRIMARY,MYF(0))) &&
21262
21265
                !((yyval.charset)=get_old_charset_by_name((yyvsp[(1) - (1)].lex_str).str)))
21270
21273
  case 679:
21271
21274
 
21272
21275
/* Line 1455 of yacc.c  */
21273
 
#line 5333 "sql_yacc.yy"
 
21276
#line 5338 "sql_yacc.yy"
21274
21277
    { (yyval.charset)= &my_charset_bin; }
21275
21278
    break;
21276
21279
 
21277
21280
  case 680:
21278
21281
 
21279
21282
/* Line 1455 of yacc.c  */
21280
 
#line 5337 "sql_yacc.yy"
 
21283
#line 5342 "sql_yacc.yy"
21281
21284
    { (yyval.charset)=(yyvsp[(1) - (1)].charset);   }
21282
21285
    break;
21283
21286
 
21284
21287
  case 681:
21285
21288
 
21286
21289
/* Line 1455 of yacc.c  */
21287
 
#line 5338 "sql_yacc.yy"
 
21290
#line 5343 "sql_yacc.yy"
21288
21291
    { (yyval.charset)=NULL; }
21289
21292
    break;
21290
21293
 
21291
21294
  case 682:
21292
21295
 
21293
21296
/* Line 1455 of yacc.c  */
21294
 
#line 5343 "sql_yacc.yy"
 
21297
#line 5348 "sql_yacc.yy"
21295
21298
    {
21296
21299
            if (!((yyval.charset)=get_charset_by_name((yyvsp[(1) - (1)].lex_str).str,MYF(0))))
21297
21300
            {
21304
21307
  case 683:
21305
21308
 
21306
21309
/* Line 1455 of yacc.c  */
21307
 
#line 5353 "sql_yacc.yy"
 
21310
#line 5358 "sql_yacc.yy"
21308
21311
    { (yyval.charset)=NULL; }
21309
21312
    break;
21310
21313
 
21311
21314
  case 684:
21312
21315
 
21313
21316
/* Line 1455 of yacc.c  */
21314
 
#line 5354 "sql_yacc.yy"
 
21317
#line 5359 "sql_yacc.yy"
21315
21318
    { (yyval.charset)=(yyvsp[(2) - (2)].charset); }
21316
21319
    break;
21317
21320
 
21318
21321
  case 685:
21319
21322
 
21320
21323
/* Line 1455 of yacc.c  */
21321
 
#line 5358 "sql_yacc.yy"
 
21324
#line 5363 "sql_yacc.yy"
21322
21325
    { (yyval.charset)=(yyvsp[(1) - (1)].charset); }
21323
21326
    break;
21324
21327
 
21325
21328
  case 686:
21326
21329
 
21327
21330
/* Line 1455 of yacc.c  */
21328
 
#line 5359 "sql_yacc.yy"
 
21331
#line 5364 "sql_yacc.yy"
21329
21332
    { (yyval.charset)=NULL; }
21330
21333
    break;
21331
21334
 
21332
21335
  case 687:
21333
21336
 
21334
21337
/* Line 1455 of yacc.c  */
21335
 
#line 5363 "sql_yacc.yy"
 
21338
#line 5368 "sql_yacc.yy"
21336
21339
    {}
21337
21340
    break;
21338
21341
 
21339
21342
  case 688:
21340
21343
 
21341
21344
/* Line 1455 of yacc.c  */
21342
 
#line 5364 "sql_yacc.yy"
 
21345
#line 5369 "sql_yacc.yy"
21343
21346
    {}
21344
21347
    break;
21345
21348
 
21346
21349
  case 689:
21347
21350
 
21348
21351
/* Line 1455 of yacc.c  */
21349
 
#line 5368 "sql_yacc.yy"
 
21352
#line 5373 "sql_yacc.yy"
21350
21353
    { Lex->charset=NULL; }
21351
21354
    break;
21352
21355
 
21353
21356
  case 690:
21354
21357
 
21355
21358
/* Line 1455 of yacc.c  */
21356
 
#line 5369 "sql_yacc.yy"
 
21359
#line 5374 "sql_yacc.yy"
21357
21360
    { Lex->charset=&my_charset_latin1; }
21358
21361
    break;
21359
21362
 
21360
21363
  case 691:
21361
21364
 
21362
21365
/* Line 1455 of yacc.c  */
21363
 
#line 5370 "sql_yacc.yy"
 
21366
#line 5375 "sql_yacc.yy"
21364
21367
    { Lex->charset=&my_charset_bin; }
21365
21368
    break;
21366
21369
 
21367
21370
  case 692:
21368
21371
 
21369
21372
/* Line 1455 of yacc.c  */
21370
 
#line 5372 "sql_yacc.yy"
 
21373
#line 5377 "sql_yacc.yy"
21371
21374
    {
21372
21375
            if (!(Lex->charset=get_charset_by_csname("ucs2",
21373
21376
                                                     MY_CS_PRIMARY,MYF(0))))
21381
21384
  case 693:
21382
21385
 
21383
21386
/* Line 1455 of yacc.c  */
21384
 
#line 5380 "sql_yacc.yy"
 
21387
#line 5385 "sql_yacc.yy"
21385
21388
    { Lex->charset=(yyvsp[(2) - (3)].charset); }
21386
21389
    break;
21387
21390
 
21388
21391
  case 694:
21389
21392
 
21390
21393
/* Line 1455 of yacc.c  */
21391
 
#line 5381 "sql_yacc.yy"
 
21394
#line 5386 "sql_yacc.yy"
21392
21395
    { Lex->type|= BINCMP_FLAG; }
21393
21396
    break;
21394
21397
 
21395
21398
  case 695:
21396
21399
 
21397
21400
/* Line 1455 of yacc.c  */
21398
 
#line 5385 "sql_yacc.yy"
 
21401
#line 5390 "sql_yacc.yy"
21399
21402
    { }
21400
21403
    break;
21401
21404
 
21402
21405
  case 696:
21403
21406
 
21404
21407
/* Line 1455 of yacc.c  */
21405
 
#line 5386 "sql_yacc.yy"
 
21408
#line 5391 "sql_yacc.yy"
21406
21409
    { Lex->type|= BINCMP_FLAG; }
21407
21410
    break;
21408
21411
 
21409
21412
  case 697:
21410
21413
 
21411
21414
/* Line 1455 of yacc.c  */
21412
 
#line 5390 "sql_yacc.yy"
 
21415
#line 5395 "sql_yacc.yy"
21413
21416
    { Lex->charset= NULL; }
21414
21417
    break;
21415
21418
 
21416
21419
  case 698:
21417
21420
 
21418
21421
/* Line 1455 of yacc.c  */
21419
 
#line 5391 "sql_yacc.yy"
 
21422
#line 5396 "sql_yacc.yy"
21420
21423
    { Lex->charset=&my_charset_latin1; }
21421
21424
    break;
21422
21425
 
21423
21426
  case 699:
21424
21427
 
21425
21428
/* Line 1455 of yacc.c  */
21426
 
#line 5393 "sql_yacc.yy"
 
21429
#line 5398 "sql_yacc.yy"
21427
21430
    {
21428
21431
            if (!(Lex->charset=get_charset_by_csname("ucs2",
21429
21432
                                                     MY_CS_PRIMARY,MYF(0))))
21437
21440
  case 700:
21438
21441
 
21439
21442
/* Line 1455 of yacc.c  */
21440
 
#line 5401 "sql_yacc.yy"
 
21443
#line 5406 "sql_yacc.yy"
21441
21444
    { Lex->charset=(yyvsp[(2) - (2)].charset); }
21442
21445
    break;
21443
21446
 
21444
21447
  case 703:
21445
21448
 
21446
21449
/* Line 1455 of yacc.c  */
21447
 
#line 5411 "sql_yacc.yy"
 
21450
#line 5416 "sql_yacc.yy"
21448
21451
    {
21449
21452
            LEX *lex=Lex;
21450
21453
            lex->fk_delete_opt= lex->fk_update_opt= lex->fk_match_option= 0;
21455
21458
  case 704:
21456
21459
 
21457
21460
/* Line 1455 of yacc.c  */
21458
 
#line 5417 "sql_yacc.yy"
 
21461
#line 5422 "sql_yacc.yy"
21459
21462
    {
21460
21463
            (yyval.table)=(yyvsp[(2) - (4)].table);
21461
21464
          }
21464
21467
  case 705:
21465
21468
 
21466
21469
/* Line 1455 of yacc.c  */
21467
 
#line 5423 "sql_yacc.yy"
 
21470
#line 5428 "sql_yacc.yy"
21468
21471
    {}
21469
21472
    break;
21470
21473
 
21471
21474
  case 706:
21472
21475
 
21473
21476
/* Line 1455 of yacc.c  */
21474
 
#line 5424 "sql_yacc.yy"
 
21477
#line 5429 "sql_yacc.yy"
21475
21478
    {}
21476
21479
    break;
21477
21480
 
21478
21481
  case 707:
21479
21482
 
21480
21483
/* Line 1455 of yacc.c  */
21481
 
#line 5429 "sql_yacc.yy"
 
21484
#line 5434 "sql_yacc.yy"
21482
21485
    {
21483
21486
            Key_part_spec *key= new Key_part_spec((yyvsp[(3) - (3)].lex_str).str);
21484
21487
            if (key == NULL)
21490
21493
  case 708:
21491
21494
 
21492
21495
/* Line 1455 of yacc.c  */
21493
 
#line 5436 "sql_yacc.yy"
 
21496
#line 5441 "sql_yacc.yy"
21494
21497
    {
21495
21498
            Key_part_spec *key= new Key_part_spec((yyvsp[(1) - (1)].lex_str).str);
21496
21499
            if (key == NULL)
21502
21505
  case 709:
21503
21506
 
21504
21507
/* Line 1455 of yacc.c  */
21505
 
#line 5445 "sql_yacc.yy"
 
21508
#line 5450 "sql_yacc.yy"
21506
21509
    {}
21507
21510
    break;
21508
21511
 
21509
21512
  case 710:
21510
21513
 
21511
21514
/* Line 1455 of yacc.c  */
21512
 
#line 5446 "sql_yacc.yy"
 
21515
#line 5451 "sql_yacc.yy"
21513
21516
    {}
21514
21517
    break;
21515
21518
 
21516
21519
  case 711:
21517
21520
 
21518
21521
/* Line 1455 of yacc.c  */
21519
 
#line 5450 "sql_yacc.yy"
 
21522
#line 5455 "sql_yacc.yy"
21520
21523
    {}
21521
21524
    break;
21522
21525
 
21523
21526
  case 712:
21524
21527
 
21525
21528
/* Line 1455 of yacc.c  */
21526
 
#line 5451 "sql_yacc.yy"
 
21529
#line 5456 "sql_yacc.yy"
21527
21530
    {}
21528
21531
    break;
21529
21532
 
21530
21533
  case 713:
21531
21534
 
21532
21535
/* Line 1455 of yacc.c  */
21533
 
#line 5455 "sql_yacc.yy"
 
21536
#line 5460 "sql_yacc.yy"
21534
21537
    { Lex->fk_delete_opt= (yyvsp[(3) - (3)].num); }
21535
21538
    break;
21536
21539
 
21537
21540
  case 714:
21538
21541
 
21539
21542
/* Line 1455 of yacc.c  */
21540
 
#line 5456 "sql_yacc.yy"
 
21543
#line 5461 "sql_yacc.yy"
21541
21544
    { Lex->fk_update_opt= (yyvsp[(3) - (3)].num); }
21542
21545
    break;
21543
21546
 
21544
21547
  case 715:
21545
21548
 
21546
21549
/* Line 1455 of yacc.c  */
21547
 
#line 5457 "sql_yacc.yy"
 
21550
#line 5462 "sql_yacc.yy"
21548
21551
    { Lex->fk_match_option= Foreign_key::FK_MATCH_FULL; }
21549
21552
    break;
21550
21553
 
21551
21554
  case 716:
21552
21555
 
21553
21556
/* Line 1455 of yacc.c  */
21554
 
#line 5458 "sql_yacc.yy"
 
21557
#line 5463 "sql_yacc.yy"
21555
21558
    { Lex->fk_match_option= Foreign_key::FK_MATCH_PARTIAL; }
21556
21559
    break;
21557
21560
 
21558
21561
  case 717:
21559
21562
 
21560
21563
/* Line 1455 of yacc.c  */
21561
 
#line 5459 "sql_yacc.yy"
 
21564
#line 5464 "sql_yacc.yy"
21562
21565
    { Lex->fk_match_option= Foreign_key::FK_MATCH_SIMPLE; }
21563
21566
    break;
21564
21567
 
21565
21568
  case 718:
21566
21569
 
21567
21570
/* Line 1455 of yacc.c  */
21568
 
#line 5463 "sql_yacc.yy"
 
21571
#line 5468 "sql_yacc.yy"
21569
21572
    { (yyval.num)= (int) Foreign_key::FK_OPTION_RESTRICT; }
21570
21573
    break;
21571
21574
 
21572
21575
  case 719:
21573
21576
 
21574
21577
/* Line 1455 of yacc.c  */
21575
 
#line 5464 "sql_yacc.yy"
 
21578
#line 5469 "sql_yacc.yy"
21576
21579
    { (yyval.num)= (int) Foreign_key::FK_OPTION_CASCADE; }
21577
21580
    break;
21578
21581
 
21579
21582
  case 720:
21580
21583
 
21581
21584
/* Line 1455 of yacc.c  */
21582
 
#line 5465 "sql_yacc.yy"
 
21585
#line 5470 "sql_yacc.yy"
21583
21586
    { (yyval.num)= (int) Foreign_key::FK_OPTION_SET_NULL; }
21584
21587
    break;
21585
21588
 
21586
21589
  case 721:
21587
21590
 
21588
21591
/* Line 1455 of yacc.c  */
21589
 
#line 5466 "sql_yacc.yy"
 
21592
#line 5471 "sql_yacc.yy"
21590
21593
    { (yyval.num)= (int) Foreign_key::FK_OPTION_NO_ACTION; }
21591
21594
    break;
21592
21595
 
21593
21596
  case 722:
21594
21597
 
21595
21598
/* Line 1455 of yacc.c  */
21596
 
#line 5467 "sql_yacc.yy"
 
21599
#line 5472 "sql_yacc.yy"
21597
21600
    { (yyval.num)= (int) Foreign_key::FK_OPTION_DEFAULT;  }
21598
21601
    break;
21599
21602
 
21600
21603
  case 723:
21601
21604
 
21602
21605
/* Line 1455 of yacc.c  */
21603
 
#line 5471 "sql_yacc.yy"
 
21606
#line 5476 "sql_yacc.yy"
21604
21607
    { (yyval.key_type)= Key::MULTIPLE; }
21605
21608
    break;
21606
21609
 
21607
21610
  case 724:
21608
21611
 
21609
21612
/* Line 1455 of yacc.c  */
21610
 
#line 5475 "sql_yacc.yy"
 
21613
#line 5480 "sql_yacc.yy"
21611
21614
    { (yyval.key_type)= Key::PRIMARY; }
21612
21615
    break;
21613
21616
 
21614
21617
  case 725:
21615
21618
 
21616
21619
/* Line 1455 of yacc.c  */
21617
 
#line 5476 "sql_yacc.yy"
 
21620
#line 5481 "sql_yacc.yy"
21618
21621
    { (yyval.key_type)= Key::UNIQUE; }
21619
21622
    break;
21620
21623
 
21621
21624
  case 726:
21622
21625
 
21623
21626
/* Line 1455 of yacc.c  */
21624
 
#line 5480 "sql_yacc.yy"
 
21627
#line 5485 "sql_yacc.yy"
21625
21628
    {}
21626
21629
    break;
21627
21630
 
21628
21631
  case 727:
21629
21632
 
21630
21633
/* Line 1455 of yacc.c  */
21631
 
#line 5481 "sql_yacc.yy"
 
21634
#line 5486 "sql_yacc.yy"
21632
21635
    {}
21633
21636
    break;
21634
21637
 
21635
21638
  case 728:
21636
21639
 
21637
21640
/* Line 1455 of yacc.c  */
21638
 
#line 5485 "sql_yacc.yy"
 
21641
#line 5490 "sql_yacc.yy"
21639
21642
    {}
21640
21643
    break;
21641
21644
 
21642
21645
  case 730:
21643
21646
 
21644
21647
/* Line 1455 of yacc.c  */
21645
 
#line 5490 "sql_yacc.yy"
 
21648
#line 5495 "sql_yacc.yy"
21646
21649
    {}
21647
21650
    break;
21648
21651
 
21649
21652
  case 731:
21650
21653
 
21651
21654
/* Line 1455 of yacc.c  */
21652
 
#line 5491 "sql_yacc.yy"
 
21655
#line 5496 "sql_yacc.yy"
21653
21656
    {}
21654
21657
    break;
21655
21658
 
21656
21659
  case 732:
21657
21660
 
21658
21661
/* Line 1455 of yacc.c  */
21659
 
#line 5492 "sql_yacc.yy"
 
21662
#line 5497 "sql_yacc.yy"
21660
21663
    {}
21661
21664
    break;
21662
21665
 
21663
21666
  case 733:
21664
21667
 
21665
21668
/* Line 1455 of yacc.c  */
21666
 
#line 5496 "sql_yacc.yy"
 
21669
#line 5501 "sql_yacc.yy"
21667
21670
    { (yyval.key_type)= Key::MULTIPLE; }
21668
21671
    break;
21669
21672
 
21670
21673
  case 734:
21671
21674
 
21672
21675
/* Line 1455 of yacc.c  */
21673
 
#line 5497 "sql_yacc.yy"
 
21676
#line 5502 "sql_yacc.yy"
21674
21677
    { (yyval.key_type)= Key::UNIQUE; }
21675
21678
    break;
21676
21679
 
21677
21680
  case 735:
21678
21681
 
21679
21682
/* Line 1455 of yacc.c  */
21680
 
#line 5501 "sql_yacc.yy"
 
21683
#line 5506 "sql_yacc.yy"
21681
21684
    { (yyval.key_type)= Key::FULLTEXT;}
21682
21685
    break;
21683
21686
 
21684
21687
  case 736:
21685
21688
 
21686
21689
/* Line 1455 of yacc.c  */
21687
 
#line 5506 "sql_yacc.yy"
 
21690
#line 5511 "sql_yacc.yy"
21688
21691
    {
21689
21692
#ifdef HAVE_SPATIAL
21690
21693
            (yyval.key_type)= Key::SPATIAL;
21699
21702
  case 737:
21700
21703
 
21701
21704
/* Line 1455 of yacc.c  */
21702
 
#line 5518 "sql_yacc.yy"
 
21705
#line 5523 "sql_yacc.yy"
21703
21706
    {
21704
21707
            Lex->key_create_info= default_key_create_info;
21705
21708
          }
21708
21711
  case 740:
21709
21712
 
21710
21713
/* Line 1455 of yacc.c  */
21711
 
#line 5535 "sql_yacc.yy"
 
21714
#line 5540 "sql_yacc.yy"
21712
21715
    {}
21713
21716
    break;
21714
21717
 
21715
21718
  case 742:
21716
21719
 
21717
21720
/* Line 1455 of yacc.c  */
21718
 
#line 5540 "sql_yacc.yy"
 
21721
#line 5545 "sql_yacc.yy"
21719
21722
    {}
21720
21723
    break;
21721
21724
 
21722
21725
  case 744:
21723
21726
 
21724
21727
/* Line 1455 of yacc.c  */
21725
 
#line 5545 "sql_yacc.yy"
 
21728
#line 5550 "sql_yacc.yy"
21726
21729
    {}
21727
21730
    break;
21728
21731
 
21729
21732
  case 752:
21730
21733
 
21731
21734
/* Line 1455 of yacc.c  */
21732
 
#line 5565 "sql_yacc.yy"
 
21735
#line 5570 "sql_yacc.yy"
21733
21736
    { Lex->key_create_info.algorithm= (yyvsp[(2) - (2)].key_alg); }
21734
21737
    break;
21735
21738
 
21736
21739
  case 753:
21737
21740
 
21738
21741
/* Line 1455 of yacc.c  */
21739
 
#line 5566 "sql_yacc.yy"
 
21742
#line 5571 "sql_yacc.yy"
21740
21743
    { Lex->key_create_info.algorithm= (yyvsp[(2) - (2)].key_alg); }
21741
21744
    break;
21742
21745
 
21743
21746
  case 754:
21744
21747
 
21745
21748
/* Line 1455 of yacc.c  */
21746
 
#line 5571 "sql_yacc.yy"
 
21749
#line 5576 "sql_yacc.yy"
21747
21750
    { Lex->key_create_info.block_size= (yyvsp[(3) - (3)].ulong_num); }
21748
21751
    break;
21749
21752
 
21750
21753
  case 759:
21751
21754
 
21752
21755
/* Line 1455 of yacc.c  */
21753
 
#line 5586 "sql_yacc.yy"
 
21756
#line 5591 "sql_yacc.yy"
21754
21757
    {
21755
21758
            if (plugin_is_ready(&(yyvsp[(3) - (3)].lex_str), MYSQL_FTPARSER_PLUGIN))
21756
21759
              Lex->key_create_info.parser_name= (yyvsp[(3) - (3)].lex_str);
21765
21768
  case 760:
21766
21769
 
21767
21770
/* Line 1455 of yacc.c  */
21768
 
#line 5598 "sql_yacc.yy"
 
21771
#line 5603 "sql_yacc.yy"
21769
21772
    { (yyval.key_alg)= HA_KEY_ALG_BTREE; }
21770
21773
    break;
21771
21774
 
21772
21775
  case 761:
21773
21776
 
21774
21777
/* Line 1455 of yacc.c  */
21775
 
#line 5599 "sql_yacc.yy"
 
21778
#line 5604 "sql_yacc.yy"
21776
21779
    { (yyval.key_alg)= HA_KEY_ALG_RTREE; }
21777
21780
    break;
21778
21781
 
21779
21782
  case 762:
21780
21783
 
21781
21784
/* Line 1455 of yacc.c  */
21782
 
#line 5600 "sql_yacc.yy"
 
21785
#line 5605 "sql_yacc.yy"
21783
21786
    { (yyval.key_alg)= HA_KEY_ALG_HASH; }
21784
21787
    break;
21785
21788
 
21786
21789
  case 763:
21787
21790
 
21788
21791
/* Line 1455 of yacc.c  */
21789
 
#line 5604 "sql_yacc.yy"
 
21792
#line 5609 "sql_yacc.yy"
21790
21793
    { Lex->col_list.push_back((yyvsp[(3) - (4)].key_part)); }
21791
21794
    break;
21792
21795
 
21793
21796
  case 764:
21794
21797
 
21795
21798
/* Line 1455 of yacc.c  */
21796
 
#line 5605 "sql_yacc.yy"
 
21799
#line 5610 "sql_yacc.yy"
21797
21800
    { Lex->col_list.push_back((yyvsp[(1) - (2)].key_part)); }
21798
21801
    break;
21799
21802
 
21800
21803
  case 765:
21801
21804
 
21802
21805
/* Line 1455 of yacc.c  */
21803
 
#line 5610 "sql_yacc.yy"
 
21806
#line 5615 "sql_yacc.yy"
21804
21807
    {
21805
21808
            (yyval.key_part)= new Key_part_spec((yyvsp[(1) - (1)].lex_str).str);
21806
21809
            if ((yyval.key_part) == NULL)
21811
21814
  case 766:
21812
21815
 
21813
21816
/* Line 1455 of yacc.c  */
21814
 
#line 5616 "sql_yacc.yy"
 
21817
#line 5621 "sql_yacc.yy"
21815
21818
    {
21816
21819
            int key_part_len= atoi((yyvsp[(3) - (4)].lex_str).str);
21817
21820
            if (!key_part_len)
21827
21830
  case 767:
21828
21831
 
21829
21832
/* Line 1455 of yacc.c  */
21830
 
#line 5629 "sql_yacc.yy"
 
21833
#line 5634 "sql_yacc.yy"
21831
21834
    { (yyval.simple_string)=(char*) 0; /* Default length */ }
21832
21835
    break;
21833
21836
 
21834
21837
  case 768:
21835
21838
 
21836
21839
/* Line 1455 of yacc.c  */
21837
 
#line 5630 "sql_yacc.yy"
 
21840
#line 5635 "sql_yacc.yy"
21838
21841
    { (yyval.simple_string)=(yyvsp[(1) - (1)].lex_str).str; }
21839
21842
    break;
21840
21843
 
21841
21844
  case 769:
21842
21845
 
21843
21846
/* Line 1455 of yacc.c  */
21844
 
#line 5634 "sql_yacc.yy"
 
21847
#line 5639 "sql_yacc.yy"
21845
21848
    { (yyval.lex_str)= null_lex_str; }
21846
21849
    break;
21847
21850
 
21848
21851
  case 770:
21849
21852
 
21850
21853
/* Line 1455 of yacc.c  */
21851
 
#line 5635 "sql_yacc.yy"
 
21854
#line 5640 "sql_yacc.yy"
21852
21855
    { (yyval.lex_str)= (yyvsp[(2) - (2)].lex_str); }
21853
21856
    break;
21854
21857
 
21855
21858
  case 771:
21856
21859
 
21857
21860
/* Line 1455 of yacc.c  */
21858
 
#line 5639 "sql_yacc.yy"
 
21861
#line 5644 "sql_yacc.yy"
21859
21862
    { Lex->interval_list.push_back((yyvsp[(1) - (1)].string)); }
21860
21863
    break;
21861
21864
 
21862
21865
  case 772:
21863
21866
 
21864
21867
/* Line 1455 of yacc.c  */
21865
 
#line 5640 "sql_yacc.yy"
 
21868
#line 5645 "sql_yacc.yy"
21866
21869
    { Lex->interval_list.push_back((yyvsp[(3) - (3)].string)); }
21867
21870
    break;
21868
21871
 
21869
21872
  case 773:
21870
21873
 
21871
21874
/* Line 1455 of yacc.c  */
21872
 
#line 5648 "sql_yacc.yy"
 
21875
#line 5653 "sql_yacc.yy"
21873
21876
    {
21874
21877
            THD *thd= YYTHD;
21875
21878
            LEX *lex= thd->lex;
21897
21900
  case 774:
21898
21901
 
21899
21902
/* Line 1455 of yacc.c  */
21900
 
#line 5671 "sql_yacc.yy"
 
21903
#line 5676 "sql_yacc.yy"
21901
21904
    {}
21902
21905
    break;
21903
21906
 
21904
21907
  case 775:
21905
21908
 
21906
21909
/* Line 1455 of yacc.c  */
21907
 
#line 5673 "sql_yacc.yy"
 
21910
#line 5678 "sql_yacc.yy"
21908
21911
    {
21909
21912
            Lex->create_info.default_table_charset= NULL;
21910
21913
            Lex->create_info.used_fields= 0;
21914
21917
  case 776:
21915
21918
 
21916
21919
/* Line 1455 of yacc.c  */
21917
 
#line 5678 "sql_yacc.yy"
 
21920
#line 5683 "sql_yacc.yy"
21918
21921
    {
21919
21922
            LEX *lex=Lex;
21920
21923
            lex->sql_command=SQLCOM_ALTER_DB;
21928
21931
  case 777:
21929
21932
 
21930
21933
/* Line 1455 of yacc.c  */
21931
 
#line 5687 "sql_yacc.yy"
 
21934
#line 5692 "sql_yacc.yy"
21932
21935
    {
21933
21936
            LEX *lex= Lex;
21934
21937
            if (lex->sphead)
21944
21947
  case 778:
21945
21948
 
21946
21949
/* Line 1455 of yacc.c  */
21947
 
#line 5698 "sql_yacc.yy"
 
21950
#line 5703 "sql_yacc.yy"
21948
21951
    {
21949
21952
            LEX *lex= Lex;
21950
21953
 
21960
21963
  case 779:
21961
21964
 
21962
21965
/* Line 1455 of yacc.c  */
21963
 
#line 5709 "sql_yacc.yy"
 
21966
#line 5714 "sql_yacc.yy"
21964
21967
    {
21965
21968
            LEX *lex=Lex;
21966
21969
 
21972
21975
  case 780:
21973
21976
 
21974
21977
/* Line 1455 of yacc.c  */
21975
 
#line 5716 "sql_yacc.yy"
 
21978
#line 5721 "sql_yacc.yy"
21976
21979
    {
21977
21980
            LEX *lex= Lex;
21978
21981
 
21988
21991
  case 781:
21989
21992
 
21990
21993
/* Line 1455 of yacc.c  */
21991
 
#line 5727 "sql_yacc.yy"
 
21994
#line 5732 "sql_yacc.yy"
21992
21995
    {
21993
21996
            LEX *lex=Lex;
21994
21997
 
22000
22003
  case 782:
22001
22004
 
22002
22005
/* Line 1455 of yacc.c  */
22003
 
#line 5734 "sql_yacc.yy"
 
22006
#line 5739 "sql_yacc.yy"
22004
22007
    {
22005
22008
            LEX *lex= Lex;
22006
22009
 
22016
22019
  case 783:
22017
22020
 
22018
22021
/* Line 1455 of yacc.c  */
22019
 
#line 5745 "sql_yacc.yy"
 
22022
#line 5750 "sql_yacc.yy"
22020
22023
    {}
22021
22024
    break;
22022
22025
 
22023
22026
  case 784:
22024
22027
 
22025
22028
/* Line 1455 of yacc.c  */
22026
 
#line 5752 "sql_yacc.yy"
 
22029
#line 5757 "sql_yacc.yy"
22027
22030
    {
22028
22031
            LEX *lex= Lex;
22029
22032
 
22040
22043
  case 785:
22041
22044
 
22042
22045
/* Line 1455 of yacc.c  */
22043
 
#line 5764 "sql_yacc.yy"
 
22046
#line 5769 "sql_yacc.yy"
22044
22047
    {}
22045
22048
    break;
22046
22049
 
22047
22050
  case 786:
22048
22051
 
22049
22052
/* Line 1455 of yacc.c  */
22050
 
#line 5766 "sql_yacc.yy"
 
22053
#line 5771 "sql_yacc.yy"
22051
22054
    {
22052
22055
            /* 
22053
22056
              It is safe to use Lex->spname because
22068
22071
  case 787:
22069
22072
 
22070
22073
/* Line 1455 of yacc.c  */
22071
 
#line 5786 "sql_yacc.yy"
 
22074
#line 5791 "sql_yacc.yy"
22072
22075
    {
22073
22076
            if (!((yyvsp[(6) - (10)].num) || (yyvsp[(7) - (10)].num) || (yyvsp[(8) - (10)].num) || (yyvsp[(9) - (10)].num) || (yyvsp[(10) - (10)].num)))
22074
22077
            {
22086
22089
  case 788:
22087
22090
 
22088
22091
/* Line 1455 of yacc.c  */
22089
 
#line 5799 "sql_yacc.yy"
 
22092
#line 5804 "sql_yacc.yy"
22090
22093
    {
22091
22094
            LEX *lex= Lex;
22092
22095
            lex->alter_tablespace_info->ts_cmd_type= ALTER_TABLESPACE;
22096
22099
  case 789:
22097
22100
 
22098
22101
/* Line 1455 of yacc.c  */
22099
 
#line 5804 "sql_yacc.yy"
 
22102
#line 5809 "sql_yacc.yy"
22100
22103
    {
22101
22104
            LEX *lex= Lex;
22102
22105
            lex->alter_tablespace_info->ts_cmd_type= ALTER_LOGFILE_GROUP;
22106
22109
  case 790:
22107
22110
 
22108
22111
/* Line 1455 of yacc.c  */
22109
 
#line 5809 "sql_yacc.yy"
 
22112
#line 5814 "sql_yacc.yy"
22110
22113
    {
22111
22114
            LEX *lex= Lex;
22112
22115
            lex->alter_tablespace_info->ts_cmd_type= CHANGE_FILE_TABLESPACE;
22116
22119
  case 791:
22117
22120
 
22118
22121
/* Line 1455 of yacc.c  */
22119
 
#line 5814 "sql_yacc.yy"
 
22122
#line 5819 "sql_yacc.yy"
22120
22123
    {
22121
22124
            LEX *lex= Lex;
22122
22125
            lex->alter_tablespace_info->ts_cmd_type= ALTER_ACCESS_MODE_TABLESPACE;
22126
22129
  case 792:
22127
22130
 
22128
22131
/* Line 1455 of yacc.c  */
22129
 
#line 5819 "sql_yacc.yy"
 
22132
#line 5824 "sql_yacc.yy"
22130
22133
    {
22131
22134
            LEX *lex= Lex;
22132
22135
            lex->sql_command= SQLCOM_ALTER_SERVER;
22138
22141
  case 793:
22139
22142
 
22140
22143
/* Line 1455 of yacc.c  */
22141
 
#line 5828 "sql_yacc.yy"
 
22144
#line 5833 "sql_yacc.yy"
22142
22145
    { (yyval.num)= 0;}
22143
22146
    break;
22144
22147
 
22145
22148
  case 794:
22146
22149
 
22147
22150
/* Line 1455 of yacc.c  */
22148
 
#line 5829 "sql_yacc.yy"
 
22151
#line 5834 "sql_yacc.yy"
22149
22152
    { (yyval.num)= 1; }
22150
22153
    break;
22151
22154
 
22152
22155
  case 795:
22153
22156
 
22154
22157
/* Line 1455 of yacc.c  */
22155
 
#line 5830 "sql_yacc.yy"
 
22158
#line 5835 "sql_yacc.yy"
22156
22159
    { (yyval.num)= 1; }
22157
22160
    break;
22158
22161
 
22159
22162
  case 796:
22160
22163
 
22161
22164
/* Line 1455 of yacc.c  */
22162
 
#line 5831 "sql_yacc.yy"
 
22165
#line 5836 "sql_yacc.yy"
22163
22166
    { (yyval.num)= 1; }
22164
22167
    break;
22165
22168
 
22166
22169
  case 797:
22167
22170
 
22168
22171
/* Line 1455 of yacc.c  */
22169
 
#line 5835 "sql_yacc.yy"
 
22172
#line 5840 "sql_yacc.yy"
22170
22173
    { (yyval.num)= 0;}
22171
22174
    break;
22172
22175
 
22173
22176
  case 798:
22174
22177
 
22175
22178
/* Line 1455 of yacc.c  */
22176
 
#line 5837 "sql_yacc.yy"
 
22179
#line 5842 "sql_yacc.yy"
22177
22180
    {
22178
22181
            /*
22179
22182
              Use lex's spname to hold the new name.
22187
22190
  case 799:
22188
22191
 
22189
22192
/* Line 1455 of yacc.c  */
22190
 
#line 5848 "sql_yacc.yy"
 
22193
#line 5853 "sql_yacc.yy"
22191
22194
    { (yyval.num)= 0;}
22192
22195
    break;
22193
22196
 
22194
22197
  case 800:
22195
22198
 
22196
22199
/* Line 1455 of yacc.c  */
22197
 
#line 5849 "sql_yacc.yy"
 
22200
#line 5854 "sql_yacc.yy"
22198
22201
    { (yyval.num)= 1; }
22199
22202
    break;
22200
22203
 
22201
22204
  case 801:
22202
22205
 
22203
22206
/* Line 1455 of yacc.c  */
22204
 
#line 5853 "sql_yacc.yy"
 
22207
#line 5858 "sql_yacc.yy"
22205
22208
    { (yyval.lex_str).str= 0; (yyval.lex_str).length= 0; }
22206
22209
    break;
22207
22210
 
22208
22211
  case 802:
22209
22212
 
22210
22213
/* Line 1455 of yacc.c  */
22211
 
#line 5854 "sql_yacc.yy"
 
22214
#line 5859 "sql_yacc.yy"
22212
22215
    { (yyval.lex_str)= (yyvsp[(1) - (1)].lex_str); }
22213
22216
    break;
22214
22217
 
22215
22218
  case 804:
22216
22219
 
22217
22220
/* Line 1455 of yacc.c  */
22218
 
#line 5859 "sql_yacc.yy"
 
22221
#line 5864 "sql_yacc.yy"
22219
22222
    { Lex->alter_info.tablespace_op= DISCARD_TABLESPACE; }
22220
22223
    break;
22221
22224
 
22222
22225
  case 805:
22223
22226
 
22224
22227
/* Line 1455 of yacc.c  */
22225
 
#line 5860 "sql_yacc.yy"
 
22228
#line 5865 "sql_yacc.yy"
22226
22229
    { Lex->alter_info.tablespace_op= IMPORT_TABLESPACE; }
22227
22230
    break;
22228
22231
 
22229
22232
  case 811:
22230
22233
 
22231
22234
/* Line 1455 of yacc.c  */
22232
 
#line 5877 "sql_yacc.yy"
 
22235
#line 5882 "sql_yacc.yy"
22233
22236
    {
22234
22237
            Lex->alter_info.flags|= ALTER_DROP_PARTITION;
22235
22238
          }
22238
22241
  case 812:
22239
22242
 
22240
22243
/* Line 1455 of yacc.c  */
22241
 
#line 5882 "sql_yacc.yy"
 
22244
#line 5887 "sql_yacc.yy"
22242
22245
    {
22243
22246
            LEX *lex= Lex;
22244
22247
            lex->alter_info.flags|= ALTER_REBUILD_PARTITION;
22249
22252
  case 813:
22250
22253
 
22251
22254
/* Line 1455 of yacc.c  */
22252
 
#line 5889 "sql_yacc.yy"
 
22255
#line 5894 "sql_yacc.yy"
22253
22256
    {
22254
22257
            LEX *lex= Lex;
22255
22258
            lex->sql_command = SQLCOM_OPTIMIZE;
22262
22265
  case 815:
22263
22266
 
22264
22267
/* Line 1455 of yacc.c  */
22265
 
#line 5899 "sql_yacc.yy"
 
22268
#line 5904 "sql_yacc.yy"
22266
22269
    {
22267
22270
            LEX *lex= Lex;
22268
22271
            lex->sql_command = SQLCOM_ANALYZE;
22275
22278
  case 816:
22276
22279
 
22277
22280
/* Line 1455 of yacc.c  */
22278
 
#line 5907 "sql_yacc.yy"
 
22281
#line 5912 "sql_yacc.yy"
22279
22282
    {
22280
22283
            LEX *lex= Lex;
22281
22284
            lex->sql_command = SQLCOM_CHECK;
22287
22290
  case 818:
22288
22291
 
22289
22292
/* Line 1455 of yacc.c  */
22290
 
#line 5916 "sql_yacc.yy"
 
22293
#line 5921 "sql_yacc.yy"
22291
22294
    {
22292
22295
            LEX *lex= Lex;
22293
22296
            lex->sql_command = SQLCOM_REPAIR;
22300
22303
  case 820:
22301
22304
 
22302
22305
/* Line 1455 of yacc.c  */
22303
 
#line 5925 "sql_yacc.yy"
 
22306
#line 5930 "sql_yacc.yy"
22304
22307
    {
22305
22308
            LEX *lex= Lex;
22306
22309
            lex->alter_info.flags|= ALTER_COALESCE_PARTITION;
22312
22315
  case 822:
22313
22316
 
22314
22317
/* Line 1455 of yacc.c  */
22315
 
#line 5936 "sql_yacc.yy"
 
22318
#line 5941 "sql_yacc.yy"
22316
22319
    {
22317
22320
            Lex->alter_info.flags|= ALTER_REMOVE_PARTITIONING;
22318
22321
          }
22321
22324
  case 823:
22322
22325
 
22323
22326
/* Line 1455 of yacc.c  */
22324
 
#line 5943 "sql_yacc.yy"
 
22327
#line 5948 "sql_yacc.yy"
22325
22328
    {
22326
22329
            Lex->alter_info.flags|= ALTER_ALL_PARTITION;
22327
22330
          }
22330
22333
  case 825:
22331
22334
 
22332
22335
/* Line 1455 of yacc.c  */
22333
 
#line 5951 "sql_yacc.yy"
 
22336
#line 5956 "sql_yacc.yy"
22334
22337
    {
22335
22338
            LEX *lex= Lex;
22336
22339
            lex->part_info= new partition_info();
22347
22350
  case 826:
22348
22351
 
22349
22352
/* Line 1455 of yacc.c  */
22350
 
#line 5963 "sql_yacc.yy"
 
22353
#line 5968 "sql_yacc.yy"
22351
22354
    {}
22352
22355
    break;
22353
22356
 
22354
22357
  case 828:
22355
22358
 
22356
22359
/* Line 1455 of yacc.c  */
22357
 
#line 5969 "sql_yacc.yy"
 
22360
#line 5974 "sql_yacc.yy"
22358
22361
    {
22359
22362
            LEX *lex= Lex;
22360
22363
            lex->part_info->no_parts= lex->part_info->partitions.elements;
22364
22367
  case 829:
22365
22368
 
22366
22369
/* Line 1455 of yacc.c  */
22367
 
#line 5974 "sql_yacc.yy"
 
22370
#line 5979 "sql_yacc.yy"
22368
22371
    {
22369
22372
            LEX *lex= Lex;
22370
22373
            lex->part_info->no_parts= (yyvsp[(2) - (2)].ulong_num);
22374
22377
  case 830:
22375
22378
 
22376
22379
/* Line 1455 of yacc.c  */
22377
 
#line 5982 "sql_yacc.yy"
 
22380
#line 5987 "sql_yacc.yy"
22378
22381
    {
22379
22382
            LEX *lex= Lex;
22380
22383
            lex->part_info= new partition_info();
22390
22393
  case 832:
22391
22394
 
22392
22395
/* Line 1455 of yacc.c  */
22393
 
#line 5997 "sql_yacc.yy"
 
22396
#line 6002 "sql_yacc.yy"
22394
22397
    {
22395
22398
            Lex->alter_info.flags|= ALTER_TABLE_REORG;
22396
22399
          }
22399
22402
  case 833:
22400
22403
 
22401
22404
/* Line 1455 of yacc.c  */
22402
 
#line 6001 "sql_yacc.yy"
 
22405
#line 6006 "sql_yacc.yy"
22403
22406
    {
22404
22407
            Lex->alter_info.flags|= ALTER_REORGANIZE_PARTITION;
22405
22408
          }
22408
22411
  case 834:
22409
22412
 
22410
22413
/* Line 1455 of yacc.c  */
22411
 
#line 6005 "sql_yacc.yy"
 
22414
#line 6010 "sql_yacc.yy"
22412
22415
    {
22413
22416
            LEX *lex= Lex;
22414
22417
            lex->part_info->no_parts= lex->part_info->partitions.elements;
22418
22421
  case 835:
22419
22422
 
22420
22423
/* Line 1455 of yacc.c  */
22421
 
#line 6012 "sql_yacc.yy"
 
22424
#line 6017 "sql_yacc.yy"
22422
22425
    {}
22423
22426
    break;
22424
22427
 
22425
22428
  case 836:
22426
22429
 
22427
22430
/* Line 1455 of yacc.c  */
22428
 
#line 6013 "sql_yacc.yy"
 
22431
#line 6018 "sql_yacc.yy"
22429
22432
    {}
22430
22433
    break;
22431
22434
 
22432
22435
  case 837:
22433
22436
 
22434
22437
/* Line 1455 of yacc.c  */
22435
 
#line 6018 "sql_yacc.yy"
 
22438
#line 6023 "sql_yacc.yy"
22436
22439
    {
22437
22440
            if (Lex->alter_info.partition_names.push_back((yyvsp[(1) - (1)].lex_str).str))
22438
22441
            {
22445
22448
  case 840:
22446
22449
 
22447
22450
/* Line 1455 of yacc.c  */
22448
 
#line 6038 "sql_yacc.yy"
 
22451
#line 6043 "sql_yacc.yy"
22449
22452
    {
22450
22453
            LEX *lex=Lex;
22451
22454
            lex->change=0;
22456
22459
  case 841:
22457
22460
 
22458
22461
/* Line 1455 of yacc.c  */
22459
 
#line 6046 "sql_yacc.yy"
 
22462
#line 6051 "sql_yacc.yy"
22460
22463
    { }
22461
22464
    break;
22462
22465
 
22463
22466
  case 842:
22464
22467
 
22465
22468
/* Line 1455 of yacc.c  */
22466
 
#line 6048 "sql_yacc.yy"
 
22469
#line 6053 "sql_yacc.yy"
22467
22470
    {
22468
22471
            Lex->alter_info.flags|= ALTER_ADD_INDEX;
22469
22472
          }
22472
22475
  case 843:
22473
22476
 
22474
22477
/* Line 1455 of yacc.c  */
22475
 
#line 6052 "sql_yacc.yy"
 
22478
#line 6057 "sql_yacc.yy"
22476
22479
    {
22477
22480
            Lex->alter_info.flags|= ALTER_ADD_COLUMN | ALTER_ADD_INDEX;
22478
22481
          }
22481
22484
  case 844:
22482
22485
 
22483
22486
/* Line 1455 of yacc.c  */
22484
 
#line 6056 "sql_yacc.yy"
 
22487
#line 6061 "sql_yacc.yy"
22485
22488
    {
22486
22489
            LEX *lex=Lex;
22487
22490
            lex->change= (yyvsp[(3) - (3)].lex_str).str;
22492
22495
  case 846:
22493
22496
 
22494
22497
/* Line 1455 of yacc.c  */
22495
 
#line 6063 "sql_yacc.yy"
 
22498
#line 6068 "sql_yacc.yy"
22496
22499
    {
22497
22500
            LEX *lex=Lex;
22498
22501
            lex->length=lex->dec=0; lex->type=0;
22506
22509
  case 847:
22507
22510
 
22508
22511
/* Line 1455 of yacc.c  */
22509
 
#line 6072 "sql_yacc.yy"
 
22512
#line 6077 "sql_yacc.yy"
22510
22513
    {
22511
22514
            LEX *lex=Lex;
22512
22515
            if (add_field_to_list(lex->thd,&(yyvsp[(3) - (6)].lex_str),
22523
22526
  case 849:
22524
22527
 
22525
22528
/* Line 1455 of yacc.c  */
22526
 
#line 6085 "sql_yacc.yy"
 
22529
#line 6090 "sql_yacc.yy"
22527
22530
    {
22528
22531
            LEX *lex=Lex;
22529
22532
            Alter_drop *ad= new Alter_drop(Alter_drop::COLUMN, (yyvsp[(3) - (4)].lex_str).str);
22537
22540
  case 850:
22538
22541
 
22539
22542
/* Line 1455 of yacc.c  */
22540
 
#line 6094 "sql_yacc.yy"
 
22543
#line 6099 "sql_yacc.yy"
22541
22544
    {
22542
22545
            Lex->alter_info.flags|= ALTER_DROP_INDEX | ALTER_FOREIGN_KEY;
22543
22546
          }
22546
22549
  case 851:
22547
22550
 
22548
22551
/* Line 1455 of yacc.c  */
22549
 
#line 6098 "sql_yacc.yy"
 
22552
#line 6103 "sql_yacc.yy"
22550
22553
    {
22551
22554
            LEX *lex=Lex;
22552
22555
            Alter_drop *ad= new Alter_drop(Alter_drop::KEY, primary_key_name);
22560
22563
  case 852:
22561
22564
 
22562
22565
/* Line 1455 of yacc.c  */
22563
 
#line 6107 "sql_yacc.yy"
 
22566
#line 6112 "sql_yacc.yy"
22564
22567
    {
22565
22568
            LEX *lex=Lex;
22566
22569
            Alter_drop *ad= new Alter_drop(Alter_drop::KEY, (yyvsp[(3) - (3)].lex_str).str);
22574
22577
  case 853:
22575
22578
 
22576
22579
/* Line 1455 of yacc.c  */
22577
 
#line 6116 "sql_yacc.yy"
 
22580
#line 6121 "sql_yacc.yy"
22578
22581
    {
22579
22582
            LEX *lex=Lex;
22580
22583
            lex->alter_info.keys_onoff= DISABLE;
22585
22588
  case 854:
22586
22589
 
22587
22590
/* Line 1455 of yacc.c  */
22588
 
#line 6122 "sql_yacc.yy"
 
22591
#line 6127 "sql_yacc.yy"
22589
22592
    {
22590
22593
            LEX *lex=Lex;
22591
22594
            lex->alter_info.keys_onoff= ENABLE;
22596
22599
  case 855:
22597
22600
 
22598
22601
/* Line 1455 of yacc.c  */
22599
 
#line 6128 "sql_yacc.yy"
 
22602
#line 6133 "sql_yacc.yy"
22600
22603
    {
22601
22604
            LEX *lex=Lex;
22602
22605
            Alter_column *ac= new Alter_column((yyvsp[(3) - (6)].lex_str).str,(yyvsp[(6) - (6)].item));
22610
22613
  case 856:
22611
22614
 
22612
22615
/* Line 1455 of yacc.c  */
22613
 
#line 6137 "sql_yacc.yy"
 
22616
#line 6142 "sql_yacc.yy"
22614
22617
    {
22615
22618
            LEX *lex=Lex;
22616
22619
            Alter_column *ac= new Alter_column((yyvsp[(3) - (5)].lex_str).str, (Item*) 0);
22624
22627
  case 857:
22625
22628
 
22626
22629
/* Line 1455 of yacc.c  */
22627
 
#line 6146 "sql_yacc.yy"
 
22630
#line 6151 "sql_yacc.yy"
22628
22631
    {
22629
22632
            LEX *lex=Lex;
22630
22633
            size_t dummy;
22648
22651
  case 858:
22649
22652
 
22650
22653
/* Line 1455 of yacc.c  */
22651
 
#line 6165 "sql_yacc.yy"
 
22654
#line 6170 "sql_yacc.yy"
22652
22655
    {
22653
22656
            if (!(yyvsp[(4) - (5)].charset))
22654
22657
            {
22674
22677
  case 859:
22675
22678
 
22676
22679
/* Line 1455 of yacc.c  */
22677
 
#line 6186 "sql_yacc.yy"
 
22680
#line 6191 "sql_yacc.yy"
22678
22681
    {
22679
22682
            LEX *lex=Lex;
22680
22683
            lex->alter_info.flags|= ALTER_OPTIONS;
22684
22687
  case 860:
22685
22688
 
22686
22689
/* Line 1455 of yacc.c  */
22687
 
#line 6191 "sql_yacc.yy"
 
22690
#line 6196 "sql_yacc.yy"
22688
22691
    {
22689
22692
            Lex->alter_info.flags|= ALTER_FORCE;
22690
22693
          }
22693
22696
  case 861:
22694
22697
 
22695
22698
/* Line 1455 of yacc.c  */
22696
 
#line 6195 "sql_yacc.yy"
 
22699
#line 6200 "sql_yacc.yy"
22697
22700
    {
22698
22701
            LEX *lex=Lex;
22699
22702
            lex->alter_info.flags|= ALTER_ORDER;
22703
22706
  case 862:
22704
22707
 
22705
22708
/* Line 1455 of yacc.c  */
22706
 
#line 6202 "sql_yacc.yy"
 
22709
#line 6207 "sql_yacc.yy"
22707
22710
    {}
22708
22711
    break;
22709
22712
 
22710
22713
  case 863:
22711
22714
 
22712
22715
/* Line 1455 of yacc.c  */
22713
 
#line 6203 "sql_yacc.yy"
 
22716
#line 6208 "sql_yacc.yy"
22714
22717
    {}
22715
22718
    break;
22716
22719
 
22717
22720
  case 864:
22718
22721
 
22719
22722
/* Line 1455 of yacc.c  */
22720
 
#line 6207 "sql_yacc.yy"
 
22723
#line 6212 "sql_yacc.yy"
22721
22724
    { Lex->ignore= 0;}
22722
22725
    break;
22723
22726
 
22724
22727
  case 865:
22725
22728
 
22726
22729
/* Line 1455 of yacc.c  */
22727
 
#line 6208 "sql_yacc.yy"
 
22730
#line 6213 "sql_yacc.yy"
22728
22731
    { Lex->ignore= 1;}
22729
22732
    break;
22730
22733
 
22731
22734
  case 866:
22732
22735
 
22733
22736
/* Line 1455 of yacc.c  */
22734
 
#line 6212 "sql_yacc.yy"
 
22737
#line 6217 "sql_yacc.yy"
22735
22738
    { Lex->drop_mode= DROP_DEFAULT; }
22736
22739
    break;
22737
22740
 
22738
22741
  case 867:
22739
22742
 
22740
22743
/* Line 1455 of yacc.c  */
22741
 
#line 6213 "sql_yacc.yy"
 
22744
#line 6218 "sql_yacc.yy"
22742
22745
    { Lex->drop_mode= DROP_RESTRICT; }
22743
22746
    break;
22744
22747
 
22745
22748
  case 868:
22746
22749
 
22747
22750
/* Line 1455 of yacc.c  */
22748
 
#line 6214 "sql_yacc.yy"
 
22751
#line 6219 "sql_yacc.yy"
22749
22752
    { Lex->drop_mode= DROP_CASCADE; }
22750
22753
    break;
22751
22754
 
22752
22755
  case 869:
22753
22756
 
22754
22757
/* Line 1455 of yacc.c  */
22755
 
#line 6218 "sql_yacc.yy"
 
22758
#line 6223 "sql_yacc.yy"
22756
22759
    {}
22757
22760
    break;
22758
22761
 
22759
22762
  case 870:
22760
22763
 
22761
22764
/* Line 1455 of yacc.c  */
22762
 
#line 6219 "sql_yacc.yy"
 
22765
#line 6224 "sql_yacc.yy"
22763
22766
    { store_position_for_column((yyvsp[(2) - (2)].lex_str).str); }
22764
22767
    break;
22765
22768
 
22766
22769
  case 871:
22767
22770
 
22768
22771
/* Line 1455 of yacc.c  */
22769
 
#line 6220 "sql_yacc.yy"
 
22772
#line 6225 "sql_yacc.yy"
22770
22773
    { store_position_for_column(first_keyword); }
22771
22774
    break;
22772
22775
 
22773
22776
  case 872:
22774
22777
 
22775
22778
/* Line 1455 of yacc.c  */
22776
 
#line 6224 "sql_yacc.yy"
 
22779
#line 6229 "sql_yacc.yy"
22777
22780
    {}
22778
22781
    break;
22779
22782
 
22780
22783
  case 873:
22781
22784
 
22782
22785
/* Line 1455 of yacc.c  */
22783
 
#line 6225 "sql_yacc.yy"
 
22786
#line 6230 "sql_yacc.yy"
22784
22787
    {}
22785
22788
    break;
22786
22789
 
22787
22790
  case 874:
22788
22791
 
22789
22792
/* Line 1455 of yacc.c  */
22790
 
#line 6226 "sql_yacc.yy"
 
22793
#line 6231 "sql_yacc.yy"
22791
22794
    {}
22792
22795
    break;
22793
22796
 
22794
22797
  case 875:
22795
22798
 
22796
22799
/* Line 1455 of yacc.c  */
22797
 
#line 6227 "sql_yacc.yy"
 
22800
#line 6232 "sql_yacc.yy"
22798
22801
    {}
22799
22802
    break;
22800
22803
 
22801
22804
  case 876:
22802
22805
 
22803
22806
/* Line 1455 of yacc.c  */
22804
 
#line 6236 "sql_yacc.yy"
 
22807
#line 6241 "sql_yacc.yy"
22805
22808
    {
22806
22809
            LEX *lex=Lex;
22807
22810
            lex->sql_command = SQLCOM_SLAVE_START;
22815
22818
  case 877:
22816
22819
 
22817
22820
/* Line 1455 of yacc.c  */
22818
 
#line 6245 "sql_yacc.yy"
 
22821
#line 6250 "sql_yacc.yy"
22819
22822
    {}
22820
22823
    break;
22821
22824
 
22822
22825
  case 878:
22823
22826
 
22824
22827
/* Line 1455 of yacc.c  */
22825
 
#line 6247 "sql_yacc.yy"
 
22828
#line 6252 "sql_yacc.yy"
22826
22829
    {
22827
22830
            LEX *lex=Lex;
22828
22831
            lex->sql_command = SQLCOM_SLAVE_STOP;
22834
22837
  case 879:
22835
22838
 
22836
22839
/* Line 1455 of yacc.c  */
22837
 
#line 6254 "sql_yacc.yy"
 
22840
#line 6259 "sql_yacc.yy"
22838
22841
    {
22839
22842
            LEX *lex=Lex;
22840
22843
            lex->sql_command = SQLCOM_SLAVE_START;
22847
22850
  case 880:
22848
22851
 
22849
22852
/* Line 1455 of yacc.c  */
22850
 
#line 6262 "sql_yacc.yy"
 
22853
#line 6267 "sql_yacc.yy"
22851
22854
    {}
22852
22855
    break;
22853
22856
 
22854
22857
  case 881:
22855
22858
 
22856
22859
/* Line 1455 of yacc.c  */
22857
 
#line 6264 "sql_yacc.yy"
 
22860
#line 6269 "sql_yacc.yy"
22858
22861
    {
22859
22862
            LEX *lex=Lex;
22860
22863
            lex->sql_command = SQLCOM_SLAVE_STOP;
22865
22868
  case 882:
22866
22869
 
22867
22870
/* Line 1455 of yacc.c  */
22868
 
#line 6273 "sql_yacc.yy"
 
22871
#line 6278 "sql_yacc.yy"
22869
22872
    {
22870
22873
            LEX *lex= Lex;
22871
22874
            lex->sql_command= SQLCOM_BEGIN;
22876
22879
  case 883:
22877
22880
 
22878
22881
/* Line 1455 of yacc.c  */
22879
 
#line 6281 "sql_yacc.yy"
 
22882
#line 6286 "sql_yacc.yy"
22880
22883
    { (yyval.num) = 0; }
22881
22884
    break;
22882
22885
 
22883
22886
  case 884:
22884
22887
 
22885
22888
/* Line 1455 of yacc.c  */
22886
 
#line 6283 "sql_yacc.yy"
 
22889
#line 6288 "sql_yacc.yy"
22887
22890
    {
22888
22891
            (yyval.num)= MYSQL_START_TRANS_OPT_WITH_CONS_SNAPSHOT;
22889
22892
          }
22892
22895
  case 885:
22893
22896
 
22894
22897
/* Line 1455 of yacc.c  */
22895
 
#line 6289 "sql_yacc.yy"
 
22898
#line 6294 "sql_yacc.yy"
22896
22899
    { Lex->slave_thd_opt= 0; }
22897
22900
    break;
22898
22901
 
22899
22902
  case 886:
22900
22903
 
22901
22904
/* Line 1455 of yacc.c  */
22902
 
#line 6291 "sql_yacc.yy"
 
22905
#line 6296 "sql_yacc.yy"
22903
22906
    {}
22904
22907
    break;
22905
22908
 
22906
22909
  case 889:
22907
22910
 
22908
22911
/* Line 1455 of yacc.c  */
22909
 
#line 6300 "sql_yacc.yy"
 
22912
#line 6305 "sql_yacc.yy"
22910
22913
    {}
22911
22914
    break;
22912
22915
 
22913
22916
  case 890:
22914
22917
 
22915
22918
/* Line 1455 of yacc.c  */
22916
 
#line 6301 "sql_yacc.yy"
 
22919
#line 6306 "sql_yacc.yy"
22917
22920
    { Lex->slave_thd_opt|=SLAVE_SQL; }
22918
22921
    break;
22919
22922
 
22920
22923
  case 891:
22921
22924
 
22922
22925
/* Line 1455 of yacc.c  */
22923
 
#line 6302 "sql_yacc.yy"
 
22926
#line 6307 "sql_yacc.yy"
22924
22927
    { Lex->slave_thd_opt|=SLAVE_IO; }
22925
22928
    break;
22926
22929
 
22927
22930
  case 892:
22928
22931
 
22929
22932
/* Line 1455 of yacc.c  */
22930
 
#line 6306 "sql_yacc.yy"
 
22933
#line 6311 "sql_yacc.yy"
22931
22934
    {}
22932
22935
    break;
22933
22936
 
22934
22937
  case 893:
22935
22938
 
22936
22939
/* Line 1455 of yacc.c  */
22937
 
#line 6308 "sql_yacc.yy"
 
22940
#line 6313 "sql_yacc.yy"
22938
22941
    {
22939
22942
            LEX *lex=Lex;
22940
22943
            if (((lex->mi.log_file_name || lex->mi.pos) &&
22952
22955
  case 896:
22953
22956
 
22954
22957
/* Line 1455 of yacc.c  */
22955
 
#line 6329 "sql_yacc.yy"
 
22958
#line 6334 "sql_yacc.yy"
22956
22959
    {
22957
22960
            Lex->sql_command = SQLCOM_RESTORE_TABLE;
22958
22961
          }
22961
22964
  case 897:
22962
22965
 
22963
22966
/* Line 1455 of yacc.c  */
22964
 
#line 6333 "sql_yacc.yy"
 
22967
#line 6338 "sql_yacc.yy"
22965
22968
    {
22966
22969
            Lex->backup_dir = (yyvsp[(6) - (6)].lex_str).str;
22967
22970
          }
22970
22973
  case 898:
22971
22974
 
22972
22975
/* Line 1455 of yacc.c  */
22973
 
#line 6340 "sql_yacc.yy"
 
22976
#line 6345 "sql_yacc.yy"
22974
22977
    {
22975
22978
            Lex->sql_command = SQLCOM_BACKUP_TABLE;
22976
22979
          }
22979
22982
  case 899:
22980
22983
 
22981
22984
/* Line 1455 of yacc.c  */
22982
 
#line 6344 "sql_yacc.yy"
 
22985
#line 6349 "sql_yacc.yy"
22983
22986
    {
22984
22987
            Lex->backup_dir = (yyvsp[(6) - (6)].lex_str).str;
22985
22988
          }
22988
22991
  case 900:
22989
22992
 
22990
22993
/* Line 1455 of yacc.c  */
22991
 
#line 6351 "sql_yacc.yy"
 
22994
#line 6356 "sql_yacc.yy"
22992
22995
    {
22993
22996
            LEX *lex=Lex;
22994
22997
            lex->sql_command = SQLCOM_CHECKSUM;
22998
23001
  case 901:
22999
23002
 
23000
23003
/* Line 1455 of yacc.c  */
23001
 
#line 6356 "sql_yacc.yy"
 
23004
#line 6361 "sql_yacc.yy"
23002
23005
    {}
23003
23006
    break;
23004
23007
 
23005
23008
  case 902:
23006
23009
 
23007
23010
/* Line 1455 of yacc.c  */
23008
 
#line 6360 "sql_yacc.yy"
 
23011
#line 6365 "sql_yacc.yy"
23009
23012
    { Lex->check_opt.flags= 0; }
23010
23013
    break;
23011
23014
 
23012
23015
  case 903:
23013
23016
 
23014
23017
/* Line 1455 of yacc.c  */
23015
 
#line 6361 "sql_yacc.yy"
 
23018
#line 6366 "sql_yacc.yy"
23016
23019
    { Lex->check_opt.flags= T_QUICK; }
23017
23020
    break;
23018
23021
 
23019
23022
  case 904:
23020
23023
 
23021
23024
/* Line 1455 of yacc.c  */
23022
 
#line 6362 "sql_yacc.yy"
 
23025
#line 6367 "sql_yacc.yy"
23023
23026
    { Lex->check_opt.flags= T_EXTEND; }
23024
23027
    break;
23025
23028
 
23026
23029
  case 905:
23027
23030
 
23028
23031
/* Line 1455 of yacc.c  */
23029
 
#line 6367 "sql_yacc.yy"
 
23032
#line 6372 "sql_yacc.yy"
23030
23033
    {
23031
23034
            LEX *lex=Lex;
23032
23035
            lex->sql_command = SQLCOM_REPAIR;
23039
23042
  case 906:
23040
23043
 
23041
23044
/* Line 1455 of yacc.c  */
23042
 
#line 6375 "sql_yacc.yy"
 
23045
#line 6380 "sql_yacc.yy"
23043
23046
    {}
23044
23047
    break;
23045
23048
 
23046
23049
  case 907:
23047
23050
 
23048
23051
/* Line 1455 of yacc.c  */
23049
 
#line 6379 "sql_yacc.yy"
 
23052
#line 6384 "sql_yacc.yy"
23050
23053
    { Lex->check_opt.flags = T_MEDIUM; }
23051
23054
    break;
23052
23055
 
23053
23056
  case 908:
23054
23057
 
23055
23058
/* Line 1455 of yacc.c  */
23056
 
#line 6380 "sql_yacc.yy"
 
23059
#line 6385 "sql_yacc.yy"
23057
23060
    {}
23058
23061
    break;
23059
23062
 
23060
23063
  case 909:
23061
23064
 
23062
23065
/* Line 1455 of yacc.c  */
23063
 
#line 6384 "sql_yacc.yy"
 
23066
#line 6389 "sql_yacc.yy"
23064
23067
    {}
23065
23068
    break;
23066
23069
 
23067
23070
  case 910:
23068
23071
 
23069
23072
/* Line 1455 of yacc.c  */
23070
 
#line 6385 "sql_yacc.yy"
 
23073
#line 6390 "sql_yacc.yy"
23071
23074
    {}
23072
23075
    break;
23073
23076
 
23074
23077
  case 911:
23075
23078
 
23076
23079
/* Line 1455 of yacc.c  */
23077
 
#line 6389 "sql_yacc.yy"
 
23080
#line 6394 "sql_yacc.yy"
23078
23081
    { Lex->check_opt.flags|= T_QUICK; }
23079
23082
    break;
23080
23083
 
23081
23084
  case 912:
23082
23085
 
23083
23086
/* Line 1455 of yacc.c  */
23084
 
#line 6390 "sql_yacc.yy"
 
23087
#line 6395 "sql_yacc.yy"
23085
23088
    { Lex->check_opt.flags|= T_EXTEND; }
23086
23089
    break;
23087
23090
 
23088
23091
  case 913:
23089
23092
 
23090
23093
/* Line 1455 of yacc.c  */
23091
 
#line 6391 "sql_yacc.yy"
 
23094
#line 6396 "sql_yacc.yy"
23092
23095
    { Lex->check_opt.sql_flags|= TT_USEFRM; }
23093
23096
    break;
23094
23097
 
23095
23098
  case 914:
23096
23099
 
23097
23100
/* Line 1455 of yacc.c  */
23098
 
#line 6396 "sql_yacc.yy"
 
23101
#line 6401 "sql_yacc.yy"
23099
23102
    {
23100
23103
            LEX *lex=Lex;
23101
23104
            lex->sql_command = SQLCOM_ANALYZE;
23108
23111
  case 915:
23109
23112
 
23110
23113
/* Line 1455 of yacc.c  */
23111
 
#line 6404 "sql_yacc.yy"
 
23114
#line 6409 "sql_yacc.yy"
23112
23115
    {}
23113
23116
    break;
23114
23117
 
23115
23118
  case 916:
23116
23119
 
23117
23120
/* Line 1455 of yacc.c  */
23118
 
#line 6409 "sql_yacc.yy"
 
23121
#line 6414 "sql_yacc.yy"
23119
23122
    {
23120
23123
            Lex->sql_command = SQLCOM_BINLOG_BASE64_EVENT;
23121
23124
            Lex->comment= (yyvsp[(2) - (2)].lex_str);
23125
23128
  case 917:
23126
23129
 
23127
23130
/* Line 1455 of yacc.c  */
23128
 
#line 6417 "sql_yacc.yy"
 
23131
#line 6422 "sql_yacc.yy"
23129
23132
    {
23130
23133
            LEX *lex=Lex;
23131
23134
 
23143
23146
  case 918:
23144
23147
 
23145
23148
/* Line 1455 of yacc.c  */
23146
 
#line 6430 "sql_yacc.yy"
 
23149
#line 6435 "sql_yacc.yy"
23147
23150
    {}
23148
23151
    break;
23149
23152
 
23150
23153
  case 919:
23151
23154
 
23152
23155
/* Line 1455 of yacc.c  */
23153
 
#line 6434 "sql_yacc.yy"
 
23156
#line 6439 "sql_yacc.yy"
23154
23157
    { Lex->check_opt.flags = T_MEDIUM; }
23155
23158
    break;
23156
23159
 
23157
23160
  case 920:
23158
23161
 
23159
23162
/* Line 1455 of yacc.c  */
23160
 
#line 6435 "sql_yacc.yy"
 
23163
#line 6440 "sql_yacc.yy"
23161
23164
    {}
23162
23165
    break;
23163
23166
 
23164
23167
  case 921:
23165
23168
 
23166
23169
/* Line 1455 of yacc.c  */
23167
 
#line 6439 "sql_yacc.yy"
 
23170
#line 6444 "sql_yacc.yy"
23168
23171
    {}
23169
23172
    break;
23170
23173
 
23171
23174
  case 922:
23172
23175
 
23173
23176
/* Line 1455 of yacc.c  */
23174
 
#line 6440 "sql_yacc.yy"
 
23177
#line 6445 "sql_yacc.yy"
23175
23178
    {}
23176
23179
    break;
23177
23180
 
23178
23181
  case 923:
23179
23182
 
23180
23183
/* Line 1455 of yacc.c  */
23181
 
#line 6444 "sql_yacc.yy"
 
23184
#line 6449 "sql_yacc.yy"
23182
23185
    { Lex->check_opt.flags|= T_QUICK; }
23183
23186
    break;
23184
23187
 
23185
23188
  case 924:
23186
23189
 
23187
23190
/* Line 1455 of yacc.c  */
23188
 
#line 6445 "sql_yacc.yy"
 
23191
#line 6450 "sql_yacc.yy"
23189
23192
    { Lex->check_opt.flags|= T_FAST; }
23190
23193
    break;
23191
23194
 
23192
23195
  case 925:
23193
23196
 
23194
23197
/* Line 1455 of yacc.c  */
23195
 
#line 6446 "sql_yacc.yy"
 
23198
#line 6451 "sql_yacc.yy"
23196
23199
    { Lex->check_opt.flags|= T_MEDIUM; }
23197
23200
    break;
23198
23201
 
23199
23202
  case 926:
23200
23203
 
23201
23204
/* Line 1455 of yacc.c  */
23202
 
#line 6447 "sql_yacc.yy"
 
23205
#line 6452 "sql_yacc.yy"
23203
23206
    { Lex->check_opt.flags|= T_EXTEND; }
23204
23207
    break;
23205
23208
 
23206
23209
  case 927:
23207
23210
 
23208
23211
/* Line 1455 of yacc.c  */
23209
 
#line 6448 "sql_yacc.yy"
 
23212
#line 6453 "sql_yacc.yy"
23210
23213
    { Lex->check_opt.flags|= T_CHECK_ONLY_CHANGED; }
23211
23214
    break;
23212
23215
 
23213
23216
  case 928:
23214
23217
 
23215
23218
/* Line 1455 of yacc.c  */
23216
 
#line 6449 "sql_yacc.yy"
 
23219
#line 6454 "sql_yacc.yy"
23217
23220
    { Lex->check_opt.sql_flags|= TT_FOR_UPGRADE; }
23218
23221
    break;
23219
23222
 
23220
23223
  case 929:
23221
23224
 
23222
23225
/* Line 1455 of yacc.c  */
23223
 
#line 6454 "sql_yacc.yy"
 
23226
#line 6459 "sql_yacc.yy"
23224
23227
    {
23225
23228
            LEX *lex=Lex;
23226
23229
            lex->sql_command = SQLCOM_OPTIMIZE;
23233
23236
  case 930:
23234
23237
 
23235
23238
/* Line 1455 of yacc.c  */
23236
 
#line 6462 "sql_yacc.yy"
 
23239
#line 6467 "sql_yacc.yy"
23237
23240
    {}
23238
23241
    break;
23239
23242
 
23240
23243
  case 931:
23241
23244
 
23242
23245
/* Line 1455 of yacc.c  */
23243
 
#line 6466 "sql_yacc.yy"
 
23246
#line 6471 "sql_yacc.yy"
23244
23247
    { (yyval.num)= 0; }
23245
23248
    break;
23246
23249
 
23247
23250
  case 932:
23248
23251
 
23249
23252
/* Line 1455 of yacc.c  */
23250
 
#line 6467 "sql_yacc.yy"
 
23253
#line 6472 "sql_yacc.yy"
23251
23254
    { (yyval.num)= 1; }
23252
23255
    break;
23253
23256
 
23254
23257
  case 933:
23255
23258
 
23256
23259
/* Line 1455 of yacc.c  */
23257
 
#line 6468 "sql_yacc.yy"
 
23260
#line 6473 "sql_yacc.yy"
23258
23261
    { (yyval.num)= 1; }
23259
23262
    break;
23260
23263
 
23261
23264
  case 934:
23262
23265
 
23263
23266
/* Line 1455 of yacc.c  */
23264
 
#line 6473 "sql_yacc.yy"
 
23267
#line 6478 "sql_yacc.yy"
23265
23268
    {
23266
23269
            Lex->sql_command= SQLCOM_RENAME_TABLE;
23267
23270
          }
23270
23273
  case 935:
23271
23274
 
23272
23275
/* Line 1455 of yacc.c  */
23273
 
#line 6477 "sql_yacc.yy"
 
23276
#line 6482 "sql_yacc.yy"
23274
23277
    {}
23275
23278
    break;
23276
23279
 
23277
23280
  case 936:
23278
23281
 
23279
23282
/* Line 1455 of yacc.c  */
23280
 
#line 6479 "sql_yacc.yy"
 
23283
#line 6484 "sql_yacc.yy"
23281
23284
    {
23282
23285
            Lex->sql_command = SQLCOM_RENAME_USER;
23283
23286
          }
23286
23289
  case 937:
23287
23290
 
23288
23291
/* Line 1455 of yacc.c  */
23289
 
#line 6486 "sql_yacc.yy"
 
23292
#line 6491 "sql_yacc.yy"
23290
23293
    {
23291
23294
            if (Lex->users_list.push_back((yyvsp[(1) - (3)].lex_user)) || Lex->users_list.push_back((yyvsp[(3) - (3)].lex_user)))
23292
23295
              MYSQL_YYABORT;
23296
23299
  case 938:
23297
23300
 
23298
23301
/* Line 1455 of yacc.c  */
23299
 
#line 6491 "sql_yacc.yy"
 
23302
#line 6496 "sql_yacc.yy"
23300
23303
    {
23301
23304
            if (Lex->users_list.push_back((yyvsp[(3) - (5)].lex_user)) || Lex->users_list.push_back((yyvsp[(5) - (5)].lex_user)))
23302
23305
              MYSQL_YYABORT;
23306
23309
  case 941:
23307
23310
 
23308
23311
/* Line 1455 of yacc.c  */
23309
 
#line 6504 "sql_yacc.yy"
 
23312
#line 6509 "sql_yacc.yy"
23310
23313
    {
23311
23314
            LEX *lex=Lex;
23312
23315
            SELECT_LEX *sl= lex->current_select;
23321
23324
  case 942:
23322
23325
 
23323
23326
/* Line 1455 of yacc.c  */
23324
 
#line 6517 "sql_yacc.yy"
 
23327
#line 6522 "sql_yacc.yy"
23325
23328
    {
23326
23329
            LEX *lex=Lex;
23327
23330
            lex->sql_command= SQLCOM_ASSIGN_TO_KEYCACHE;
23332
23335
  case 945:
23333
23336
 
23334
23337
/* Line 1455 of yacc.c  */
23335
 
#line 6531 "sql_yacc.yy"
 
23338
#line 6536 "sql_yacc.yy"
23336
23339
    {
23337
23340
            if (!Select->add_table_to_list(YYTHD, (yyvsp[(1) - (2)].table), NULL, 0, TL_READ, 
23338
23341
                                           Select->pop_index_hints()))
23343
23346
  case 946:
23344
23347
 
23345
23348
/* Line 1455 of yacc.c  */
23346
 
#line 6539 "sql_yacc.yy"
 
23349
#line 6544 "sql_yacc.yy"
23347
23350
    { (yyval.lex_str)= (yyvsp[(1) - (1)].lex_str); }
23348
23351
    break;
23349
23352
 
23350
23353
  case 947:
23351
23354
 
23352
23355
/* Line 1455 of yacc.c  */
23353
 
#line 6540 "sql_yacc.yy"
 
23356
#line 6545 "sql_yacc.yy"
23354
23357
    { (yyval.lex_str) = default_key_cache_base; }
23355
23358
    break;
23356
23359
 
23357
23360
  case 948:
23358
23361
 
23359
23362
/* Line 1455 of yacc.c  */
23360
 
#line 6545 "sql_yacc.yy"
 
23363
#line 6550 "sql_yacc.yy"
23361
23364
    {
23362
23365
            LEX *lex=Lex;
23363
23366
            lex->sql_command=SQLCOM_PRELOAD_KEYS;
23367
23370
  case 949:
23368
23371
 
23369
23372
/* Line 1455 of yacc.c  */
23370
 
#line 6550 "sql_yacc.yy"
 
23373
#line 6555 "sql_yacc.yy"
23371
23374
    {}
23372
23375
    break;
23373
23376
 
23374
23377
  case 952:
23375
23378
 
23376
23379
/* Line 1455 of yacc.c  */
23377
 
#line 6560 "sql_yacc.yy"
 
23380
#line 6565 "sql_yacc.yy"
23378
23381
    {
23379
23382
            if (!Select->add_table_to_list(YYTHD, (yyvsp[(1) - (3)].table), NULL, (yyvsp[(3) - (3)].num), TL_READ,
23380
23383
                                           Select->pop_index_hints()))
23385
23388
  case 953:
23386
23389
 
23387
23390
/* Line 1455 of yacc.c  */
23388
 
#line 6568 "sql_yacc.yy"
 
23391
#line 6573 "sql_yacc.yy"
23389
23392
    {
23390
23393
            Lex->select_lex.alloc_index_hints(YYTHD);
23391
23394
            Select->set_index_hint_type(INDEX_HINT_USE, 
23398
23401
  case 955:
23399
23402
 
23400
23403
/* Line 1455 of yacc.c  */
23401
 
#line 6579 "sql_yacc.yy"
 
23404
#line 6584 "sql_yacc.yy"
23402
23405
    { }
23403
23406
    break;
23404
23407
 
23405
23408
  case 957:
23406
23409
 
23407
23410
/* Line 1455 of yacc.c  */
23408
 
#line 6585 "sql_yacc.yy"
 
23411
#line 6590 "sql_yacc.yy"
23409
23412
    { (yyval.num)= 0; }
23410
23413
    break;
23411
23414
 
23412
23415
  case 958:
23413
23416
 
23414
23417
/* Line 1455 of yacc.c  */
23415
 
#line 6586 "sql_yacc.yy"
 
23418
#line 6591 "sql_yacc.yy"
23416
23419
    { (yyval.num)= TL_OPTION_IGNORE_LEAVES; }
23417
23420
    break;
23418
23421
 
23419
23422
  case 959:
23420
23423
 
23421
23424
/* Line 1455 of yacc.c  */
23422
 
#line 6596 "sql_yacc.yy"
 
23425
#line 6601 "sql_yacc.yy"
23423
23426
    {
23424
23427
            LEX *lex= Lex;
23425
23428
            lex->sql_command= SQLCOM_SELECT;
23429
23432
  case 962:
23430
23433
 
23431
23434
/* Line 1455 of yacc.c  */
23432
 
#line 6610 "sql_yacc.yy"
 
23435
#line 6615 "sql_yacc.yy"
23433
23436
    {
23434
23437
            LEX *lex= Lex;
23435
23438
            SELECT_LEX * sel= lex->current_select;
23464
23467
  case 964:
23465
23468
 
23466
23469
/* Line 1455 of yacc.c  */
23467
 
#line 6644 "sql_yacc.yy"
 
23470
#line 6649 "sql_yacc.yy"
23468
23471
    {
23469
23472
            LEX *lex= Lex;
23470
23473
            SELECT_LEX * sel= lex->current_select;
23485
23488
  case 966:
23486
23489
 
23487
23490
/* Line 1455 of yacc.c  */
23488
 
#line 6663 "sql_yacc.yy"
 
23491
#line 6668 "sql_yacc.yy"
23489
23492
    {
23490
23493
            LEX *lex= Lex;
23491
23494
            SELECT_LEX *sel= lex->current_select;
23498
23501
  case 967:
23499
23502
 
23500
23503
/* Line 1455 of yacc.c  */
23501
 
#line 6671 "sql_yacc.yy"
 
23504
#line 6676 "sql_yacc.yy"
23502
23505
    {
23503
23506
            Select->parsing_place= NO_MATTER;
23504
23507
          }
23507
23510
  case 969:
23508
23511
 
23509
23512
/* Line 1455 of yacc.c  */
23510
 
#line 6678 "sql_yacc.yy"
 
23513
#line 6683 "sql_yacc.yy"
23511
23514
    {}
23512
23515
    break;
23513
23516
 
23514
23517
  case 974:
23515
23518
 
23516
23519
/* Line 1455 of yacc.c  */
23517
 
#line 6688 "sql_yacc.yy"
 
23520
#line 6693 "sql_yacc.yy"
23518
23521
    {
23519
23522
            Select->context.table_list=
23520
23523
              Select->context.first_name_resolution_table= 
23525
23528
  case 977:
23526
23529
 
23527
23530
/* Line 1455 of yacc.c  */
23528
 
#line 6703 "sql_yacc.yy"
 
23531
#line 6708 "sql_yacc.yy"
23529
23532
    {
23530
23533
            if (Select->options & SELECT_DISTINCT && Select->options & SELECT_ALL)
23531
23534
            {
23538
23541
  case 980:
23539
23542
 
23540
23543
/* Line 1455 of yacc.c  */
23541
 
#line 6718 "sql_yacc.yy"
 
23544
#line 6723 "sql_yacc.yy"
23542
23545
    { Select->options|= SELECT_STRAIGHT_JOIN; }
23543
23546
    break;
23544
23547
 
23545
23548
  case 981:
23546
23549
 
23547
23550
/* Line 1455 of yacc.c  */
23548
 
#line 6720 "sql_yacc.yy"
 
23551
#line 6725 "sql_yacc.yy"
23549
23552
    {
23550
23553
            if (check_simple_select())
23551
23554
              MYSQL_YYABORT;
23557
23560
  case 982:
23558
23561
 
23559
23562
/* Line 1455 of yacc.c  */
23560
 
#line 6726 "sql_yacc.yy"
 
23563
#line 6731 "sql_yacc.yy"
23561
23564
    { Select->options|= SELECT_DISTINCT; }
23562
23565
    break;
23563
23566
 
23564
23567
  case 983:
23565
23568
 
23566
23569
/* Line 1455 of yacc.c  */
23567
 
#line 6727 "sql_yacc.yy"
 
23570
#line 6732 "sql_yacc.yy"
23568
23571
    { Select->options|= SELECT_SMALL_RESULT; }
23569
23572
    break;
23570
23573
 
23571
23574
  case 984:
23572
23575
 
23573
23576
/* Line 1455 of yacc.c  */
23574
 
#line 6728 "sql_yacc.yy"
 
23577
#line 6733 "sql_yacc.yy"
23575
23578
    { Select->options|= SELECT_BIG_RESULT; }
23576
23579
    break;
23577
23580
 
23578
23581
  case 985:
23579
23582
 
23580
23583
/* Line 1455 of yacc.c  */
23581
 
#line 6730 "sql_yacc.yy"
 
23584
#line 6735 "sql_yacc.yy"
23582
23585
    {
23583
23586
            if (check_simple_select())
23584
23587
              MYSQL_YYABORT;
23589
23592
  case 986:
23590
23593
 
23591
23594
/* Line 1455 of yacc.c  */
23592
 
#line 6736 "sql_yacc.yy"
 
23595
#line 6741 "sql_yacc.yy"
23593
23596
    {
23594
23597
            if (check_simple_select())
23595
23598
              MYSQL_YYABORT;
23600
23603
  case 987:
23601
23604
 
23602
23605
/* Line 1455 of yacc.c  */
23603
 
#line 6742 "sql_yacc.yy"
 
23606
#line 6747 "sql_yacc.yy"
23604
23607
    {
23605
23608
            Lex->safe_to_cache_query=0;
23606
23609
            Lex->select_lex.options&= ~OPTION_TO_QUERY_CACHE;
23611
23614
  case 988:
23612
23615
 
23613
23616
/* Line 1455 of yacc.c  */
23614
 
#line 6748 "sql_yacc.yy"
 
23617
#line 6753 "sql_yacc.yy"
23615
23618
    {
23616
23619
            /*
23617
23620
             Honor this flag only if SQL_NO_CACHE wasn't specified AND
23630
23633
  case 989:
23631
23634
 
23632
23635
/* Line 1455 of yacc.c  */
23633
 
#line 6761 "sql_yacc.yy"
 
23636
#line 6766 "sql_yacc.yy"
23634
23637
    { Select->options|= SELECT_ALL; }
23635
23638
    break;
23636
23639
 
23637
23640
  case 991:
23638
23641
 
23639
23642
/* Line 1455 of yacc.c  */
23640
 
#line 6767 "sql_yacc.yy"
 
23643
#line 6772 "sql_yacc.yy"
23641
23644
    {
23642
23645
            LEX *lex=Lex;
23643
23646
            lex->current_select->set_lock_for_tables(TL_WRITE);
23650
23653
  case 992:
23651
23654
 
23652
23655
/* Line 1455 of yacc.c  */
23653
 
#line 6775 "sql_yacc.yy"
 
23656
#line 6780 "sql_yacc.yy"
23654
23657
    {
23655
23658
            LEX *lex=Lex;
23656
23659
            lex->current_select->
23663
23666
  case 995:
23664
23667
 
23665
23668
/* Line 1455 of yacc.c  */
23666
 
#line 6788 "sql_yacc.yy"
 
23669
#line 6793 "sql_yacc.yy"
23667
23670
    {
23668
23671
            THD *thd= YYTHD;
23669
23672
            Item *item= new (thd->mem_root)
23680
23683
  case 996:
23681
23684
 
23682
23685
/* Line 1455 of yacc.c  */
23683
 
#line 6803 "sql_yacc.yy"
 
23686
#line 6808 "sql_yacc.yy"
23684
23687
    {
23685
23688
            THD *thd= YYTHD;
23686
23689
            DBUG_ASSERT((yyvsp[(1) - (4)].simple_string) < (yyvsp[(3) - (4)].simple_string));
23708
23711
  case 997:
23709
23712
 
23710
23713
/* Line 1455 of yacc.c  */
23711
 
#line 6828 "sql_yacc.yy"
 
23714
#line 6833 "sql_yacc.yy"
23712
23715
    {
23713
23716
            (yyval.simple_string)= (char*) YYLIP->get_cpp_tok_start();
23714
23717
          }
23717
23720
  case 998:
23718
23721
 
23719
23722
/* Line 1455 of yacc.c  */
23720
 
#line 6834 "sql_yacc.yy"
 
23723
#line 6839 "sql_yacc.yy"
23721
23724
    {
23722
23725
            (yyval.simple_string)= (char*) YYLIP->get_cpp_tok_end();
23723
23726
          }
23726
23729
  case 999:
23727
23730
 
23728
23731
/* Line 1455 of yacc.c  */
23729
 
#line 6840 "sql_yacc.yy"
 
23732
#line 6845 "sql_yacc.yy"
23730
23733
    { (yyval.item)=(yyvsp[(1) - (1)].item); /* table.* */ }
23731
23734
    break;
23732
23735
 
23733
23736
  case 1000:
23734
23737
 
23735
23738
/* Line 1455 of yacc.c  */
23736
 
#line 6841 "sql_yacc.yy"
 
23739
#line 6846 "sql_yacc.yy"
23737
23740
    { (yyval.item)=(yyvsp[(1) - (1)].item); }
23738
23741
    break;
23739
23742
 
23740
23743
  case 1001:
23741
23744
 
23742
23745
/* Line 1455 of yacc.c  */
23743
 
#line 6845 "sql_yacc.yy"
 
23746
#line 6850 "sql_yacc.yy"
23744
23747
    { (yyval.lex_str)=null_lex_str;}
23745
23748
    break;
23746
23749
 
23747
23750
  case 1002:
23748
23751
 
23749
23752
/* Line 1455 of yacc.c  */
23750
 
#line 6846 "sql_yacc.yy"
 
23753
#line 6851 "sql_yacc.yy"
23751
23754
    { (yyval.lex_str)=(yyvsp[(2) - (2)].lex_str); }
23752
23755
    break;
23753
23756
 
23754
23757
  case 1003:
23755
23758
 
23756
23759
/* Line 1455 of yacc.c  */
23757
 
#line 6847 "sql_yacc.yy"
 
23760
#line 6852 "sql_yacc.yy"
23758
23761
    { (yyval.lex_str)=(yyvsp[(2) - (2)].lex_str); }
23759
23762
    break;
23760
23763
 
23761
23764
  case 1004:
23762
23765
 
23763
23766
/* Line 1455 of yacc.c  */
23764
 
#line 6848 "sql_yacc.yy"
 
23767
#line 6853 "sql_yacc.yy"
23765
23768
    { (yyval.lex_str)=(yyvsp[(1) - (1)].lex_str); }
23766
23769
    break;
23767
23770
 
23768
23771
  case 1005:
23769
23772
 
23770
23773
/* Line 1455 of yacc.c  */
23771
 
#line 6849 "sql_yacc.yy"
 
23774
#line 6854 "sql_yacc.yy"
23772
23775
    { (yyval.lex_str)=(yyvsp[(1) - (1)].lex_str); }
23773
23776
    break;
23774
23777
 
23775
23778
  case 1006:
23776
23779
 
23777
23780
/* Line 1455 of yacc.c  */
23778
 
#line 6853 "sql_yacc.yy"
 
23781
#line 6858 "sql_yacc.yy"
23779
23782
    {}
23780
23783
    break;
23781
23784
 
23782
23785
  case 1007:
23783
23786
 
23784
23787
/* Line 1455 of yacc.c  */
23785
 
#line 6854 "sql_yacc.yy"
 
23788
#line 6859 "sql_yacc.yy"
23786
23789
    {}
23787
23790
    break;
23788
23791
 
23789
23792
  case 1008:
23790
23793
 
23791
23794
/* Line 1455 of yacc.c  */
23792
 
#line 6860 "sql_yacc.yy"
 
23795
#line 6865 "sql_yacc.yy"
23793
23796
    {
23794
23797
            /*
23795
23798
              Design notes:
23845
23848
  case 1009:
23846
23849
 
23847
23850
/* Line 1455 of yacc.c  */
23848
 
#line 6911 "sql_yacc.yy"
 
23851
#line 6916 "sql_yacc.yy"
23849
23852
    {
23850
23853
            /* XOR is a proprietary extension */
23851
23854
            (yyval.item) = new (YYTHD->mem_root) Item_cond_xor((yyvsp[(1) - (3)].item), (yyvsp[(3) - (3)].item));
23857
23860
  case 1010:
23858
23861
 
23859
23862
/* Line 1455 of yacc.c  */
23860
 
#line 6918 "sql_yacc.yy"
 
23863
#line 6923 "sql_yacc.yy"
23861
23864
    {
23862
23865
            /* See comments in rule expr: expr or expr */
23863
23866
            Item_cond_and *item1;
23905
23908
  case 1011:
23906
23909
 
23907
23910
/* Line 1455 of yacc.c  */
23908
 
#line 6961 "sql_yacc.yy"
 
23911
#line 6966 "sql_yacc.yy"
23909
23912
    {
23910
23913
            (yyval.item)= negate_expression(YYTHD, (yyvsp[(2) - (2)].item));
23911
23914
            if ((yyval.item) == NULL)
23916
23919
  case 1012:
23917
23920
 
23918
23921
/* Line 1455 of yacc.c  */
23919
 
#line 6967 "sql_yacc.yy"
 
23922
#line 6972 "sql_yacc.yy"
23920
23923
    {
23921
23924
            (yyval.item)= new (YYTHD->mem_root) Item_func_istrue((yyvsp[(1) - (3)].item));
23922
23925
            if ((yyval.item) == NULL)
23927
23930
  case 1013:
23928
23931
 
23929
23932
/* Line 1455 of yacc.c  */
23930
 
#line 6973 "sql_yacc.yy"
 
23933
#line 6978 "sql_yacc.yy"
23931
23934
    {
23932
23935
            (yyval.item)= new (YYTHD->mem_root) Item_func_isnottrue((yyvsp[(1) - (4)].item));
23933
23936
            if ((yyval.item) == NULL)
23938
23941
  case 1014:
23939
23942
 
23940
23943
/* Line 1455 of yacc.c  */
23941
 
#line 6979 "sql_yacc.yy"
 
23944
#line 6984 "sql_yacc.yy"
23942
23945
    {
23943
23946
            (yyval.item)= new (YYTHD->mem_root) Item_func_isfalse((yyvsp[(1) - (3)].item));
23944
23947
            if ((yyval.item) == NULL)
23949
23952
  case 1015:
23950
23953
 
23951
23954
/* Line 1455 of yacc.c  */
23952
 
#line 6985 "sql_yacc.yy"
 
23955
#line 6990 "sql_yacc.yy"
23953
23956
    {
23954
23957
            (yyval.item)= new (YYTHD->mem_root) Item_func_isnotfalse((yyvsp[(1) - (4)].item));
23955
23958
            if ((yyval.item) == NULL)
23960
23963
  case 1016:
23961
23964
 
23962
23965
/* Line 1455 of yacc.c  */
23963
 
#line 6991 "sql_yacc.yy"
 
23966
#line 6996 "sql_yacc.yy"
23964
23967
    {
23965
23968
            (yyval.item)= new (YYTHD->mem_root) Item_func_isnull((yyvsp[(1) - (3)].item));
23966
23969
            if ((yyval.item) == NULL)
23971
23974
  case 1017:
23972
23975
 
23973
23976
/* Line 1455 of yacc.c  */
23974
 
#line 6997 "sql_yacc.yy"
 
23977
#line 7002 "sql_yacc.yy"
23975
23978
    {
23976
23979
            (yyval.item)= new (YYTHD->mem_root) Item_func_isnotnull((yyvsp[(1) - (4)].item));
23977
23980
            if ((yyval.item) == NULL)
23982
23985
  case 1019:
23983
23986
 
23984
23987
/* Line 1455 of yacc.c  */
23985
 
#line 7007 "sql_yacc.yy"
 
23988
#line 7012 "sql_yacc.yy"
23986
23989
    {
23987
23990
            (yyval.item)= new (YYTHD->mem_root) Item_func_isnull((yyvsp[(1) - (3)].item));
23988
23991
            if ((yyval.item) == NULL)
23993
23996
  case 1020:
23994
23997
 
23995
23998
/* Line 1455 of yacc.c  */
23996
 
#line 7013 "sql_yacc.yy"
 
23999
#line 7018 "sql_yacc.yy"
23997
24000
    {
23998
24001
            (yyval.item)= new (YYTHD->mem_root) Item_func_isnotnull((yyvsp[(1) - (4)].item));
23999
24002
            if ((yyval.item) == NULL)
24004
24007
  case 1021:
24005
24008
 
24006
24009
/* Line 1455 of yacc.c  */
24007
 
#line 7019 "sql_yacc.yy"
 
24010
#line 7024 "sql_yacc.yy"
24008
24011
    {
24009
24012
            (yyval.item)= new (YYTHD->mem_root) Item_func_equal((yyvsp[(1) - (3)].item),(yyvsp[(3) - (3)].item));
24010
24013
            if ((yyval.item) == NULL)
24015
24018
  case 1022:
24016
24019
 
24017
24020
/* Line 1455 of yacc.c  */
24018
 
#line 7025 "sql_yacc.yy"
 
24021
#line 7030 "sql_yacc.yy"
24019
24022
    {
24020
24023
            (yyval.item)= (*(yyvsp[(2) - (3)].boolfunc2creator))(0)->create((yyvsp[(1) - (3)].item),(yyvsp[(3) - (3)].item));
24021
24024
            if ((yyval.item) == NULL)
24026
24029
  case 1023:
24027
24030
 
24028
24031
/* Line 1455 of yacc.c  */
24029
 
#line 7031 "sql_yacc.yy"
 
24032
#line 7036 "sql_yacc.yy"
24030
24033
    {
24031
24034
            (yyval.item)= all_any_subquery_creator((yyvsp[(1) - (6)].item), (yyvsp[(2) - (6)].boolfunc2creator), (yyvsp[(3) - (6)].num), (yyvsp[(5) - (6)].select_lex));
24032
24035
            if ((yyval.item) == NULL)
24037
24040
  case 1025:
24038
24041
 
24039
24042
/* Line 1455 of yacc.c  */
24040
 
#line 7041 "sql_yacc.yy"
 
24043
#line 7046 "sql_yacc.yy"
24041
24044
    {
24042
24045
            (yyval.item)= new (YYTHD->mem_root) Item_in_subselect((yyvsp[(1) - (5)].item), (yyvsp[(4) - (5)].select_lex));
24043
24046
            if ((yyval.item) == NULL)
24048
24051
  case 1026:
24049
24052
 
24050
24053
/* Line 1455 of yacc.c  */
24051
 
#line 7047 "sql_yacc.yy"
 
24054
#line 7052 "sql_yacc.yy"
24052
24055
    {
24053
24056
            THD *thd= YYTHD;
24054
24057
            Item *item= new (thd->mem_root) Item_in_subselect((yyvsp[(1) - (6)].item), (yyvsp[(5) - (6)].select_lex));
24063
24066
  case 1027:
24064
24067
 
24065
24068
/* Line 1455 of yacc.c  */
24066
 
#line 7057 "sql_yacc.yy"
 
24069
#line 7062 "sql_yacc.yy"
24067
24070
    {
24068
24071
            (yyval.item)= handle_sql2003_note184_exception(YYTHD, (yyvsp[(1) - (5)].item), true, (yyvsp[(4) - (5)].item));
24069
24072
            if ((yyval.item) == NULL)
24074
24077
  case 1028:
24075
24078
 
24076
24079
/* Line 1455 of yacc.c  */
24077
 
#line 7063 "sql_yacc.yy"
 
24080
#line 7068 "sql_yacc.yy"
24078
24081
    { 
24079
24082
            (yyvsp[(6) - (7)].item_list)->push_front((yyvsp[(4) - (7)].item));
24080
24083
            (yyvsp[(6) - (7)].item_list)->push_front((yyvsp[(1) - (7)].item));
24087
24090
  case 1029:
24088
24091
 
24089
24092
/* Line 1455 of yacc.c  */
24090
 
#line 7071 "sql_yacc.yy"
 
24093
#line 7076 "sql_yacc.yy"
24091
24094
    {
24092
24095
            (yyval.item)= handle_sql2003_note184_exception(YYTHD, (yyvsp[(1) - (6)].item), false, (yyvsp[(5) - (6)].item));
24093
24096
            if ((yyval.item) == NULL)
24098
24101
  case 1030:
24099
24102
 
24100
24103
/* Line 1455 of yacc.c  */
24101
 
#line 7077 "sql_yacc.yy"
 
24104
#line 7082 "sql_yacc.yy"
24102
24105
    {
24103
24106
            (yyvsp[(7) - (8)].item_list)->push_front((yyvsp[(5) - (8)].item));
24104
24107
            (yyvsp[(7) - (8)].item_list)->push_front((yyvsp[(1) - (8)].item));
24113
24116
  case 1031:
24114
24117
 
24115
24118
/* Line 1455 of yacc.c  */
24116
 
#line 7087 "sql_yacc.yy"
 
24119
#line 7092 "sql_yacc.yy"
24117
24120
    {
24118
24121
            (yyval.item)= new (YYTHD->mem_root) Item_func_between((yyvsp[(1) - (5)].item),(yyvsp[(3) - (5)].item),(yyvsp[(5) - (5)].item));
24119
24122
            if ((yyval.item) == NULL)
24124
24127
  case 1032:
24125
24128
 
24126
24129
/* Line 1455 of yacc.c  */
24127
 
#line 7093 "sql_yacc.yy"
 
24130
#line 7098 "sql_yacc.yy"
24128
24131
    {
24129
24132
            Item_func_between *item;
24130
24133
            item= new (YYTHD->mem_root) Item_func_between((yyvsp[(1) - (6)].item),(yyvsp[(4) - (6)].item),(yyvsp[(6) - (6)].item));
24138
24141
  case 1033:
24139
24142
 
24140
24143
/* Line 1455 of yacc.c  */
24141
 
#line 7102 "sql_yacc.yy"
 
24144
#line 7107 "sql_yacc.yy"
24142
24145
    {
24143
24146
            Item *item1= new (YYTHD->mem_root) Item_func_soundex((yyvsp[(1) - (4)].item));
24144
24147
            Item *item4= new (YYTHD->mem_root) Item_func_soundex((yyvsp[(4) - (4)].item));
24153
24156
  case 1034:
24154
24157
 
24155
24158
/* Line 1455 of yacc.c  */
24156
 
#line 7112 "sql_yacc.yy"
 
24159
#line 7117 "sql_yacc.yy"
24157
24160
    {
24158
24161
            (yyval.item)= new (YYTHD->mem_root) Item_func_like((yyvsp[(1) - (4)].item),(yyvsp[(3) - (4)].item),(yyvsp[(4) - (4)].item),Lex->escape_used);
24159
24162
            if ((yyval.item) == NULL)
24164
24167
  case 1035:
24165
24168
 
24166
24169
/* Line 1455 of yacc.c  */
24167
 
#line 7118 "sql_yacc.yy"
 
24170
#line 7123 "sql_yacc.yy"
24168
24171
    {
24169
24172
            Item *item= new (YYTHD->mem_root) Item_func_like((yyvsp[(1) - (5)].item),(yyvsp[(4) - (5)].item),(yyvsp[(5) - (5)].item),
24170
24173
                                                             Lex->escape_used);
24179
24182
  case 1036:
24180
24183
 
24181
24184
/* Line 1455 of yacc.c  */
24182
 
#line 7128 "sql_yacc.yy"
 
24185
#line 7133 "sql_yacc.yy"
24183
24186
    {
24184
24187
            (yyval.item)= new (YYTHD->mem_root) Item_func_regex((yyvsp[(1) - (3)].item),(yyvsp[(3) - (3)].item));
24185
24188
            if ((yyval.item) == NULL)
24190
24193
  case 1037:
24191
24194
 
24192
24195
/* Line 1455 of yacc.c  */
24193
 
#line 7134 "sql_yacc.yy"
 
24196
#line 7139 "sql_yacc.yy"
24194
24197
    {
24195
24198
            Item *item= new (YYTHD->mem_root) Item_func_regex((yyvsp[(1) - (4)].item),(yyvsp[(4) - (4)].item));
24196
24199
            if (item == NULL)
24204
24207
  case 1039:
24205
24208
 
24206
24209
/* Line 1455 of yacc.c  */
24207
 
#line 7147 "sql_yacc.yy"
 
24210
#line 7152 "sql_yacc.yy"
24208
24211
    {
24209
24212
            (yyval.item)= new (YYTHD->mem_root) Item_func_bit_or((yyvsp[(1) - (3)].item),(yyvsp[(3) - (3)].item));
24210
24213
            if ((yyval.item) == NULL)
24215
24218
  case 1040:
24216
24219
 
24217
24220
/* Line 1455 of yacc.c  */
24218
 
#line 7153 "sql_yacc.yy"
 
24221
#line 7158 "sql_yacc.yy"
24219
24222
    {
24220
24223
            (yyval.item)= new (YYTHD->mem_root) Item_func_bit_and((yyvsp[(1) - (3)].item),(yyvsp[(3) - (3)].item));
24221
24224
            if ((yyval.item) == NULL)
24226
24229
  case 1041:
24227
24230
 
24228
24231
/* Line 1455 of yacc.c  */
24229
 
#line 7159 "sql_yacc.yy"
 
24232
#line 7164 "sql_yacc.yy"
24230
24233
    {
24231
24234
            (yyval.item)= new (YYTHD->mem_root) Item_func_shift_left((yyvsp[(1) - (3)].item),(yyvsp[(3) - (3)].item));
24232
24235
            if ((yyval.item) == NULL)
24237
24240
  case 1042:
24238
24241
 
24239
24242
/* Line 1455 of yacc.c  */
24240
 
#line 7165 "sql_yacc.yy"
 
24243
#line 7170 "sql_yacc.yy"
24241
24244
    {
24242
24245
            (yyval.item)= new (YYTHD->mem_root) Item_func_shift_right((yyvsp[(1) - (3)].item),(yyvsp[(3) - (3)].item));
24243
24246
            if ((yyval.item) == NULL)
24248
24251
  case 1043:
24249
24252
 
24250
24253
/* Line 1455 of yacc.c  */
24251
 
#line 7171 "sql_yacc.yy"
 
24254
#line 7176 "sql_yacc.yy"
24252
24255
    {
24253
24256
            (yyval.item)= new (YYTHD->mem_root) Item_func_plus((yyvsp[(1) - (3)].item),(yyvsp[(3) - (3)].item));
24254
24257
            if ((yyval.item) == NULL)
24259
24262
  case 1044:
24260
24263
 
24261
24264
/* Line 1455 of yacc.c  */
24262
 
#line 7177 "sql_yacc.yy"
 
24265
#line 7182 "sql_yacc.yy"
24263
24266
    {
24264
24267
            (yyval.item)= new (YYTHD->mem_root) Item_func_minus((yyvsp[(1) - (3)].item),(yyvsp[(3) - (3)].item));
24265
24268
            if ((yyval.item) == NULL)
24270
24273
  case 1045:
24271
24274
 
24272
24275
/* Line 1455 of yacc.c  */
24273
 
#line 7183 "sql_yacc.yy"
 
24276
#line 7188 "sql_yacc.yy"
24274
24277
    {
24275
24278
            (yyval.item)= new (YYTHD->mem_root) Item_date_add_interval((yyvsp[(1) - (5)].item),(yyvsp[(4) - (5)].item),(yyvsp[(5) - (5)].interval),0);
24276
24279
            if ((yyval.item) == NULL)
24281
24284
  case 1046:
24282
24285
 
24283
24286
/* Line 1455 of yacc.c  */
24284
 
#line 7189 "sql_yacc.yy"
 
24287
#line 7194 "sql_yacc.yy"
24285
24288
    {
24286
24289
            (yyval.item)= new (YYTHD->mem_root) Item_date_add_interval((yyvsp[(1) - (5)].item),(yyvsp[(4) - (5)].item),(yyvsp[(5) - (5)].interval),1);
24287
24290
            if ((yyval.item) == NULL)
24292
24295
  case 1047:
24293
24296
 
24294
24297
/* Line 1455 of yacc.c  */
24295
 
#line 7195 "sql_yacc.yy"
 
24298
#line 7200 "sql_yacc.yy"
24296
24299
    {
24297
24300
            (yyval.item)= new (YYTHD->mem_root) Item_func_mul((yyvsp[(1) - (3)].item),(yyvsp[(3) - (3)].item));
24298
24301
            if ((yyval.item) == NULL)
24303
24306
  case 1048:
24304
24307
 
24305
24308
/* Line 1455 of yacc.c  */
24306
 
#line 7201 "sql_yacc.yy"
 
24309
#line 7206 "sql_yacc.yy"
24307
24310
    {
24308
24311
            (yyval.item)= new (YYTHD->mem_root) Item_func_div((yyvsp[(1) - (3)].item),(yyvsp[(3) - (3)].item));
24309
24312
            if ((yyval.item) == NULL)
24314
24317
  case 1049:
24315
24318
 
24316
24319
/* Line 1455 of yacc.c  */
24317
 
#line 7207 "sql_yacc.yy"
 
24320
#line 7212 "sql_yacc.yy"
24318
24321
    {
24319
24322
            (yyval.item)= new (YYTHD->mem_root) Item_func_mod((yyvsp[(1) - (3)].item),(yyvsp[(3) - (3)].item));
24320
24323
            if ((yyval.item) == NULL)
24325
24328
  case 1050:
24326
24329
 
24327
24330
/* Line 1455 of yacc.c  */
24328
 
#line 7213 "sql_yacc.yy"
 
24331
#line 7218 "sql_yacc.yy"
24329
24332
    {
24330
24333
            (yyval.item)= new (YYTHD->mem_root) Item_func_int_div((yyvsp[(1) - (3)].item),(yyvsp[(3) - (3)].item));
24331
24334
            if ((yyval.item) == NULL)
24336
24339
  case 1051:
24337
24340
 
24338
24341
/* Line 1455 of yacc.c  */
24339
 
#line 7219 "sql_yacc.yy"
 
24342
#line 7224 "sql_yacc.yy"
24340
24343
    {
24341
24344
            (yyval.item)= new (YYTHD->mem_root) Item_func_mod((yyvsp[(1) - (3)].item),(yyvsp[(3) - (3)].item));
24342
24345
            if ((yyval.item) == NULL)
24347
24350
  case 1052:
24348
24351
 
24349
24352
/* Line 1455 of yacc.c  */
24350
 
#line 7225 "sql_yacc.yy"
 
24353
#line 7230 "sql_yacc.yy"
24351
24354
    {
24352
24355
            (yyval.item)= new (YYTHD->mem_root) Item_func_bit_xor((yyvsp[(1) - (3)].item),(yyvsp[(3) - (3)].item));
24353
24356
            if ((yyval.item) == NULL)
24358
24361
  case 1062:
24359
24362
 
24360
24363
/* Line 1455 of yacc.c  */
24361
 
#line 7254 "sql_yacc.yy"
 
24364
#line 7259 "sql_yacc.yy"
24362
24365
    { (yyval.boolfunc2creator) = &comp_eq_creator; }
24363
24366
    break;
24364
24367
 
24365
24368
  case 1063:
24366
24369
 
24367
24370
/* Line 1455 of yacc.c  */
24368
 
#line 7255 "sql_yacc.yy"
 
24371
#line 7260 "sql_yacc.yy"
24369
24372
    { (yyval.boolfunc2creator) = &comp_ge_creator; }
24370
24373
    break;
24371
24374
 
24372
24375
  case 1064:
24373
24376
 
24374
24377
/* Line 1455 of yacc.c  */
24375
 
#line 7256 "sql_yacc.yy"
 
24378
#line 7261 "sql_yacc.yy"
24376
24379
    { (yyval.boolfunc2creator) = &comp_gt_creator; }
24377
24380
    break;
24378
24381
 
24379
24382
  case 1065:
24380
24383
 
24381
24384
/* Line 1455 of yacc.c  */
24382
 
#line 7257 "sql_yacc.yy"
 
24385
#line 7262 "sql_yacc.yy"
24383
24386
    { (yyval.boolfunc2creator) = &comp_le_creator; }
24384
24387
    break;
24385
24388
 
24386
24389
  case 1066:
24387
24390
 
24388
24391
/* Line 1455 of yacc.c  */
24389
 
#line 7258 "sql_yacc.yy"
 
24392
#line 7263 "sql_yacc.yy"
24390
24393
    { (yyval.boolfunc2creator) = &comp_lt_creator; }
24391
24394
    break;
24392
24395
 
24393
24396
  case 1067:
24394
24397
 
24395
24398
/* Line 1455 of yacc.c  */
24396
 
#line 7259 "sql_yacc.yy"
 
24399
#line 7264 "sql_yacc.yy"
24397
24400
    { (yyval.boolfunc2creator) = &comp_ne_creator; }
24398
24401
    break;
24399
24402
 
24400
24403
  case 1068:
24401
24404
 
24402
24405
/* Line 1455 of yacc.c  */
24403
 
#line 7263 "sql_yacc.yy"
 
24406
#line 7268 "sql_yacc.yy"
24404
24407
    { (yyval.num) = 1; }
24405
24408
    break;
24406
24409
 
24407
24410
  case 1069:
24408
24411
 
24409
24412
/* Line 1455 of yacc.c  */
24410
 
#line 7264 "sql_yacc.yy"
 
24413
#line 7269 "sql_yacc.yy"
24411
24414
    { (yyval.num) = 0; }
24412
24415
    break;
24413
24416
 
24414
24417
  case 1075:
24415
24418
 
24416
24419
/* Line 1455 of yacc.c  */
24417
 
#line 7274 "sql_yacc.yy"
 
24420
#line 7279 "sql_yacc.yy"
24418
24421
    {
24419
24422
            THD *thd= YYTHD;
24420
24423
            Item *i1= new (thd->mem_root) Item_string((yyvsp[(3) - (3)].lex_str).str,
24431
24434
  case 1080:
24432
24435
 
24433
24436
/* Line 1455 of yacc.c  */
24434
 
#line 7290 "sql_yacc.yy"
 
24437
#line 7295 "sql_yacc.yy"
24435
24438
    {
24436
24439
            (yyval.item)= new (YYTHD->mem_root) Item_func_concat((yyvsp[(1) - (3)].item), (yyvsp[(3) - (3)].item));
24437
24440
            if ((yyval.item) == NULL)
24442
24445
  case 1081:
24443
24446
 
24444
24447
/* Line 1455 of yacc.c  */
24445
 
#line 7296 "sql_yacc.yy"
 
24448
#line 7301 "sql_yacc.yy"
24446
24449
    {
24447
24450
            (yyval.item)= (yyvsp[(2) - (2)].item);
24448
24451
          }
24451
24454
  case 1082:
24452
24455
 
24453
24456
/* Line 1455 of yacc.c  */
24454
 
#line 7300 "sql_yacc.yy"
 
24457
#line 7305 "sql_yacc.yy"
24455
24458
    {
24456
24459
            (yyval.item)= new (YYTHD->mem_root) Item_func_neg((yyvsp[(2) - (2)].item));
24457
24460
            if ((yyval.item) == NULL)
24462
24465
  case 1083:
24463
24466
 
24464
24467
/* Line 1455 of yacc.c  */
24465
 
#line 7306 "sql_yacc.yy"
 
24468
#line 7311 "sql_yacc.yy"
24466
24469
    {
24467
24470
            (yyval.item)= new (YYTHD->mem_root) Item_func_bit_neg((yyvsp[(2) - (2)].item));
24468
24471
            if ((yyval.item) == NULL)
24473
24476
  case 1084:
24474
24477
 
24475
24478
/* Line 1455 of yacc.c  */
24476
 
#line 7312 "sql_yacc.yy"
 
24479
#line 7317 "sql_yacc.yy"
24477
24480
    {
24478
24481
            (yyval.item)= negate_expression(YYTHD, (yyvsp[(2) - (2)].item));
24479
24482
            if ((yyval.item) == NULL)
24484
24487
  case 1085:
24485
24488
 
24486
24489
/* Line 1455 of yacc.c  */
24487
 
#line 7318 "sql_yacc.yy"
 
24490
#line 7323 "sql_yacc.yy"
24488
24491
    { 
24489
24492
            (yyval.item)= new (YYTHD->mem_root) Item_singlerow_subselect((yyvsp[(2) - (3)].select_lex));
24490
24493
            if ((yyval.item) == NULL)
24495
24498
  case 1086:
24496
24499
 
24497
24500
/* Line 1455 of yacc.c  */
24498
 
#line 7324 "sql_yacc.yy"
 
24501
#line 7329 "sql_yacc.yy"
24499
24502
    { (yyval.item)= (yyvsp[(2) - (3)].item); }
24500
24503
    break;
24501
24504
 
24502
24505
  case 1087:
24503
24506
 
24504
24507
/* Line 1455 of yacc.c  */
24505
 
#line 7326 "sql_yacc.yy"
 
24508
#line 7331 "sql_yacc.yy"
24506
24509
    {
24507
24510
            (yyvsp[(4) - (5)].item_list)->push_front((yyvsp[(2) - (5)].item));
24508
24511
            (yyval.item)= new (YYTHD->mem_root) Item_row(*(yyvsp[(4) - (5)].item_list));
24514
24517
  case 1088:
24515
24518
 
24516
24519
/* Line 1455 of yacc.c  */
24517
 
#line 7333 "sql_yacc.yy"
 
24520
#line 7338 "sql_yacc.yy"
24518
24521
    {
24519
24522
            (yyvsp[(5) - (6)].item_list)->push_front((yyvsp[(3) - (6)].item));
24520
24523
            (yyval.item)= new (YYTHD->mem_root) Item_row(*(yyvsp[(5) - (6)].item_list));
24526
24529
  case 1089:
24527
24530
 
24528
24531
/* Line 1455 of yacc.c  */
24529
 
#line 7340 "sql_yacc.yy"
 
24532
#line 7345 "sql_yacc.yy"
24530
24533
    {
24531
24534
            (yyval.item)= new (YYTHD->mem_root) Item_exists_subselect((yyvsp[(3) - (4)].select_lex));
24532
24535
            if ((yyval.item) == NULL)
24537
24540
  case 1090:
24538
24541
 
24539
24542
/* Line 1455 of yacc.c  */
24540
 
#line 7346 "sql_yacc.yy"
 
24543
#line 7351 "sql_yacc.yy"
24541
24544
    { (yyval.item)= (yyvsp[(3) - (4)].item); }
24542
24545
    break;
24543
24546
 
24544
24547
  case 1091:
24545
24548
 
24546
24549
/* Line 1455 of yacc.c  */
24547
 
#line 7348 "sql_yacc.yy"
 
24550
#line 7353 "sql_yacc.yy"
24548
24551
    {
24549
24552
            (yyvsp[(2) - (7)].item_list)->push_front((yyvsp[(5) - (7)].item));
24550
24553
            Item_func_match *i1= new (YYTHD->mem_root) Item_func_match(*(yyvsp[(2) - (7)].item_list), (yyvsp[(6) - (7)].num));
24558
24561
  case 1092:
24559
24562
 
24560
24563
/* Line 1455 of yacc.c  */
24561
 
#line 7357 "sql_yacc.yy"
 
24564
#line 7362 "sql_yacc.yy"
24562
24565
    {
24563
24566
            (yyval.item)= create_func_cast(YYTHD, (yyvsp[(2) - (2)].item), ITEM_CAST_CHAR, NULL, NULL,
24564
24567
                                 &my_charset_bin);
24570
24573
  case 1093:
24571
24574
 
24572
24575
/* Line 1455 of yacc.c  */
24573
 
#line 7364 "sql_yacc.yy"
 
24576
#line 7369 "sql_yacc.yy"
24574
24577
    {
24575
24578
            LEX *lex= Lex;
24576
24579
            (yyval.item)= create_func_cast(YYTHD, (yyvsp[(3) - (6)].item), (yyvsp[(5) - (6)].cast_type), lex->length, lex->dec,
24583
24586
  case 1094:
24584
24587
 
24585
24588
/* Line 1455 of yacc.c  */
24586
 
#line 7372 "sql_yacc.yy"
 
24589
#line 7377 "sql_yacc.yy"
24587
24590
    {
24588
24591
            (yyval.item)= new (YYTHD->mem_root) Item_func_case(* (yyvsp[(3) - (5)].item_list), (yyvsp[(2) - (5)].item), (yyvsp[(4) - (5)].item) );
24589
24592
            if ((yyval.item) == NULL)
24594
24597
  case 1095:
24595
24598
 
24596
24599
/* Line 1455 of yacc.c  */
24597
 
#line 7378 "sql_yacc.yy"
 
24600
#line 7383 "sql_yacc.yy"
24598
24601
    {
24599
24602
            (yyval.item)= create_func_cast(YYTHD, (yyvsp[(3) - (6)].item), (yyvsp[(5) - (6)].cast_type), Lex->length, Lex->dec,
24600
24603
                                 Lex->charset);
24606
24609
  case 1096:
24607
24610
 
24608
24611
/* Line 1455 of yacc.c  */
24609
 
#line 7385 "sql_yacc.yy"
 
24612
#line 7390 "sql_yacc.yy"
24610
24613
    {
24611
24614
            (yyval.item)= new (YYTHD->mem_root) Item_func_conv_charset((yyvsp[(3) - (6)].item),(yyvsp[(5) - (6)].charset));
24612
24615
            if ((yyval.item) == NULL)
24617
24620
  case 1097:
24618
24621
 
24619
24622
/* Line 1455 of yacc.c  */
24620
 
#line 7391 "sql_yacc.yy"
 
24623
#line 7396 "sql_yacc.yy"
24621
24624
    {
24622
24625
            if ((yyvsp[(3) - (4)].item)->is_splocal())
24623
24626
            {
24636
24639
  case 1098:
24637
24640
 
24638
24641
/* Line 1455 of yacc.c  */
24639
 
#line 7405 "sql_yacc.yy"
 
24642
#line 7410 "sql_yacc.yy"
24640
24643
    {
24641
24644
            (yyval.item)= new (YYTHD->mem_root) Item_insert_value(Lex->current_context(),
24642
24645
                                                        (yyvsp[(3) - (4)].item));
24648
24651
  case 1099:
24649
24652
 
24650
24653
/* Line 1455 of yacc.c  */
24651
 
#line 7413 "sql_yacc.yy"
 
24654
#line 7418 "sql_yacc.yy"
24652
24655
    {
24653
24656
            (yyval.item)= new (YYTHD->mem_root) Item_date_add_interval((yyvsp[(5) - (5)].item),(yyvsp[(2) - (5)].item),(yyvsp[(3) - (5)].interval),0);
24654
24657
            if ((yyval.item) == NULL)
24659
24662
  case 1100:
24660
24663
 
24661
24664
/* Line 1455 of yacc.c  */
24662
 
#line 7428 "sql_yacc.yy"
 
24665
#line 7433 "sql_yacc.yy"
24663
24666
    {
24664
24667
            (yyval.item)= new (YYTHD->mem_root) Item_func_char(*(yyvsp[(3) - (4)].item_list));
24665
24668
            if ((yyval.item) == NULL)
24670
24673
  case 1101:
24671
24674
 
24672
24675
/* Line 1455 of yacc.c  */
24673
 
#line 7434 "sql_yacc.yy"
 
24676
#line 7439 "sql_yacc.yy"
24674
24677
    {
24675
24678
            (yyval.item)= new (YYTHD->mem_root) Item_func_char(*(yyvsp[(3) - (6)].item_list), (yyvsp[(5) - (6)].charset));
24676
24679
            if ((yyval.item) == NULL)
24681
24684
  case 1102:
24682
24685
 
24683
24686
/* Line 1455 of yacc.c  */
24684
 
#line 7440 "sql_yacc.yy"
 
24687
#line 7445 "sql_yacc.yy"
24685
24688
    {
24686
24689
            (yyval.item)= new (YYTHD->mem_root) Item_func_current_user(Lex->current_context());
24687
24690
            if ((yyval.item) == NULL)
24694
24697
  case 1103:
24695
24698
 
24696
24699
/* Line 1455 of yacc.c  */
24697
 
#line 7448 "sql_yacc.yy"
 
24700
#line 7453 "sql_yacc.yy"
24698
24701
    {
24699
24702
            (yyval.item)= new (YYTHD->mem_root) Item_date_typecast((yyvsp[(3) - (4)].item));
24700
24703
            if ((yyval.item) == NULL)
24705
24708
  case 1104:
24706
24709
 
24707
24710
/* Line 1455 of yacc.c  */
24708
 
#line 7454 "sql_yacc.yy"
 
24711
#line 7459 "sql_yacc.yy"
24709
24712
    {
24710
24713
            (yyval.item)= new (YYTHD->mem_root) Item_func_dayofmonth((yyvsp[(3) - (4)].item));
24711
24714
            if ((yyval.item) == NULL)
24716
24719
  case 1105:
24717
24720
 
24718
24721
/* Line 1455 of yacc.c  */
24719
 
#line 7460 "sql_yacc.yy"
 
24722
#line 7465 "sql_yacc.yy"
24720
24723
    {
24721
24724
            (yyval.item)= new (YYTHD->mem_root) Item_func_hour((yyvsp[(3) - (4)].item));
24722
24725
            if ((yyval.item) == NULL)
24727
24730
  case 1106:
24728
24731
 
24729
24732
/* Line 1455 of yacc.c  */
24730
 
#line 7466 "sql_yacc.yy"
 
24733
#line 7471 "sql_yacc.yy"
24731
24734
    {
24732
24735
            (yyval.item)= new (YYTHD->mem_root) Item_func_insert((yyvsp[(3) - (10)].item),(yyvsp[(5) - (10)].item),(yyvsp[(7) - (10)].item),(yyvsp[(9) - (10)].item));
24733
24736
            if ((yyval.item) == NULL)
24738
24741
  case 1107:
24739
24742
 
24740
24743
/* Line 1455 of yacc.c  */
24741
 
#line 7472 "sql_yacc.yy"
 
24744
#line 7477 "sql_yacc.yy"
24742
24745
    {
24743
24746
            THD *thd= YYTHD;
24744
24747
            List<Item> *list= new (thd->mem_root) List<Item>;
24758
24761
  case 1108:
24759
24762
 
24760
24763
/* Line 1455 of yacc.c  */
24761
 
#line 7487 "sql_yacc.yy"
 
24764
#line 7492 "sql_yacc.yy"
24762
24765
    {
24763
24766
            THD *thd= YYTHD;
24764
24767
            (yyvsp[(7) - (8)].item_list)->push_front((yyvsp[(5) - (8)].item));
24775
24778
  case 1109:
24776
24779
 
24777
24780
/* Line 1455 of yacc.c  */
24778
 
#line 7499 "sql_yacc.yy"
 
24781
#line 7504 "sql_yacc.yy"
24779
24782
    {
24780
24783
            (yyval.item)= new (YYTHD->mem_root) Item_func_left((yyvsp[(3) - (6)].item),(yyvsp[(5) - (6)].item));
24781
24784
            if ((yyval.item) == NULL)
24786
24789
  case 1110:
24787
24790
 
24788
24791
/* Line 1455 of yacc.c  */
24789
 
#line 7505 "sql_yacc.yy"
 
24792
#line 7510 "sql_yacc.yy"
24790
24793
    {
24791
24794
            (yyval.item)= new (YYTHD->mem_root) Item_func_minute((yyvsp[(3) - (4)].item));
24792
24795
            if ((yyval.item) == NULL)
24797
24800
  case 1111:
24798
24801
 
24799
24802
/* Line 1455 of yacc.c  */
24800
 
#line 7511 "sql_yacc.yy"
 
24803
#line 7516 "sql_yacc.yy"
24801
24804
    {
24802
24805
            (yyval.item)= new (YYTHD->mem_root) Item_func_month((yyvsp[(3) - (4)].item));
24803
24806
            if ((yyval.item) == NULL)
24808
24811
  case 1112:
24809
24812
 
24810
24813
/* Line 1455 of yacc.c  */
24811
 
#line 7517 "sql_yacc.yy"
 
24814
#line 7522 "sql_yacc.yy"
24812
24815
    {
24813
24816
            (yyval.item)= new (YYTHD->mem_root) Item_func_right((yyvsp[(3) - (6)].item),(yyvsp[(5) - (6)].item));
24814
24817
            if ((yyval.item) == NULL)
24819
24822
  case 1113:
24820
24823
 
24821
24824
/* Line 1455 of yacc.c  */
24822
 
#line 7523 "sql_yacc.yy"
 
24825
#line 7528 "sql_yacc.yy"
24823
24826
    {
24824
24827
            (yyval.item)= new (YYTHD->mem_root) Item_func_second((yyvsp[(3) - (4)].item));
24825
24828
            if ((yyval.item) == NULL)
24830
24833
  case 1114:
24831
24834
 
24832
24835
/* Line 1455 of yacc.c  */
24833
 
#line 7529 "sql_yacc.yy"
 
24836
#line 7534 "sql_yacc.yy"
24834
24837
    {
24835
24838
            (yyval.item)= new (YYTHD->mem_root) Item_time_typecast((yyvsp[(3) - (4)].item));
24836
24839
            if ((yyval.item) == NULL)
24841
24844
  case 1115:
24842
24845
 
24843
24846
/* Line 1455 of yacc.c  */
24844
 
#line 7535 "sql_yacc.yy"
 
24847
#line 7540 "sql_yacc.yy"
24845
24848
    {
24846
24849
            (yyval.item)= new (YYTHD->mem_root) Item_datetime_typecast((yyvsp[(3) - (4)].item));
24847
24850
            if ((yyval.item) == NULL)
24852
24855
  case 1116:
24853
24856
 
24854
24857
/* Line 1455 of yacc.c  */
24855
 
#line 7541 "sql_yacc.yy"
 
24858
#line 7546 "sql_yacc.yy"
24856
24859
    {
24857
24860
            (yyval.item)= new (YYTHD->mem_root) Item_func_add_time((yyvsp[(3) - (6)].item), (yyvsp[(5) - (6)].item), 1, 0);
24858
24861
            if ((yyval.item) == NULL)
24863
24866
  case 1117:
24864
24867
 
24865
24868
/* Line 1455 of yacc.c  */
24866
 
#line 7547 "sql_yacc.yy"
 
24869
#line 7552 "sql_yacc.yy"
24867
24870
    {
24868
24871
            (yyval.item)= new (YYTHD->mem_root) Item_func_trim((yyvsp[(3) - (4)].item));
24869
24872
            if ((yyval.item) == NULL)
24874
24877
  case 1118:
24875
24878
 
24876
24879
/* Line 1455 of yacc.c  */
24877
 
#line 7553 "sql_yacc.yy"
 
24880
#line 7558 "sql_yacc.yy"
24878
24881
    {
24879
24882
            (yyval.item)= new (YYTHD->mem_root) Item_func_ltrim((yyvsp[(6) - (7)].item),(yyvsp[(4) - (7)].item));
24880
24883
            if ((yyval.item) == NULL)
24885
24888
  case 1119:
24886
24889
 
24887
24890
/* Line 1455 of yacc.c  */
24888
 
#line 7559 "sql_yacc.yy"
 
24891
#line 7564 "sql_yacc.yy"
24889
24892
    {
24890
24893
            (yyval.item)= new (YYTHD->mem_root) Item_func_rtrim((yyvsp[(6) - (7)].item),(yyvsp[(4) - (7)].item));
24891
24894
            if ((yyval.item) == NULL)
24896
24899
  case 1120:
24897
24900
 
24898
24901
/* Line 1455 of yacc.c  */
24899
 
#line 7565 "sql_yacc.yy"
 
24902
#line 7570 "sql_yacc.yy"
24900
24903
    {
24901
24904
            (yyval.item)= new (YYTHD->mem_root) Item_func_trim((yyvsp[(6) - (7)].item),(yyvsp[(4) - (7)].item));
24902
24905
            if ((yyval.item) == NULL)
24907
24910
  case 1121:
24908
24911
 
24909
24912
/* Line 1455 of yacc.c  */
24910
 
#line 7571 "sql_yacc.yy"
 
24913
#line 7576 "sql_yacc.yy"
24911
24914
    {
24912
24915
            (yyval.item)= new (YYTHD->mem_root) Item_func_ltrim((yyvsp[(5) - (6)].item));
24913
24916
            if ((yyval.item) == NULL)
24918
24921
  case 1122:
24919
24922
 
24920
24923
/* Line 1455 of yacc.c  */
24921
 
#line 7577 "sql_yacc.yy"
 
24924
#line 7582 "sql_yacc.yy"
24922
24925
    {
24923
24926
            (yyval.item)= new (YYTHD->mem_root) Item_func_rtrim((yyvsp[(5) - (6)].item));
24924
24927
            if ((yyval.item) == NULL)
24929
24932
  case 1123:
24930
24933
 
24931
24934
/* Line 1455 of yacc.c  */
24932
 
#line 7583 "sql_yacc.yy"
 
24935
#line 7588 "sql_yacc.yy"
24933
24936
    {
24934
24937
            (yyval.item)= new (YYTHD->mem_root) Item_func_trim((yyvsp[(5) - (6)].item));
24935
24938
            if ((yyval.item) == NULL)
24940
24943
  case 1124:
24941
24944
 
24942
24945
/* Line 1455 of yacc.c  */
24943
 
#line 7589 "sql_yacc.yy"
 
24946
#line 7594 "sql_yacc.yy"
24944
24947
    {
24945
24948
            (yyval.item)= new (YYTHD->mem_root) Item_func_trim((yyvsp[(5) - (6)].item),(yyvsp[(3) - (6)].item));
24946
24949
            if ((yyval.item) == NULL)
24951
24954
  case 1125:
24952
24955
 
24953
24956
/* Line 1455 of yacc.c  */
24954
 
#line 7595 "sql_yacc.yy"
 
24957
#line 7600 "sql_yacc.yy"
24955
24958
    {
24956
24959
            (yyval.item)= new (YYTHD->mem_root) Item_func_user();
24957
24960
            if ((yyval.item) == NULL)
24964
24967
  case 1126:
24965
24968
 
24966
24969
/* Line 1455 of yacc.c  */
24967
 
#line 7603 "sql_yacc.yy"
 
24970
#line 7608 "sql_yacc.yy"
24968
24971
    {
24969
24972
            (yyval.item)= new (YYTHD->mem_root) Item_func_year((yyvsp[(3) - (4)].item));
24970
24973
            if ((yyval.item) == NULL)
24975
24978
  case 1127:
24976
24979
 
24977
24980
/* Line 1455 of yacc.c  */
24978
 
#line 7624 "sql_yacc.yy"
 
24981
#line 7629 "sql_yacc.yy"
24979
24982
    {
24980
24983
            (yyval.item)= new (YYTHD->mem_root) Item_date_add_interval((yyvsp[(3) - (6)].item), (yyvsp[(5) - (6)].item),
24981
24984
                                                             INTERVAL_DAY, 0);
24987
24990
  case 1128:
24988
24991
 
24989
24992
/* Line 1455 of yacc.c  */
24990
 
#line 7631 "sql_yacc.yy"
 
24993
#line 7636 "sql_yacc.yy"
24991
24994
    {
24992
24995
            (yyval.item)= new (YYTHD->mem_root) Item_date_add_interval((yyvsp[(3) - (8)].item), (yyvsp[(6) - (8)].item), (yyvsp[(7) - (8)].interval), 0);
24993
24996
            if ((yyval.item) == NULL)
24998
25001
  case 1129:
24999
25002
 
25000
25003
/* Line 1455 of yacc.c  */
25001
 
#line 7637 "sql_yacc.yy"
 
25004
#line 7642 "sql_yacc.yy"
25002
25005
    {
25003
25006
            (yyval.item)= new (YYTHD->mem_root) Item_func_curdate_local();
25004
25007
            if ((yyval.item) == NULL)
25010
25013
  case 1130:
25011
25014
 
25012
25015
/* Line 1455 of yacc.c  */
25013
 
#line 7644 "sql_yacc.yy"
 
25016
#line 7649 "sql_yacc.yy"
25014
25017
    {
25015
25018
            (yyval.item)= new (YYTHD->mem_root) Item_func_curtime_local();
25016
25019
            if ((yyval.item) == NULL)
25022
25025
  case 1131:
25023
25026
 
25024
25027
/* Line 1455 of yacc.c  */
25025
 
#line 7651 "sql_yacc.yy"
 
25028
#line 7656 "sql_yacc.yy"
25026
25029
    {
25027
25030
            (yyval.item)= new (YYTHD->mem_root) Item_func_curtime_local((yyvsp[(3) - (4)].item));
25028
25031
            if ((yyval.item) == NULL)
25034
25037
  case 1132:
25035
25038
 
25036
25039
/* Line 1455 of yacc.c  */
25037
 
#line 7659 "sql_yacc.yy"
 
25040
#line 7664 "sql_yacc.yy"
25038
25041
    {
25039
25042
            (yyval.item)= new (YYTHD->mem_root) Item_date_add_interval((yyvsp[(3) - (8)].item),(yyvsp[(6) - (8)].item),(yyvsp[(7) - (8)].interval),0);
25040
25043
            if ((yyval.item) == NULL)
25045
25048
  case 1133:
25046
25049
 
25047
25050
/* Line 1455 of yacc.c  */
25048
 
#line 7666 "sql_yacc.yy"
 
25051
#line 7671 "sql_yacc.yy"
25049
25052
    {
25050
25053
            (yyval.item)= new (YYTHD->mem_root) Item_date_add_interval((yyvsp[(3) - (8)].item),(yyvsp[(6) - (8)].item),(yyvsp[(7) - (8)].interval),1);
25051
25054
            if ((yyval.item) == NULL)
25056
25059
  case 1134:
25057
25060
 
25058
25061
/* Line 1455 of yacc.c  */
25059
 
#line 7672 "sql_yacc.yy"
 
25062
#line 7677 "sql_yacc.yy"
25060
25063
    {
25061
25064
            (yyval.item)=new (YYTHD->mem_root) Item_extract( (yyvsp[(3) - (6)].interval), (yyvsp[(5) - (6)].item));
25062
25065
            if ((yyval.item) == NULL)
25067
25070
  case 1135:
25068
25071
 
25069
25072
/* Line 1455 of yacc.c  */
25070
 
#line 7678 "sql_yacc.yy"
 
25073
#line 7683 "sql_yacc.yy"
25071
25074
    {
25072
25075
            (yyval.item)= new (YYTHD->mem_root) Item_func_get_format((yyvsp[(3) - (6)].date_time_type), (yyvsp[(5) - (6)].item));
25073
25076
            if ((yyval.item) == NULL)
25078
25081
  case 1136:
25079
25082
 
25080
25083
/* Line 1455 of yacc.c  */
25081
 
#line 7684 "sql_yacc.yy"
 
25084
#line 7689 "sql_yacc.yy"
25082
25085
    {
25083
25086
            (yyval.item)= new (YYTHD->mem_root) Item_func_now_local();
25084
25087
            if ((yyval.item) == NULL)
25090
25093
  case 1137:
25091
25094
 
25092
25095
/* Line 1455 of yacc.c  */
25093
 
#line 7691 "sql_yacc.yy"
 
25096
#line 7696 "sql_yacc.yy"
25094
25097
    {
25095
25098
            (yyval.item)= new (YYTHD->mem_root) Item_func_now_local((yyvsp[(3) - (4)].item));
25096
25099
            if ((yyval.item) == NULL)
25102
25105
  case 1138:
25103
25106
 
25104
25107
/* Line 1455 of yacc.c  */
25105
 
#line 7698 "sql_yacc.yy"
 
25108
#line 7703 "sql_yacc.yy"
25106
25109
    {
25107
25110
            (yyval.item) = new (YYTHD->mem_root) Item_func_locate((yyvsp[(5) - (6)].item),(yyvsp[(3) - (6)].item));
25108
25111
            if ((yyval.item) == NULL)
25113
25116
  case 1139:
25114
25117
 
25115
25118
/* Line 1455 of yacc.c  */
25116
 
#line 7704 "sql_yacc.yy"
 
25119
#line 7709 "sql_yacc.yy"
25117
25120
    {
25118
25121
            (yyval.item)= new (YYTHD->mem_root) Item_date_add_interval((yyvsp[(3) - (6)].item), (yyvsp[(5) - (6)].item),
25119
25122
                                                             INTERVAL_DAY, 1);
25125
25128
  case 1140:
25126
25129
 
25127
25130
/* Line 1455 of yacc.c  */
25128
 
#line 7711 "sql_yacc.yy"
 
25131
#line 7716 "sql_yacc.yy"
25129
25132
    {
25130
25133
            (yyval.item)= new (YYTHD->mem_root) Item_date_add_interval((yyvsp[(3) - (8)].item), (yyvsp[(6) - (8)].item), (yyvsp[(7) - (8)].interval), 1);
25131
25134
            if ((yyval.item) == NULL)
25136
25139
  case 1141:
25137
25140
 
25138
25141
/* Line 1455 of yacc.c  */
25139
 
#line 7717 "sql_yacc.yy"
 
25142
#line 7722 "sql_yacc.yy"
25140
25143
    {
25141
25144
            (yyval.item)= new (YYTHD->mem_root) Item_func_substr((yyvsp[(3) - (8)].item),(yyvsp[(5) - (8)].item),(yyvsp[(7) - (8)].item));
25142
25145
            if ((yyval.item) == NULL)
25147
25150
  case 1142:
25148
25151
 
25149
25152
/* Line 1455 of yacc.c  */
25150
 
#line 7723 "sql_yacc.yy"
 
25153
#line 7728 "sql_yacc.yy"
25151
25154
    {
25152
25155
            (yyval.item)= new (YYTHD->mem_root) Item_func_substr((yyvsp[(3) - (6)].item),(yyvsp[(5) - (6)].item));
25153
25156
            if ((yyval.item) == NULL)
25158
25161
  case 1143:
25159
25162
 
25160
25163
/* Line 1455 of yacc.c  */
25161
 
#line 7729 "sql_yacc.yy"
 
25164
#line 7734 "sql_yacc.yy"
25162
25165
    {
25163
25166
            (yyval.item)= new (YYTHD->mem_root) Item_func_substr((yyvsp[(3) - (8)].item),(yyvsp[(5) - (8)].item),(yyvsp[(7) - (8)].item));
25164
25167
            if ((yyval.item) == NULL)
25169
25172
  case 1144:
25170
25173
 
25171
25174
/* Line 1455 of yacc.c  */
25172
 
#line 7735 "sql_yacc.yy"
 
25175
#line 7740 "sql_yacc.yy"
25173
25176
    {
25174
25177
            (yyval.item)= new (YYTHD->mem_root) Item_func_substr((yyvsp[(3) - (6)].item),(yyvsp[(5) - (6)].item));
25175
25178
            if ((yyval.item) == NULL)
25180
25183
  case 1145:
25181
25184
 
25182
25185
/* Line 1455 of yacc.c  */
25183
 
#line 7741 "sql_yacc.yy"
 
25186
#line 7746 "sql_yacc.yy"
25184
25187
    {
25185
25188
            /*
25186
25189
              Unlike other time-related functions, SYSDATE() is
25203
25206
  case 1146:
25204
25207
 
25205
25208
/* Line 1455 of yacc.c  */
25206
 
#line 7759 "sql_yacc.yy"
 
25209
#line 7764 "sql_yacc.yy"
25207
25210
    {
25208
25211
            if (global_system_variables.sysdate_is_now == 0)
25209
25212
              (yyval.item)= new (YYTHD->mem_root) Item_func_sysdate_local((yyvsp[(3) - (4)].item));
25218
25221
  case 1147:
25219
25222
 
25220
25223
/* Line 1455 of yacc.c  */
25221
 
#line 7769 "sql_yacc.yy"
 
25224
#line 7774 "sql_yacc.yy"
25222
25225
    {
25223
25226
            (yyval.item)= new (YYTHD->mem_root) Item_date_add_interval((yyvsp[(7) - (8)].item),(yyvsp[(5) - (8)].item),(yyvsp[(3) - (8)].interval_time_st),0);
25224
25227
            if ((yyval.item) == NULL)
25229
25232
  case 1148:
25230
25233
 
25231
25234
/* Line 1455 of yacc.c  */
25232
 
#line 7775 "sql_yacc.yy"
 
25235
#line 7780 "sql_yacc.yy"
25233
25236
    {
25234
25237
            (yyval.item)= new (YYTHD->mem_root) Item_func_timestamp_diff((yyvsp[(5) - (8)].item),(yyvsp[(7) - (8)].item),(yyvsp[(3) - (8)].interval_time_st));
25235
25238
            if ((yyval.item) == NULL)
25240
25243
  case 1149:
25241
25244
 
25242
25245
/* Line 1455 of yacc.c  */
25243
 
#line 7781 "sql_yacc.yy"
 
25246
#line 7786 "sql_yacc.yy"
25244
25247
    {
25245
25248
            (yyval.item)= new (YYTHD->mem_root) Item_func_curdate_utc();
25246
25249
            if ((yyval.item) == NULL)
25252
25255
  case 1150:
25253
25256
 
25254
25257
/* Line 1455 of yacc.c  */
25255
 
#line 7788 "sql_yacc.yy"
 
25258
#line 7793 "sql_yacc.yy"
25256
25259
    {
25257
25260
            (yyval.item)= new (YYTHD->mem_root) Item_func_curtime_utc();
25258
25261
            if ((yyval.item) == NULL)
25264
25267
  case 1151:
25265
25268
 
25266
25269
/* Line 1455 of yacc.c  */
25267
 
#line 7795 "sql_yacc.yy"
 
25270
#line 7800 "sql_yacc.yy"
25268
25271
    {
25269
25272
            (yyval.item)= new (YYTHD->mem_root) Item_func_now_utc();
25270
25273
            if ((yyval.item) == NULL)
25276
25279
  case 1152:
25277
25280
 
25278
25281
/* Line 1455 of yacc.c  */
25279
 
#line 7810 "sql_yacc.yy"
 
25282
#line 7815 "sql_yacc.yy"
25280
25283
    {
25281
25284
            (yyval.item)= new (YYTHD->mem_root) Item_func_ascii((yyvsp[(3) - (4)].item));
25282
25285
            if ((yyval.item) == NULL)
25287
25290
  case 1153:
25288
25291
 
25289
25292
/* Line 1455 of yacc.c  */
25290
 
#line 7816 "sql_yacc.yy"
 
25293
#line 7821 "sql_yacc.yy"
25291
25294
    {
25292
25295
            (yyval.item)= new (YYTHD->mem_root) Item_func_charset((yyvsp[(3) - (4)].item));
25293
25296
            if ((yyval.item) == NULL)
25298
25301
  case 1154:
25299
25302
 
25300
25303
/* Line 1455 of yacc.c  */
25301
 
#line 7822 "sql_yacc.yy"
 
25304
#line 7827 "sql_yacc.yy"
25302
25305
    {
25303
25306
            (yyval.item)= new (YYTHD->mem_root) Item_func_coalesce(* (yyvsp[(3) - (4)].item_list));
25304
25307
            if ((yyval.item) == NULL)
25309
25312
  case 1155:
25310
25313
 
25311
25314
/* Line 1455 of yacc.c  */
25312
 
#line 7828 "sql_yacc.yy"
 
25315
#line 7833 "sql_yacc.yy"
25313
25316
    {
25314
25317
            (yyval.item)= new (YYTHD->mem_root) Item_func_collation((yyvsp[(3) - (4)].item));
25315
25318
            if ((yyval.item) == NULL)
25320
25323
  case 1156:
25321
25324
 
25322
25325
/* Line 1455 of yacc.c  */
25323
 
#line 7834 "sql_yacc.yy"
 
25326
#line 7839 "sql_yacc.yy"
25324
25327
    {
25325
25328
            (yyval.item)= new (YYTHD->mem_root) Item_func_database();
25326
25329
            if ((yyval.item) == NULL)
25332
25335
  case 1157:
25333
25336
 
25334
25337
/* Line 1455 of yacc.c  */
25335
 
#line 7841 "sql_yacc.yy"
 
25338
#line 7846 "sql_yacc.yy"
25336
25339
    {
25337
25340
            (yyval.item)= new (YYTHD->mem_root) Item_func_if((yyvsp[(3) - (8)].item),(yyvsp[(5) - (8)].item),(yyvsp[(7) - (8)].item));
25338
25341
            if ((yyval.item) == NULL)
25343
25346
  case 1158:
25344
25347
 
25345
25348
/* Line 1455 of yacc.c  */
25346
 
#line 7847 "sql_yacc.yy"
 
25349
#line 7852 "sql_yacc.yy"
25347
25350
    {
25348
25351
            (yyval.item)= new (YYTHD->mem_root) Item_func_microsecond((yyvsp[(3) - (4)].item));
25349
25352
            if ((yyval.item) == NULL)
25354
25357
  case 1159:
25355
25358
 
25356
25359
/* Line 1455 of yacc.c  */
25357
 
#line 7853 "sql_yacc.yy"
 
25360
#line 7858 "sql_yacc.yy"
25358
25361
    {
25359
25362
            (yyval.item) = new (YYTHD->mem_root) Item_func_mod((yyvsp[(3) - (6)].item), (yyvsp[(5) - (6)].item));
25360
25363
            if ((yyval.item) == NULL)
25365
25368
  case 1160:
25366
25369
 
25367
25370
/* Line 1455 of yacc.c  */
25368
 
#line 7859 "sql_yacc.yy"
 
25371
#line 7864 "sql_yacc.yy"
25369
25372
    {
25370
25373
            (yyval.item)=  new (YYTHD->mem_root) Item_func_old_password((yyvsp[(3) - (4)].item));
25371
25374
            if ((yyval.item) == NULL)
25376
25379
  case 1161:
25377
25380
 
25378
25381
/* Line 1455 of yacc.c  */
25379
 
#line 7865 "sql_yacc.yy"
 
25382
#line 7870 "sql_yacc.yy"
25380
25383
    {
25381
25384
            THD *thd= YYTHD;
25382
25385
            Item* i1;
25393
25396
  case 1162:
25394
25397
 
25395
25398
/* Line 1455 of yacc.c  */
25396
 
#line 7877 "sql_yacc.yy"
 
25399
#line 7882 "sql_yacc.yy"
25397
25400
    {
25398
25401
            (yyval.item) = new (YYTHD->mem_root) Item_func_quarter((yyvsp[(3) - (4)].item));
25399
25402
            if ((yyval.item) == NULL)
25404
25407
  case 1163:
25405
25408
 
25406
25409
/* Line 1455 of yacc.c  */
25407
 
#line 7883 "sql_yacc.yy"
 
25410
#line 7888 "sql_yacc.yy"
25408
25411
    {
25409
25412
            (yyval.item)= new (YYTHD->mem_root) Item_func_repeat((yyvsp[(3) - (6)].item),(yyvsp[(5) - (6)].item));
25410
25413
            if ((yyval.item) == NULL)
25415
25418
  case 1164:
25416
25419
 
25417
25420
/* Line 1455 of yacc.c  */
25418
 
#line 7889 "sql_yacc.yy"
 
25421
#line 7894 "sql_yacc.yy"
25419
25422
    {
25420
25423
            (yyval.item)= new (YYTHD->mem_root) Item_func_replace((yyvsp[(3) - (8)].item),(yyvsp[(5) - (8)].item),(yyvsp[(7) - (8)].item));
25421
25424
            if ((yyval.item) == NULL)
25426
25429
  case 1165:
25427
25430
 
25428
25431
/* Line 1455 of yacc.c  */
25429
 
#line 7895 "sql_yacc.yy"
 
25432
#line 7900 "sql_yacc.yy"
25430
25433
    {
25431
25434
            (yyval.item)= new (YYTHD->mem_root) Item_func_round((yyvsp[(3) - (6)].item),(yyvsp[(5) - (6)].item),1);
25432
25435
            if ((yyval.item) == NULL)
25437
25440
  case 1166:
25438
25441
 
25439
25442
/* Line 1455 of yacc.c  */
25440
 
#line 7901 "sql_yacc.yy"
 
25443
#line 7906 "sql_yacc.yy"
25441
25444
    {
25442
25445
            THD *thd= YYTHD;
25443
25446
            Item *i1= new (thd->mem_root) Item_int((char*) "0",
25454
25457
  case 1167:
25455
25458
 
25456
25459
/* Line 1455 of yacc.c  */
25457
 
#line 7913 "sql_yacc.yy"
 
25460
#line 7918 "sql_yacc.yy"
25458
25461
    {
25459
25462
            (yyval.item)= new (YYTHD->mem_root) Item_func_week((yyvsp[(3) - (6)].item),(yyvsp[(5) - (6)].item));
25460
25463
            if ((yyval.item) == NULL)
25465
25468
  case 1168:
25466
25469
 
25467
25470
/* Line 1455 of yacc.c  */
25468
 
#line 7919 "sql_yacc.yy"
 
25471
#line 7924 "sql_yacc.yy"
25469
25472
    {
25470
25473
#ifdef HAVE_SPATIAL
25471
25474
            (yyval.item)= (yyvsp[(1) - (1)].item);
25483
25486
  case 1169:
25484
25487
 
25485
25488
/* Line 1455 of yacc.c  */
25486
 
#line 7935 "sql_yacc.yy"
 
25489
#line 7940 "sql_yacc.yy"
25487
25490
    {
25488
25491
            (yyval.item)= GEOM_NEW(YYTHD,
25489
25492
                         Item_func_spatial_rel((yyvsp[(3) - (6)].item), (yyvsp[(5) - (6)].item),
25494
25497
  case 1170:
25495
25498
 
25496
25499
/* Line 1455 of yacc.c  */
25497
 
#line 7941 "sql_yacc.yy"
 
25500
#line 7946 "sql_yacc.yy"
25498
25501
    {
25499
25502
            (yyval.item)= GEOM_NEW(YYTHD,
25500
25503
                         Item_func_spatial_collection(* (yyvsp[(3) - (4)].item_list),
25506
25509
  case 1171:
25507
25510
 
25508
25511
/* Line 1455 of yacc.c  */
25509
 
#line 7948 "sql_yacc.yy"
 
25512
#line 7953 "sql_yacc.yy"
25510
25513
    {
25511
25514
            (yyval.item)= GEOM_NEW(YYTHD,
25512
25515
                         Item_func_spatial_collection(* (yyvsp[(3) - (4)].item_list),
25518
25521
  case 1172:
25519
25522
 
25520
25523
/* Line 1455 of yacc.c  */
25521
 
#line 7955 "sql_yacc.yy"
 
25524
#line 7960 "sql_yacc.yy"
25522
25525
    {
25523
25526
            (yyval.item)= GEOM_NEW(YYTHD,
25524
25527
                         Item_func_spatial_collection(* (yyvsp[(3) - (4)].item_list),
25530
25533
  case 1173:
25531
25534
 
25532
25535
/* Line 1455 of yacc.c  */
25533
 
#line 7962 "sql_yacc.yy"
 
25536
#line 7967 "sql_yacc.yy"
25534
25537
    {
25535
25538
            (yyval.item)= GEOM_NEW(YYTHD,
25536
25539
                         Item_func_spatial_collection(* (yyvsp[(3) - (4)].item_list),
25542
25545
  case 1174:
25543
25546
 
25544
25547
/* Line 1455 of yacc.c  */
25545
 
#line 7969 "sql_yacc.yy"
 
25548
#line 7974 "sql_yacc.yy"
25546
25549
    {
25547
25550
            (yyval.item)= GEOM_NEW(YYTHD,
25548
25551
                         Item_func_spatial_collection(* (yyvsp[(3) - (4)].item_list),
25554
25557
  case 1175:
25555
25558
 
25556
25559
/* Line 1455 of yacc.c  */
25557
 
#line 7976 "sql_yacc.yy"
 
25560
#line 7981 "sql_yacc.yy"
25558
25561
    {
25559
25562
            (yyval.item)= GEOM_NEW(YYTHD, Item_func_point((yyvsp[(3) - (6)].item),(yyvsp[(5) - (6)].item)));
25560
25563
          }
25563
25566
  case 1176:
25564
25567
 
25565
25568
/* Line 1455 of yacc.c  */
25566
 
#line 7980 "sql_yacc.yy"
 
25569
#line 7985 "sql_yacc.yy"
25567
25570
    {
25568
25571
            (yyval.item)= GEOM_NEW(YYTHD,
25569
25572
                         Item_func_spatial_collection(* (yyvsp[(3) - (4)].item_list),
25575
25578
  case 1177:
25576
25579
 
25577
25580
/* Line 1455 of yacc.c  */
25578
 
#line 7999 "sql_yacc.yy"
 
25581
#line 8004 "sql_yacc.yy"
25579
25582
    {
25580
25583
#ifdef HAVE_DLOPEN
25581
25584
            udf_func *udf= 0;
25599
25602
  case 1178:
25600
25603
 
25601
25604
/* Line 1455 of yacc.c  */
25602
 
#line 8018 "sql_yacc.yy"
 
25605
#line 8023 "sql_yacc.yy"
25603
25606
    {
25604
25607
            THD *thd= YYTHD;
25605
25608
            Create_func *builder;
25606
25609
            Item *item= NULL;
25607
25610
 
 
25611
            if (check_routine_name(&(yyvsp[(1) - (5)].lex_str)))
 
25612
            {
 
25613
              MYSQL_YYABORT;
 
25614
            }
 
25615
 
25608
25616
            /*
25609
25617
              Implementation note:
25610
25618
              names are resolved with the following order:
25653
25661
  case 1179:
25654
25662
 
25655
25663
/* Line 1455 of yacc.c  */
25656
 
#line 8067 "sql_yacc.yy"
 
25664
#line 8077 "sql_yacc.yy"
25657
25665
    {
25658
25666
            THD *thd= YYTHD;
25659
25667
            Create_qfunc *builder;
25673
25681
              version() (a vendor can specify any schema).
25674
25682
            */
25675
25683
 
 
25684
            if (!(yyvsp[(1) - (6)].lex_str).str || check_db_name(&(yyvsp[(1) - (6)].lex_str)))
 
25685
            {
 
25686
              my_error(ER_WRONG_DB_NAME, MYF(0), (yyvsp[(1) - (6)].lex_str).str);
 
25687
              MYSQL_YYABORT;
 
25688
            }
 
25689
            if (check_routine_name(&(yyvsp[(3) - (6)].lex_str)))
 
25690
            {
 
25691
              MYSQL_YYABORT;
 
25692
            }
 
25693
 
25676
25694
            builder= find_qualified_function_builder(thd);
25677
25695
            DBUG_ASSERT(builder);
25678
25696
            item= builder->create(thd, (yyvsp[(1) - (6)].lex_str), (yyvsp[(3) - (6)].lex_str), true, (yyvsp[(5) - (6)].item_list));
25687
25705
  case 1180:
25688
25706
 
25689
25707
/* Line 1455 of yacc.c  */
25690
 
#line 8099 "sql_yacc.yy"
 
25708
#line 8119 "sql_yacc.yy"
25691
25709
    { (yyval.num)= (yyvsp[(1) - (2)].num) | (yyvsp[(2) - (2)].num); }
25692
25710
    break;
25693
25711
 
25694
25712
  case 1181:
25695
25713
 
25696
25714
/* Line 1455 of yacc.c  */
25697
 
#line 8101 "sql_yacc.yy"
 
25715
#line 8121 "sql_yacc.yy"
25698
25716
    { (yyval.num)= FT_BOOL; }
25699
25717
    break;
25700
25718
 
25701
25719
  case 1182:
25702
25720
 
25703
25721
/* Line 1455 of yacc.c  */
25704
 
#line 8105 "sql_yacc.yy"
 
25722
#line 8125 "sql_yacc.yy"
25705
25723
    { (yyval.num)= FT_NL; }
25706
25724
    break;
25707
25725
 
25708
25726
  case 1183:
25709
25727
 
25710
25728
/* Line 1455 of yacc.c  */
25711
 
#line 8106 "sql_yacc.yy"
 
25729
#line 8126 "sql_yacc.yy"
25712
25730
    { (yyval.num)= FT_NL; }
25713
25731
    break;
25714
25732
 
25715
25733
  case 1184:
25716
25734
 
25717
25735
/* Line 1455 of yacc.c  */
25718
 
#line 8110 "sql_yacc.yy"
 
25736
#line 8130 "sql_yacc.yy"
25719
25737
    { (yyval.num)= 0;         }
25720
25738
    break;
25721
25739
 
25722
25740
  case 1185:
25723
25741
 
25724
25742
/* Line 1455 of yacc.c  */
25725
 
#line 8111 "sql_yacc.yy"
 
25743
#line 8131 "sql_yacc.yy"
25726
25744
    { (yyval.num)= FT_EXPAND; }
25727
25745
    break;
25728
25746
 
25729
25747
  case 1186:
25730
25748
 
25731
25749
/* Line 1455 of yacc.c  */
25732
 
#line 8115 "sql_yacc.yy"
 
25750
#line 8135 "sql_yacc.yy"
25733
25751
    { (yyval.item_list)= NULL; }
25734
25752
    break;
25735
25753
 
25736
25754
  case 1187:
25737
25755
 
25738
25756
/* Line 1455 of yacc.c  */
25739
 
#line 8116 "sql_yacc.yy"
 
25757
#line 8136 "sql_yacc.yy"
25740
25758
    { (yyval.item_list)= (yyvsp[(1) - (1)].item_list); }
25741
25759
    break;
25742
25760
 
25743
25761
  case 1188:
25744
25762
 
25745
25763
/* Line 1455 of yacc.c  */
25746
 
#line 8121 "sql_yacc.yy"
 
25764
#line 8141 "sql_yacc.yy"
25747
25765
    {
25748
25766
            (yyval.item_list)= new (YYTHD->mem_root) List<Item>;
25749
25767
            if ((yyval.item_list) == NULL)
25755
25773
  case 1189:
25756
25774
 
25757
25775
/* Line 1455 of yacc.c  */
25758
 
#line 8128 "sql_yacc.yy"
 
25776
#line 8148 "sql_yacc.yy"
25759
25777
    {
25760
25778
            (yyvsp[(1) - (3)].item_list)->push_back((yyvsp[(3) - (3)].item));
25761
25779
            (yyval.item_list)= (yyvsp[(1) - (3)].item_list);
25765
25783
  case 1190:
25766
25784
 
25767
25785
/* Line 1455 of yacc.c  */
25768
 
#line 8136 "sql_yacc.yy"
 
25786
#line 8156 "sql_yacc.yy"
25769
25787
    {
25770
25788
            /*
25771
25789
             Use Item::name as a storage for the attribute value of user
25793
25811
  case 1191:
25794
25812
 
25795
25813
/* Line 1455 of yacc.c  */
25796
 
#line 8162 "sql_yacc.yy"
 
25814
#line 8182 "sql_yacc.yy"
25797
25815
    {
25798
25816
            (yyval.item)= new (YYTHD->mem_root) Item_sum_avg((yyvsp[(3) - (4)].item));
25799
25817
            if ((yyval.item) == NULL)
25804
25822
  case 1192:
25805
25823
 
25806
25824
/* Line 1455 of yacc.c  */
25807
 
#line 8168 "sql_yacc.yy"
 
25825
#line 8188 "sql_yacc.yy"
25808
25826
    {
25809
25827
            (yyval.item)= new (YYTHD->mem_root) Item_sum_avg_distinct((yyvsp[(4) - (5)].item));
25810
25828
            if ((yyval.item) == NULL)
25815
25833
  case 1193:
25816
25834
 
25817
25835
/* Line 1455 of yacc.c  */
25818
 
#line 8174 "sql_yacc.yy"
 
25836
#line 8194 "sql_yacc.yy"
25819
25837
    {
25820
25838
            (yyval.item)= new (YYTHD->mem_root) Item_sum_and((yyvsp[(3) - (4)].item));
25821
25839
            if ((yyval.item) == NULL)
25826
25844
  case 1194:
25827
25845
 
25828
25846
/* Line 1455 of yacc.c  */
25829
 
#line 8180 "sql_yacc.yy"
 
25847
#line 8200 "sql_yacc.yy"
25830
25848
    {
25831
25849
            (yyval.item)= new (YYTHD->mem_root) Item_sum_or((yyvsp[(3) - (4)].item));
25832
25850
            if ((yyval.item) == NULL)
25837
25855
  case 1195:
25838
25856
 
25839
25857
/* Line 1455 of yacc.c  */
25840
 
#line 8186 "sql_yacc.yy"
 
25858
#line 8206 "sql_yacc.yy"
25841
25859
    {
25842
25860
            (yyval.item)= new (YYTHD->mem_root) Item_sum_xor((yyvsp[(3) - (4)].item));
25843
25861
            if ((yyval.item) == NULL)
25848
25866
  case 1196:
25849
25867
 
25850
25868
/* Line 1455 of yacc.c  */
25851
 
#line 8192 "sql_yacc.yy"
 
25869
#line 8212 "sql_yacc.yy"
25852
25870
    {
25853
25871
            Item *item= new (YYTHD->mem_root) Item_int((int32) 0L,1);
25854
25872
            if (item == NULL)
25862
25880
  case 1197:
25863
25881
 
25864
25882
/* Line 1455 of yacc.c  */
25865
 
#line 8201 "sql_yacc.yy"
 
25883
#line 8221 "sql_yacc.yy"
25866
25884
    {
25867
25885
            (yyval.item)= new (YYTHD->mem_root) Item_sum_count((yyvsp[(3) - (4)].item));
25868
25886
            if ((yyval.item) == NULL)
25873
25891
  case 1198:
25874
25892
 
25875
25893
/* Line 1455 of yacc.c  */
25876
 
#line 8207 "sql_yacc.yy"
 
25894
#line 8227 "sql_yacc.yy"
25877
25895
    { Select->in_sum_expr++; }
25878
25896
    break;
25879
25897
 
25880
25898
  case 1199:
25881
25899
 
25882
25900
/* Line 1455 of yacc.c  */
25883
 
#line 8209 "sql_yacc.yy"
 
25901
#line 8229 "sql_yacc.yy"
25884
25902
    { Select->in_sum_expr--; }
25885
25903
    break;
25886
25904
 
25887
25905
  case 1200:
25888
25906
 
25889
25907
/* Line 1455 of yacc.c  */
25890
 
#line 8211 "sql_yacc.yy"
 
25908
#line 8231 "sql_yacc.yy"
25891
25909
    {
25892
25910
            (yyval.item)= new (YYTHD->mem_root) Item_sum_count_distinct(* (yyvsp[(5) - (7)].item_list));
25893
25911
            if ((yyval.item) == NULL)
25898
25916
  case 1201:
25899
25917
 
25900
25918
/* Line 1455 of yacc.c  */
25901
 
#line 8217 "sql_yacc.yy"
 
25919
#line 8237 "sql_yacc.yy"
25902
25920
    {
25903
25921
            (yyval.item)= new (YYTHD->mem_root) Item_sum_min((yyvsp[(3) - (4)].item));
25904
25922
            if ((yyval.item) == NULL)
25909
25927
  case 1202:
25910
25928
 
25911
25929
/* Line 1455 of yacc.c  */
25912
 
#line 8228 "sql_yacc.yy"
 
25930
#line 8248 "sql_yacc.yy"
25913
25931
    {
25914
25932
            (yyval.item)= new (YYTHD->mem_root) Item_sum_min((yyvsp[(4) - (5)].item));
25915
25933
            if ((yyval.item) == NULL)
25920
25938
  case 1203:
25921
25939
 
25922
25940
/* Line 1455 of yacc.c  */
25923
 
#line 8234 "sql_yacc.yy"
 
25941
#line 8254 "sql_yacc.yy"
25924
25942
    {
25925
25943
            (yyval.item)= new (YYTHD->mem_root) Item_sum_max((yyvsp[(3) - (4)].item));
25926
25944
            if ((yyval.item) == NULL)
25931
25949
  case 1204:
25932
25950
 
25933
25951
/* Line 1455 of yacc.c  */
25934
 
#line 8240 "sql_yacc.yy"
 
25952
#line 8260 "sql_yacc.yy"
25935
25953
    {
25936
25954
            (yyval.item)= new (YYTHD->mem_root) Item_sum_max((yyvsp[(4) - (5)].item));
25937
25955
            if ((yyval.item) == NULL)
25942
25960
  case 1205:
25943
25961
 
25944
25962
/* Line 1455 of yacc.c  */
25945
 
#line 8246 "sql_yacc.yy"
 
25963
#line 8266 "sql_yacc.yy"
25946
25964
    {
25947
25965
            (yyval.item)= new (YYTHD->mem_root) Item_sum_std((yyvsp[(3) - (4)].item), 0);
25948
25966
            if ((yyval.item) == NULL)
25953
25971
  case 1206:
25954
25972
 
25955
25973
/* Line 1455 of yacc.c  */
25956
 
#line 8252 "sql_yacc.yy"
 
25974
#line 8272 "sql_yacc.yy"
25957
25975
    {
25958
25976
            (yyval.item)= new (YYTHD->mem_root) Item_sum_variance((yyvsp[(3) - (4)].item), 0);
25959
25977
            if ((yyval.item) == NULL)
25964
25982
  case 1207:
25965
25983
 
25966
25984
/* Line 1455 of yacc.c  */
25967
 
#line 8258 "sql_yacc.yy"
 
25985
#line 8278 "sql_yacc.yy"
25968
25986
    {
25969
25987
            (yyval.item)= new (YYTHD->mem_root) Item_sum_std((yyvsp[(3) - (4)].item), 1);
25970
25988
            if ((yyval.item) == NULL)
25975
25993
  case 1208:
25976
25994
 
25977
25995
/* Line 1455 of yacc.c  */
25978
 
#line 8264 "sql_yacc.yy"
 
25996
#line 8284 "sql_yacc.yy"
25979
25997
    {
25980
25998
            (yyval.item)= new (YYTHD->mem_root) Item_sum_variance((yyvsp[(3) - (4)].item), 1);
25981
25999
            if ((yyval.item) == NULL)
25986
26004
  case 1209:
25987
26005
 
25988
26006
/* Line 1455 of yacc.c  */
25989
 
#line 8270 "sql_yacc.yy"
 
26007
#line 8290 "sql_yacc.yy"
25990
26008
    {
25991
26009
            (yyval.item)= new (YYTHD->mem_root) Item_sum_sum((yyvsp[(3) - (4)].item));
25992
26010
            if ((yyval.item) == NULL)
25997
26015
  case 1210:
25998
26016
 
25999
26017
/* Line 1455 of yacc.c  */
26000
 
#line 8276 "sql_yacc.yy"
 
26018
#line 8296 "sql_yacc.yy"
26001
26019
    {
26002
26020
            (yyval.item)= new (YYTHD->mem_root) Item_sum_sum_distinct((yyvsp[(4) - (5)].item));
26003
26021
            if ((yyval.item) == NULL)
26008
26026
  case 1211:
26009
26027
 
26010
26028
/* Line 1455 of yacc.c  */
26011
 
#line 8282 "sql_yacc.yy"
 
26029
#line 8302 "sql_yacc.yy"
26012
26030
    { Select->in_sum_expr++; }
26013
26031
    break;
26014
26032
 
26015
26033
  case 1212:
26016
26034
 
26017
26035
/* Line 1455 of yacc.c  */
26018
 
#line 8286 "sql_yacc.yy"
 
26036
#line 8306 "sql_yacc.yy"
26019
26037
    {
26020
26038
            SELECT_LEX *sel= Select;
26021
26039
            sel->in_sum_expr--;
26031
26049
  case 1213:
26032
26050
 
26033
26051
/* Line 1455 of yacc.c  */
26034
 
#line 8300 "sql_yacc.yy"
 
26052
#line 8320 "sql_yacc.yy"
26035
26053
    {
26036
26054
            if (! Lex->parsing_options.allows_variable)
26037
26055
            {
26044
26062
  case 1214:
26045
26063
 
26046
26064
/* Line 1455 of yacc.c  */
26047
 
#line 8308 "sql_yacc.yy"
 
26065
#line 8328 "sql_yacc.yy"
26048
26066
    {
26049
26067
            (yyval.item)= (yyvsp[(3) - (3)].item);
26050
26068
          }
26053
26071
  case 1215:
26054
26072
 
26055
26073
/* Line 1455 of yacc.c  */
26056
 
#line 8315 "sql_yacc.yy"
 
26074
#line 8335 "sql_yacc.yy"
26057
26075
    {
26058
26076
            Item_func_set_user_var *item;
26059
26077
            (yyval.item)= item= new (YYTHD->mem_root) Item_func_set_user_var((yyvsp[(1) - (3)].lex_str), (yyvsp[(3) - (3)].item));
26068
26086
  case 1216:
26069
26087
 
26070
26088
/* Line 1455 of yacc.c  */
26071
 
#line 8325 "sql_yacc.yy"
 
26089
#line 8345 "sql_yacc.yy"
26072
26090
    {
26073
26091
            (yyval.item)= new (YYTHD->mem_root) Item_func_get_user_var((yyvsp[(1) - (1)].lex_str));
26074
26092
            if ((yyval.item) == NULL)
26081
26099
  case 1217:
26082
26100
 
26083
26101
/* Line 1455 of yacc.c  */
26084
 
#line 8333 "sql_yacc.yy"
 
26102
#line 8353 "sql_yacc.yy"
26085
26103
    {
26086
26104
            /* disallow "SELECT @@global.global.variable" */
26087
26105
            if ((yyvsp[(3) - (4)].lex_str).str && (yyvsp[(4) - (4)].lex_str).str && check_reserved_words(&(yyvsp[(3) - (4)].lex_str)))
26099
26117
  case 1218:
26100
26118
 
26101
26119
/* Line 1455 of yacc.c  */
26102
 
#line 8348 "sql_yacc.yy"
 
26120
#line 8368 "sql_yacc.yy"
26103
26121
    { (yyval.num) = 0; }
26104
26122
    break;
26105
26123
 
26106
26124
  case 1219:
26107
26125
 
26108
26126
/* Line 1455 of yacc.c  */
26109
 
#line 8349 "sql_yacc.yy"
 
26127
#line 8369 "sql_yacc.yy"
26110
26128
    { (yyval.num) = 1; }
26111
26129
    break;
26112
26130
 
26113
26131
  case 1220:
26114
26132
 
26115
26133
/* Line 1455 of yacc.c  */
26116
 
#line 8354 "sql_yacc.yy"
 
26134
#line 8374 "sql_yacc.yy"
26117
26135
    {
26118
26136
            (yyval.string)= new (YYTHD->mem_root) String(",", 1, &my_charset_latin1);
26119
26137
            if ((yyval.string) == NULL)
26124
26142
  case 1221:
26125
26143
 
26126
26144
/* Line 1455 of yacc.c  */
26127
 
#line 8359 "sql_yacc.yy"
 
26145
#line 8379 "sql_yacc.yy"
26128
26146
    { (yyval.string) = (yyvsp[(2) - (2)].string); }
26129
26147
    break;
26130
26148
 
26131
26149
  case 1222:
26132
26150
 
26133
26151
/* Line 1455 of yacc.c  */
26134
 
#line 8364 "sql_yacc.yy"
 
26152
#line 8384 "sql_yacc.yy"
26135
26153
    {
26136
26154
            Select->gorder_list = NULL;
26137
26155
          }
26140
26158
  case 1223:
26141
26159
 
26142
26160
/* Line 1455 of yacc.c  */
26143
 
#line 8368 "sql_yacc.yy"
 
26161
#line 8388 "sql_yacc.yy"
26144
26162
    {
26145
26163
            SELECT_LEX *select= Select;
26146
26164
            select->gorder_list= new (YYTHD->mem_root)
26154
26172
  case 1224:
26155
26173
 
26156
26174
/* Line 1455 of yacc.c  */
26157
 
#line 8380 "sql_yacc.yy"
 
26175
#line 8400 "sql_yacc.yy"
26158
26176
    {
26159
26177
            LEX *lex= Lex;
26160
26178
            if (lex->current_select->inc_in_sum_expr())
26168
26186
  case 1225:
26169
26187
 
26170
26188
/* Line 1455 of yacc.c  */
26171
 
#line 8389 "sql_yacc.yy"
 
26189
#line 8409 "sql_yacc.yy"
26172
26190
    {
26173
26191
            Select->in_sum_expr--;
26174
26192
            (yyval.item)= (yyvsp[(3) - (3)].item);
26178
26196
  case 1226:
26179
26197
 
26180
26198
/* Line 1455 of yacc.c  */
26181
 
#line 8397 "sql_yacc.yy"
 
26199
#line 8417 "sql_yacc.yy"
26182
26200
    { (yyval.cast_type)=ITEM_CAST_CHAR; Lex->charset= &my_charset_bin; Lex->dec= 0; }
26183
26201
    break;
26184
26202
 
26185
26203
  case 1227:
26186
26204
 
26187
26205
/* Line 1455 of yacc.c  */
26188
 
#line 8399 "sql_yacc.yy"
 
26206
#line 8419 "sql_yacc.yy"
26189
26207
    { (yyval.cast_type)=ITEM_CAST_CHAR; Lex->dec= 0; }
26190
26208
    break;
26191
26209
 
26192
26210
  case 1228:
26193
26211
 
26194
26212
/* Line 1455 of yacc.c  */
26195
 
#line 8401 "sql_yacc.yy"
 
26213
#line 8421 "sql_yacc.yy"
26196
26214
    { (yyval.cast_type)=ITEM_CAST_CHAR; Lex->charset= national_charset_info; Lex->dec=0; }
26197
26215
    break;
26198
26216
 
26199
26217
  case 1229:
26200
26218
 
26201
26219
/* Line 1455 of yacc.c  */
26202
 
#line 8403 "sql_yacc.yy"
 
26220
#line 8423 "sql_yacc.yy"
26203
26221
    { (yyval.cast_type)=ITEM_CAST_SIGNED_INT; Lex->charset= NULL; Lex->dec=Lex->length= (char*)0; }
26204
26222
    break;
26205
26223
 
26206
26224
  case 1230:
26207
26225
 
26208
26226
/* Line 1455 of yacc.c  */
26209
 
#line 8405 "sql_yacc.yy"
 
26227
#line 8425 "sql_yacc.yy"
26210
26228
    { (yyval.cast_type)=ITEM_CAST_SIGNED_INT; Lex->charset= NULL; Lex->dec=Lex->length= (char*)0; }
26211
26229
    break;
26212
26230
 
26213
26231
  case 1231:
26214
26232
 
26215
26233
/* Line 1455 of yacc.c  */
26216
 
#line 8407 "sql_yacc.yy"
 
26234
#line 8427 "sql_yacc.yy"
26217
26235
    { (yyval.cast_type)=ITEM_CAST_UNSIGNED_INT; Lex->charset= NULL; Lex->dec=Lex->length= (char*)0; }
26218
26236
    break;
26219
26237
 
26220
26238
  case 1232:
26221
26239
 
26222
26240
/* Line 1455 of yacc.c  */
26223
 
#line 8409 "sql_yacc.yy"
 
26241
#line 8429 "sql_yacc.yy"
26224
26242
    { (yyval.cast_type)=ITEM_CAST_UNSIGNED_INT; Lex->charset= NULL; Lex->dec=Lex->length= (char*)0; }
26225
26243
    break;
26226
26244
 
26227
26245
  case 1233:
26228
26246
 
26229
26247
/* Line 1455 of yacc.c  */
26230
 
#line 8411 "sql_yacc.yy"
 
26248
#line 8431 "sql_yacc.yy"
26231
26249
    { (yyval.cast_type)=ITEM_CAST_DATE; Lex->charset= NULL; Lex->dec=Lex->length= (char*)0; }
26232
26250
    break;
26233
26251
 
26234
26252
  case 1234:
26235
26253
 
26236
26254
/* Line 1455 of yacc.c  */
26237
 
#line 8413 "sql_yacc.yy"
 
26255
#line 8433 "sql_yacc.yy"
26238
26256
    { (yyval.cast_type)=ITEM_CAST_TIME; Lex->charset= NULL; Lex->dec=Lex->length= (char*)0; }
26239
26257
    break;
26240
26258
 
26241
26259
  case 1235:
26242
26260
 
26243
26261
/* Line 1455 of yacc.c  */
26244
 
#line 8415 "sql_yacc.yy"
 
26262
#line 8435 "sql_yacc.yy"
26245
26263
    { (yyval.cast_type)=ITEM_CAST_DATETIME; Lex->charset= NULL; Lex->dec=Lex->length= (char*)0; }
26246
26264
    break;
26247
26265
 
26248
26266
  case 1236:
26249
26267
 
26250
26268
/* Line 1455 of yacc.c  */
26251
 
#line 8417 "sql_yacc.yy"
 
26269
#line 8437 "sql_yacc.yy"
26252
26270
    { (yyval.cast_type)=ITEM_CAST_DECIMAL; Lex->charset= NULL; }
26253
26271
    break;
26254
26272
 
26255
26273
  case 1237:
26256
26274
 
26257
26275
/* Line 1455 of yacc.c  */
26258
 
#line 8421 "sql_yacc.yy"
 
26276
#line 8441 "sql_yacc.yy"
26259
26277
    { (yyval.item_list)= NULL; }
26260
26278
    break;
26261
26279
 
26262
26280
  case 1238:
26263
26281
 
26264
26282
/* Line 1455 of yacc.c  */
26265
 
#line 8422 "sql_yacc.yy"
 
26283
#line 8442 "sql_yacc.yy"
26266
26284
    { (yyval.item_list)= (yyvsp[(1) - (1)].item_list);}
26267
26285
    break;
26268
26286
 
26269
26287
  case 1239:
26270
26288
 
26271
26289
/* Line 1455 of yacc.c  */
26272
 
#line 8427 "sql_yacc.yy"
 
26290
#line 8447 "sql_yacc.yy"
26273
26291
    {
26274
26292
            (yyval.item_list)= new (YYTHD->mem_root) List<Item>;
26275
26293
            if ((yyval.item_list) == NULL)
26281
26299
  case 1240:
26282
26300
 
26283
26301
/* Line 1455 of yacc.c  */
26284
 
#line 8434 "sql_yacc.yy"
 
26302
#line 8454 "sql_yacc.yy"
26285
26303
    {
26286
26304
            (yyvsp[(1) - (3)].item_list)->push_back((yyvsp[(3) - (3)].item));
26287
26305
            (yyval.item_list)= (yyvsp[(1) - (3)].item_list);
26291
26309
  case 1241:
26292
26310
 
26293
26311
/* Line 1455 of yacc.c  */
26294
 
#line 8441 "sql_yacc.yy"
 
26312
#line 8461 "sql_yacc.yy"
26295
26313
    { (yyval.item_list)= (yyvsp[(1) - (1)].item_list); }
26296
26314
    break;
26297
26315
 
26298
26316
  case 1242:
26299
26317
 
26300
26318
/* Line 1455 of yacc.c  */
26301
 
#line 8442 "sql_yacc.yy"
 
26319
#line 8462 "sql_yacc.yy"
26302
26320
    { (yyval.item_list)= (yyvsp[(2) - (3)].item_list); }
26303
26321
    break;
26304
26322
 
26305
26323
  case 1243:
26306
26324
 
26307
26325
/* Line 1455 of yacc.c  */
26308
 
#line 8447 "sql_yacc.yy"
 
26326
#line 8467 "sql_yacc.yy"
26309
26327
    {
26310
26328
            (yyval.item_list)= new (YYTHD->mem_root) List<Item>;
26311
26329
            if ((yyval.item_list) == NULL)
26317
26335
  case 1244:
26318
26336
 
26319
26337
/* Line 1455 of yacc.c  */
26320
 
#line 8454 "sql_yacc.yy"
 
26338
#line 8474 "sql_yacc.yy"
26321
26339
    {
26322
26340
            (yyvsp[(1) - (3)].item_list)->push_back((yyvsp[(3) - (3)].item));
26323
26341
            (yyval.item_list)= (yyvsp[(1) - (3)].item_list);
26327
26345
  case 1245:
26328
26346
 
26329
26347
/* Line 1455 of yacc.c  */
26330
 
#line 8461 "sql_yacc.yy"
 
26348
#line 8481 "sql_yacc.yy"
26331
26349
    { (yyval.item)= NULL; }
26332
26350
    break;
26333
26351
 
26334
26352
  case 1246:
26335
26353
 
26336
26354
/* Line 1455 of yacc.c  */
26337
 
#line 8462 "sql_yacc.yy"
 
26355
#line 8482 "sql_yacc.yy"
26338
26356
    { (yyval.item)= (yyvsp[(1) - (1)].item); }
26339
26357
    break;
26340
26358
 
26341
26359
  case 1247:
26342
26360
 
26343
26361
/* Line 1455 of yacc.c  */
26344
 
#line 8466 "sql_yacc.yy"
 
26362
#line 8486 "sql_yacc.yy"
26345
26363
    { (yyval.item)= NULL; }
26346
26364
    break;
26347
26365
 
26348
26366
  case 1248:
26349
26367
 
26350
26368
/* Line 1455 of yacc.c  */
26351
 
#line 8467 "sql_yacc.yy"
 
26369
#line 8487 "sql_yacc.yy"
26352
26370
    { (yyval.item)= (yyvsp[(2) - (2)].item); }
26353
26371
    break;
26354
26372
 
26355
26373
  case 1249:
26356
26374
 
26357
26375
/* Line 1455 of yacc.c  */
26358
 
#line 8472 "sql_yacc.yy"
 
26376
#line 8492 "sql_yacc.yy"
26359
26377
    {
26360
26378
            (yyval.item_list)= new List<Item>;
26361
26379
            if ((yyval.item_list) == NULL)
26368
26386
  case 1250:
26369
26387
 
26370
26388
/* Line 1455 of yacc.c  */
26371
 
#line 8480 "sql_yacc.yy"
 
26389
#line 8500 "sql_yacc.yy"
26372
26390
    {
26373
26391
            (yyvsp[(1) - (5)].item_list)->push_back((yyvsp[(3) - (5)].item));
26374
26392
            (yyvsp[(1) - (5)].item_list)->push_back((yyvsp[(5) - (5)].item));
26379
26397
  case 1251:
26380
26398
 
26381
26399
/* Line 1455 of yacc.c  */
26382
 
#line 8489 "sql_yacc.yy"
 
26400
#line 8509 "sql_yacc.yy"
26383
26401
    { (yyval.table_list)=(yyvsp[(1) - (1)].table_list); }
26384
26402
    break;
26385
26403
 
26386
26404
  case 1252:
26387
26405
 
26388
26406
/* Line 1455 of yacc.c  */
26389
 
#line 8491 "sql_yacc.yy"
 
26407
#line 8511 "sql_yacc.yy"
26390
26408
    {
26391
26409
            LEX *lex= Lex;
26392
26410
            if (!((yyval.table_list)= lex->current_select->nest_last_join(lex->thd)))
26397
26415
  case 1253:
26398
26416
 
26399
26417
/* Line 1455 of yacc.c  */
26400
 
#line 8499 "sql_yacc.yy"
 
26418
#line 8519 "sql_yacc.yy"
26401
26419
    { MYSQL_YYABORT_UNLESS((yyval.table_list)=(yyvsp[(1) - (1)].table_list)); }
26402
26420
    break;
26403
26421
 
26404
26422
  case 1254:
26405
26423
 
26406
26424
/* Line 1455 of yacc.c  */
26407
 
#line 8510 "sql_yacc.yy"
 
26425
#line 8530 "sql_yacc.yy"
26408
26426
    { (yyval.table_list)=(yyvsp[(1) - (1)].table_list); }
26409
26427
    break;
26410
26428
 
26411
26429
  case 1255:
26412
26430
 
26413
26431
/* Line 1455 of yacc.c  */
26414
 
#line 8511 "sql_yacc.yy"
 
26432
#line 8531 "sql_yacc.yy"
26415
26433
    { (yyval.table_list)=(yyvsp[(3) - (4)].table_list); }
26416
26434
    break;
26417
26435
 
26418
26436
  case 1256:
26419
26437
 
26420
26438
/* Line 1455 of yacc.c  */
26421
 
#line 8516 "sql_yacc.yy"
 
26439
#line 8536 "sql_yacc.yy"
26422
26440
    { (yyval.table_list)=(yyvsp[(1) - (1)].table_list); }
26423
26441
    break;
26424
26442
 
26425
26443
  case 1257:
26426
26444
 
26427
26445
/* Line 1455 of yacc.c  */
26428
 
#line 8518 "sql_yacc.yy"
 
26446
#line 8538 "sql_yacc.yy"
26429
26447
    {
26430
26448
            MYSQL_YYABORT_UNLESS((yyvsp[(1) - (3)].table_list) && ((yyval.table_list)=(yyvsp[(3) - (3)].table_list)));
26431
26449
          }
26434
26452
  case 1258:
26435
26453
 
26436
26454
/* Line 1455 of yacc.c  */
26437
 
#line 8538 "sql_yacc.yy"
 
26455
#line 8558 "sql_yacc.yy"
26438
26456
    { MYSQL_YYABORT_UNLESS((yyvsp[(1) - (3)].table_list) && ((yyval.table_list)=(yyvsp[(3) - (3)].table_list))); }
26439
26457
    break;
26440
26458
 
26441
26459
  case 1259:
26442
26460
 
26443
26461
/* Line 1455 of yacc.c  */
26444
 
#line 8540 "sql_yacc.yy"
 
26462
#line 8560 "sql_yacc.yy"
26445
26463
    { MYSQL_YYABORT_UNLESS((yyvsp[(1) - (3)].table_list) && ((yyval.table_list)=(yyvsp[(3) - (3)].table_list))); (yyvsp[(3) - (3)].table_list)->straight=1; }
26446
26464
    break;
26447
26465
 
26448
26466
  case 1260:
26449
26467
 
26450
26468
/* Line 1455 of yacc.c  */
26451
 
#line 8543 "sql_yacc.yy"
 
26469
#line 8563 "sql_yacc.yy"
26452
26470
    {
26453
26471
            MYSQL_YYABORT_UNLESS((yyvsp[(1) - (4)].table_list) && (yyvsp[(3) - (4)].table_list));
26454
26472
            /* Change the current name resolution context to a local context. */
26461
26479
  case 1261:
26462
26480
 
26463
26481
/* Line 1455 of yacc.c  */
26464
 
#line 8551 "sql_yacc.yy"
 
26482
#line 8571 "sql_yacc.yy"
26465
26483
    {
26466
26484
            add_join_on((yyvsp[(3) - (6)].table_list),(yyvsp[(6) - (6)].item));
26467
26485
            Lex->pop_context();
26472
26490
  case 1262:
26473
26491
 
26474
26492
/* Line 1455 of yacc.c  */
26475
 
#line 8558 "sql_yacc.yy"
 
26493
#line 8578 "sql_yacc.yy"
26476
26494
    {
26477
26495
            MYSQL_YYABORT_UNLESS((yyvsp[(1) - (4)].table_list) && (yyvsp[(3) - (4)].table_list));
26478
26496
            /* Change the current name resolution context to a local context. */
26485
26503
  case 1263:
26486
26504
 
26487
26505
/* Line 1455 of yacc.c  */
26488
 
#line 8566 "sql_yacc.yy"
 
26506
#line 8586 "sql_yacc.yy"
26489
26507
    {
26490
26508
            (yyvsp[(3) - (6)].table_list)->straight=1;
26491
26509
            add_join_on((yyvsp[(3) - (6)].table_list),(yyvsp[(6) - (6)].item));
26497
26515
  case 1264:
26498
26516
 
26499
26517
/* Line 1455 of yacc.c  */
26500
 
#line 8574 "sql_yacc.yy"
 
26518
#line 8594 "sql_yacc.yy"
26501
26519
    {
26502
26520
            MYSQL_YYABORT_UNLESS((yyvsp[(1) - (4)].table_list) && (yyvsp[(3) - (4)].table_list));
26503
26521
          }
26506
26524
  case 1265:
26507
26525
 
26508
26526
/* Line 1455 of yacc.c  */
26509
 
#line 8578 "sql_yacc.yy"
 
26527
#line 8598 "sql_yacc.yy"
26510
26528
    { add_join_natural((yyvsp[(1) - (8)].table_list),(yyvsp[(3) - (8)].table_list),(yyvsp[(7) - (8)].string_list),Select); (yyval.table_list)=(yyvsp[(3) - (8)].table_list); }
26511
26529
    break;
26512
26530
 
26513
26531
  case 1266:
26514
26532
 
26515
26533
/* Line 1455 of yacc.c  */
26516
 
#line 8580 "sql_yacc.yy"
 
26534
#line 8600 "sql_yacc.yy"
26517
26535
    {
26518
26536
            MYSQL_YYABORT_UNLESS((yyvsp[(1) - (4)].table_list) && ((yyval.table_list)=(yyvsp[(4) - (4)].table_list)));
26519
26537
            add_join_natural((yyvsp[(1) - (4)].table_list),(yyvsp[(4) - (4)].table_list),NULL,Select);
26523
26541
  case 1267:
26524
26542
 
26525
26543
/* Line 1455 of yacc.c  */
26526
 
#line 8588 "sql_yacc.yy"
 
26544
#line 8608 "sql_yacc.yy"
26527
26545
    {
26528
26546
            MYSQL_YYABORT_UNLESS((yyvsp[(1) - (6)].table_list) && (yyvsp[(5) - (6)].table_list));
26529
26547
            /* Change the current name resolution context to a local context. */
26536
26554
  case 1268:
26537
26555
 
26538
26556
/* Line 1455 of yacc.c  */
26539
 
#line 8596 "sql_yacc.yy"
 
26557
#line 8616 "sql_yacc.yy"
26540
26558
    {
26541
26559
            add_join_on((yyvsp[(5) - (8)].table_list),(yyvsp[(8) - (8)].item));
26542
26560
            Lex->pop_context();
26549
26567
  case 1269:
26550
26568
 
26551
26569
/* Line 1455 of yacc.c  */
26552
 
#line 8604 "sql_yacc.yy"
 
26570
#line 8624 "sql_yacc.yy"
26553
26571
    {
26554
26572
            MYSQL_YYABORT_UNLESS((yyvsp[(1) - (5)].table_list) && (yyvsp[(5) - (5)].table_list));
26555
26573
          }
26558
26576
  case 1270:
26559
26577
 
26560
26578
/* Line 1455 of yacc.c  */
26561
 
#line 8608 "sql_yacc.yy"
 
26579
#line 8628 "sql_yacc.yy"
26562
26580
    { 
26563
26581
            add_join_natural((yyvsp[(1) - (10)].table_list),(yyvsp[(5) - (10)].table_list),(yyvsp[(9) - (10)].string_list),Select); 
26564
26582
            (yyvsp[(5) - (10)].table_list)->outer_join|=JOIN_TYPE_LEFT; 
26569
26587
  case 1271:
26570
26588
 
26571
26589
/* Line 1455 of yacc.c  */
26572
 
#line 8614 "sql_yacc.yy"
 
26590
#line 8634 "sql_yacc.yy"
26573
26591
    {
26574
26592
            MYSQL_YYABORT_UNLESS((yyvsp[(1) - (6)].table_list) && (yyvsp[(6) - (6)].table_list));
26575
26593
            add_join_natural((yyvsp[(1) - (6)].table_list),(yyvsp[(6) - (6)].table_list),NULL,Select);
26581
26599
  case 1272:
26582
26600
 
26583
26601
/* Line 1455 of yacc.c  */
26584
 
#line 8624 "sql_yacc.yy"
 
26602
#line 8644 "sql_yacc.yy"
26585
26603
    {
26586
26604
            MYSQL_YYABORT_UNLESS((yyvsp[(1) - (6)].table_list) && (yyvsp[(5) - (6)].table_list));
26587
26605
            /* Change the current name resolution context to a local context. */
26594
26612
  case 1273:
26595
26613
 
26596
26614
/* Line 1455 of yacc.c  */
26597
 
#line 8632 "sql_yacc.yy"
 
26615
#line 8652 "sql_yacc.yy"
26598
26616
    {
26599
26617
            LEX *lex= Lex;
26600
26618
            if (!((yyval.table_list)= lex->current_select->convert_right_join()))
26608
26626
  case 1274:
26609
26627
 
26610
26628
/* Line 1455 of yacc.c  */
26611
 
#line 8641 "sql_yacc.yy"
 
26629
#line 8661 "sql_yacc.yy"
26612
26630
    {
26613
26631
            MYSQL_YYABORT_UNLESS((yyvsp[(1) - (5)].table_list) && (yyvsp[(5) - (5)].table_list));
26614
26632
          }
26617
26635
  case 1275:
26618
26636
 
26619
26637
/* Line 1455 of yacc.c  */
26620
 
#line 8645 "sql_yacc.yy"
 
26638
#line 8665 "sql_yacc.yy"
26621
26639
    {
26622
26640
            LEX *lex= Lex;
26623
26641
            if (!((yyval.table_list)= lex->current_select->convert_right_join()))
26629
26647
  case 1276:
26630
26648
 
26631
26649
/* Line 1455 of yacc.c  */
26632
 
#line 8652 "sql_yacc.yy"
 
26650
#line 8672 "sql_yacc.yy"
26633
26651
    {
26634
26652
            MYSQL_YYABORT_UNLESS((yyvsp[(1) - (6)].table_list) && (yyvsp[(6) - (6)].table_list));
26635
26653
            add_join_natural((yyvsp[(6) - (6)].table_list),(yyvsp[(1) - (6)].table_list),NULL,Select);
26642
26660
  case 1277:
26643
26661
 
26644
26662
/* Line 1455 of yacc.c  */
26645
 
#line 8662 "sql_yacc.yy"
 
26663
#line 8682 "sql_yacc.yy"
26646
26664
    {}
26647
26665
    break;
26648
26666
 
26649
26667
  case 1278:
26650
26668
 
26651
26669
/* Line 1455 of yacc.c  */
26652
 
#line 8663 "sql_yacc.yy"
 
26670
#line 8683 "sql_yacc.yy"
26653
26671
    {}
26654
26672
    break;
26655
26673
 
26656
26674
  case 1279:
26657
26675
 
26658
26676
/* Line 1455 of yacc.c  */
26659
 
#line 8664 "sql_yacc.yy"
 
26677
#line 8684 "sql_yacc.yy"
26660
26678
    {}
26661
26679
    break;
26662
26680
 
26663
26681
  case 1280:
26664
26682
 
26665
26683
/* Line 1455 of yacc.c  */
26666
 
#line 8669 "sql_yacc.yy"
 
26684
#line 8689 "sql_yacc.yy"
26667
26685
    {
26668
26686
            SELECT_LEX *sel= Select;
26669
26687
            sel->table_join_options= 0;
26673
26691
  case 1281:
26674
26692
 
26675
26693
/* Line 1455 of yacc.c  */
26676
 
#line 8674 "sql_yacc.yy"
 
26694
#line 8694 "sql_yacc.yy"
26677
26695
    {
26678
26696
            if (!((yyval.table_list)= Select->add_table_to_list(YYTHD, (yyvsp[(2) - (4)].table), (yyvsp[(3) - (4)].lex_str_ptr),
26679
26697
                                                Select->get_table_join_options(),
26687
26705
  case 1282:
26688
26706
 
26689
26707
/* Line 1455 of yacc.c  */
26690
 
#line 8683 "sql_yacc.yy"
 
26708
#line 8703 "sql_yacc.yy"
26691
26709
    {
26692
26710
            LEX *lex= Lex;
26693
26711
            SELECT_LEX *sel= lex->current_select;
26714
26732
  case 1283:
26715
26733
 
26716
26734
/* Line 1455 of yacc.c  */
26717
 
#line 8705 "sql_yacc.yy"
 
26735
#line 8725 "sql_yacc.yy"
26718
26736
    {
26719
26737
            /* Use $2 instead of Lex->current_select as derived table will
26720
26738
               alter value of Lex->current_select. */
26767
26785
  case 1284:
26768
26786
 
26769
26787
/* Line 1455 of yacc.c  */
26770
 
#line 8757 "sql_yacc.yy"
 
26788
#line 8777 "sql_yacc.yy"
26771
26789
    {
26772
26790
            LEX *lex= Lex;
26773
26791
            if ((yyvsp[(1) - (1)].select_lex)->init_nested_join(lex->thd))
26778
26796
  case 1285:
26779
26797
 
26780
26798
/* Line 1455 of yacc.c  */
26781
 
#line 8763 "sql_yacc.yy"
 
26799
#line 8783 "sql_yacc.yy"
26782
26800
    {
26783
26801
            LEX *lex= Lex;
26784
26802
            /* for normal joins, $3 != NULL and end_nested_join() != NULL,
26797
26815
  case 1286:
26798
26816
 
26799
26817
/* Line 1455 of yacc.c  */
26800
 
#line 8779 "sql_yacc.yy"
 
26818
#line 8799 "sql_yacc.yy"
26801
26819
    {
26802
26820
            LEX *lex= Lex;
26803
26821
            lex->derived_tables|= DERIVED_SUBQUERY;
26819
26837
  case 1287:
26820
26838
 
26821
26839
/* Line 1455 of yacc.c  */
26822
 
#line 8796 "sql_yacc.yy"
 
26840
#line 8816 "sql_yacc.yy"
26823
26841
    {
26824
26842
            Select->parsing_place= NO_MATTER;
26825
26843
          }
26828
26846
  case 1289:
26829
26847
 
26830
26848
/* Line 1455 of yacc.c  */
26831
 
#line 8803 "sql_yacc.yy"
 
26849
#line 8823 "sql_yacc.yy"
26832
26850
    { (yyval.select_lex)= Select; }
26833
26851
    break;
26834
26852
 
26835
26853
  case 1290:
26836
26854
 
26837
26855
/* Line 1455 of yacc.c  */
26838
 
#line 8808 "sql_yacc.yy"
 
26856
#line 8828 "sql_yacc.yy"
26839
26857
    {
26840
26858
            LEX *lex= Lex;
26841
26859
 
26863
26881
  case 1291:
26864
26882
 
26865
26883
/* Line 1455 of yacc.c  */
26866
 
#line 8833 "sql_yacc.yy"
 
26884
#line 8853 "sql_yacc.yy"
26867
26885
    {}
26868
26886
    break;
26869
26887
 
26870
26888
  case 1292:
26871
26889
 
26872
26890
/* Line 1455 of yacc.c  */
26873
 
#line 8834 "sql_yacc.yy"
 
26891
#line 8854 "sql_yacc.yy"
26874
26892
    {}
26875
26893
    break;
26876
26894
 
26877
26895
  case 1293:
26878
26896
 
26879
26897
/* Line 1455 of yacc.c  */
26880
 
#line 8839 "sql_yacc.yy"
 
26898
#line 8859 "sql_yacc.yy"
26881
26899
    {
26882
26900
            (yyval.num)= global_system_variables.old_mode ? 
26883
26901
                  INDEX_HINT_MASK_JOIN : INDEX_HINT_MASK_ALL; 
26887
26905
  case 1294:
26888
26906
 
26889
26907
/* Line 1455 of yacc.c  */
26890
 
#line 8843 "sql_yacc.yy"
 
26908
#line 8863 "sql_yacc.yy"
26891
26909
    { (yyval.num)= INDEX_HINT_MASK_JOIN;  }
26892
26910
    break;
26893
26911
 
26894
26912
  case 1295:
26895
26913
 
26896
26914
/* Line 1455 of yacc.c  */
26897
 
#line 8844 "sql_yacc.yy"
 
26915
#line 8864 "sql_yacc.yy"
26898
26916
    { (yyval.num)= INDEX_HINT_MASK_ORDER; }
26899
26917
    break;
26900
26918
 
26901
26919
  case 1296:
26902
26920
 
26903
26921
/* Line 1455 of yacc.c  */
26904
 
#line 8845 "sql_yacc.yy"
 
26922
#line 8865 "sql_yacc.yy"
26905
26923
    { (yyval.num)= INDEX_HINT_MASK_GROUP; }
26906
26924
    break;
26907
26925
 
26908
26926
  case 1297:
26909
26927
 
26910
26928
/* Line 1455 of yacc.c  */
26911
 
#line 8849 "sql_yacc.yy"
 
26929
#line 8869 "sql_yacc.yy"
26912
26930
    { (yyval.index_hint)= INDEX_HINT_FORCE; }
26913
26931
    break;
26914
26932
 
26915
26933
  case 1298:
26916
26934
 
26917
26935
/* Line 1455 of yacc.c  */
26918
 
#line 8850 "sql_yacc.yy"
 
26936
#line 8870 "sql_yacc.yy"
26919
26937
    { (yyval.index_hint)= INDEX_HINT_IGNORE; }
26920
26938
    break;
26921
26939
 
26922
26940
  case 1299:
26923
26941
 
26924
26942
/* Line 1455 of yacc.c  */
26925
 
#line 8855 "sql_yacc.yy"
 
26943
#line 8875 "sql_yacc.yy"
26926
26944
    {
26927
26945
            Select->set_index_hint_type((yyvsp[(1) - (3)].index_hint), (yyvsp[(3) - (3)].num));
26928
26946
          }
26931
26949
  case 1301:
26932
26950
 
26933
26951
/* Line 1455 of yacc.c  */
26934
 
#line 8860 "sql_yacc.yy"
 
26952
#line 8880 "sql_yacc.yy"
26935
26953
    {
26936
26954
            Select->set_index_hint_type(INDEX_HINT_USE, (yyvsp[(3) - (3)].num));
26937
26955
          }
26940
26958
  case 1306:
26941
26959
 
26942
26960
/* Line 1455 of yacc.c  */
26943
 
#line 8873 "sql_yacc.yy"
 
26961
#line 8893 "sql_yacc.yy"
26944
26962
    { Select->alloc_index_hints(YYTHD); }
26945
26963
    break;
26946
26964
 
26947
26965
  case 1308:
26948
26966
 
26949
26967
/* Line 1455 of yacc.c  */
26950
 
#line 8877 "sql_yacc.yy"
 
26968
#line 8897 "sql_yacc.yy"
26951
26969
    {  Select->clear_index_hints(); }
26952
26970
    break;
26953
26971
 
26954
26972
  case 1310:
26955
26973
 
26956
26974
/* Line 1455 of yacc.c  */
26957
 
#line 8882 "sql_yacc.yy"
 
26975
#line 8902 "sql_yacc.yy"
26958
26976
    { Select->add_index_hint(YYTHD, NULL, 0); }
26959
26977
    break;
26960
26978
 
26961
26979
  case 1311:
26962
26980
 
26963
26981
/* Line 1455 of yacc.c  */
26964
 
#line 8883 "sql_yacc.yy"
 
26982
#line 8903 "sql_yacc.yy"
26965
26983
    {}
26966
26984
    break;
26967
26985
 
26968
26986
  case 1312:
26969
26987
 
26970
26988
/* Line 1455 of yacc.c  */
26971
 
#line 8888 "sql_yacc.yy"
 
26989
#line 8908 "sql_yacc.yy"
26972
26990
    { Select->add_index_hint(YYTHD, (yyvsp[(1) - (1)].lex_str).str, (yyvsp[(1) - (1)].lex_str).length); }
26973
26991
    break;
26974
26992
 
26975
26993
  case 1313:
26976
26994
 
26977
26995
/* Line 1455 of yacc.c  */
26978
 
#line 8890 "sql_yacc.yy"
 
26996
#line 8910 "sql_yacc.yy"
26979
26997
    { Select->add_index_hint(YYTHD, (char *)"PRIMARY", 7); }
26980
26998
    break;
26981
26999
 
26982
27000
  case 1316:
26983
27001
 
26984
27002
/* Line 1455 of yacc.c  */
26985
 
#line 8900 "sql_yacc.yy"
 
27003
#line 8920 "sql_yacc.yy"
26986
27004
    {
26987
27005
            if (!((yyval.string_list)= new List<String>))
26988
27006
              MYSQL_YYABORT;
26998
27016
  case 1317:
26999
27017
 
27000
27018
/* Line 1455 of yacc.c  */
27001
 
#line 8911 "sql_yacc.yy"
 
27019
#line 8931 "sql_yacc.yy"
27002
27020
    {
27003
27021
            String *s= new (YYTHD->mem_root) String((const char *) (yyvsp[(3) - (3)].lex_str).str,
27004
27022
                                                    (yyvsp[(3) - (3)].lex_str).length,
27013
27031
  case 1318:
27014
27032
 
27015
27033
/* Line 1455 of yacc.c  */
27016
 
#line 8923 "sql_yacc.yy"
 
27034
#line 8943 "sql_yacc.yy"
27017
27035
    {}
27018
27036
    break;
27019
27037
 
27020
27038
  case 1319:
27021
27039
 
27022
27040
/* Line 1455 of yacc.c  */
27023
 
#line 8924 "sql_yacc.yy"
 
27041
#line 8944 "sql_yacc.yy"
27024
27042
    { (yyval.interval)=INTERVAL_DAY_HOUR; }
27025
27043
    break;
27026
27044
 
27027
27045
  case 1320:
27028
27046
 
27029
27047
/* Line 1455 of yacc.c  */
27030
 
#line 8925 "sql_yacc.yy"
 
27048
#line 8945 "sql_yacc.yy"
27031
27049
    { (yyval.interval)=INTERVAL_DAY_MICROSECOND; }
27032
27050
    break;
27033
27051
 
27034
27052
  case 1321:
27035
27053
 
27036
27054
/* Line 1455 of yacc.c  */
27037
 
#line 8926 "sql_yacc.yy"
 
27055
#line 8946 "sql_yacc.yy"
27038
27056
    { (yyval.interval)=INTERVAL_DAY_MINUTE; }
27039
27057
    break;
27040
27058
 
27041
27059
  case 1322:
27042
27060
 
27043
27061
/* Line 1455 of yacc.c  */
27044
 
#line 8927 "sql_yacc.yy"
 
27062
#line 8947 "sql_yacc.yy"
27045
27063
    { (yyval.interval)=INTERVAL_DAY_SECOND; }
27046
27064
    break;
27047
27065
 
27048
27066
  case 1323:
27049
27067
 
27050
27068
/* Line 1455 of yacc.c  */
27051
 
#line 8928 "sql_yacc.yy"
 
27069
#line 8948 "sql_yacc.yy"
27052
27070
    { (yyval.interval)=INTERVAL_HOUR_MICROSECOND; }
27053
27071
    break;
27054
27072
 
27055
27073
  case 1324:
27056
27074
 
27057
27075
/* Line 1455 of yacc.c  */
27058
 
#line 8929 "sql_yacc.yy"
 
27076
#line 8949 "sql_yacc.yy"
27059
27077
    { (yyval.interval)=INTERVAL_HOUR_MINUTE; }
27060
27078
    break;
27061
27079
 
27062
27080
  case 1325:
27063
27081
 
27064
27082
/* Line 1455 of yacc.c  */
27065
 
#line 8930 "sql_yacc.yy"
 
27083
#line 8950 "sql_yacc.yy"
27066
27084
    { (yyval.interval)=INTERVAL_HOUR_SECOND; }
27067
27085
    break;
27068
27086
 
27069
27087
  case 1326:
27070
27088
 
27071
27089
/* Line 1455 of yacc.c  */
27072
 
#line 8931 "sql_yacc.yy"
 
27090
#line 8951 "sql_yacc.yy"
27073
27091
    { (yyval.interval)=INTERVAL_MINUTE_MICROSECOND; }
27074
27092
    break;
27075
27093
 
27076
27094
  case 1327:
27077
27095
 
27078
27096
/* Line 1455 of yacc.c  */
27079
 
#line 8932 "sql_yacc.yy"
 
27097
#line 8952 "sql_yacc.yy"
27080
27098
    { (yyval.interval)=INTERVAL_MINUTE_SECOND; }
27081
27099
    break;
27082
27100
 
27083
27101
  case 1328:
27084
27102
 
27085
27103
/* Line 1455 of yacc.c  */
27086
 
#line 8933 "sql_yacc.yy"
 
27104
#line 8953 "sql_yacc.yy"
27087
27105
    { (yyval.interval)=INTERVAL_SECOND_MICROSECOND; }
27088
27106
    break;
27089
27107
 
27090
27108
  case 1329:
27091
27109
 
27092
27110
/* Line 1455 of yacc.c  */
27093
 
#line 8934 "sql_yacc.yy"
 
27111
#line 8954 "sql_yacc.yy"
27094
27112
    { (yyval.interval)=INTERVAL_YEAR_MONTH; }
27095
27113
    break;
27096
27114
 
27097
27115
  case 1330:
27098
27116
 
27099
27117
/* Line 1455 of yacc.c  */
27100
 
#line 8938 "sql_yacc.yy"
 
27118
#line 8958 "sql_yacc.yy"
27101
27119
    {}
27102
27120
    break;
27103
27121
 
27104
27122
  case 1331:
27105
27123
 
27106
27124
/* Line 1455 of yacc.c  */
27107
 
#line 8939 "sql_yacc.yy"
 
27125
#line 8959 "sql_yacc.yy"
27108
27126
    { 
27109
27127
                                  (yyval.interval_time_st)=INTERVAL_MICROSECOND; 
27110
27128
                                  /*
27126
27144
  case 1332:
27127
27145
 
27128
27146
/* Line 1455 of yacc.c  */
27129
 
#line 8958 "sql_yacc.yy"
 
27147
#line 8978 "sql_yacc.yy"
27130
27148
    { (yyval.interval_time_st)=INTERVAL_DAY; }
27131
27149
    break;
27132
27150
 
27133
27151
  case 1333:
27134
27152
 
27135
27153
/* Line 1455 of yacc.c  */
27136
 
#line 8959 "sql_yacc.yy"
 
27154
#line 8979 "sql_yacc.yy"
27137
27155
    { (yyval.interval_time_st)=INTERVAL_WEEK; }
27138
27156
    break;
27139
27157
 
27140
27158
  case 1334:
27141
27159
 
27142
27160
/* Line 1455 of yacc.c  */
27143
 
#line 8960 "sql_yacc.yy"
 
27161
#line 8980 "sql_yacc.yy"
27144
27162
    { (yyval.interval_time_st)=INTERVAL_HOUR; }
27145
27163
    break;
27146
27164
 
27147
27165
  case 1335:
27148
27166
 
27149
27167
/* Line 1455 of yacc.c  */
27150
 
#line 8961 "sql_yacc.yy"
 
27168
#line 8981 "sql_yacc.yy"
27151
27169
    { (yyval.interval_time_st)=INTERVAL_MINUTE; }
27152
27170
    break;
27153
27171
 
27154
27172
  case 1336:
27155
27173
 
27156
27174
/* Line 1455 of yacc.c  */
27157
 
#line 8962 "sql_yacc.yy"
 
27175
#line 8982 "sql_yacc.yy"
27158
27176
    { (yyval.interval_time_st)=INTERVAL_MONTH; }
27159
27177
    break;
27160
27178
 
27161
27179
  case 1337:
27162
27180
 
27163
27181
/* Line 1455 of yacc.c  */
27164
 
#line 8963 "sql_yacc.yy"
 
27182
#line 8983 "sql_yacc.yy"
27165
27183
    { (yyval.interval_time_st)=INTERVAL_QUARTER; }
27166
27184
    break;
27167
27185
 
27168
27186
  case 1338:
27169
27187
 
27170
27188
/* Line 1455 of yacc.c  */
27171
 
#line 8964 "sql_yacc.yy"
 
27189
#line 8984 "sql_yacc.yy"
27172
27190
    { (yyval.interval_time_st)=INTERVAL_SECOND; }
27173
27191
    break;
27174
27192
 
27175
27193
  case 1339:
27176
27194
 
27177
27195
/* Line 1455 of yacc.c  */
27178
 
#line 8965 "sql_yacc.yy"
 
27196
#line 8985 "sql_yacc.yy"
27179
27197
    { (yyval.interval_time_st)=INTERVAL_MICROSECOND; }
27180
27198
    break;
27181
27199
 
27182
27200
  case 1340:
27183
27201
 
27184
27202
/* Line 1455 of yacc.c  */
27185
 
#line 8966 "sql_yacc.yy"
 
27203
#line 8986 "sql_yacc.yy"
27186
27204
    { (yyval.interval_time_st)=INTERVAL_YEAR; }
27187
27205
    break;
27188
27206
 
27189
27207
  case 1341:
27190
27208
 
27191
27209
/* Line 1455 of yacc.c  */
27192
 
#line 8970 "sql_yacc.yy"
 
27210
#line 8990 "sql_yacc.yy"
27193
27211
    {(yyval.date_time_type)=MYSQL_TIMESTAMP_DATE;}
27194
27212
    break;
27195
27213
 
27196
27214
  case 1342:
27197
27215
 
27198
27216
/* Line 1455 of yacc.c  */
27199
 
#line 8971 "sql_yacc.yy"
 
27217
#line 8991 "sql_yacc.yy"
27200
27218
    {(yyval.date_time_type)=MYSQL_TIMESTAMP_TIME;}
27201
27219
    break;
27202
27220
 
27203
27221
  case 1343:
27204
27222
 
27205
27223
/* Line 1455 of yacc.c  */
27206
 
#line 8972 "sql_yacc.yy"
 
27224
#line 8992 "sql_yacc.yy"
27207
27225
    {(yyval.date_time_type)=MYSQL_TIMESTAMP_DATETIME;}
27208
27226
    break;
27209
27227
 
27210
27228
  case 1344:
27211
27229
 
27212
27230
/* Line 1455 of yacc.c  */
27213
 
#line 8973 "sql_yacc.yy"
 
27231
#line 8993 "sql_yacc.yy"
27214
27232
    {(yyval.date_time_type)=MYSQL_TIMESTAMP_DATETIME;}
27215
27233
    break;
27216
27234
 
27217
27235
  case 1348:
27218
27236
 
27219
27237
/* Line 1455 of yacc.c  */
27220
 
#line 8983 "sql_yacc.yy"
 
27238
#line 9003 "sql_yacc.yy"
27221
27239
    { (yyval.lex_str_ptr)=0; }
27222
27240
    break;
27223
27241
 
27224
27242
  case 1349:
27225
27243
 
27226
27244
/* Line 1455 of yacc.c  */
27227
 
#line 8985 "sql_yacc.yy"
 
27245
#line 9005 "sql_yacc.yy"
27228
27246
    {
27229
27247
            (yyval.lex_str_ptr)= (LEX_STRING*) sql_memdup(&(yyvsp[(2) - (2)].lex_str),sizeof(LEX_STRING));
27230
27248
            if ((yyval.lex_str_ptr) == NULL)
27235
27253
  case 1352:
27236
27254
 
27237
27255
/* Line 1455 of yacc.c  */
27238
 
#line 8998 "sql_yacc.yy"
 
27256
#line 9018 "sql_yacc.yy"
27239
27257
    { Select->where= 0; }
27240
27258
    break;
27241
27259
 
27242
27260
  case 1353:
27243
27261
 
27244
27262
/* Line 1455 of yacc.c  */
27245
 
#line 9000 "sql_yacc.yy"
 
27263
#line 9020 "sql_yacc.yy"
27246
27264
    {
27247
27265
            Select->parsing_place= IN_WHERE;
27248
27266
          }
27251
27269
  case 1354:
27252
27270
 
27253
27271
/* Line 1455 of yacc.c  */
27254
 
#line 9004 "sql_yacc.yy"
 
27272
#line 9024 "sql_yacc.yy"
27255
27273
    {
27256
27274
            SELECT_LEX *select= Select;
27257
27275
            select->where= (yyvsp[(3) - (3)].item);
27264
27282
  case 1356:
27265
27283
 
27266
27284
/* Line 1455 of yacc.c  */
27267
 
#line 9016 "sql_yacc.yy"
 
27285
#line 9036 "sql_yacc.yy"
27268
27286
    {
27269
27287
            Select->parsing_place= IN_HAVING;
27270
27288
          }
27273
27291
  case 1357:
27274
27292
 
27275
27293
/* Line 1455 of yacc.c  */
27276
 
#line 9020 "sql_yacc.yy"
 
27294
#line 9040 "sql_yacc.yy"
27277
27295
    {
27278
27296
            SELECT_LEX *sel= Select;
27279
27297
            sel->having= (yyvsp[(3) - (3)].item);
27286
27304
  case 1358:
27287
27305
 
27288
27306
/* Line 1455 of yacc.c  */
27289
 
#line 9031 "sql_yacc.yy"
 
27307
#line 9051 "sql_yacc.yy"
27290
27308
    {
27291
27309
            Lex->escape_used= TRUE;
27292
27310
            (yyval.item)= (yyvsp[(2) - (2)].item);
27296
27314
  case 1359:
27297
27315
 
27298
27316
/* Line 1455 of yacc.c  */
27299
 
#line 9036 "sql_yacc.yy"
 
27317
#line 9056 "sql_yacc.yy"
27300
27318
    {
27301
27319
            THD *thd= YYTHD;
27302
27320
            Lex->escape_used= FALSE;
27311
27329
  case 1362:
27312
27330
 
27313
27331
/* Line 1455 of yacc.c  */
27314
 
#line 9058 "sql_yacc.yy"
 
27332
#line 9078 "sql_yacc.yy"
27315
27333
    { if (add_group_to_list(YYTHD, (yyvsp[(3) - (4)].item),(bool) (yyvsp[(4) - (4)].num))) MYSQL_YYABORT; }
27316
27334
    break;
27317
27335
 
27318
27336
  case 1363:
27319
27337
 
27320
27338
/* Line 1455 of yacc.c  */
27321
 
#line 9060 "sql_yacc.yy"
 
27339
#line 9080 "sql_yacc.yy"
27322
27340
    { if (add_group_to_list(YYTHD, (yyvsp[(1) - (2)].item),(bool) (yyvsp[(2) - (2)].num))) MYSQL_YYABORT; }
27323
27341
    break;
27324
27342
 
27325
27343
  case 1364:
27326
27344
 
27327
27345
/* Line 1455 of yacc.c  */
27328
 
#line 9064 "sql_yacc.yy"
 
27346
#line 9084 "sql_yacc.yy"
27329
27347
    {}
27330
27348
    break;
27331
27349
 
27332
27350
  case 1365:
27333
27351
 
27334
27352
/* Line 1455 of yacc.c  */
27335
 
#line 9066 "sql_yacc.yy"
 
27353
#line 9086 "sql_yacc.yy"
27336
27354
    {
27337
27355
            LEX *lex=Lex;
27338
27356
            if (lex->current_select->linkage == GLOBAL_OPTIONS_TYPE)
27350
27368
  case 1366:
27351
27369
 
27352
27370
/* Line 1455 of yacc.c  */
27353
 
#line 9079 "sql_yacc.yy"
 
27371
#line 9099 "sql_yacc.yy"
27354
27372
    {
27355
27373
            LEX *lex= Lex;
27356
27374
            if (lex->current_select->linkage == GLOBAL_OPTIONS_TYPE)
27366
27384
  case 1370:
27367
27385
 
27368
27386
/* Line 1455 of yacc.c  */
27369
 
#line 9106 "sql_yacc.yy"
 
27387
#line 9126 "sql_yacc.yy"
27370
27388
    {
27371
27389
            THD *thd= YYTHD;
27372
27390
            bool ascending= ((yyvsp[(2) - (2)].num) == 1) ? true : false;
27378
27396
  case 1373:
27379
27397
 
27380
27398
/* Line 1455 of yacc.c  */
27381
 
#line 9125 "sql_yacc.yy"
 
27399
#line 9145 "sql_yacc.yy"
27382
27400
    {
27383
27401
            LEX *lex=Lex;
27384
27402
            SELECT_LEX *sel= lex->current_select;
27414
27432
  case 1375:
27415
27433
 
27416
27434
/* Line 1455 of yacc.c  */
27417
 
#line 9160 "sql_yacc.yy"
 
27435
#line 9180 "sql_yacc.yy"
27418
27436
    { if (add_order_to_list(YYTHD, (yyvsp[(3) - (4)].item),(bool) (yyvsp[(4) - (4)].num))) MYSQL_YYABORT; }
27419
27437
    break;
27420
27438
 
27421
27439
  case 1376:
27422
27440
 
27423
27441
/* Line 1455 of yacc.c  */
27424
 
#line 9162 "sql_yacc.yy"
 
27442
#line 9182 "sql_yacc.yy"
27425
27443
    { if (add_order_to_list(YYTHD, (yyvsp[(1) - (2)].item),(bool) (yyvsp[(2) - (2)].num))) MYSQL_YYABORT; }
27426
27444
    break;
27427
27445
 
27428
27446
  case 1377:
27429
27447
 
27430
27448
/* Line 1455 of yacc.c  */
27431
 
#line 9166 "sql_yacc.yy"
 
27449
#line 9186 "sql_yacc.yy"
27432
27450
    { (yyval.num) =  1; }
27433
27451
    break;
27434
27452
 
27435
27453
  case 1378:
27436
27454
 
27437
27455
/* Line 1455 of yacc.c  */
27438
 
#line 9167 "sql_yacc.yy"
 
27456
#line 9187 "sql_yacc.yy"
27439
27457
    { (yyval.num) =1; }
27440
27458
    break;
27441
27459
 
27442
27460
  case 1379:
27443
27461
 
27444
27462
/* Line 1455 of yacc.c  */
27445
 
#line 9168 "sql_yacc.yy"
 
27463
#line 9188 "sql_yacc.yy"
27446
27464
    { (yyval.num) =0; }
27447
27465
    break;
27448
27466
 
27449
27467
  case 1380:
27450
27468
 
27451
27469
/* Line 1455 of yacc.c  */
27452
 
#line 9173 "sql_yacc.yy"
 
27470
#line 9193 "sql_yacc.yy"
27453
27471
    {
27454
27472
            LEX *lex= Lex;
27455
27473
            SELECT_LEX *sel= lex->current_select;
27461
27479
  case 1381:
27462
27480
 
27463
27481
/* Line 1455 of yacc.c  */
27464
 
#line 9179 "sql_yacc.yy"
 
27482
#line 9199 "sql_yacc.yy"
27465
27483
    {}
27466
27484
    break;
27467
27485
 
27468
27486
  case 1382:
27469
27487
 
27470
27488
/* Line 1455 of yacc.c  */
27471
 
#line 9183 "sql_yacc.yy"
 
27489
#line 9203 "sql_yacc.yy"
27472
27490
    {}
27473
27491
    break;
27474
27492
 
27475
27493
  case 1383:
27476
27494
 
27477
27495
/* Line 1455 of yacc.c  */
27478
 
#line 9184 "sql_yacc.yy"
 
27496
#line 9204 "sql_yacc.yy"
27479
27497
    {}
27480
27498
    break;
27481
27499
 
27482
27500
  case 1384:
27483
27501
 
27484
27502
/* Line 1455 of yacc.c  */
27485
 
#line 9188 "sql_yacc.yy"
 
27503
#line 9208 "sql_yacc.yy"
27486
27504
    {}
27487
27505
    break;
27488
27506
 
27489
27507
  case 1385:
27490
27508
 
27491
27509
/* Line 1455 of yacc.c  */
27492
 
#line 9193 "sql_yacc.yy"
 
27510
#line 9213 "sql_yacc.yy"
27493
27511
    {
27494
27512
            SELECT_LEX *sel= Select;
27495
27513
            sel->select_limit= (yyvsp[(1) - (1)].item);
27501
27519
  case 1386:
27502
27520
 
27503
27521
/* Line 1455 of yacc.c  */
27504
 
#line 9200 "sql_yacc.yy"
 
27522
#line 9220 "sql_yacc.yy"
27505
27523
    {
27506
27524
            SELECT_LEX *sel= Select;
27507
27525
            sel->select_limit= (yyvsp[(3) - (3)].item);
27513
27531
  case 1387:
27514
27532
 
27515
27533
/* Line 1455 of yacc.c  */
27516
 
#line 9207 "sql_yacc.yy"
 
27534
#line 9227 "sql_yacc.yy"
27517
27535
    {
27518
27536
            SELECT_LEX *sel= Select;
27519
27537
            sel->select_limit= (yyvsp[(1) - (3)].item);
27525
27543
  case 1388:
27526
27544
 
27527
27545
/* Line 1455 of yacc.c  */
27528
 
#line 9217 "sql_yacc.yy"
 
27546
#line 9237 "sql_yacc.yy"
27529
27547
    {
27530
27548
          ((Item_param *) (yyvsp[(1) - (1)].item))->limit_clause_param= TRUE;
27531
27549
        }
27534
27552
  case 1389:
27535
27553
 
27536
27554
/* Line 1455 of yacc.c  */
27537
 
#line 9221 "sql_yacc.yy"
 
27555
#line 9241 "sql_yacc.yy"
27538
27556
    {
27539
27557
            (yyval.item)= new (YYTHD->mem_root) Item_uint((yyvsp[(1) - (1)].lex_str).str, (yyvsp[(1) - (1)].lex_str).length);
27540
27558
            if ((yyval.item) == NULL)
27545
27563
  case 1390:
27546
27564
 
27547
27565
/* Line 1455 of yacc.c  */
27548
 
#line 9227 "sql_yacc.yy"
 
27566
#line 9247 "sql_yacc.yy"
27549
27567
    {
27550
27568
            (yyval.item)= new (YYTHD->mem_root) Item_uint((yyvsp[(1) - (1)].lex_str).str, (yyvsp[(1) - (1)].lex_str).length);
27551
27569
            if ((yyval.item) == NULL)
27556
27574
  case 1391:
27557
27575
 
27558
27576
/* Line 1455 of yacc.c  */
27559
 
#line 9233 "sql_yacc.yy"
 
27577
#line 9253 "sql_yacc.yy"
27560
27578
    {
27561
27579
            (yyval.item)= new (YYTHD->mem_root) Item_uint((yyvsp[(1) - (1)].lex_str).str, (yyvsp[(1) - (1)].lex_str).length);
27562
27580
            if ((yyval.item) == NULL)
27567
27585
  case 1392:
27568
27586
 
27569
27587
/* Line 1455 of yacc.c  */
27570
 
#line 9242 "sql_yacc.yy"
 
27588
#line 9262 "sql_yacc.yy"
27571
27589
    {
27572
27590
            LEX *lex=Lex;
27573
27591
            lex->current_select->select_limit= 0;
27577
27595
  case 1393:
27578
27596
 
27579
27597
/* Line 1455 of yacc.c  */
27580
 
#line 9247 "sql_yacc.yy"
 
27598
#line 9267 "sql_yacc.yy"
27581
27599
    {
27582
27600
            SELECT_LEX *sel= Select;
27583
27601
            sel->select_limit= (yyvsp[(2) - (2)].item);
27588
27606
  case 1394:
27589
27607
 
27590
27608
/* Line 1455 of yacc.c  */
27591
 
#line 9255 "sql_yacc.yy"
 
27609
#line 9275 "sql_yacc.yy"
27592
27610
    { int error; (yyval.ulong_num)= (ulong) my_strtoll10((yyvsp[(1) - (1)].lex_str).str, (char**) 0, &error); }
27593
27611
    break;
27594
27612
 
27595
27613
  case 1395:
27596
27614
 
27597
27615
/* Line 1455 of yacc.c  */
27598
 
#line 9256 "sql_yacc.yy"
 
27616
#line 9276 "sql_yacc.yy"
27599
27617
    { (yyval.ulong_num)= (ulong) strtol((yyvsp[(1) - (1)].lex_str).str, (char**) 0, 16); }
27600
27618
    break;
27601
27619
 
27602
27620
  case 1396:
27603
27621
 
27604
27622
/* Line 1455 of yacc.c  */
27605
 
#line 9257 "sql_yacc.yy"
 
27623
#line 9277 "sql_yacc.yy"
27606
27624
    { int error; (yyval.ulong_num)= (ulong) my_strtoll10((yyvsp[(1) - (1)].lex_str).str, (char**) 0, &error); }
27607
27625
    break;
27608
27626
 
27609
27627
  case 1397:
27610
27628
 
27611
27629
/* Line 1455 of yacc.c  */
27612
 
#line 9258 "sql_yacc.yy"
 
27630
#line 9278 "sql_yacc.yy"
27613
27631
    { int error; (yyval.ulong_num)= (ulong) my_strtoll10((yyvsp[(1) - (1)].lex_str).str, (char**) 0, &error); }
27614
27632
    break;
27615
27633
 
27616
27634
  case 1398:
27617
27635
 
27618
27636
/* Line 1455 of yacc.c  */
27619
 
#line 9259 "sql_yacc.yy"
 
27637
#line 9279 "sql_yacc.yy"
27620
27638
    { int error; (yyval.ulong_num)= (ulong) my_strtoll10((yyvsp[(1) - (1)].lex_str).str, (char**) 0, &error); }
27621
27639
    break;
27622
27640
 
27623
27641
  case 1399:
27624
27642
 
27625
27643
/* Line 1455 of yacc.c  */
27626
 
#line 9260 "sql_yacc.yy"
 
27644
#line 9280 "sql_yacc.yy"
27627
27645
    { int error; (yyval.ulong_num)= (ulong) my_strtoll10((yyvsp[(1) - (1)].lex_str).str, (char**) 0, &error); }
27628
27646
    break;
27629
27647
 
27630
27648
  case 1400:
27631
27649
 
27632
27650
/* Line 1455 of yacc.c  */
27633
 
#line 9264 "sql_yacc.yy"
 
27651
#line 9284 "sql_yacc.yy"
27634
27652
    { int error; (yyval.ulong_num)= (ulong) my_strtoll10((yyvsp[(1) - (1)].lex_str).str, (char**) 0, &error); }
27635
27653
    break;
27636
27654
 
27637
27655
  case 1401:
27638
27656
 
27639
27657
/* Line 1455 of yacc.c  */
27640
 
#line 9265 "sql_yacc.yy"
 
27658
#line 9285 "sql_yacc.yy"
27641
27659
    { (yyval.ulong_num)= (ulong) strtol((yyvsp[(1) - (1)].lex_str).str, (char**) 0, 16); }
27642
27660
    break;
27643
27661
 
27644
27662
  case 1402:
27645
27663
 
27646
27664
/* Line 1455 of yacc.c  */
27647
 
#line 9266 "sql_yacc.yy"
 
27665
#line 9286 "sql_yacc.yy"
27648
27666
    { int error; (yyval.ulong_num)= (ulong) my_strtoll10((yyvsp[(1) - (1)].lex_str).str, (char**) 0, &error); }
27649
27667
    break;
27650
27668
 
27651
27669
  case 1403:
27652
27670
 
27653
27671
/* Line 1455 of yacc.c  */
27654
 
#line 9267 "sql_yacc.yy"
 
27672
#line 9287 "sql_yacc.yy"
27655
27673
    { int error; (yyval.ulong_num)= (ulong) my_strtoll10((yyvsp[(1) - (1)].lex_str).str, (char**) 0, &error); }
27656
27674
    break;
27657
27675
 
27658
27676
  case 1404:
27659
27677
 
27660
27678
/* Line 1455 of yacc.c  */
27661
 
#line 9268 "sql_yacc.yy"
 
27679
#line 9288 "sql_yacc.yy"
27662
27680
    { MYSQL_YYABORT; }
27663
27681
    break;
27664
27682
 
27665
27683
  case 1405:
27666
27684
 
27667
27685
/* Line 1455 of yacc.c  */
27668
 
#line 9272 "sql_yacc.yy"
 
27686
#line 9292 "sql_yacc.yy"
27669
27687
    { int error; (yyval.ulonglong_number)= (ulonglong) my_strtoll10((yyvsp[(1) - (1)].lex_str).str, (char**) 0, &error); }
27670
27688
    break;
27671
27689
 
27672
27690
  case 1406:
27673
27691
 
27674
27692
/* Line 1455 of yacc.c  */
27675
 
#line 9273 "sql_yacc.yy"
 
27693
#line 9293 "sql_yacc.yy"
27676
27694
    { int error; (yyval.ulonglong_number)= (ulonglong) my_strtoll10((yyvsp[(1) - (1)].lex_str).str, (char**) 0, &error); }
27677
27695
    break;
27678
27696
 
27679
27697
  case 1407:
27680
27698
 
27681
27699
/* Line 1455 of yacc.c  */
27682
 
#line 9274 "sql_yacc.yy"
 
27700
#line 9294 "sql_yacc.yy"
27683
27701
    { int error; (yyval.ulonglong_number)= (ulonglong) my_strtoll10((yyvsp[(1) - (1)].lex_str).str, (char**) 0, &error); }
27684
27702
    break;
27685
27703
 
27686
27704
  case 1408:
27687
27705
 
27688
27706
/* Line 1455 of yacc.c  */
27689
 
#line 9275 "sql_yacc.yy"
 
27707
#line 9295 "sql_yacc.yy"
27690
27708
    { int error; (yyval.ulonglong_number)= (ulonglong) my_strtoll10((yyvsp[(1) - (1)].lex_str).str, (char**) 0, &error); }
27691
27709
    break;
27692
27710
 
27693
27711
  case 1409:
27694
27712
 
27695
27713
/* Line 1455 of yacc.c  */
27696
 
#line 9276 "sql_yacc.yy"
 
27714
#line 9296 "sql_yacc.yy"
27697
27715
    { int error; (yyval.ulonglong_number)= (ulonglong) my_strtoll10((yyvsp[(1) - (1)].lex_str).str, (char**) 0, &error); }
27698
27716
    break;
27699
27717
 
27700
27718
  case 1410:
27701
27719
 
27702
27720
/* Line 1455 of yacc.c  */
27703
 
#line 9280 "sql_yacc.yy"
 
27721
#line 9300 "sql_yacc.yy"
27704
27722
    { int error; (yyval.ulonglong_number)= (ulonglong) my_strtoll10((yyvsp[(1) - (1)].lex_str).str, (char**) 0, &error); }
27705
27723
    break;
27706
27724
 
27707
27725
  case 1411:
27708
27726
 
27709
27727
/* Line 1455 of yacc.c  */
27710
 
#line 9281 "sql_yacc.yy"
 
27728
#line 9301 "sql_yacc.yy"
27711
27729
    { int error; (yyval.ulonglong_number)= (ulonglong) my_strtoll10((yyvsp[(1) - (1)].lex_str).str, (char**) 0, &error); }
27712
27730
    break;
27713
27731
 
27714
27732
  case 1412:
27715
27733
 
27716
27734
/* Line 1455 of yacc.c  */
27717
 
#line 9282 "sql_yacc.yy"
 
27735
#line 9302 "sql_yacc.yy"
27718
27736
    { int error; (yyval.ulonglong_number)= (ulonglong) my_strtoll10((yyvsp[(1) - (1)].lex_str).str, (char**) 0, &error); }
27719
27737
    break;
27720
27738
 
27721
27739
  case 1413:
27722
27740
 
27723
27741
/* Line 1455 of yacc.c  */
27724
 
#line 9283 "sql_yacc.yy"
 
27742
#line 9303 "sql_yacc.yy"
27725
27743
    { MYSQL_YYABORT; }
27726
27744
    break;
27727
27745
 
27728
27746
  case 1414:
27729
27747
 
27730
27748
/* Line 1455 of yacc.c  */
27731
 
#line 9288 "sql_yacc.yy"
 
27749
#line 9308 "sql_yacc.yy"
27732
27750
    { my_parse_error(ER(ER_ONLY_INTEGERS_ALLOWED)); }
27733
27751
    break;
27734
27752
 
27735
27753
  case 1418:
27736
27754
 
27737
27755
/* Line 1455 of yacc.c  */
27738
 
#line 9299 "sql_yacc.yy"
 
27756
#line 9319 "sql_yacc.yy"
27739
27757
    {
27740
27758
            LEX *lex=Lex;
27741
27759
 
27767
27785
  case 1420:
27768
27786
 
27769
27787
/* Line 1455 of yacc.c  */
27770
 
#line 9329 "sql_yacc.yy"
 
27788
#line 9349 "sql_yacc.yy"
27771
27789
    {}
27772
27790
    break;
27773
27791
 
27774
27792
  case 1421:
27775
27793
 
27776
27794
/* Line 1455 of yacc.c  */
27777
 
#line 9330 "sql_yacc.yy"
 
27795
#line 9350 "sql_yacc.yy"
27778
27796
    {}
27779
27797
    break;
27780
27798
 
27781
27799
  case 1424:
27782
27800
 
27783
27801
/* Line 1455 of yacc.c  */
27784
 
#line 9340 "sql_yacc.yy"
 
27802
#line 9360 "sql_yacc.yy"
27785
27803
    {
27786
27804
            THD *thd= YYTHD;
27787
27805
 
27795
27813
  case 1425:
27796
27814
 
27797
27815
/* Line 1455 of yacc.c  */
27798
 
#line 9351 "sql_yacc.yy"
 
27816
#line 9371 "sql_yacc.yy"
27799
27817
    {
27800
27818
            LEX *lex=Lex;
27801
27819
            if (!lex->describe && 
27807
27825
  case 1426:
27808
27826
 
27809
27827
/* Line 1455 of yacc.c  */
27810
 
#line 9358 "sql_yacc.yy"
 
27828
#line 9378 "sql_yacc.yy"
27811
27829
    {}
27812
27830
    break;
27813
27831
 
27814
27832
  case 1428:
27815
27833
 
27816
27834
/* Line 1455 of yacc.c  */
27817
 
#line 9363 "sql_yacc.yy"
 
27835
#line 9383 "sql_yacc.yy"
27818
27836
    {}
27819
27837
    break;
27820
27838
 
27821
27839
  case 1429:
27822
27840
 
27823
27841
/* Line 1455 of yacc.c  */
27824
 
#line 9368 "sql_yacc.yy"
 
27842
#line 9388 "sql_yacc.yy"
27825
27843
    {
27826
27844
            LEX *lex=Lex;
27827
27845
            if (lex->result) 
27845
27863
  case 1430:
27846
27864
 
27847
27865
/* Line 1455 of yacc.c  */
27848
 
#line 9387 "sql_yacc.yy"
 
27866
#line 9407 "sql_yacc.yy"
27849
27867
    {
27850
27868
            LEX *lex=Lex;
27851
27869
            sp_variable_t *t;
27879
27897
  case 1431:
27880
27898
 
27881
27899
/* Line 1455 of yacc.c  */
27882
 
#line 9419 "sql_yacc.yy"
 
27900
#line 9439 "sql_yacc.yy"
27883
27901
    {
27884
27902
            if (! Lex->parsing_options.allows_select_into)
27885
27903
            {
27892
27910
  case 1433:
27893
27911
 
27894
27912
/* Line 1455 of yacc.c  */
27895
 
#line 9431 "sql_yacc.yy"
 
27913
#line 9451 "sql_yacc.yy"
27896
27914
    {
27897
27915
            LEX *lex= Lex;
27898
27916
            lex->uncacheable(UNCACHEABLE_SIDEEFFECT);
27905
27923
  case 1434:
27906
27924
 
27907
27925
/* Line 1455 of yacc.c  */
27908
 
#line 9439 "sql_yacc.yy"
 
27926
#line 9459 "sql_yacc.yy"
27909
27927
    { Lex->exchange->cs= (yyvsp[(4) - (4)].charset); }
27910
27928
    break;
27911
27929
 
27912
27930
  case 1436:
27913
27931
 
27914
27932
/* Line 1455 of yacc.c  */
27915
 
#line 9442 "sql_yacc.yy"
 
27933
#line 9462 "sql_yacc.yy"
27916
27934
    {
27917
27935
            LEX *lex=Lex;
27918
27936
            if (!lex->describe)
27929
27947
  case 1437:
27930
27948
 
27931
27949
/* Line 1455 of yacc.c  */
27932
 
#line 9454 "sql_yacc.yy"
 
27950
#line 9474 "sql_yacc.yy"
27933
27951
    {
27934
27952
            Lex->uncacheable(UNCACHEABLE_SIDEEFFECT);
27935
27953
          }
27938
27956
  case 1438:
27939
27957
 
27940
27958
/* Line 1455 of yacc.c  */
27941
 
#line 9465 "sql_yacc.yy"
 
27959
#line 9485 "sql_yacc.yy"
27942
27960
    {
27943
27961
            LEX *lex=Lex;
27944
27962
            lex->sql_command = SQLCOM_DO;
27949
27967
  case 1439:
27950
27968
 
27951
27969
/* Line 1455 of yacc.c  */
27952
 
#line 9471 "sql_yacc.yy"
 
27970
#line 9491 "sql_yacc.yy"
27953
27971
    {
27954
27972
            Lex->insert_list= (yyvsp[(3) - (3)].item_list);
27955
27973
          }
27958
27976
  case 1440:
27959
27977
 
27960
27978
/* Line 1455 of yacc.c  */
27961
 
#line 9482 "sql_yacc.yy"
 
27979
#line 9502 "sql_yacc.yy"
27962
27980
    {
27963
27981
            LEX *lex=Lex;
27964
27982
            lex->sql_command = SQLCOM_DROP_TABLE;
27970
27988
  case 1441:
27971
27989
 
27972
27990
/* Line 1455 of yacc.c  */
27973
 
#line 9488 "sql_yacc.yy"
 
27991
#line 9508 "sql_yacc.yy"
27974
27992
    {}
27975
27993
    break;
27976
27994
 
27977
27995
  case 1442:
27978
27996
 
27979
27997
/* Line 1455 of yacc.c  */
27980
 
#line 9489 "sql_yacc.yy"
 
27998
#line 9509 "sql_yacc.yy"
27981
27999
    {
27982
28000
            LEX *lex=Lex;
27983
28001
            Alter_drop *ad= new Alter_drop(Alter_drop::KEY, (yyvsp[(3) - (6)].lex_str).str);
27996
28014
  case 1443:
27997
28015
 
27998
28016
/* Line 1455 of yacc.c  */
27999
 
#line 9503 "sql_yacc.yy"
 
28017
#line 9523 "sql_yacc.yy"
28000
28018
    {
28001
28019
            LEX *lex=Lex;
28002
28020
            lex->sql_command= SQLCOM_DROP_DB;
28008
28026
  case 1444:
28009
28027
 
28010
28028
/* Line 1455 of yacc.c  */
28011
 
#line 9510 "sql_yacc.yy"
 
28029
#line 9530 "sql_yacc.yy"
28012
28030
    {
28013
28031
            THD *thd= YYTHD;
28014
28032
            LEX *lex= thd->lex;
28036
28054
  case 1445:
28037
28055
 
28038
28056
/* Line 1455 of yacc.c  */
28039
 
#line 9533 "sql_yacc.yy"
 
28057
#line 9553 "sql_yacc.yy"
28040
28058
    {
28041
28059
            THD *thd= YYTHD;
28042
28060
            LEX *lex= thd->lex;
28062
28080
  case 1446:
28063
28081
 
28064
28082
/* Line 1455 of yacc.c  */
28065
 
#line 9554 "sql_yacc.yy"
 
28083
#line 9574 "sql_yacc.yy"
28066
28084
    {
28067
28085
            LEX *lex=Lex;
28068
28086
            if (lex->sphead)
28079
28097
  case 1447:
28080
28098
 
28081
28099
/* Line 1455 of yacc.c  */
28082
 
#line 9566 "sql_yacc.yy"
 
28100
#line 9586 "sql_yacc.yy"
28083
28101
    {
28084
28102
            Lex->sql_command = SQLCOM_DROP_USER;
28085
28103
          }
28088
28106
  case 1448:
28089
28107
 
28090
28108
/* Line 1455 of yacc.c  */
28091
 
#line 9570 "sql_yacc.yy"
 
28109
#line 9590 "sql_yacc.yy"
28092
28110
    {
28093
28111
            LEX *lex= Lex;
28094
28112
            lex->sql_command= SQLCOM_DROP_VIEW;
28099
28117
  case 1449:
28100
28118
 
28101
28119
/* Line 1455 of yacc.c  */
28102
 
#line 9576 "sql_yacc.yy"
 
28120
#line 9596 "sql_yacc.yy"
28103
28121
    {
28104
28122
            Lex->drop_if_exists= (yyvsp[(3) - (4)].num);
28105
28123
            Lex->spname= (yyvsp[(4) - (4)].spname);
28110
28128
  case 1450:
28111
28129
 
28112
28130
/* Line 1455 of yacc.c  */
28113
 
#line 9582 "sql_yacc.yy"
 
28131
#line 9602 "sql_yacc.yy"
28114
28132
    {
28115
28133
            LEX *lex= Lex;
28116
28134
            lex->sql_command= SQLCOM_DROP_TRIGGER;
28122
28140
  case 1451:
28123
28141
 
28124
28142
/* Line 1455 of yacc.c  */
28125
 
#line 9589 "sql_yacc.yy"
 
28143
#line 9609 "sql_yacc.yy"
28126
28144
    {
28127
28145
            LEX *lex= Lex;
28128
28146
            lex->alter_tablespace_info->ts_cmd_type= DROP_TABLESPACE;
28132
28150
  case 1452:
28133
28151
 
28134
28152
/* Line 1455 of yacc.c  */
28135
 
#line 9594 "sql_yacc.yy"
 
28153
#line 9614 "sql_yacc.yy"
28136
28154
    {
28137
28155
            LEX *lex= Lex;
28138
28156
            lex->alter_tablespace_info->ts_cmd_type= DROP_LOGFILE_GROUP;
28142
28160
  case 1453:
28143
28161
 
28144
28162
/* Line 1455 of yacc.c  */
28145
 
#line 9599 "sql_yacc.yy"
 
28163
#line 9619 "sql_yacc.yy"
28146
28164
    {
28147
28165
            Lex->sql_command = SQLCOM_DROP_SERVER;
28148
28166
            Lex->drop_if_exists= (yyvsp[(3) - (4)].num);
28154
28172
  case 1456:
28155
28173
 
28156
28174
/* Line 1455 of yacc.c  */
28157
 
#line 9614 "sql_yacc.yy"
 
28175
#line 9634 "sql_yacc.yy"
28158
28176
    {
28159
28177
            if (!Select->add_table_to_list(YYTHD, (yyvsp[(1) - (1)].table), NULL, TL_OPTION_UPDATING))
28160
28178
              MYSQL_YYABORT;
28164
28182
  case 1459:
28165
28183
 
28166
28184
/* Line 1455 of yacc.c  */
28167
 
#line 9627 "sql_yacc.yy"
 
28185
#line 9647 "sql_yacc.yy"
28168
28186
    {
28169
28187
            if (!Select->add_table_to_list(YYTHD, (yyvsp[(1) - (1)].table), NULL,
28170
28188
                                           TL_OPTION_UPDATING | TL_OPTION_ALIAS,
28176
28194
  case 1460:
28177
28195
 
28178
28196
/* Line 1455 of yacc.c  */
28179
 
#line 9636 "sql_yacc.yy"
 
28197
#line 9656 "sql_yacc.yy"
28180
28198
    { (yyval.num)= 0; }
28181
28199
    break;
28182
28200
 
28183
28201
  case 1461:
28184
28202
 
28185
28203
/* Line 1455 of yacc.c  */
28186
 
#line 9637 "sql_yacc.yy"
 
28204
#line 9657 "sql_yacc.yy"
28187
28205
    { (yyval.num)= 1; }
28188
28206
    break;
28189
28207
 
28190
28208
  case 1462:
28191
28209
 
28192
28210
/* Line 1455 of yacc.c  */
28193
 
#line 9641 "sql_yacc.yy"
 
28211
#line 9661 "sql_yacc.yy"
28194
28212
    { (yyval.num)= 0; }
28195
28213
    break;
28196
28214
 
28197
28215
  case 1463:
28198
28216
 
28199
28217
/* Line 1455 of yacc.c  */
28200
 
#line 9642 "sql_yacc.yy"
 
28218
#line 9662 "sql_yacc.yy"
28201
28219
    { (yyval.num)= 1; }
28202
28220
    break;
28203
28221
 
28204
28222
  case 1464:
28205
28223
 
28206
28224
/* Line 1455 of yacc.c  */
28207
 
#line 9650 "sql_yacc.yy"
 
28225
#line 9670 "sql_yacc.yy"
28208
28226
    {
28209
28227
            LEX *lex= Lex;
28210
28228
            lex->sql_command= SQLCOM_INSERT;
28218
28236
  case 1465:
28219
28237
 
28220
28238
/* Line 1455 of yacc.c  */
28221
 
#line 9660 "sql_yacc.yy"
 
28239
#line 9680 "sql_yacc.yy"
28222
28240
    {
28223
28241
            Select->set_lock_for_tables((yyvsp[(3) - (5)].lock_type));
28224
28242
            Lex->current_select= &Lex->select_lex;
28228
28246
  case 1466:
28229
28247
 
28230
28248
/* Line 1455 of yacc.c  */
28231
 
#line 9665 "sql_yacc.yy"
 
28249
#line 9685 "sql_yacc.yy"
28232
28250
    {}
28233
28251
    break;
28234
28252
 
28235
28253
  case 1467:
28236
28254
 
28237
28255
/* Line 1455 of yacc.c  */
28238
 
#line 9670 "sql_yacc.yy"
 
28256
#line 9690 "sql_yacc.yy"
28239
28257
    {
28240
28258
            LEX *lex=Lex;
28241
28259
            lex->sql_command = SQLCOM_REPLACE;
28247
28265
  case 1468:
28248
28266
 
28249
28267
/* Line 1455 of yacc.c  */
28250
 
#line 9677 "sql_yacc.yy"
 
28268
#line 9697 "sql_yacc.yy"
28251
28269
    {
28252
28270
            Select->set_lock_for_tables((yyvsp[(3) - (4)].lock_type));
28253
28271
            Lex->current_select= &Lex->select_lex;
28257
28275
  case 1469:
28258
28276
 
28259
28277
/* Line 1455 of yacc.c  */
28260
 
#line 9682 "sql_yacc.yy"
 
28278
#line 9702 "sql_yacc.yy"
28261
28279
    {}
28262
28280
    break;
28263
28281
 
28264
28282
  case 1470:
28265
28283
 
28266
28284
/* Line 1455 of yacc.c  */
28267
 
#line 9687 "sql_yacc.yy"
 
28285
#line 9707 "sql_yacc.yy"
28268
28286
    {
28269
28287
#ifdef HAVE_QUERY_CACHE
28270
28288
            /*
28282
28300
  case 1471:
28283
28301
 
28284
28302
/* Line 1455 of yacc.c  */
28285
 
#line 9699 "sql_yacc.yy"
 
28303
#line 9719 "sql_yacc.yy"
28286
28304
    { (yyval.lock_type)= TL_WRITE_LOW_PRIORITY; }
28287
28305
    break;
28288
28306
 
28289
28307
  case 1472:
28290
28308
 
28291
28309
/* Line 1455 of yacc.c  */
28292
 
#line 9700 "sql_yacc.yy"
 
28310
#line 9720 "sql_yacc.yy"
28293
28311
    { (yyval.lock_type)= TL_WRITE_DELAYED; }
28294
28312
    break;
28295
28313
 
28296
28314
  case 1473:
28297
28315
 
28298
28316
/* Line 1455 of yacc.c  */
28299
 
#line 9701 "sql_yacc.yy"
 
28317
#line 9721 "sql_yacc.yy"
28300
28318
    { (yyval.lock_type)= TL_WRITE; }
28301
28319
    break;
28302
28320
 
28303
28321
  case 1474:
28304
28322
 
28305
28323
/* Line 1455 of yacc.c  */
28306
 
#line 9705 "sql_yacc.yy"
 
28324
#line 9725 "sql_yacc.yy"
28307
28325
    { (yyval.lock_type)= (yyvsp[(1) - (1)].lock_type); }
28308
28326
    break;
28309
28327
 
28310
28328
  case 1475:
28311
28329
 
28312
28330
/* Line 1455 of yacc.c  */
28313
 
#line 9706 "sql_yacc.yy"
 
28331
#line 9726 "sql_yacc.yy"
28314
28332
    { (yyval.lock_type)= TL_WRITE_DELAYED; }
28315
28333
    break;
28316
28334
 
28317
28335
  case 1476:
28318
28336
 
28319
28337
/* Line 1455 of yacc.c  */
28320
 
#line 9710 "sql_yacc.yy"
 
28338
#line 9730 "sql_yacc.yy"
28321
28339
    {}
28322
28340
    break;
28323
28341
 
28324
28342
  case 1477:
28325
28343
 
28326
28344
/* Line 1455 of yacc.c  */
28327
 
#line 9711 "sql_yacc.yy"
 
28345
#line 9731 "sql_yacc.yy"
28328
28346
    {}
28329
28347
    break;
28330
28348
 
28331
28349
  case 1478:
28332
28350
 
28333
28351
/* Line 1455 of yacc.c  */
28334
 
#line 9716 "sql_yacc.yy"
 
28352
#line 9736 "sql_yacc.yy"
28335
28353
    {
28336
28354
            LEX *lex=Lex;
28337
28355
            lex->field_list.empty();
28343
28361
  case 1479:
28344
28362
 
28345
28363
/* Line 1455 of yacc.c  */
28346
 
#line 9724 "sql_yacc.yy"
 
28364
#line 9744 "sql_yacc.yy"
28347
28365
    {}
28348
28366
    break;
28349
28367
 
28350
28368
  case 1480:
28351
28369
 
28352
28370
/* Line 1455 of yacc.c  */
28353
 
#line 9725 "sql_yacc.yy"
 
28371
#line 9745 "sql_yacc.yy"
28354
28372
    {}
28355
28373
    break;
28356
28374
 
28357
28375
  case 1481:
28358
28376
 
28359
28377
/* Line 1455 of yacc.c  */
28360
 
#line 9726 "sql_yacc.yy"
 
28378
#line 9746 "sql_yacc.yy"
28361
28379
    {}
28362
28380
    break;
28363
28381
 
28364
28382
  case 1482:
28365
28383
 
28366
28384
/* Line 1455 of yacc.c  */
28367
 
#line 9728 "sql_yacc.yy"
 
28385
#line 9748 "sql_yacc.yy"
28368
28386
    {
28369
28387
            LEX *lex=Lex;
28370
28388
            if (!(lex->insert_list = new List_item) ||
28376
28394
  case 1484:
28377
28395
 
28378
28396
/* Line 1455 of yacc.c  */
28379
 
#line 9738 "sql_yacc.yy"
 
28397
#line 9758 "sql_yacc.yy"
28380
28398
    { Lex->field_list.push_back((yyvsp[(3) - (3)].item)); }
28381
28399
    break;
28382
28400
 
28383
28401
  case 1485:
28384
28402
 
28385
28403
/* Line 1455 of yacc.c  */
28386
 
#line 9739 "sql_yacc.yy"
 
28404
#line 9759 "sql_yacc.yy"
28387
28405
    { Lex->field_list.push_back((yyvsp[(1) - (1)].item)); }
28388
28406
    break;
28389
28407
 
28390
28408
  case 1486:
28391
28409
 
28392
28410
/* Line 1455 of yacc.c  */
28393
 
#line 9743 "sql_yacc.yy"
 
28411
#line 9763 "sql_yacc.yy"
28394
28412
    {}
28395
28413
    break;
28396
28414
 
28397
28415
  case 1487:
28398
28416
 
28399
28417
/* Line 1455 of yacc.c  */
28400
 
#line 9744 "sql_yacc.yy"
 
28418
#line 9764 "sql_yacc.yy"
28401
28419
    {}
28402
28420
    break;
28403
28421
 
28404
28422
  case 1488:
28405
28423
 
28406
28424
/* Line 1455 of yacc.c  */
28407
 
#line 9746 "sql_yacc.yy"
 
28425
#line 9766 "sql_yacc.yy"
28408
28426
    { Select->set_braces(0);}
28409
28427
    break;
28410
28428
 
28411
28429
  case 1489:
28412
28430
 
28413
28431
/* Line 1455 of yacc.c  */
28414
 
#line 9747 "sql_yacc.yy"
 
28432
#line 9767 "sql_yacc.yy"
28415
28433
    {}
28416
28434
    break;
28417
28435
 
28418
28436
  case 1490:
28419
28437
 
28420
28438
/* Line 1455 of yacc.c  */
28421
 
#line 9749 "sql_yacc.yy"
 
28439
#line 9769 "sql_yacc.yy"
28422
28440
    { Select->set_braces(1);}
28423
28441
    break;
28424
28442
 
28425
28443
  case 1491:
28426
28444
 
28427
28445
/* Line 1455 of yacc.c  */
28428
 
#line 9750 "sql_yacc.yy"
 
28446
#line 9770 "sql_yacc.yy"
28429
28447
    {}
28430
28448
    break;
28431
28449
 
28432
28450
  case 1496:
28433
28451
 
28434
28452
/* Line 1455 of yacc.c  */
28435
 
#line 9765 "sql_yacc.yy"
 
28453
#line 9785 "sql_yacc.yy"
28436
28454
    {
28437
28455
            LEX *lex=Lex;
28438
28456
            if (lex->field_list.push_back((yyvsp[(1) - (3)].item)) ||
28444
28462
  case 1497:
28445
28463
 
28446
28464
/* Line 1455 of yacc.c  */
28447
 
#line 9774 "sql_yacc.yy"
 
28465
#line 9794 "sql_yacc.yy"
28448
28466
    {}
28449
28467
    break;
28450
28468
 
28451
28469
  case 1498:
28452
28470
 
28453
28471
/* Line 1455 of yacc.c  */
28454
 
#line 9775 "sql_yacc.yy"
 
28472
#line 9795 "sql_yacc.yy"
28455
28473
    {}
28456
28474
    break;
28457
28475
 
28458
28476
  case 1499:
28459
28477
 
28460
28478
/* Line 1455 of yacc.c  */
28461
 
#line 9779 "sql_yacc.yy"
 
28479
#line 9799 "sql_yacc.yy"
28462
28480
    {}
28463
28481
    break;
28464
28482
 
28465
28483
  case 1500:
28466
28484
 
28467
28485
/* Line 1455 of yacc.c  */
28468
 
#line 9780 "sql_yacc.yy"
 
28486
#line 9800 "sql_yacc.yy"
28469
28487
    {}
28470
28488
    break;
28471
28489
 
28472
28490
  case 1501:
28473
28491
 
28474
28492
/* Line 1455 of yacc.c  */
28475
 
#line 9785 "sql_yacc.yy"
 
28493
#line 9805 "sql_yacc.yy"
28476
28494
    {
28477
28495
              if (!(Lex->insert_list = new List_item))
28478
28496
                MYSQL_YYABORT;
28482
28500
  case 1502:
28483
28501
 
28484
28502
/* Line 1455 of yacc.c  */
28485
 
#line 9790 "sql_yacc.yy"
 
28503
#line 9810 "sql_yacc.yy"
28486
28504
    {
28487
28505
            LEX *lex=Lex;
28488
28506
            if (lex->many_values.push_back(lex->insert_list))
28493
28511
  case 1503:
28494
28512
 
28495
28513
/* Line 1455 of yacc.c  */
28496
 
#line 9798 "sql_yacc.yy"
 
28514
#line 9818 "sql_yacc.yy"
28497
28515
    {}
28498
28516
    break;
28499
28517
 
28500
28518
  case 1505:
28501
28519
 
28502
28520
/* Line 1455 of yacc.c  */
28503
 
#line 9804 "sql_yacc.yy"
 
28521
#line 9824 "sql_yacc.yy"
28504
28522
    {
28505
28523
            if (Lex->insert_list->push_back((yyvsp[(3) - (3)].item)))
28506
28524
              MYSQL_YYABORT;
28510
28528
  case 1506:
28511
28529
 
28512
28530
/* Line 1455 of yacc.c  */
28513
 
#line 9809 "sql_yacc.yy"
 
28531
#line 9829 "sql_yacc.yy"
28514
28532
    {
28515
28533
            if (Lex->insert_list->push_back((yyvsp[(1) - (1)].item)))
28516
28534
              MYSQL_YYABORT;
28520
28538
  case 1507:
28521
28539
 
28522
28540
/* Line 1455 of yacc.c  */
28523
 
#line 9816 "sql_yacc.yy"
 
28541
#line 9836 "sql_yacc.yy"
28524
28542
    { (yyval.item)= (yyvsp[(1) - (1)].item);}
28525
28543
    break;
28526
28544
 
28527
28545
  case 1508:
28528
28546
 
28529
28547
/* Line 1455 of yacc.c  */
28530
 
#line 9818 "sql_yacc.yy"
 
28548
#line 9838 "sql_yacc.yy"
28531
28549
    {
28532
28550
            (yyval.item)= new (YYTHD->mem_root) Item_default_value(Lex->current_context());
28533
28551
            if ((yyval.item) == NULL)
28538
28556
  case 1510:
28539
28557
 
28540
28558
/* Line 1455 of yacc.c  */
28541
 
#line 9827 "sql_yacc.yy"
 
28559
#line 9847 "sql_yacc.yy"
28542
28560
    { Lex->duplicates= DUP_UPDATE; }
28543
28561
    break;
28544
28562
 
28545
28563
  case 1512:
28546
28564
 
28547
28565
/* Line 1455 of yacc.c  */
28548
 
#line 9835 "sql_yacc.yy"
 
28566
#line 9855 "sql_yacc.yy"
28549
28567
    {
28550
28568
            LEX *lex= Lex;
28551
28569
            mysql_init_select(lex);
28558
28576
  case 1513:
28559
28577
 
28560
28578
/* Line 1455 of yacc.c  */
28561
 
#line 9844 "sql_yacc.yy"
 
28579
#line 9864 "sql_yacc.yy"
28562
28580
    {
28563
28581
            LEX *lex= Lex;
28564
28582
            if (lex->select_lex.table_list.elements > 1)
28582
28600
  case 1514:
28583
28601
 
28584
28602
/* Line 1455 of yacc.c  */
28585
 
#line 9862 "sql_yacc.yy"
 
28603
#line 9882 "sql_yacc.yy"
28586
28604
    {}
28587
28605
    break;
28588
28606
 
28589
28607
  case 1517:
28590
28608
 
28591
28609
/* Line 1455 of yacc.c  */
28592
 
#line 9872 "sql_yacc.yy"
 
28610
#line 9892 "sql_yacc.yy"
28593
28611
    {
28594
28612
            if (add_item_to_list(YYTHD, (yyvsp[(1) - (3)].item)) || add_value_to_list(YYTHD, (yyvsp[(3) - (3)].item)))
28595
28613
              MYSQL_YYABORT;
28599
28617
  case 1520:
28600
28618
 
28601
28619
/* Line 1455 of yacc.c  */
28602
 
#line 9885 "sql_yacc.yy"
 
28620
#line 9905 "sql_yacc.yy"
28603
28621
    {
28604
28622
          LEX *lex= Lex;
28605
28623
          if (lex->update_list.push_back((yyvsp[(1) - (3)].item)) || 
28611
28629
  case 1521:
28612
28630
 
28613
28631
/* Line 1455 of yacc.c  */
28614
 
#line 9894 "sql_yacc.yy"
 
28632
#line 9914 "sql_yacc.yy"
28615
28633
    { (yyval.lock_type)= TL_WRITE_DEFAULT; }
28616
28634
    break;
28617
28635
 
28618
28636
  case 1522:
28619
28637
 
28620
28638
/* Line 1455 of yacc.c  */
28621
 
#line 9895 "sql_yacc.yy"
 
28639
#line 9915 "sql_yacc.yy"
28622
28640
    { (yyval.lock_type)= TL_WRITE_LOW_PRIORITY; }
28623
28641
    break;
28624
28642
 
28625
28643
  case 1523:
28626
28644
 
28627
28645
/* Line 1455 of yacc.c  */
28628
 
#line 9902 "sql_yacc.yy"
 
28646
#line 9922 "sql_yacc.yy"
28629
28647
    {
28630
28648
            LEX *lex= Lex;
28631
28649
            lex->sql_command= SQLCOM_DELETE;
28639
28657
  case 1524:
28640
28658
 
28641
28659
/* Line 1455 of yacc.c  */
28642
 
#line 9910 "sql_yacc.yy"
 
28660
#line 9930 "sql_yacc.yy"
28643
28661
    {}
28644
28662
    break;
28645
28663
 
28646
28664
  case 1525:
28647
28665
 
28648
28666
/* Line 1455 of yacc.c  */
28649
 
#line 9915 "sql_yacc.yy"
 
28667
#line 9935 "sql_yacc.yy"
28650
28668
    {
28651
28669
            if (!Select->add_table_to_list(YYTHD, (yyvsp[(2) - (2)].table), NULL, TL_OPTION_UPDATING,
28652
28670
                                           Lex->lock_option))
28657
28675
  case 1526:
28658
28676
 
28659
28677
/* Line 1455 of yacc.c  */
28660
 
#line 9921 "sql_yacc.yy"
 
28678
#line 9941 "sql_yacc.yy"
28661
28679
    {}
28662
28680
    break;
28663
28681
 
28664
28682
  case 1527:
28665
28683
 
28666
28684
/* Line 1455 of yacc.c  */
28667
 
#line 9923 "sql_yacc.yy"
 
28685
#line 9943 "sql_yacc.yy"
28668
28686
    { mysql_init_multi_delete(Lex); }
28669
28687
    break;
28670
28688
 
28671
28689
  case 1528:
28672
28690
 
28673
28691
/* Line 1455 of yacc.c  */
28674
 
#line 9925 "sql_yacc.yy"
 
28692
#line 9945 "sql_yacc.yy"
28675
28693
    { 
28676
28694
            if (multi_delete_set_locks_and_link_aux_tables(Lex))
28677
28695
              MYSQL_YYABORT;
28681
28699
  case 1529:
28682
28700
 
28683
28701
/* Line 1455 of yacc.c  */
28684
 
#line 9930 "sql_yacc.yy"
 
28702
#line 9950 "sql_yacc.yy"
28685
28703
    { mysql_init_multi_delete(Lex); }
28686
28704
    break;
28687
28705
 
28688
28706
  case 1530:
28689
28707
 
28690
28708
/* Line 1455 of yacc.c  */
28691
 
#line 9932 "sql_yacc.yy"
 
28709
#line 9952 "sql_yacc.yy"
28692
28710
    { 
28693
28711
            if (multi_delete_set_locks_and_link_aux_tables(Lex))
28694
28712
              MYSQL_YYABORT;
28698
28716
  case 1531:
28699
28717
 
28700
28718
/* Line 1455 of yacc.c  */
28701
 
#line 9939 "sql_yacc.yy"
 
28719
#line 9959 "sql_yacc.yy"
28702
28720
    {}
28703
28721
    break;
28704
28722
 
28705
28723
  case 1532:
28706
28724
 
28707
28725
/* Line 1455 of yacc.c  */
28708
 
#line 9940 "sql_yacc.yy"
 
28726
#line 9960 "sql_yacc.yy"
28709
28727
    {}
28710
28728
    break;
28711
28729
 
28712
28730
  case 1533:
28713
28731
 
28714
28732
/* Line 1455 of yacc.c  */
28715
 
#line 9945 "sql_yacc.yy"
 
28733
#line 9965 "sql_yacc.yy"
28716
28734
    {
28717
28735
            Table_ident *ti= new Table_ident((yyvsp[(1) - (3)].lex_str));
28718
28736
            if (ti == NULL)
28729
28747
  case 1534:
28730
28748
 
28731
28749
/* Line 1455 of yacc.c  */
28732
 
#line 9957 "sql_yacc.yy"
 
28750
#line 9977 "sql_yacc.yy"
28733
28751
    {
28734
28752
            Table_ident *ti= new Table_ident(YYTHD, (yyvsp[(1) - (5)].lex_str), (yyvsp[(3) - (5)].lex_str), 0);
28735
28753
            if (ti == NULL)
28746
28764
  case 1535:
28747
28765
 
28748
28766
/* Line 1455 of yacc.c  */
28749
 
#line 9971 "sql_yacc.yy"
 
28767
#line 9991 "sql_yacc.yy"
28750
28768
    {}
28751
28769
    break;
28752
28770
 
28753
28771
  case 1536:
28754
28772
 
28755
28773
/* Line 1455 of yacc.c  */
28756
 
#line 9972 "sql_yacc.yy"
 
28774
#line 9992 "sql_yacc.yy"
28757
28775
    {}
28758
28776
    break;
28759
28777
 
28760
28778
  case 1537:
28761
28779
 
28762
28780
/* Line 1455 of yacc.c  */
28763
 
#line 9976 "sql_yacc.yy"
 
28781
#line 9996 "sql_yacc.yy"
28764
28782
    {}
28765
28783
    break;
28766
28784
 
28767
28785
  case 1538:
28768
28786
 
28769
28787
/* Line 1455 of yacc.c  */
28770
 
#line 9977 "sql_yacc.yy"
 
28788
#line 9997 "sql_yacc.yy"
28771
28789
    {}
28772
28790
    break;
28773
28791
 
28774
28792
  case 1539:
28775
28793
 
28776
28794
/* Line 1455 of yacc.c  */
28777
 
#line 9981 "sql_yacc.yy"
 
28795
#line 10001 "sql_yacc.yy"
28778
28796
    { Select->options|= OPTION_QUICK; }
28779
28797
    break;
28780
28798
 
28781
28799
  case 1540:
28782
28800
 
28783
28801
/* Line 1455 of yacc.c  */
28784
 
#line 9982 "sql_yacc.yy"
 
28802
#line 10002 "sql_yacc.yy"
28785
28803
    { Lex->lock_option= TL_WRITE_LOW_PRIORITY; }
28786
28804
    break;
28787
28805
 
28788
28806
  case 1541:
28789
28807
 
28790
28808
/* Line 1455 of yacc.c  */
28791
 
#line 9983 "sql_yacc.yy"
 
28809
#line 10003 "sql_yacc.yy"
28792
28810
    { Lex->ignore= 1; }
28793
28811
    break;
28794
28812
 
28795
28813
  case 1542:
28796
28814
 
28797
28815
/* Line 1455 of yacc.c  */
28798
 
#line 9988 "sql_yacc.yy"
 
28816
#line 10008 "sql_yacc.yy"
28799
28817
    {
28800
28818
            LEX* lex= Lex;
28801
28819
            lex->sql_command= SQLCOM_TRUNCATE;
28808
28826
  case 1549:
28809
28827
 
28810
28828
/* Line 1455 of yacc.c  */
28811
 
#line 10012 "sql_yacc.yy"
 
28829
#line 10032 "sql_yacc.yy"
28812
28830
    {
28813
28831
      Lex->profile_options|= PROFILE_CPU;
28814
28832
    }
28817
28835
  case 1550:
28818
28836
 
28819
28837
/* Line 1455 of yacc.c  */
28820
 
#line 10016 "sql_yacc.yy"
 
28838
#line 10036 "sql_yacc.yy"
28821
28839
    {
28822
28840
      Lex->profile_options|= PROFILE_MEMORY;
28823
28841
    }
28826
28844
  case 1551:
28827
28845
 
28828
28846
/* Line 1455 of yacc.c  */
28829
 
#line 10020 "sql_yacc.yy"
 
28847
#line 10040 "sql_yacc.yy"
28830
28848
    {
28831
28849
      Lex->profile_options|= PROFILE_BLOCK_IO;
28832
28850
    }
28835
28853
  case 1552:
28836
28854
 
28837
28855
/* Line 1455 of yacc.c  */
28838
 
#line 10024 "sql_yacc.yy"
 
28856
#line 10044 "sql_yacc.yy"
28839
28857
    {
28840
28858
      Lex->profile_options|= PROFILE_CONTEXT;
28841
28859
    }
28844
28862
  case 1553:
28845
28863
 
28846
28864
/* Line 1455 of yacc.c  */
28847
 
#line 10028 "sql_yacc.yy"
 
28865
#line 10048 "sql_yacc.yy"
28848
28866
    {
28849
28867
      Lex->profile_options|= PROFILE_PAGE_FAULTS;
28850
28868
    }
28853
28871
  case 1554:
28854
28872
 
28855
28873
/* Line 1455 of yacc.c  */
28856
 
#line 10032 "sql_yacc.yy"
 
28874
#line 10052 "sql_yacc.yy"
28857
28875
    {
28858
28876
      Lex->profile_options|= PROFILE_IPC;
28859
28877
    }
28862
28880
  case 1555:
28863
28881
 
28864
28882
/* Line 1455 of yacc.c  */
28865
 
#line 10036 "sql_yacc.yy"
 
28883
#line 10056 "sql_yacc.yy"
28866
28884
    {
28867
28885
      Lex->profile_options|= PROFILE_SWAPS;
28868
28886
    }
28871
28889
  case 1556:
28872
28890
 
28873
28891
/* Line 1455 of yacc.c  */
28874
 
#line 10040 "sql_yacc.yy"
 
28892
#line 10060 "sql_yacc.yy"
28875
28893
    {
28876
28894
      Lex->profile_options|= PROFILE_SOURCE;
28877
28895
    }
28880
28898
  case 1557:
28881
28899
 
28882
28900
/* Line 1455 of yacc.c  */
28883
 
#line 10044 "sql_yacc.yy"
 
28901
#line 10064 "sql_yacc.yy"
28884
28902
    {
28885
28903
      Lex->profile_options|= PROFILE_ALL;
28886
28904
    }
28889
28907
  case 1558:
28890
28908
 
28891
28909
/* Line 1455 of yacc.c  */
28892
 
#line 10051 "sql_yacc.yy"
 
28910
#line 10071 "sql_yacc.yy"
28893
28911
    {
28894
28912
      Lex->profile_query_id= 0;
28895
28913
    }
28898
28916
  case 1559:
28899
28917
 
28900
28918
/* Line 1455 of yacc.c  */
28901
 
#line 10055 "sql_yacc.yy"
 
28919
#line 10075 "sql_yacc.yy"
28902
28920
    {
28903
28921
      Lex->profile_query_id= atoi((yyvsp[(3) - (3)].lex_str).str);
28904
28922
    }
28907
28925
  case 1560:
28908
28926
 
28909
28927
/* Line 1455 of yacc.c  */
28910
 
#line 10064 "sql_yacc.yy"
 
28928
#line 10084 "sql_yacc.yy"
28911
28929
    {
28912
28930
            LEX *lex=Lex;
28913
28931
            lex->wild=0;
28921
28939
  case 1561:
28922
28940
 
28923
28941
/* Line 1455 of yacc.c  */
28924
 
#line 10073 "sql_yacc.yy"
 
28942
#line 10093 "sql_yacc.yy"
28925
28943
    {}
28926
28944
    break;
28927
28945
 
28928
28946
  case 1562:
28929
28947
 
28930
28948
/* Line 1455 of yacc.c  */
28931
 
#line 10078 "sql_yacc.yy"
 
28949
#line 10098 "sql_yacc.yy"
28932
28950
    {
28933
28951
             LEX *lex= Lex;
28934
28952
             lex->sql_command= SQLCOM_SHOW_DATABASES;
28940
28958
  case 1563:
28941
28959
 
28942
28960
/* Line 1455 of yacc.c  */
28943
 
#line 10085 "sql_yacc.yy"
 
28961
#line 10105 "sql_yacc.yy"
28944
28962
    {
28945
28963
             LEX *lex= Lex;
28946
28964
             lex->sql_command= SQLCOM_SHOW_TABLES;
28953
28971
  case 1564:
28954
28972
 
28955
28973
/* Line 1455 of yacc.c  */
28956
 
#line 10093 "sql_yacc.yy"
 
28974
#line 10113 "sql_yacc.yy"
28957
28975
    {
28958
28976
             LEX *lex= Lex;
28959
28977
             lex->sql_command= SQLCOM_SHOW_TRIGGERS;
28966
28984
  case 1565:
28967
28985
 
28968
28986
/* Line 1455 of yacc.c  */
28969
 
#line 10101 "sql_yacc.yy"
 
28987
#line 10121 "sql_yacc.yy"
28970
28988
    {
28971
28989
             LEX *lex= Lex;
28972
28990
             lex->sql_command= SQLCOM_SHOW_EVENTS;
28979
28997
  case 1566:
28980
28998
 
28981
28999
/* Line 1455 of yacc.c  */
28982
 
#line 10109 "sql_yacc.yy"
 
29000
#line 10129 "sql_yacc.yy"
28983
29001
    {
28984
29002
             LEX *lex= Lex;
28985
29003
             lex->sql_command= SQLCOM_SHOW_TABLE_STATUS;
28992
29010
  case 1567:
28993
29011
 
28994
29012
/* Line 1455 of yacc.c  */
28995
 
#line 10117 "sql_yacc.yy"
 
29013
#line 10137 "sql_yacc.yy"
28996
29014
    {
28997
29015
            LEX *lex= Lex;
28998
29016
            lex->sql_command= SQLCOM_SHOW_OPEN_TABLES;
29005
29023
  case 1568:
29006
29024
 
29007
29025
/* Line 1455 of yacc.c  */
29008
 
#line 10125 "sql_yacc.yy"
 
29026
#line 10145 "sql_yacc.yy"
29009
29027
    {
29010
29028
            LEX *lex= Lex;
29011
29029
            WARN_DEPRECATED(yythd, "6.0", "SHOW PLUGIN", "'SHOW PLUGINS'");
29018
29036
  case 1569:
29019
29037
 
29020
29038
/* Line 1455 of yacc.c  */
29021
 
#line 10133 "sql_yacc.yy"
 
29039
#line 10153 "sql_yacc.yy"
29022
29040
    {
29023
29041
            LEX *lex= Lex;
29024
29042
            lex->sql_command= SQLCOM_SHOW_PLUGINS;
29030
29048
  case 1570:
29031
29049
 
29032
29050
/* Line 1455 of yacc.c  */
29033
 
#line 10140 "sql_yacc.yy"
 
29051
#line 10160 "sql_yacc.yy"
29034
29052
    { Lex->create_info.db_type= (yyvsp[(2) - (3)].db_type); }
29035
29053
    break;
29036
29054
 
29037
29055
  case 1571:
29038
29056
 
29039
29057
/* Line 1455 of yacc.c  */
29040
 
#line 10142 "sql_yacc.yy"
 
29058
#line 10162 "sql_yacc.yy"
29041
29059
    { Lex->create_info.db_type= NULL; }
29042
29060
    break;
29043
29061
 
29044
29062
  case 1572:
29045
29063
 
29046
29064
/* Line 1455 of yacc.c  */
29047
 
#line 10144 "sql_yacc.yy"
 
29065
#line 10164 "sql_yacc.yy"
29048
29066
    {
29049
29067
            LEX *lex= Lex;
29050
29068
            lex->sql_command= SQLCOM_SHOW_FIELDS;
29058
29076
  case 1573:
29059
29077
 
29060
29078
/* Line 1455 of yacc.c  */
29061
 
#line 10159 "sql_yacc.yy"
 
29079
#line 10179 "sql_yacc.yy"
29062
29080
    {
29063
29081
            Lex->sql_command = SQLCOM_SHOW_NEW_MASTER;
29064
29082
            Lex->mi.log_file_name = (yyvsp[(8) - (16)].lex_str).str;
29070
29088
  case 1574:
29071
29089
 
29072
29090
/* Line 1455 of yacc.c  */
29073
 
#line 10166 "sql_yacc.yy"
 
29091
#line 10186 "sql_yacc.yy"
29074
29092
    {
29075
29093
            Lex->sql_command = SQLCOM_SHOW_BINLOGS;
29076
29094
          }
29079
29097
  case 1575:
29080
29098
 
29081
29099
/* Line 1455 of yacc.c  */
29082
 
#line 10170 "sql_yacc.yy"
 
29100
#line 10190 "sql_yacc.yy"
29083
29101
    {
29084
29102
            Lex->sql_command = SQLCOM_SHOW_SLAVE_HOSTS;
29085
29103
          }
29088
29106
  case 1576:
29089
29107
 
29090
29108
/* Line 1455 of yacc.c  */
29091
 
#line 10174 "sql_yacc.yy"
 
29109
#line 10194 "sql_yacc.yy"
29092
29110
    {
29093
29111
            LEX *lex= Lex;
29094
29112
            lex->sql_command= SQLCOM_SHOW_BINLOG_EVENTS;
29098
29116
  case 1578:
29099
29117
 
29100
29118
/* Line 1455 of yacc.c  */
29101
 
#line 10179 "sql_yacc.yy"
 
29119
#line 10199 "sql_yacc.yy"
29102
29120
    {
29103
29121
            LEX *lex= Lex;
29104
29122
            lex->sql_command= SQLCOM_SHOW_KEYS;
29112
29130
  case 1579:
29113
29131
 
29114
29132
/* Line 1455 of yacc.c  */
29115
 
#line 10188 "sql_yacc.yy"
 
29133
#line 10208 "sql_yacc.yy"
29116
29134
    {
29117
29135
            LEX *lex=Lex;
29118
29136
            lex->sql_command= SQLCOM_SHOW_COLUMN_TYPES;
29122
29140
  case 1580:
29123
29141
 
29124
29142
/* Line 1455 of yacc.c  */
29125
 
#line 10193 "sql_yacc.yy"
 
29143
#line 10213 "sql_yacc.yy"
29126
29144
    {
29127
29145
            LEX *lex=Lex;
29128
29146
            lex->sql_command= SQLCOM_SHOW_STORAGE_ENGINES;
29135
29153
  case 1581:
29136
29154
 
29137
29155
/* Line 1455 of yacc.c  */
29138
 
#line 10201 "sql_yacc.yy"
 
29156
#line 10221 "sql_yacc.yy"
29139
29157
    {
29140
29158
            LEX *lex=Lex;
29141
29159
            lex->sql_command= SQLCOM_SHOW_STORAGE_ENGINES;
29147
29165
  case 1582:
29148
29166
 
29149
29167
/* Line 1455 of yacc.c  */
29150
 
#line 10208 "sql_yacc.yy"
 
29168
#line 10228 "sql_yacc.yy"
29151
29169
    {
29152
29170
            LEX *lex=Lex;
29153
29171
            lex->sql_command= SQLCOM_SHOW_AUTHORS;
29157
29175
  case 1583:
29158
29176
 
29159
29177
/* Line 1455 of yacc.c  */
29160
 
#line 10213 "sql_yacc.yy"
 
29178
#line 10233 "sql_yacc.yy"
29161
29179
    {
29162
29180
            LEX *lex=Lex;
29163
29181
            lex->sql_command= SQLCOM_SHOW_CONTRIBUTORS;
29167
29185
  case 1584:
29168
29186
 
29169
29187
/* Line 1455 of yacc.c  */
29170
 
#line 10218 "sql_yacc.yy"
 
29188
#line 10238 "sql_yacc.yy"
29171
29189
    {
29172
29190
            LEX *lex=Lex;
29173
29191
            lex->sql_command= SQLCOM_SHOW_PRIVILEGES;
29177
29195
  case 1585:
29178
29196
 
29179
29197
/* Line 1455 of yacc.c  */
29180
 
#line 10223 "sql_yacc.yy"
 
29198
#line 10243 "sql_yacc.yy"
29181
29199
    { (void) create_select_for_variable("warning_count"); }
29182
29200
    break;
29183
29201
 
29184
29202
  case 1586:
29185
29203
 
29186
29204
/* Line 1455 of yacc.c  */
29187
 
#line 10225 "sql_yacc.yy"
 
29205
#line 10245 "sql_yacc.yy"
29188
29206
    { (void) create_select_for_variable("error_count"); }
29189
29207
    break;
29190
29208
 
29191
29209
  case 1587:
29192
29210
 
29193
29211
/* Line 1455 of yacc.c  */
29194
 
#line 10227 "sql_yacc.yy"
 
29212
#line 10247 "sql_yacc.yy"
29195
29213
    { Lex->sql_command = SQLCOM_SHOW_WARNS;}
29196
29214
    break;
29197
29215
 
29198
29216
  case 1588:
29199
29217
 
29200
29218
/* Line 1455 of yacc.c  */
29201
 
#line 10229 "sql_yacc.yy"
 
29219
#line 10249 "sql_yacc.yy"
29202
29220
    { Lex->sql_command = SQLCOM_SHOW_ERRORS;}
29203
29221
    break;
29204
29222
 
29205
29223
  case 1589:
29206
29224
 
29207
29225
/* Line 1455 of yacc.c  */
29208
 
#line 10231 "sql_yacc.yy"
 
29226
#line 10251 "sql_yacc.yy"
29209
29227
    { Lex->sql_command = SQLCOM_SHOW_PROFILES; }
29210
29228
    break;
29211
29229
 
29212
29230
  case 1590:
29213
29231
 
29214
29232
/* Line 1455 of yacc.c  */
29215
 
#line 10233 "sql_yacc.yy"
 
29233
#line 10253 "sql_yacc.yy"
29216
29234
    { 
29217
29235
            LEX *lex= Lex;
29218
29236
            lex->sql_command= SQLCOM_SHOW_PROFILE;
29224
29242
  case 1591:
29225
29243
 
29226
29244
/* Line 1455 of yacc.c  */
29227
 
#line 10240 "sql_yacc.yy"
 
29245
#line 10260 "sql_yacc.yy"
29228
29246
    {
29229
29247
            LEX *lex= Lex;
29230
29248
            lex->sql_command= SQLCOM_SHOW_STATUS;
29237
29255
  case 1592:
29238
29256
 
29239
29257
/* Line 1455 of yacc.c  */
29240
 
#line 10248 "sql_yacc.yy"
 
29258
#line 10268 "sql_yacc.yy"
29241
29259
    {
29242
29260
            LEX *lex= Lex;
29243
29261
            lex->sql_command = SQLCOM_SHOW_ENGINE_STATUS;
29254
29272
  case 1593:
29255
29273
 
29256
29274
/* Line 1455 of yacc.c  */
29257
 
#line 10260 "sql_yacc.yy"
 
29275
#line 10280 "sql_yacc.yy"
29258
29276
    {
29259
29277
            LEX *lex= Lex;
29260
29278
            lex->sql_command = SQLCOM_SHOW_ENGINE_MUTEX;
29271
29289
  case 1594:
29272
29290
 
29273
29291
/* Line 1455 of yacc.c  */
29274
 
#line 10272 "sql_yacc.yy"
 
29292
#line 10292 "sql_yacc.yy"
29275
29293
    { Lex->sql_command= SQLCOM_SHOW_PROCESSLIST;}
29276
29294
    break;
29277
29295
 
29278
29296
  case 1595:
29279
29297
 
29280
29298
/* Line 1455 of yacc.c  */
29281
 
#line 10274 "sql_yacc.yy"
 
29299
#line 10294 "sql_yacc.yy"
29282
29300
    {
29283
29301
            LEX *lex= Lex;
29284
29302
            lex->sql_command= SQLCOM_SHOW_VARIABLES;
29291
29309
  case 1596:
29292
29310
 
29293
29311
/* Line 1455 of yacc.c  */
29294
 
#line 10282 "sql_yacc.yy"
 
29312
#line 10302 "sql_yacc.yy"
29295
29313
    {
29296
29314
            LEX *lex= Lex;
29297
29315
            lex->sql_command= SQLCOM_SHOW_CHARSETS;
29303
29321
  case 1597:
29304
29322
 
29305
29323
/* Line 1455 of yacc.c  */
29306
 
#line 10289 "sql_yacc.yy"
 
29324
#line 10309 "sql_yacc.yy"
29307
29325
    {
29308
29326
            LEX *lex= Lex;
29309
29327
            lex->sql_command= SQLCOM_SHOW_COLLATIONS;
29315
29333
  case 1598:
29316
29334
 
29317
29335
/* Line 1455 of yacc.c  */
29318
 
#line 10296 "sql_yacc.yy"
 
29336
#line 10316 "sql_yacc.yy"
29319
29337
    {
29320
29338
            LEX *lex=Lex;
29321
29339
            lex->sql_command= SQLCOM_SHOW_GRANTS;
29330
29348
  case 1599:
29331
29349
 
29332
29350
/* Line 1455 of yacc.c  */
29333
 
#line 10306 "sql_yacc.yy"
 
29351
#line 10326 "sql_yacc.yy"
29334
29352
    {
29335
29353
            LEX *lex=Lex;
29336
29354
            lex->sql_command= SQLCOM_SHOW_GRANTS;
29342
29360
  case 1600:
29343
29361
 
29344
29362
/* Line 1455 of yacc.c  */
29345
 
#line 10313 "sql_yacc.yy"
 
29363
#line 10333 "sql_yacc.yy"
29346
29364
    {
29347
29365
            Lex->sql_command=SQLCOM_SHOW_CREATE_DB;
29348
29366
            Lex->create_info.options=(yyvsp[(3) - (4)].num);
29353
29371
  case 1601:
29354
29372
 
29355
29373
/* Line 1455 of yacc.c  */
29356
 
#line 10319 "sql_yacc.yy"
 
29374
#line 10339 "sql_yacc.yy"
29357
29375
    {
29358
29376
            LEX *lex= Lex;
29359
29377
            lex->sql_command = SQLCOM_SHOW_CREATE;
29367
29385
  case 1602:
29368
29386
 
29369
29387
/* Line 1455 of yacc.c  */
29370
 
#line 10328 "sql_yacc.yy"
 
29388
#line 10348 "sql_yacc.yy"
29371
29389
    {
29372
29390
            LEX *lex= Lex;
29373
29391
            lex->sql_command = SQLCOM_SHOW_CREATE;
29380
29398
  case 1603:
29381
29399
 
29382
29400
/* Line 1455 of yacc.c  */
29383
 
#line 10336 "sql_yacc.yy"
 
29401
#line 10356 "sql_yacc.yy"
29384
29402
    {
29385
29403
            Lex->sql_command = SQLCOM_SHOW_MASTER_STAT;
29386
29404
          }
29389
29407
  case 1604:
29390
29408
 
29391
29409
/* Line 1455 of yacc.c  */
29392
 
#line 10340 "sql_yacc.yy"
 
29410
#line 10360 "sql_yacc.yy"
29393
29411
    {
29394
29412
            Lex->sql_command = SQLCOM_SHOW_SLAVE_STAT;
29395
29413
          }
29398
29416
  case 1605:
29399
29417
 
29400
29418
/* Line 1455 of yacc.c  */
29401
 
#line 10344 "sql_yacc.yy"
 
29419
#line 10364 "sql_yacc.yy"
29402
29420
    {
29403
29421
            LEX *lex= Lex;
29404
29422
 
29410
29428
  case 1606:
29411
29429
 
29412
29430
/* Line 1455 of yacc.c  */
29413
 
#line 10351 "sql_yacc.yy"
 
29431
#line 10371 "sql_yacc.yy"
29414
29432
    {
29415
29433
            LEX *lex= Lex;
29416
29434
 
29422
29440
  case 1607:
29423
29441
 
29424
29442
/* Line 1455 of yacc.c  */
29425
 
#line 10358 "sql_yacc.yy"
 
29443
#line 10378 "sql_yacc.yy"
29426
29444
    {
29427
29445
            LEX *lex= Lex;
29428
29446
            lex->sql_command= SQLCOM_SHOW_CREATE_TRIGGER;
29433
29451
  case 1608:
29434
29452
 
29435
29453
/* Line 1455 of yacc.c  */
29436
 
#line 10364 "sql_yacc.yy"
 
29454
#line 10384 "sql_yacc.yy"
29437
29455
    {
29438
29456
            LEX *lex= Lex;
29439
29457
            lex->sql_command= SQLCOM_SHOW_STATUS_PROC;
29445
29463
  case 1609:
29446
29464
 
29447
29465
/* Line 1455 of yacc.c  */
29448
 
#line 10371 "sql_yacc.yy"
 
29466
#line 10391 "sql_yacc.yy"
29449
29467
    {
29450
29468
            LEX *lex= Lex;
29451
29469
            lex->sql_command= SQLCOM_SHOW_STATUS_FUNC;
29457
29475
  case 1610:
29458
29476
 
29459
29477
/* Line 1455 of yacc.c  */
29460
 
#line 10378 "sql_yacc.yy"
 
29478
#line 10398 "sql_yacc.yy"
29461
29479
    {
29462
29480
#ifdef DBUG_OFF
29463
29481
            my_parse_error(ER(ER_SYNTAX_ERROR));
29472
29490
  case 1611:
29473
29491
 
29474
29492
/* Line 1455 of yacc.c  */
29475
 
#line 10388 "sql_yacc.yy"
 
29493
#line 10408 "sql_yacc.yy"
29476
29494
    {
29477
29495
#ifdef DBUG_OFF
29478
29496
            my_parse_error(ER(ER_SYNTAX_ERROR));
29487
29505
  case 1612:
29488
29506
 
29489
29507
/* Line 1455 of yacc.c  */
29490
 
#line 10398 "sql_yacc.yy"
 
29508
#line 10418 "sql_yacc.yy"
29491
29509
    {
29492
29510
            Lex->spname= (yyvsp[(3) - (3)].spname);
29493
29511
            Lex->sql_command = SQLCOM_SHOW_CREATE_EVENT;
29497
29515
  case 1613:
29498
29516
 
29499
29517
/* Line 1455 of yacc.c  */
29500
 
#line 10406 "sql_yacc.yy"
 
29518
#line 10426 "sql_yacc.yy"
29501
29519
    { Lex->sql_command= SQLCOM_SHOW_ENGINE_STATUS; }
29502
29520
    break;
29503
29521
 
29504
29522
  case 1614:
29505
29523
 
29506
29524
/* Line 1455 of yacc.c  */
29507
 
#line 10408 "sql_yacc.yy"
 
29525
#line 10428 "sql_yacc.yy"
29508
29526
    { Lex->sql_command= SQLCOM_SHOW_ENGINE_MUTEX; }
29509
29527
    break;
29510
29528
 
29511
29529
  case 1615:
29512
29530
 
29513
29531
/* Line 1455 of yacc.c  */
29514
 
#line 10410 "sql_yacc.yy"
 
29532
#line 10430 "sql_yacc.yy"
29515
29533
    { Lex->sql_command= SQLCOM_SHOW_ENGINE_LOGS; }
29516
29534
    break;
29517
29535
 
29518
29536
  case 1620:
29519
29537
 
29520
29538
/* Line 1455 of yacc.c  */
29521
 
#line 10424 "sql_yacc.yy"
 
29539
#line 10444 "sql_yacc.yy"
29522
29540
    { (yyval.simple_string)= 0; }
29523
29541
    break;
29524
29542
 
29525
29543
  case 1621:
29526
29544
 
29527
29545
/* Line 1455 of yacc.c  */
29528
 
#line 10425 "sql_yacc.yy"
 
29546
#line 10445 "sql_yacc.yy"
29529
29547
    { (yyval.simple_string)= (yyvsp[(2) - (2)].lex_str).str; }
29530
29548
    break;
29531
29549
 
29532
29550
  case 1622:
29533
29551
 
29534
29552
/* Line 1455 of yacc.c  */
29535
 
#line 10429 "sql_yacc.yy"
 
29553
#line 10449 "sql_yacc.yy"
29536
29554
    { Lex->verbose=0; }
29537
29555
    break;
29538
29556
 
29539
29557
  case 1623:
29540
29558
 
29541
29559
/* Line 1455 of yacc.c  */
29542
 
#line 10430 "sql_yacc.yy"
 
29560
#line 10450 "sql_yacc.yy"
29543
29561
    { Lex->verbose=1; }
29544
29562
    break;
29545
29563
 
29546
29564
  case 1626:
29547
29565
 
29548
29566
/* Line 1455 of yacc.c  */
29549
 
#line 10439 "sql_yacc.yy"
 
29567
#line 10459 "sql_yacc.yy"
29550
29568
    { Lex->mi.log_file_name = 0; }
29551
29569
    break;
29552
29570
 
29553
29571
  case 1627:
29554
29572
 
29555
29573
/* Line 1455 of yacc.c  */
29556
 
#line 10440 "sql_yacc.yy"
 
29574
#line 10460 "sql_yacc.yy"
29557
29575
    { Lex->mi.log_file_name = (yyvsp[(2) - (2)].lex_str).str; }
29558
29576
    break;
29559
29577
 
29560
29578
  case 1628:
29561
29579
 
29562
29580
/* Line 1455 of yacc.c  */
29563
 
#line 10444 "sql_yacc.yy"
 
29581
#line 10464 "sql_yacc.yy"
29564
29582
    { Lex->mi.pos = 4; /* skip magic number */ }
29565
29583
    break;
29566
29584
 
29567
29585
  case 1629:
29568
29586
 
29569
29587
/* Line 1455 of yacc.c  */
29570
 
#line 10445 "sql_yacc.yy"
 
29588
#line 10465 "sql_yacc.yy"
29571
29589
    { Lex->mi.pos = (yyvsp[(2) - (2)].ulonglong_number); }
29572
29590
    break;
29573
29591
 
29574
29592
  case 1631:
29575
29593
 
29576
29594
/* Line 1455 of yacc.c  */
29577
 
#line 10451 "sql_yacc.yy"
 
29595
#line 10471 "sql_yacc.yy"
29578
29596
    {
29579
29597
            Lex->wild= new (YYTHD->mem_root) String((yyvsp[(2) - (2)].lex_str).str, (yyvsp[(2) - (2)].lex_str).length,
29580
29598
                                                    system_charset_info);
29586
29604
  case 1632:
29587
29605
 
29588
29606
/* Line 1455 of yacc.c  */
29589
 
#line 10458 "sql_yacc.yy"
 
29607
#line 10478 "sql_yacc.yy"
29590
29608
    {
29591
29609
            Select->where= (yyvsp[(2) - (2)].item);
29592
29610
            if ((yyvsp[(2) - (2)].item))
29597
29615
  case 1633:
29598
29616
 
29599
29617
/* Line 1455 of yacc.c  */
29600
 
#line 10468 "sql_yacc.yy"
 
29618
#line 10488 "sql_yacc.yy"
29601
29619
    {
29602
29620
            LEX *lex= Lex;
29603
29621
            lex->lock_option= TL_READ;
29614
29632
  case 1634:
29615
29633
 
29616
29634
/* Line 1455 of yacc.c  */
29617
 
#line 10479 "sql_yacc.yy"
 
29635
#line 10499 "sql_yacc.yy"
29618
29636
    {}
29619
29637
    break;
29620
29638
 
29621
29639
  case 1635:
29622
29640
 
29623
29641
/* Line 1455 of yacc.c  */
29624
 
#line 10481 "sql_yacc.yy"
 
29642
#line 10501 "sql_yacc.yy"
29625
29643
    { Lex->describe|= DESCRIBE_NORMAL; }
29626
29644
    break;
29627
29645
 
29628
29646
  case 1636:
29629
29647
 
29630
29648
/* Line 1455 of yacc.c  */
29631
 
#line 10483 "sql_yacc.yy"
 
29649
#line 10503 "sql_yacc.yy"
29632
29650
    {
29633
29651
            LEX *lex=Lex;
29634
29652
            lex->select_lex.options|= SELECT_DESCRIBE;
29638
29656
  case 1639:
29639
29657
 
29640
29658
/* Line 1455 of yacc.c  */
29641
 
#line 10495 "sql_yacc.yy"
 
29659
#line 10515 "sql_yacc.yy"
29642
29660
    {}
29643
29661
    break;
29644
29662
 
29645
29663
  case 1640:
29646
29664
 
29647
29665
/* Line 1455 of yacc.c  */
29648
 
#line 10496 "sql_yacc.yy"
 
29666
#line 10516 "sql_yacc.yy"
29649
29667
    { Lex->describe|= DESCRIBE_EXTENDED; }
29650
29668
    break;
29651
29669
 
29652
29670
  case 1641:
29653
29671
 
29654
29672
/* Line 1455 of yacc.c  */
29655
 
#line 10497 "sql_yacc.yy"
 
29673
#line 10517 "sql_yacc.yy"
29656
29674
    { Lex->describe|= DESCRIBE_PARTITIONS; }
29657
29675
    break;
29658
29676
 
29659
29677
  case 1642:
29660
29678
 
29661
29679
/* Line 1455 of yacc.c  */
29662
 
#line 10501 "sql_yacc.yy"
 
29680
#line 10521 "sql_yacc.yy"
29663
29681
    {}
29664
29682
    break;
29665
29683
 
29666
29684
  case 1643:
29667
29685
 
29668
29686
/* Line 1455 of yacc.c  */
29669
 
#line 10502 "sql_yacc.yy"
 
29687
#line 10522 "sql_yacc.yy"
29670
29688
    { Lex->wild= (yyvsp[(1) - (1)].string); }
29671
29689
    break;
29672
29690
 
29673
29691
  case 1644:
29674
29692
 
29675
29693
/* Line 1455 of yacc.c  */
29676
 
#line 10504 "sql_yacc.yy"
 
29694
#line 10524 "sql_yacc.yy"
29677
29695
    {
29678
29696
            Lex->wild= new (YYTHD->mem_root) String((const char*) (yyvsp[(1) - (1)].lex_str).str,
29679
29697
                                                    (yyvsp[(1) - (1)].lex_str).length,
29686
29704
  case 1645:
29687
29705
 
29688
29706
/* Line 1455 of yacc.c  */
29689
 
#line 10518 "sql_yacc.yy"
 
29707
#line 10538 "sql_yacc.yy"
29690
29708
    {
29691
29709
            LEX *lex=Lex;
29692
29710
            lex->sql_command= SQLCOM_FLUSH;
29698
29716
  case 1646:
29699
29717
 
29700
29718
/* Line 1455 of yacc.c  */
29701
 
#line 10525 "sql_yacc.yy"
 
29719
#line 10545 "sql_yacc.yy"
29702
29720
    {}
29703
29721
    break;
29704
29722
 
29705
29723
  case 1649:
29706
29724
 
29707
29725
/* Line 1455 of yacc.c  */
29708
 
#line 10535 "sql_yacc.yy"
 
29726
#line 10555 "sql_yacc.yy"
29709
29727
    { Lex->type|= REFRESH_TABLES; }
29710
29728
    break;
29711
29729
 
29712
29730
  case 1650:
29713
29731
 
29714
29732
/* Line 1455 of yacc.c  */
29715
 
#line 10536 "sql_yacc.yy"
 
29733
#line 10556 "sql_yacc.yy"
29716
29734
    {}
29717
29735
    break;
29718
29736
 
29719
29737
  case 1651:
29720
29738
 
29721
29739
/* Line 1455 of yacc.c  */
29722
 
#line 10538 "sql_yacc.yy"
 
29740
#line 10558 "sql_yacc.yy"
29723
29741
    { Lex->type|= REFRESH_TABLES | REFRESH_READ_LOCK; }
29724
29742
    break;
29725
29743
 
29726
29744
  case 1652:
29727
29745
 
29728
29746
/* Line 1455 of yacc.c  */
29729
 
#line 10540 "sql_yacc.yy"
 
29747
#line 10560 "sql_yacc.yy"
29730
29748
    { Lex->type|= REFRESH_QUERY_CACHE_FREE; }
29731
29749
    break;
29732
29750
 
29733
29751
  case 1653:
29734
29752
 
29735
29753
/* Line 1455 of yacc.c  */
29736
 
#line 10542 "sql_yacc.yy"
 
29754
#line 10562 "sql_yacc.yy"
29737
29755
    { Lex->type|= REFRESH_HOSTS; }
29738
29756
    break;
29739
29757
 
29740
29758
  case 1654:
29741
29759
 
29742
29760
/* Line 1455 of yacc.c  */
29743
 
#line 10544 "sql_yacc.yy"
 
29761
#line 10564 "sql_yacc.yy"
29744
29762
    { Lex->type|= REFRESH_GRANT; }
29745
29763
    break;
29746
29764
 
29747
29765
  case 1655:
29748
29766
 
29749
29767
/* Line 1455 of yacc.c  */
29750
 
#line 10546 "sql_yacc.yy"
 
29768
#line 10566 "sql_yacc.yy"
29751
29769
    { Lex->type|= REFRESH_LOG; }
29752
29770
    break;
29753
29771
 
29754
29772
  case 1656:
29755
29773
 
29756
29774
/* Line 1455 of yacc.c  */
29757
 
#line 10548 "sql_yacc.yy"
 
29775
#line 10568 "sql_yacc.yy"
29758
29776
    { Lex->type|= REFRESH_STATUS; }
29759
29777
    break;
29760
29778
 
29761
29779
  case 1657:
29762
29780
 
29763
29781
/* Line 1455 of yacc.c  */
29764
 
#line 10550 "sql_yacc.yy"
 
29782
#line 10570 "sql_yacc.yy"
29765
29783
    { Lex->type|= REFRESH_SLAVE; }
29766
29784
    break;
29767
29785
 
29768
29786
  case 1658:
29769
29787
 
29770
29788
/* Line 1455 of yacc.c  */
29771
 
#line 10552 "sql_yacc.yy"
 
29789
#line 10572 "sql_yacc.yy"
29772
29790
    { Lex->type|= REFRESH_MASTER; }
29773
29791
    break;
29774
29792
 
29775
29793
  case 1659:
29776
29794
 
29777
29795
/* Line 1455 of yacc.c  */
29778
 
#line 10554 "sql_yacc.yy"
 
29796
#line 10574 "sql_yacc.yy"
29779
29797
    { Lex->type|= REFRESH_DES_KEY_FILE; }
29780
29798
    break;
29781
29799
 
29782
29800
  case 1660:
29783
29801
 
29784
29802
/* Line 1455 of yacc.c  */
29785
 
#line 10556 "sql_yacc.yy"
 
29803
#line 10576 "sql_yacc.yy"
29786
29804
    { Lex->type|= REFRESH_USER_RESOURCES; }
29787
29805
    break;
29788
29806
 
29789
29807
  case 1661:
29790
29808
 
29791
29809
/* Line 1455 of yacc.c  */
29792
 
#line 10560 "sql_yacc.yy"
 
29810
#line 10580 "sql_yacc.yy"
29793
29811
    {}
29794
29812
    break;
29795
29813
 
29796
29814
  case 1662:
29797
29815
 
29798
29816
/* Line 1455 of yacc.c  */
29799
 
#line 10561 "sql_yacc.yy"
 
29817
#line 10581 "sql_yacc.yy"
29800
29818
    {}
29801
29819
    break;
29802
29820
 
29803
29821
  case 1663:
29804
29822
 
29805
29823
/* Line 1455 of yacc.c  */
29806
 
#line 10566 "sql_yacc.yy"
 
29824
#line 10586 "sql_yacc.yy"
29807
29825
    {
29808
29826
            LEX *lex=Lex;
29809
29827
            lex->sql_command= SQLCOM_RESET; lex->type=0;
29813
29831
  case 1664:
29814
29832
 
29815
29833
/* Line 1455 of yacc.c  */
29816
 
#line 10571 "sql_yacc.yy"
 
29834
#line 10591 "sql_yacc.yy"
29817
29835
    {}
29818
29836
    break;
29819
29837
 
29820
29838
  case 1667:
29821
29839
 
29822
29840
/* Line 1455 of yacc.c  */
29823
 
#line 10580 "sql_yacc.yy"
 
29841
#line 10600 "sql_yacc.yy"
29824
29842
    { Lex->type|= REFRESH_SLAVE; }
29825
29843
    break;
29826
29844
 
29827
29845
  case 1668:
29828
29846
 
29829
29847
/* Line 1455 of yacc.c  */
29830
 
#line 10581 "sql_yacc.yy"
 
29848
#line 10601 "sql_yacc.yy"
29831
29849
    { Lex->type|= REFRESH_MASTER; }
29832
29850
    break;
29833
29851
 
29834
29852
  case 1669:
29835
29853
 
29836
29854
/* Line 1455 of yacc.c  */
29837
 
#line 10582 "sql_yacc.yy"
 
29855
#line 10602 "sql_yacc.yy"
29838
29856
    { Lex->type|= REFRESH_QUERY_CACHE;}
29839
29857
    break;
29840
29858
 
29841
29859
  case 1670:
29842
29860
 
29843
29861
/* Line 1455 of yacc.c  */
29844
 
#line 10587 "sql_yacc.yy"
 
29862
#line 10607 "sql_yacc.yy"
29845
29863
    {
29846
29864
            LEX *lex=Lex;
29847
29865
            lex->type=0;
29852
29870
  case 1671:
29853
29871
 
29854
29872
/* Line 1455 of yacc.c  */
29855
 
#line 10593 "sql_yacc.yy"
 
29873
#line 10613 "sql_yacc.yy"
29856
29874
    {}
29857
29875
    break;
29858
29876
 
29859
29877
  case 1673:
29860
29878
 
29861
29879
/* Line 1455 of yacc.c  */
29862
 
#line 10602 "sql_yacc.yy"
 
29880
#line 10622 "sql_yacc.yy"
29863
29881
    {
29864
29882
            Lex->to_log = (yyvsp[(2) - (2)].lex_str).str;
29865
29883
          }
29868
29886
  case 1674:
29869
29887
 
29870
29888
/* Line 1455 of yacc.c  */
29871
 
#line 10606 "sql_yacc.yy"
 
29889
#line 10626 "sql_yacc.yy"
29872
29890
    {
29873
29891
            LEX *lex= Lex;
29874
29892
            lex->value_list.empty();
29880
29898
  case 1675:
29881
29899
 
29882
29900
/* Line 1455 of yacc.c  */
29883
 
#line 10618 "sql_yacc.yy"
 
29901
#line 10638 "sql_yacc.yy"
29884
29902
    {
29885
29903
            LEX *lex=Lex;
29886
29904
            lex->value_list.empty();
29892
29910
  case 1676:
29893
29911
 
29894
29912
/* Line 1455 of yacc.c  */
29895
 
#line 10627 "sql_yacc.yy"
 
29913
#line 10647 "sql_yacc.yy"
29896
29914
    { Lex->type= 0; }
29897
29915
    break;
29898
29916
 
29899
29917
  case 1677:
29900
29918
 
29901
29919
/* Line 1455 of yacc.c  */
29902
 
#line 10628 "sql_yacc.yy"
 
29920
#line 10648 "sql_yacc.yy"
29903
29921
    { Lex->type= 0; }
29904
29922
    break;
29905
29923
 
29906
29924
  case 1678:
29907
29925
 
29908
29926
/* Line 1455 of yacc.c  */
29909
 
#line 10629 "sql_yacc.yy"
 
29927
#line 10649 "sql_yacc.yy"
29910
29928
    { Lex->type= ONLY_KILL_QUERY; }
29911
29929
    break;
29912
29930
 
29913
29931
  case 1679:
29914
29932
 
29915
29933
/* Line 1455 of yacc.c  */
29916
 
#line 10636 "sql_yacc.yy"
 
29934
#line 10656 "sql_yacc.yy"
29917
29935
    {
29918
29936
            LEX *lex=Lex;
29919
29937
            lex->sql_command=SQLCOM_CHANGE_DB;
29924
29942
  case 1680:
29925
29943
 
29926
29944
/* Line 1455 of yacc.c  */
29927
 
#line 10647 "sql_yacc.yy"
 
29945
#line 10667 "sql_yacc.yy"
29928
29946
    {
29929
29947
            THD *thd= YYTHD;
29930
29948
            LEX *lex= thd->lex;
29940
29958
  case 1681:
29941
29959
 
29942
29960
/* Line 1455 of yacc.c  */
29943
 
#line 10658 "sql_yacc.yy"
 
29961
#line 10678 "sql_yacc.yy"
29944
29962
    {}
29945
29963
    break;
29946
29964
 
29947
29965
  case 1682:
29948
29966
 
29949
29967
/* Line 1455 of yacc.c  */
29950
 
#line 10660 "sql_yacc.yy"
 
29968
#line 10680 "sql_yacc.yy"
29951
29969
    {
29952
29970
            LEX *lex=Lex;
29953
29971
            WARN_DEPRECATED(yythd, "6.0", "LOAD TABLE FROM MASTER",
29966
29984
  case 1683:
29967
29985
 
29968
29986
/* Line 1455 of yacc.c  */
29969
 
#line 10677 "sql_yacc.yy"
 
29987
#line 10697 "sql_yacc.yy"
29970
29988
    {
29971
29989
            LEX *lex=Lex;
29972
29990
            lex->sql_command= SQLCOM_LOAD;
29982
30000
  case 1684:
29983
30001
 
29984
30002
/* Line 1455 of yacc.c  */
29985
 
#line 10688 "sql_yacc.yy"
 
30003
#line 10708 "sql_yacc.yy"
29986
30004
    {
29987
30005
            LEX *lex=Lex;
29988
30006
            if (!Select->add_table_to_list(YYTHD, (yyvsp[(9) - (9)].table), NULL, TL_OPTION_UPDATING,
29997
30015
  case 1685:
29998
30016
 
29999
30017
/* Line 1455 of yacc.c  */
30000
 
#line 10698 "sql_yacc.yy"
 
30018
#line 10718 "sql_yacc.yy"
30001
30019
    { Lex->exchange->cs= (yyvsp[(11) - (11)].charset); }
30002
30020
    break;
30003
30021
 
30004
30022
  case 1686:
30005
30023
 
30006
30024
/* Line 1455 of yacc.c  */
30007
 
#line 10701 "sql_yacc.yy"
 
30025
#line 10721 "sql_yacc.yy"
30008
30026
    {}
30009
30027
    break;
30010
30028
 
30011
30029
  case 1687:
30012
30030
 
30013
30031
/* Line 1455 of yacc.c  */
30014
 
#line 10703 "sql_yacc.yy"
 
30032
#line 10723 "sql_yacc.yy"
30015
30033
    {
30016
30034
            Lex->sql_command = SQLCOM_LOAD_MASTER_DATA;
30017
30035
            WARN_DEPRECATED(yythd, "6.0", "LOAD DATA FROM MASTER",
30023
30041
  case 1688:
30024
30042
 
30025
30043
/* Line 1455 of yacc.c  */
30026
 
#line 10712 "sql_yacc.yy"
 
30044
#line 10732 "sql_yacc.yy"
30027
30045
    { (yyval.num)=0;}
30028
30046
    break;
30029
30047
 
30030
30048
  case 1689:
30031
30049
 
30032
30050
/* Line 1455 of yacc.c  */
30033
 
#line 10713 "sql_yacc.yy"
 
30051
#line 10733 "sql_yacc.yy"
30034
30052
    { (yyval.num)=1;}
30035
30053
    break;
30036
30054
 
30037
30055
  case 1690:
30038
30056
 
30039
30057
/* Line 1455 of yacc.c  */
30040
 
#line 10717 "sql_yacc.yy"
 
30058
#line 10737 "sql_yacc.yy"
30041
30059
    { (yyval.lock_type)= TL_WRITE_DEFAULT; }
30042
30060
    break;
30043
30061
 
30044
30062
  case 1691:
30045
30063
 
30046
30064
/* Line 1455 of yacc.c  */
30047
 
#line 10719 "sql_yacc.yy"
 
30065
#line 10739 "sql_yacc.yy"
30048
30066
    {
30049
30067
#ifdef HAVE_QUERY_CACHE
30050
30068
            /*
30061
30079
  case 1692:
30062
30080
 
30063
30081
/* Line 1455 of yacc.c  */
30064
 
#line 10730 "sql_yacc.yy"
 
30082
#line 10750 "sql_yacc.yy"
30065
30083
    { (yyval.lock_type)= TL_WRITE_LOW_PRIORITY; }
30066
30084
    break;
30067
30085
 
30068
30086
  case 1693:
30069
30087
 
30070
30088
/* Line 1455 of yacc.c  */
30071
 
#line 10734 "sql_yacc.yy"
 
30089
#line 10754 "sql_yacc.yy"
30072
30090
    { Lex->duplicates=DUP_ERROR; }
30073
30091
    break;
30074
30092
 
30075
30093
  case 1694:
30076
30094
 
30077
30095
/* Line 1455 of yacc.c  */
30078
 
#line 10735 "sql_yacc.yy"
 
30096
#line 10755 "sql_yacc.yy"
30079
30097
    { Lex->duplicates=DUP_REPLACE; }
30080
30098
    break;
30081
30099
 
30082
30100
  case 1695:
30083
30101
 
30084
30102
/* Line 1455 of yacc.c  */
30085
 
#line 10736 "sql_yacc.yy"
 
30103
#line 10756 "sql_yacc.yy"
30086
30104
    { Lex->ignore= 1; }
30087
30105
    break;
30088
30106
 
30089
30107
  case 1700:
30090
30108
 
30091
30109
/* Line 1455 of yacc.c  */
30092
 
#line 10751 "sql_yacc.yy"
 
30110
#line 10771 "sql_yacc.yy"
30093
30111
    {
30094
30112
            DBUG_ASSERT(Lex->exchange != 0);
30095
30113
            Lex->exchange->field_term= (yyvsp[(3) - (3)].string);
30099
30117
  case 1701:
30100
30118
 
30101
30119
/* Line 1455 of yacc.c  */
30102
 
#line 10756 "sql_yacc.yy"
 
30120
#line 10776 "sql_yacc.yy"
30103
30121
    {
30104
30122
            LEX *lex= Lex;
30105
30123
            DBUG_ASSERT(lex->exchange != 0);
30111
30129
  case 1702:
30112
30130
 
30113
30131
/* Line 1455 of yacc.c  */
30114
 
#line 10763 "sql_yacc.yy"
 
30132
#line 10783 "sql_yacc.yy"
30115
30133
    {
30116
30134
            DBUG_ASSERT(Lex->exchange != 0);
30117
30135
            Lex->exchange->enclosed= (yyvsp[(3) - (3)].string);
30121
30139
  case 1703:
30122
30140
 
30123
30141
/* Line 1455 of yacc.c  */
30124
 
#line 10768 "sql_yacc.yy"
 
30142
#line 10788 "sql_yacc.yy"
30125
30143
    {
30126
30144
            DBUG_ASSERT(Lex->exchange != 0);
30127
30145
            Lex->exchange->escaped= (yyvsp[(3) - (3)].string);
30131
30149
  case 1708:
30132
30150
 
30133
30151
/* Line 1455 of yacc.c  */
30134
 
#line 10786 "sql_yacc.yy"
 
30152
#line 10806 "sql_yacc.yy"
30135
30153
    {
30136
30154
            DBUG_ASSERT(Lex->exchange != 0);
30137
30155
            Lex->exchange->line_term= (yyvsp[(3) - (3)].string);
30141
30159
  case 1709:
30142
30160
 
30143
30161
/* Line 1455 of yacc.c  */
30144
 
#line 10791 "sql_yacc.yy"
 
30162
#line 10811 "sql_yacc.yy"
30145
30163
    {
30146
30164
            DBUG_ASSERT(Lex->exchange != 0);
30147
30165
            Lex->exchange->line_start= (yyvsp[(3) - (3)].string);
30151
30169
  case 1711:
30152
30170
 
30153
30171
/* Line 1455 of yacc.c  */
30154
 
#line 10800 "sql_yacc.yy"
 
30172
#line 10820 "sql_yacc.yy"
30155
30173
    {
30156
30174
            DBUG_ASSERT(Lex->exchange != 0);
30157
30175
            Lex->exchange->skip_lines= atol((yyvsp[(2) - (3)].lex_str).str);
30161
30179
  case 1712:
30162
30180
 
30163
30181
/* Line 1455 of yacc.c  */
30164
 
#line 10807 "sql_yacc.yy"
 
30182
#line 10827 "sql_yacc.yy"
30165
30183
    {}
30166
30184
    break;
30167
30185
 
30168
30186
  case 1713:
30169
30187
 
30170
30188
/* Line 1455 of yacc.c  */
30171
 
#line 10808 "sql_yacc.yy"
 
30189
#line 10828 "sql_yacc.yy"
30172
30190
    {}
30173
30191
    break;
30174
30192
 
30175
30193
  case 1714:
30176
30194
 
30177
30195
/* Line 1455 of yacc.c  */
30178
 
#line 10809 "sql_yacc.yy"
 
30196
#line 10829 "sql_yacc.yy"
30179
30197
    {}
30180
30198
    break;
30181
30199
 
30182
30200
  case 1715:
30183
30201
 
30184
30202
/* Line 1455 of yacc.c  */
30185
 
#line 10814 "sql_yacc.yy"
 
30203
#line 10834 "sql_yacc.yy"
30186
30204
    { Lex->field_list.push_back((yyvsp[(3) - (3)].item)); }
30187
30205
    break;
30188
30206
 
30189
30207
  case 1716:
30190
30208
 
30191
30209
/* Line 1455 of yacc.c  */
30192
 
#line 10816 "sql_yacc.yy"
 
30210
#line 10836 "sql_yacc.yy"
30193
30211
    { Lex->field_list.push_back((yyvsp[(1) - (1)].item)); }
30194
30212
    break;
30195
30213
 
30196
30214
  case 1717:
30197
30215
 
30198
30216
/* Line 1455 of yacc.c  */
30199
 
#line 10820 "sql_yacc.yy"
 
30217
#line 10840 "sql_yacc.yy"
30200
30218
    {(yyval.item)= (yyvsp[(1) - (1)].item);}
30201
30219
    break;
30202
30220
 
30203
30221
  case 1718:
30204
30222
 
30205
30223
/* Line 1455 of yacc.c  */
30206
 
#line 10822 "sql_yacc.yy"
 
30224
#line 10842 "sql_yacc.yy"
30207
30225
    {
30208
30226
            (yyval.item)= new (YYTHD->mem_root) Item_user_var_as_out_param((yyvsp[(2) - (2)].lex_str));
30209
30227
            if ((yyval.item) == NULL)
30214
30232
  case 1719:
30215
30233
 
30216
30234
/* Line 1455 of yacc.c  */
30217
 
#line 10830 "sql_yacc.yy"
 
30235
#line 10850 "sql_yacc.yy"
30218
30236
    {}
30219
30237
    break;
30220
30238
 
30221
30239
  case 1720:
30222
30240
 
30223
30241
/* Line 1455 of yacc.c  */
30224
 
#line 10831 "sql_yacc.yy"
 
30242
#line 10851 "sql_yacc.yy"
30225
30243
    {}
30226
30244
    break;
30227
30245
 
30228
30246
  case 1721:
30229
30247
 
30230
30248
/* Line 1455 of yacc.c  */
30231
 
#line 10838 "sql_yacc.yy"
 
30249
#line 10858 "sql_yacc.yy"
30232
30250
    {
30233
30251
            LEX_STRING tmp;
30234
30252
            THD *thd= YYTHD;
30257
30275
  case 1722:
30258
30276
 
30259
30277
/* Line 1455 of yacc.c  */
30260
 
#line 10862 "sql_yacc.yy"
 
30278
#line 10882 "sql_yacc.yy"
30261
30279
    {
30262
30280
            uint repertoire= Lex->text_string_is_7bit ?
30263
30281
                             MY_REPERTOIRE_ASCII : MY_REPERTOIRE_UNICODE30;
30274
30292
  case 1723:
30275
30293
 
30276
30294
/* Line 1455 of yacc.c  */
30277
 
#line 10874 "sql_yacc.yy"
 
30295
#line 10894 "sql_yacc.yy"
30278
30296
    {
30279
30297
            Item_string *str= new (YYTHD->mem_root) Item_string((yyvsp[(2) - (2)].lex_str).str,
30280
30298
                                                                (yyvsp[(2) - (2)].lex_str).length, (yyvsp[(1) - (2)].charset));
30290
30308
  case 1724:
30291
30309
 
30292
30310
/* Line 1455 of yacc.c  */
30293
 
#line 10885 "sql_yacc.yy"
 
30311
#line 10905 "sql_yacc.yy"
30294
30312
    {
30295
30313
            Item_string* item= (Item_string*) (yyvsp[(1) - (2)].item);
30296
30314
            item->append((yyvsp[(2) - (2)].lex_str).str, (yyvsp[(2) - (2)].lex_str).length);
30311
30329
  case 1725:
30312
30330
 
30313
30331
/* Line 1455 of yacc.c  */
30314
 
#line 10904 "sql_yacc.yy"
 
30332
#line 10924 "sql_yacc.yy"
30315
30333
    {
30316
30334
            (yyval.string)= new (YYTHD->mem_root) String((yyvsp[(1) - (1)].lex_str).str,
30317
30335
                                             (yyvsp[(1) - (1)].lex_str).length,
30324
30342
  case 1726:
30325
30343
 
30326
30344
/* Line 1455 of yacc.c  */
30327
 
#line 10912 "sql_yacc.yy"
 
30345
#line 10932 "sql_yacc.yy"
30328
30346
    {
30329
30347
            Item *tmp= new (YYTHD->mem_root) Item_hex_string((yyvsp[(1) - (1)].lex_str).str, (yyvsp[(1) - (1)].lex_str).length);
30330
30348
            if (tmp == NULL)
30341
30359
  case 1727:
30342
30360
 
30343
30361
/* Line 1455 of yacc.c  */
30344
 
#line 10924 "sql_yacc.yy"
 
30362
#line 10944 "sql_yacc.yy"
30345
30363
    {
30346
30364
            Item *tmp= new (YYTHD->mem_root) Item_bin_string((yyvsp[(1) - (1)].lex_str).str, (yyvsp[(1) - (1)].lex_str).length);
30347
30365
            if (tmp == NULL)
30358
30376
  case 1728:
30359
30377
 
30360
30378
/* Line 1455 of yacc.c  */
30361
 
#line 10939 "sql_yacc.yy"
 
30379
#line 10959 "sql_yacc.yy"
30362
30380
    {
30363
30381
            THD *thd= YYTHD;
30364
30382
            LEX *lex= thd->lex;
30381
30399
  case 1729:
30382
30400
 
30383
30401
/* Line 1455 of yacc.c  */
30384
 
#line 10959 "sql_yacc.yy"
 
30402
#line 10979 "sql_yacc.yy"
30385
30403
    { (yyval.item) = (yyvsp[(1) - (1)].item); }
30386
30404
    break;
30387
30405
 
30388
30406
  case 1730:
30389
30407
 
30390
30408
/* Line 1455 of yacc.c  */
30391
 
#line 10960 "sql_yacc.yy"
 
30409
#line 10980 "sql_yacc.yy"
30392
30410
    { (yyval.item) = (yyvsp[(2) - (2)].item_num); }
30393
30411
    break;
30394
30412
 
30395
30413
  case 1731:
30396
30414
 
30397
30415
/* Line 1455 of yacc.c  */
30398
 
#line 10962 "sql_yacc.yy"
 
30416
#line 10982 "sql_yacc.yy"
30399
30417
    {
30400
30418
            (yyvsp[(2) - (2)].item_num)->max_length++;
30401
30419
            (yyval.item)= (yyvsp[(2) - (2)].item_num)->neg();
30405
30423
  case 1732:
30406
30424
 
30407
30425
/* Line 1455 of yacc.c  */
30408
 
#line 10969 "sql_yacc.yy"
 
30426
#line 10989 "sql_yacc.yy"
30409
30427
    { (yyval.item) = (yyvsp[(1) - (1)].item); }
30410
30428
    break;
30411
30429
 
30412
30430
  case 1733:
30413
30431
 
30414
30432
/* Line 1455 of yacc.c  */
30415
 
#line 10970 "sql_yacc.yy"
 
30433
#line 10990 "sql_yacc.yy"
30416
30434
    { (yyval.item) = (yyvsp[(1) - (1)].item_num); }
30417
30435
    break;
30418
30436
 
30419
30437
  case 1734:
30420
30438
 
30421
30439
/* Line 1455 of yacc.c  */
30422
 
#line 10972 "sql_yacc.yy"
 
30440
#line 10992 "sql_yacc.yy"
30423
30441
    {
30424
30442
            (yyval.item) = new (YYTHD->mem_root) Item_null();
30425
30443
            if ((yyval.item) == NULL)
30431
30449
  case 1735:
30432
30450
 
30433
30451
/* Line 1455 of yacc.c  */
30434
 
#line 10979 "sql_yacc.yy"
 
30452
#line 10999 "sql_yacc.yy"
30435
30453
    {
30436
30454
            (yyval.item)= new (YYTHD->mem_root) Item_int((char*) "FALSE",0,1);
30437
30455
            if ((yyval.item) == NULL)
30442
30460
  case 1736:
30443
30461
 
30444
30462
/* Line 1455 of yacc.c  */
30445
 
#line 10985 "sql_yacc.yy"
 
30463
#line 11005 "sql_yacc.yy"
30446
30464
    {
30447
30465
            (yyval.item)= new (YYTHD->mem_root) Item_int((char*) "TRUE",1,1);
30448
30466
            if ((yyval.item) == NULL)
30453
30471
  case 1737:
30454
30472
 
30455
30473
/* Line 1455 of yacc.c  */
30456
 
#line 10991 "sql_yacc.yy"
 
30474
#line 11011 "sql_yacc.yy"
30457
30475
    {
30458
30476
            (yyval.item) = new (YYTHD->mem_root) Item_hex_string((yyvsp[(1) - (1)].lex_str).str, (yyvsp[(1) - (1)].lex_str).length);
30459
30477
            if ((yyval.item) == NULL)
30464
30482
  case 1738:
30465
30483
 
30466
30484
/* Line 1455 of yacc.c  */
30467
 
#line 10997 "sql_yacc.yy"
 
30485
#line 11017 "sql_yacc.yy"
30468
30486
    {
30469
30487
            (yyval.item)= new (YYTHD->mem_root) Item_bin_string((yyvsp[(1) - (1)].lex_str).str, (yyvsp[(1) - (1)].lex_str).length);
30470
30488
            if ((yyval.item) == NULL)
30475
30493
  case 1739:
30476
30494
 
30477
30495
/* Line 1455 of yacc.c  */
30478
 
#line 11003 "sql_yacc.yy"
 
30496
#line 11023 "sql_yacc.yy"
30479
30497
    {
30480
30498
            Item *tmp= new (YYTHD->mem_root) Item_hex_string((yyvsp[(2) - (2)].lex_str).str, (yyvsp[(2) - (2)].lex_str).length);
30481
30499
            if (tmp == NULL)
30509
30527
  case 1740:
30510
30528
 
30511
30529
/* Line 1455 of yacc.c  */
30512
 
#line 11032 "sql_yacc.yy"
 
30530
#line 11052 "sql_yacc.yy"
30513
30531
    {
30514
30532
            Item *tmp= new (YYTHD->mem_root) Item_bin_string((yyvsp[(2) - (2)].lex_str).str, (yyvsp[(2) - (2)].lex_str).length);
30515
30533
            if (tmp == NULL)
30542
30560
  case 1741:
30543
30561
 
30544
30562
/* Line 1455 of yacc.c  */
30545
 
#line 11059 "sql_yacc.yy"
 
30563
#line 11079 "sql_yacc.yy"
30546
30564
    { (yyval.item) = (yyvsp[(2) - (2)].item); }
30547
30565
    break;
30548
30566
 
30549
30567
  case 1742:
30550
30568
 
30551
30569
/* Line 1455 of yacc.c  */
30552
 
#line 11060 "sql_yacc.yy"
 
30570
#line 11080 "sql_yacc.yy"
30553
30571
    { (yyval.item) = (yyvsp[(2) - (2)].item); }
30554
30572
    break;
30555
30573
 
30556
30574
  case 1743:
30557
30575
 
30558
30576
/* Line 1455 of yacc.c  */
30559
 
#line 11061 "sql_yacc.yy"
 
30577
#line 11081 "sql_yacc.yy"
30560
30578
    { (yyval.item) = (yyvsp[(2) - (2)].item); }
30561
30579
    break;
30562
30580
 
30563
30581
  case 1744:
30564
30582
 
30565
30583
/* Line 1455 of yacc.c  */
30566
 
#line 11066 "sql_yacc.yy"
 
30584
#line 11086 "sql_yacc.yy"
30567
30585
    {
30568
30586
            int error;
30569
30587
            (yyval.item_num)= new (YYTHD->mem_root)
30578
30596
  case 1745:
30579
30597
 
30580
30598
/* Line 1455 of yacc.c  */
30581
 
#line 11076 "sql_yacc.yy"
 
30599
#line 11096 "sql_yacc.yy"
30582
30600
    {
30583
30601
            int error;
30584
30602
            (yyval.item_num)= new (YYTHD->mem_root)
30593
30611
  case 1746:
30594
30612
 
30595
30613
/* Line 1455 of yacc.c  */
30596
 
#line 11086 "sql_yacc.yy"
 
30614
#line 11106 "sql_yacc.yy"
30597
30615
    {
30598
30616
            (yyval.item_num)= new (YYTHD->mem_root) Item_uint((yyvsp[(1) - (1)].lex_str).str, (yyvsp[(1) - (1)].lex_str).length);
30599
30617
            if ((yyval.item_num) == NULL)
30604
30622
  case 1747:
30605
30623
 
30606
30624
/* Line 1455 of yacc.c  */
30607
 
#line 11092 "sql_yacc.yy"
 
30625
#line 11112 "sql_yacc.yy"
30608
30626
    {
30609
30627
            (yyval.item_num)= new (YYTHD->mem_root) Item_decimal((yyvsp[(1) - (1)].lex_str).str, (yyvsp[(1) - (1)].lex_str).length,
30610
30628
                                                   YYTHD->charset());
30618
30636
  case 1748:
30619
30637
 
30620
30638
/* Line 1455 of yacc.c  */
30621
 
#line 11101 "sql_yacc.yy"
 
30639
#line 11121 "sql_yacc.yy"
30622
30640
    {
30623
30641
            (yyval.item_num)= new (YYTHD->mem_root) Item_float((yyvsp[(1) - (1)].lex_str).str, (yyvsp[(1) - (1)].lex_str).length);
30624
30642
            if (((yyval.item_num) == NULL) || (YYTHD->is_error()))
30631
30649
  case 1749:
30632
30650
 
30633
30651
/* Line 1455 of yacc.c  */
30634
 
#line 11115 "sql_yacc.yy"
 
30652
#line 11135 "sql_yacc.yy"
30635
30653
    { (yyval.item)=(yyvsp[(1) - (1)].item); }
30636
30654
    break;
30637
30655
 
30638
30656
  case 1750:
30639
30657
 
30640
30658
/* Line 1455 of yacc.c  */
30641
 
#line 11116 "sql_yacc.yy"
 
30659
#line 11136 "sql_yacc.yy"
30642
30660
    { (yyval.item)=(yyvsp[(1) - (1)].item); }
30643
30661
    break;
30644
30662
 
30645
30663
  case 1751:
30646
30664
 
30647
30665
/* Line 1455 of yacc.c  */
30648
 
#line 11121 "sql_yacc.yy"
 
30666
#line 11141 "sql_yacc.yy"
30649
30667
    {
30650
30668
            SELECT_LEX *sel= Select;
30651
30669
            (yyval.item)= new (YYTHD->mem_root) Item_field(Lex->current_context(),
30659
30677
  case 1752:
30660
30678
 
30661
30679
/* Line 1455 of yacc.c  */
30662
 
#line 11130 "sql_yacc.yy"
 
30680
#line 11150 "sql_yacc.yy"
30663
30681
    {
30664
30682
            THD *thd= YYTHD;
30665
30683
            SELECT_LEX *sel= Select;
30677
30695
  case 1753:
30678
30696
 
30679
30697
/* Line 1455 of yacc.c  */
30680
 
#line 11145 "sql_yacc.yy"
 
30698
#line 11165 "sql_yacc.yy"
30681
30699
    { (yyval.item)=(yyvsp[(1) - (1)].item); }
30682
30700
    break;
30683
30701
 
30684
30702
  case 1754:
30685
30703
 
30686
30704
/* Line 1455 of yacc.c  */
30687
 
#line 11150 "sql_yacc.yy"
 
30705
#line 11170 "sql_yacc.yy"
30688
30706
    {
30689
30707
            THD *thd= YYTHD;
30690
30708
            LEX *lex= thd->lex;
30736
30754
  case 1755:
30737
30755
 
30738
30756
/* Line 1455 of yacc.c  */
30739
 
#line 11196 "sql_yacc.yy"
 
30757
#line 11216 "sql_yacc.yy"
30740
30758
    { (yyval.item)= (yyvsp[(1) - (1)].item); }
30741
30759
    break;
30742
30760
 
30743
30761
  case 1756:
30744
30762
 
30745
30763
/* Line 1455 of yacc.c  */
30746
 
#line 11201 "sql_yacc.yy"
 
30764
#line 11221 "sql_yacc.yy"
30747
30765
    {
30748
30766
            THD *thd= YYTHD;
30749
30767
            SELECT_LEX *sel=Select;
30766
30784
  case 1757:
30767
30785
 
30768
30786
/* Line 1455 of yacc.c  */
30769
 
#line 11218 "sql_yacc.yy"
 
30787
#line 11238 "sql_yacc.yy"
30770
30788
    { (yyval.item)= (yyvsp[(1) - (1)].item); }
30771
30789
    break;
30772
30790
 
30773
30791
  case 1758:
30774
30792
 
30775
30793
/* Line 1455 of yacc.c  */
30776
 
#line 11223 "sql_yacc.yy"
 
30794
#line 11243 "sql_yacc.yy"
30777
30795
    {
30778
30796
            THD *thd= YYTHD;
30779
30797
            LEX *lex= thd->lex;
30857
30875
  case 1759:
30858
30876
 
30859
30877
/* Line 1455 of yacc.c  */
30860
 
#line 11302 "sql_yacc.yy"
 
30878
#line 11322 "sql_yacc.yy"
30861
30879
    {
30862
30880
            THD *thd= YYTHD;
30863
30881
            LEX *lex= thd->lex;
30887
30905
  case 1760:
30888
30906
 
30889
30907
/* Line 1455 of yacc.c  */
30890
 
#line 11327 "sql_yacc.yy"
 
30908
#line 11347 "sql_yacc.yy"
30891
30909
    {
30892
30910
            THD *thd= YYTHD;
30893
30911
            LEX *lex= thd->lex;
30920
30938
  case 1761:
30921
30939
 
30922
30940
/* Line 1455 of yacc.c  */
30923
 
#line 11357 "sql_yacc.yy"
 
30941
#line 11377 "sql_yacc.yy"
30924
30942
    { (yyval.lex_str)=(yyvsp[(1) - (1)].lex_str);}
30925
30943
    break;
30926
30944
 
30927
30945
  case 1762:
30928
30946
 
30929
30947
/* Line 1455 of yacc.c  */
30930
 
#line 11359 "sql_yacc.yy"
 
30948
#line 11379 "sql_yacc.yy"
30931
30949
    {
30932
30950
            TABLE_LIST *table= Select->table_list.first;
30933
30951
            if (my_strcasecmp(table_alias_charset, (yyvsp[(1) - (5)].lex_str).str, table->db))
30948
30966
  case 1763:
30949
30967
 
30950
30968
/* Line 1455 of yacc.c  */
30951
 
#line 11375 "sql_yacc.yy"
 
30969
#line 11395 "sql_yacc.yy"
30952
30970
    {
30953
30971
            TABLE_LIST *table= Select->table_list.first;
30954
30972
            if (my_strcasecmp(table_alias_charset, (yyvsp[(1) - (3)].lex_str).str, table->alias))
30963
30981
  case 1764:
30964
30982
 
30965
30983
/* Line 1455 of yacc.c  */
30966
 
#line 11384 "sql_yacc.yy"
 
30984
#line 11404 "sql_yacc.yy"
30967
30985
    { (yyval.lex_str)=(yyvsp[(2) - (2)].lex_str);}
30968
30986
    break;
30969
30987
 
30970
30988
  case 1765:
30971
30989
 
30972
30990
/* Line 1455 of yacc.c  */
30973
 
#line 11389 "sql_yacc.yy"
 
30991
#line 11409 "sql_yacc.yy"
30974
30992
    {
30975
30993
            (yyval.table)= new Table_ident((yyvsp[(1) - (1)].lex_str));
30976
30994
            if ((yyval.table) == NULL)
30981
30999
  case 1766:
30982
31000
 
30983
31001
/* Line 1455 of yacc.c  */
30984
 
#line 11395 "sql_yacc.yy"
 
31002
#line 11415 "sql_yacc.yy"
30985
31003
    {
30986
31004
            (yyval.table)= new Table_ident(YYTHD, (yyvsp[(1) - (3)].lex_str),(yyvsp[(3) - (3)].lex_str),0);
30987
31005
            if ((yyval.table) == NULL)
30992
31010
  case 1767:
30993
31011
 
30994
31012
/* Line 1455 of yacc.c  */
30995
 
#line 11401 "sql_yacc.yy"
 
31013
#line 11421 "sql_yacc.yy"
30996
31014
    {
30997
31015
            /* For Delphi */
30998
31016
            (yyval.table)= new Table_ident((yyvsp[(2) - (2)].lex_str));
31004
31022
  case 1768:
31005
31023
 
31006
31024
/* Line 1455 of yacc.c  */
31007
 
#line 11411 "sql_yacc.yy"
 
31025
#line 11431 "sql_yacc.yy"
31008
31026
    {
31009
31027
            (yyval.table)= new Table_ident((yyvsp[(1) - (2)].lex_str));
31010
31028
            if ((yyval.table) == NULL)
31015
31033
  case 1769:
31016
31034
 
31017
31035
/* Line 1455 of yacc.c  */
31018
 
#line 11417 "sql_yacc.yy"
 
31036
#line 11437 "sql_yacc.yy"
31019
31037
    {
31020
31038
            (yyval.table)= new Table_ident(YYTHD, (yyvsp[(1) - (4)].lex_str),(yyvsp[(3) - (4)].lex_str),0);
31021
31039
            if ((yyval.table) == NULL)
31026
31044
  case 1770:
31027
31045
 
31028
31046
/* Line 1455 of yacc.c  */
31029
 
#line 11426 "sql_yacc.yy"
 
31047
#line 11446 "sql_yacc.yy"
31030
31048
    {
31031
31049
            LEX_STRING db={(char*) any_db,3};
31032
31050
            (yyval.table)= new Table_ident(YYTHD, db,(yyvsp[(1) - (1)].lex_str),0);
31038
31056
  case 1771:
31039
31057
 
31040
31058
/* Line 1455 of yacc.c  */
31041
 
#line 11435 "sql_yacc.yy"
 
31059
#line 11455 "sql_yacc.yy"
31042
31060
    { (yyval.lex_str)= (yyvsp[(1) - (1)].lex_str); }
31043
31061
    break;
31044
31062
 
31045
31063
  case 1772:
31046
31064
 
31047
31065
/* Line 1455 of yacc.c  */
31048
 
#line 11437 "sql_yacc.yy"
 
31066
#line 11457 "sql_yacc.yy"
31049
31067
    {
31050
31068
            THD *thd= YYTHD;
31051
31069
 
31076
31094
  case 1773:
31077
31095
 
31078
31096
/* Line 1455 of yacc.c  */
31079
 
#line 11466 "sql_yacc.yy"
 
31097
#line 11486 "sql_yacc.yy"
31080
31098
    {
31081
31099
            THD *thd= YYTHD;
31082
31100
 
31094
31112
  case 1774:
31095
31113
 
31096
31114
/* Line 1455 of yacc.c  */
31097
 
#line 11482 "sql_yacc.yy"
 
31115
#line 11502 "sql_yacc.yy"
31098
31116
    {
31099
31117
            THD *thd= YYTHD;
31100
31118
 
31112
31130
  case 1775:
31113
31131
 
31114
31132
/* Line 1455 of yacc.c  */
31115
 
#line 11498 "sql_yacc.yy"
 
31133
#line 11518 "sql_yacc.yy"
31116
31134
    {
31117
31135
            THD *thd= YYTHD;
31118
31136
 
31131
31149
  case 1776:
31132
31150
 
31133
31151
/* Line 1455 of yacc.c  */
31134
 
#line 11514 "sql_yacc.yy"
 
31152
#line 11534 "sql_yacc.yy"
31135
31153
    { (yyval.lex_str)=(yyvsp[(1) - (1)].lex_str); }
31136
31154
    break;
31137
31155
 
31138
31156
  case 1777:
31139
31157
 
31140
31158
/* Line 1455 of yacc.c  */
31141
 
#line 11516 "sql_yacc.yy"
 
31159
#line 11536 "sql_yacc.yy"
31142
31160
    {
31143
31161
            THD *thd= YYTHD;
31144
31162
            (yyval.lex_str).str= thd->strmake((yyvsp[(1) - (1)].symbol).str, (yyvsp[(1) - (1)].symbol).length);
31151
31169
  case 1778:
31152
31170
 
31153
31171
/* Line 1455 of yacc.c  */
31154
 
#line 11526 "sql_yacc.yy"
 
31172
#line 11546 "sql_yacc.yy"
31155
31173
    { (yyval.lex_str)=(yyvsp[(1) - (1)].lex_str); }
31156
31174
    break;
31157
31175
 
31158
31176
  case 1779:
31159
31177
 
31160
31178
/* Line 1455 of yacc.c  */
31161
 
#line 11528 "sql_yacc.yy"
 
31179
#line 11548 "sql_yacc.yy"
31162
31180
    {
31163
31181
            THD *thd= YYTHD;
31164
31182
            (yyval.lex_str).str= thd->strmake((yyvsp[(1) - (1)].symbol).str, (yyvsp[(1) - (1)].symbol).length);
31171
31189
  case 1780:
31172
31190
 
31173
31191
/* Line 1455 of yacc.c  */
31174
 
#line 11538 "sql_yacc.yy"
 
31192
#line 11558 "sql_yacc.yy"
31175
31193
    { (yyval.lex_str)=(yyvsp[(1) - (1)].lex_str);}
31176
31194
    break;
31177
31195
 
31178
31196
  case 1781:
31179
31197
 
31180
31198
/* Line 1455 of yacc.c  */
31181
 
#line 11539 "sql_yacc.yy"
 
31199
#line 11559 "sql_yacc.yy"
31182
31200
    { (yyval.lex_str)=(yyvsp[(1) - (1)].lex_str);}
31183
31201
    break;
31184
31202
 
31185
31203
  case 1782:
31186
31204
 
31187
31205
/* Line 1455 of yacc.c  */
31188
 
#line 11540 "sql_yacc.yy"
 
31206
#line 11560 "sql_yacc.yy"
31189
31207
    { (yyval.lex_str)=(yyvsp[(1) - (1)].lex_str);}
31190
31208
    break;
31191
31209
 
31192
31210
  case 1783:
31193
31211
 
31194
31212
/* Line 1455 of yacc.c  */
31195
 
#line 11545 "sql_yacc.yy"
 
31213
#line 11565 "sql_yacc.yy"
31196
31214
    {
31197
31215
            THD *thd= YYTHD;
31198
31216
            if (!((yyval.lex_user)=(LEX_USER*) thd->alloc(sizeof(st_lex_user))))
31211
31229
  case 1784:
31212
31230
 
31213
31231
/* Line 1455 of yacc.c  */
31214
 
#line 11559 "sql_yacc.yy"
 
31232
#line 11579 "sql_yacc.yy"
31215
31233
    {
31216
31234
            THD *thd= YYTHD;
31217
31235
            if (!((yyval.lex_user)=(LEX_USER*) thd->alloc(sizeof(st_lex_user))))
31235
31253
  case 1785:
31236
31254
 
31237
31255
/* Line 1455 of yacc.c  */
31238
 
#line 11578 "sql_yacc.yy"
 
31256
#line 11598 "sql_yacc.yy"
31239
31257
    {
31240
31258
            if (!((yyval.lex_user)=(LEX_USER*) YYTHD->alloc(sizeof(st_lex_user))))
31241
31259
              MYSQL_YYABORT;
31251
31269
  case 1786:
31252
31270
 
31253
31271
/* Line 1455 of yacc.c  */
31254
 
#line 11592 "sql_yacc.yy"
 
31272
#line 11612 "sql_yacc.yy"
31255
31273
    {}
31256
31274
    break;
31257
31275
 
31258
31276
  case 1787:
31259
31277
 
31260
31278
/* Line 1455 of yacc.c  */
31261
 
#line 11593 "sql_yacc.yy"
 
31279
#line 11613 "sql_yacc.yy"
31262
31280
    {}
31263
31281
    break;
31264
31282
 
31265
31283
  case 1788:
31266
31284
 
31267
31285
/* Line 1455 of yacc.c  */
31268
 
#line 11594 "sql_yacc.yy"
 
31286
#line 11614 "sql_yacc.yy"
31269
31287
    {}
31270
31288
    break;
31271
31289
 
31272
31290
  case 1789:
31273
31291
 
31274
31292
/* Line 1455 of yacc.c  */
31275
 
#line 11595 "sql_yacc.yy"
 
31293
#line 11615 "sql_yacc.yy"
31276
31294
    {}
31277
31295
    break;
31278
31296
 
31279
31297
  case 1790:
31280
31298
 
31281
31299
/* Line 1455 of yacc.c  */
31282
 
#line 11596 "sql_yacc.yy"
 
31300
#line 11616 "sql_yacc.yy"
31283
31301
    {}
31284
31302
    break;
31285
31303
 
31286
31304
  case 1791:
31287
31305
 
31288
31306
/* Line 1455 of yacc.c  */
31289
 
#line 11597 "sql_yacc.yy"
 
31307
#line 11617 "sql_yacc.yy"
31290
31308
    {}
31291
31309
    break;
31292
31310
 
31293
31311
  case 1792:
31294
31312
 
31295
31313
/* Line 1455 of yacc.c  */
31296
 
#line 11598 "sql_yacc.yy"
 
31314
#line 11618 "sql_yacc.yy"
31297
31315
    {}
31298
31316
    break;
31299
31317
 
31300
31318
  case 1793:
31301
31319
 
31302
31320
/* Line 1455 of yacc.c  */
31303
 
#line 11599 "sql_yacc.yy"
 
31321
#line 11619 "sql_yacc.yy"
31304
31322
    {}
31305
31323
    break;
31306
31324
 
31307
31325
  case 1794:
31308
31326
 
31309
31327
/* Line 1455 of yacc.c  */
31310
 
#line 11600 "sql_yacc.yy"
 
31328
#line 11620 "sql_yacc.yy"
31311
31329
    {}
31312
31330
    break;
31313
31331
 
31314
31332
  case 1795:
31315
31333
 
31316
31334
/* Line 1455 of yacc.c  */
31317
 
#line 11601 "sql_yacc.yy"
 
31335
#line 11621 "sql_yacc.yy"
31318
31336
    {}
31319
31337
    break;
31320
31338
 
31321
31339
  case 1796:
31322
31340
 
31323
31341
/* Line 1455 of yacc.c  */
31324
 
#line 11602 "sql_yacc.yy"
 
31342
#line 11622 "sql_yacc.yy"
31325
31343
    {}
31326
31344
    break;
31327
31345
 
31328
31346
  case 1797:
31329
31347
 
31330
31348
/* Line 1455 of yacc.c  */
31331
 
#line 11603 "sql_yacc.yy"
 
31349
#line 11623 "sql_yacc.yy"
31332
31350
    {}
31333
31351
    break;
31334
31352
 
31335
31353
  case 1798:
31336
31354
 
31337
31355
/* Line 1455 of yacc.c  */
31338
 
#line 11604 "sql_yacc.yy"
 
31356
#line 11624 "sql_yacc.yy"
31339
31357
    {}
31340
31358
    break;
31341
31359
 
31342
31360
  case 1799:
31343
31361
 
31344
31362
/* Line 1455 of yacc.c  */
31345
 
#line 11605 "sql_yacc.yy"
 
31363
#line 11625 "sql_yacc.yy"
31346
31364
    {}
31347
31365
    break;
31348
31366
 
31349
31367
  case 1800:
31350
31368
 
31351
31369
/* Line 1455 of yacc.c  */
31352
 
#line 11606 "sql_yacc.yy"
 
31370
#line 11626 "sql_yacc.yy"
31353
31371
    {}
31354
31372
    break;
31355
31373
 
31356
31374
  case 1801:
31357
31375
 
31358
31376
/* Line 1455 of yacc.c  */
31359
 
#line 11607 "sql_yacc.yy"
 
31377
#line 11627 "sql_yacc.yy"
31360
31378
    {}
31361
31379
    break;
31362
31380
 
31363
31381
  case 1802:
31364
31382
 
31365
31383
/* Line 1455 of yacc.c  */
31366
 
#line 11608 "sql_yacc.yy"
 
31384
#line 11628 "sql_yacc.yy"
31367
31385
    {}
31368
31386
    break;
31369
31387
 
31370
31388
  case 1803:
31371
31389
 
31372
31390
/* Line 1455 of yacc.c  */
31373
 
#line 11609 "sql_yacc.yy"
 
31391
#line 11629 "sql_yacc.yy"
31374
31392
    {}
31375
31393
    break;
31376
31394
 
31377
31395
  case 1804:
31378
31396
 
31379
31397
/* Line 1455 of yacc.c  */
31380
 
#line 11610 "sql_yacc.yy"
 
31398
#line 11630 "sql_yacc.yy"
31381
31399
    {}
31382
31400
    break;
31383
31401
 
31384
31402
  case 1805:
31385
31403
 
31386
31404
/* Line 1455 of yacc.c  */
31387
 
#line 11611 "sql_yacc.yy"
 
31405
#line 11631 "sql_yacc.yy"
31388
31406
    {}
31389
31407
    break;
31390
31408
 
31391
31409
  case 1806:
31392
31410
 
31393
31411
/* Line 1455 of yacc.c  */
31394
 
#line 11612 "sql_yacc.yy"
 
31412
#line 11632 "sql_yacc.yy"
31395
31413
    {}
31396
31414
    break;
31397
31415
 
31398
31416
  case 1807:
31399
31417
 
31400
31418
/* Line 1455 of yacc.c  */
31401
 
#line 11613 "sql_yacc.yy"
 
31419
#line 11633 "sql_yacc.yy"
31402
31420
    {}
31403
31421
    break;
31404
31422
 
31405
31423
  case 1808:
31406
31424
 
31407
31425
/* Line 1455 of yacc.c  */
31408
 
#line 11614 "sql_yacc.yy"
 
31426
#line 11634 "sql_yacc.yy"
31409
31427
    {}
31410
31428
    break;
31411
31429
 
31412
31430
  case 1809:
31413
31431
 
31414
31432
/* Line 1455 of yacc.c  */
31415
 
#line 11615 "sql_yacc.yy"
 
31433
#line 11635 "sql_yacc.yy"
31416
31434
    {}
31417
31435
    break;
31418
31436
 
31419
31437
  case 1810:
31420
31438
 
31421
31439
/* Line 1455 of yacc.c  */
31422
 
#line 11616 "sql_yacc.yy"
 
31440
#line 11636 "sql_yacc.yy"
31423
31441
    {}
31424
31442
    break;
31425
31443
 
31426
31444
  case 1811:
31427
31445
 
31428
31446
/* Line 1455 of yacc.c  */
31429
 
#line 11617 "sql_yacc.yy"
 
31447
#line 11637 "sql_yacc.yy"
31430
31448
    {}
31431
31449
    break;
31432
31450
 
31433
31451
  case 1812:
31434
31452
 
31435
31453
/* Line 1455 of yacc.c  */
31436
 
#line 11618 "sql_yacc.yy"
 
31454
#line 11638 "sql_yacc.yy"
31437
31455
    {}
31438
31456
    break;
31439
31457
 
31440
31458
  case 1813:
31441
31459
 
31442
31460
/* Line 1455 of yacc.c  */
31443
 
#line 11619 "sql_yacc.yy"
 
31461
#line 11639 "sql_yacc.yy"
31444
31462
    {}
31445
31463
    break;
31446
31464
 
31447
31465
  case 1814:
31448
31466
 
31449
31467
/* Line 1455 of yacc.c  */
31450
 
#line 11620 "sql_yacc.yy"
 
31468
#line 11640 "sql_yacc.yy"
31451
31469
    {}
31452
31470
    break;
31453
31471
 
31454
31472
  case 1815:
31455
31473
 
31456
31474
/* Line 1455 of yacc.c  */
31457
 
#line 11621 "sql_yacc.yy"
 
31475
#line 11641 "sql_yacc.yy"
31458
31476
    {}
31459
31477
    break;
31460
31478
 
31461
31479
  case 1816:
31462
31480
 
31463
31481
/* Line 1455 of yacc.c  */
31464
 
#line 11622 "sql_yacc.yy"
 
31482
#line 11642 "sql_yacc.yy"
31465
31483
    {}
31466
31484
    break;
31467
31485
 
31468
31486
  case 1817:
31469
31487
 
31470
31488
/* Line 1455 of yacc.c  */
31471
 
#line 11623 "sql_yacc.yy"
 
31489
#line 11643 "sql_yacc.yy"
31472
31490
    {}
31473
31491
    break;
31474
31492
 
31475
31493
  case 1818:
31476
31494
 
31477
31495
/* Line 1455 of yacc.c  */
31478
 
#line 11624 "sql_yacc.yy"
 
31496
#line 11644 "sql_yacc.yy"
31479
31497
    {}
31480
31498
    break;
31481
31499
 
31482
31500
  case 1819:
31483
31501
 
31484
31502
/* Line 1455 of yacc.c  */
31485
 
#line 11625 "sql_yacc.yy"
 
31503
#line 11645 "sql_yacc.yy"
31486
31504
    {}
31487
31505
    break;
31488
31506
 
31489
31507
  case 1820:
31490
31508
 
31491
31509
/* Line 1455 of yacc.c  */
31492
 
#line 11626 "sql_yacc.yy"
 
31510
#line 11646 "sql_yacc.yy"
31493
31511
    {}
31494
31512
    break;
31495
31513
 
31496
31514
  case 1821:
31497
31515
 
31498
31516
/* Line 1455 of yacc.c  */
31499
 
#line 11627 "sql_yacc.yy"
 
31517
#line 11647 "sql_yacc.yy"
31500
31518
    {}
31501
31519
    break;
31502
31520
 
31503
31521
  case 1822:
31504
31522
 
31505
31523
/* Line 1455 of yacc.c  */
31506
 
#line 11628 "sql_yacc.yy"
 
31524
#line 11648 "sql_yacc.yy"
31507
31525
    {}
31508
31526
    break;
31509
31527
 
31510
31528
  case 1823:
31511
31529
 
31512
31530
/* Line 1455 of yacc.c  */
31513
 
#line 11629 "sql_yacc.yy"
 
31531
#line 11649 "sql_yacc.yy"
31514
31532
    {}
31515
31533
    break;
31516
31534
 
31517
31535
  case 1824:
31518
31536
 
31519
31537
/* Line 1455 of yacc.c  */
31520
 
#line 11630 "sql_yacc.yy"
 
31538
#line 11650 "sql_yacc.yy"
31521
31539
    {}
31522
31540
    break;
31523
31541
 
31524
31542
  case 1825:
31525
31543
 
31526
31544
/* Line 1455 of yacc.c  */
31527
 
#line 11631 "sql_yacc.yy"
 
31545
#line 11651 "sql_yacc.yy"
31528
31546
    {}
31529
31547
    break;
31530
31548
 
31531
31549
  case 1826:
31532
31550
 
31533
31551
/* Line 1455 of yacc.c  */
31534
 
#line 11632 "sql_yacc.yy"
 
31552
#line 11652 "sql_yacc.yy"
31535
31553
    {}
31536
31554
    break;
31537
31555
 
31538
31556
  case 1827:
31539
31557
 
31540
31558
/* Line 1455 of yacc.c  */
31541
 
#line 11633 "sql_yacc.yy"
 
31559
#line 11653 "sql_yacc.yy"
31542
31560
    {}
31543
31561
    break;
31544
31562
 
31545
31563
  case 1828:
31546
31564
 
31547
31565
/* Line 1455 of yacc.c  */
31548
 
#line 11634 "sql_yacc.yy"
 
31566
#line 11654 "sql_yacc.yy"
31549
31567
    {}
31550
31568
    break;
31551
31569
 
31552
31570
  case 1829:
31553
31571
 
31554
31572
/* Line 1455 of yacc.c  */
31555
 
#line 11635 "sql_yacc.yy"
 
31573
#line 11655 "sql_yacc.yy"
31556
31574
    {}
31557
31575
    break;
31558
31576
 
31559
31577
  case 1830:
31560
31578
 
31561
31579
/* Line 1455 of yacc.c  */
31562
 
#line 11636 "sql_yacc.yy"
 
31580
#line 11656 "sql_yacc.yy"
31563
31581
    {}
31564
31582
    break;
31565
31583
 
31566
31584
  case 1831:
31567
31585
 
31568
31586
/* Line 1455 of yacc.c  */
31569
 
#line 11637 "sql_yacc.yy"
 
31587
#line 11657 "sql_yacc.yy"
31570
31588
    {}
31571
31589
    break;
31572
31590
 
31573
31591
  case 1832:
31574
31592
 
31575
31593
/* Line 1455 of yacc.c  */
31576
 
#line 11638 "sql_yacc.yy"
 
31594
#line 11658 "sql_yacc.yy"
31577
31595
    {}
31578
31596
    break;
31579
31597
 
31580
31598
  case 1833:
31581
31599
 
31582
31600
/* Line 1455 of yacc.c  */
31583
 
#line 11639 "sql_yacc.yy"
 
31601
#line 11659 "sql_yacc.yy"
31584
31602
    {}
31585
31603
    break;
31586
31604
 
31587
31605
  case 1834:
31588
31606
 
31589
31607
/* Line 1455 of yacc.c  */
31590
 
#line 11640 "sql_yacc.yy"
 
31608
#line 11660 "sql_yacc.yy"
31591
31609
    {}
31592
31610
    break;
31593
31611
 
31594
31612
  case 1835:
31595
31613
 
31596
31614
/* Line 1455 of yacc.c  */
31597
 
#line 11641 "sql_yacc.yy"
 
31615
#line 11661 "sql_yacc.yy"
31598
31616
    {}
31599
31617
    break;
31600
31618
 
31601
31619
  case 1836:
31602
31620
 
31603
31621
/* Line 1455 of yacc.c  */
31604
 
#line 11651 "sql_yacc.yy"
 
31622
#line 11671 "sql_yacc.yy"
31605
31623
    {}
31606
31624
    break;
31607
31625
 
31608
31626
  case 1837:
31609
31627
 
31610
31628
/* Line 1455 of yacc.c  */
31611
 
#line 11652 "sql_yacc.yy"
 
31629
#line 11672 "sql_yacc.yy"
31612
31630
    {}
31613
31631
    break;
31614
31632
 
31615
31633
  case 1838:
31616
31634
 
31617
31635
/* Line 1455 of yacc.c  */
31618
 
#line 11653 "sql_yacc.yy"
 
31636
#line 11673 "sql_yacc.yy"
31619
31637
    {}
31620
31638
    break;
31621
31639
 
31622
31640
  case 1839:
31623
31641
 
31624
31642
/* Line 1455 of yacc.c  */
31625
 
#line 11654 "sql_yacc.yy"
 
31643
#line 11674 "sql_yacc.yy"
31626
31644
    {}
31627
31645
    break;
31628
31646
 
31629
31647
  case 1840:
31630
31648
 
31631
31649
/* Line 1455 of yacc.c  */
31632
 
#line 11655 "sql_yacc.yy"
 
31650
#line 11675 "sql_yacc.yy"
31633
31651
    {}
31634
31652
    break;
31635
31653
 
31636
31654
  case 1841:
31637
31655
 
31638
31656
/* Line 1455 of yacc.c  */
31639
 
#line 11656 "sql_yacc.yy"
 
31657
#line 11676 "sql_yacc.yy"
31640
31658
    {}
31641
31659
    break;
31642
31660
 
31643
31661
  case 1842:
31644
31662
 
31645
31663
/* Line 1455 of yacc.c  */
31646
 
#line 11657 "sql_yacc.yy"
 
31664
#line 11677 "sql_yacc.yy"
31647
31665
    {}
31648
31666
    break;
31649
31667
 
31650
31668
  case 1843:
31651
31669
 
31652
31670
/* Line 1455 of yacc.c  */
31653
 
#line 11658 "sql_yacc.yy"
 
31671
#line 11678 "sql_yacc.yy"
31654
31672
    {}
31655
31673
    break;
31656
31674
 
31657
31675
  case 1844:
31658
31676
 
31659
31677
/* Line 1455 of yacc.c  */
31660
 
#line 11659 "sql_yacc.yy"
 
31678
#line 11679 "sql_yacc.yy"
31661
31679
    {}
31662
31680
    break;
31663
31681
 
31664
31682
  case 1845:
31665
31683
 
31666
31684
/* Line 1455 of yacc.c  */
31667
 
#line 11660 "sql_yacc.yy"
 
31685
#line 11680 "sql_yacc.yy"
31668
31686
    {}
31669
31687
    break;
31670
31688
 
31671
31689
  case 1846:
31672
31690
 
31673
31691
/* Line 1455 of yacc.c  */
31674
 
#line 11661 "sql_yacc.yy"
 
31692
#line 11681 "sql_yacc.yy"
31675
31693
    {}
31676
31694
    break;
31677
31695
 
31678
31696
  case 1847:
31679
31697
 
31680
31698
/* Line 1455 of yacc.c  */
31681
 
#line 11662 "sql_yacc.yy"
 
31699
#line 11682 "sql_yacc.yy"
31682
31700
    {}
31683
31701
    break;
31684
31702
 
31685
31703
  case 1848:
31686
31704
 
31687
31705
/* Line 1455 of yacc.c  */
31688
 
#line 11663 "sql_yacc.yy"
 
31706
#line 11683 "sql_yacc.yy"
31689
31707
    {}
31690
31708
    break;
31691
31709
 
31692
31710
  case 1849:
31693
31711
 
31694
31712
/* Line 1455 of yacc.c  */
31695
 
#line 11664 "sql_yacc.yy"
 
31713
#line 11684 "sql_yacc.yy"
31696
31714
    {}
31697
31715
    break;
31698
31716
 
31699
31717
  case 1850:
31700
31718
 
31701
31719
/* Line 1455 of yacc.c  */
31702
 
#line 11665 "sql_yacc.yy"
 
31720
#line 11685 "sql_yacc.yy"
31703
31721
    {}
31704
31722
    break;
31705
31723
 
31706
31724
  case 1851:
31707
31725
 
31708
31726
/* Line 1455 of yacc.c  */
31709
 
#line 11666 "sql_yacc.yy"
 
31727
#line 11686 "sql_yacc.yy"
31710
31728
    {}
31711
31729
    break;
31712
31730
 
31713
31731
  case 1852:
31714
31732
 
31715
31733
/* Line 1455 of yacc.c  */
31716
 
#line 11667 "sql_yacc.yy"
 
31734
#line 11687 "sql_yacc.yy"
31717
31735
    {}
31718
31736
    break;
31719
31737
 
31720
31738
  case 1853:
31721
31739
 
31722
31740
/* Line 1455 of yacc.c  */
31723
 
#line 11668 "sql_yacc.yy"
 
31741
#line 11688 "sql_yacc.yy"
31724
31742
    {}
31725
31743
    break;
31726
31744
 
31727
31745
  case 1854:
31728
31746
 
31729
31747
/* Line 1455 of yacc.c  */
31730
 
#line 11669 "sql_yacc.yy"
 
31748
#line 11689 "sql_yacc.yy"
31731
31749
    {}
31732
31750
    break;
31733
31751
 
31734
31752
  case 1855:
31735
31753
 
31736
31754
/* Line 1455 of yacc.c  */
31737
 
#line 11670 "sql_yacc.yy"
 
31755
#line 11690 "sql_yacc.yy"
31738
31756
    {}
31739
31757
    break;
31740
31758
 
31741
31759
  case 1856:
31742
31760
 
31743
31761
/* Line 1455 of yacc.c  */
31744
 
#line 11671 "sql_yacc.yy"
 
31762
#line 11691 "sql_yacc.yy"
31745
31763
    {}
31746
31764
    break;
31747
31765
 
31748
31766
  case 1857:
31749
31767
 
31750
31768
/* Line 1455 of yacc.c  */
31751
 
#line 11672 "sql_yacc.yy"
 
31769
#line 11692 "sql_yacc.yy"
31752
31770
    {}
31753
31771
    break;
31754
31772
 
31755
31773
  case 1858:
31756
31774
 
31757
31775
/* Line 1455 of yacc.c  */
31758
 
#line 11673 "sql_yacc.yy"
 
31776
#line 11693 "sql_yacc.yy"
31759
31777
    {}
31760
31778
    break;
31761
31779
 
31762
31780
  case 1859:
31763
31781
 
31764
31782
/* Line 1455 of yacc.c  */
31765
 
#line 11674 "sql_yacc.yy"
 
31783
#line 11694 "sql_yacc.yy"
31766
31784
    {}
31767
31785
    break;
31768
31786
 
31769
31787
  case 1860:
31770
31788
 
31771
31789
/* Line 1455 of yacc.c  */
31772
 
#line 11675 "sql_yacc.yy"
 
31790
#line 11695 "sql_yacc.yy"
31773
31791
    {}
31774
31792
    break;
31775
31793
 
31776
31794
  case 1861:
31777
31795
 
31778
31796
/* Line 1455 of yacc.c  */
31779
 
#line 11676 "sql_yacc.yy"
 
31797
#line 11696 "sql_yacc.yy"
31780
31798
    {}
31781
31799
    break;
31782
31800
 
31783
31801
  case 1862:
31784
31802
 
31785
31803
/* Line 1455 of yacc.c  */
31786
 
#line 11677 "sql_yacc.yy"
 
31804
#line 11697 "sql_yacc.yy"
31787
31805
    {}
31788
31806
    break;
31789
31807
 
31790
31808
  case 1863:
31791
31809
 
31792
31810
/* Line 1455 of yacc.c  */
31793
 
#line 11678 "sql_yacc.yy"
 
31811
#line 11698 "sql_yacc.yy"
31794
31812
    {}
31795
31813
    break;
31796
31814
 
31797
31815
  case 1864:
31798
31816
 
31799
31817
/* Line 1455 of yacc.c  */
31800
 
#line 11679 "sql_yacc.yy"
 
31818
#line 11699 "sql_yacc.yy"
31801
31819
    {}
31802
31820
    break;
31803
31821
 
31804
31822
  case 1865:
31805
31823
 
31806
31824
/* Line 1455 of yacc.c  */
31807
 
#line 11680 "sql_yacc.yy"
 
31825
#line 11700 "sql_yacc.yy"
31808
31826
    {}
31809
31827
    break;
31810
31828
 
31811
31829
  case 1866:
31812
31830
 
31813
31831
/* Line 1455 of yacc.c  */
31814
 
#line 11681 "sql_yacc.yy"
 
31832
#line 11701 "sql_yacc.yy"
31815
31833
    {}
31816
31834
    break;
31817
31835
 
31818
31836
  case 1867:
31819
31837
 
31820
31838
/* Line 1455 of yacc.c  */
31821
 
#line 11682 "sql_yacc.yy"
 
31839
#line 11702 "sql_yacc.yy"
31822
31840
    {}
31823
31841
    break;
31824
31842
 
31825
31843
  case 1868:
31826
31844
 
31827
31845
/* Line 1455 of yacc.c  */
31828
 
#line 11683 "sql_yacc.yy"
 
31846
#line 11703 "sql_yacc.yy"
31829
31847
    {}
31830
31848
    break;
31831
31849
 
31832
31850
  case 1869:
31833
31851
 
31834
31852
/* Line 1455 of yacc.c  */
31835
 
#line 11684 "sql_yacc.yy"
 
31853
#line 11704 "sql_yacc.yy"
31836
31854
    {}
31837
31855
    break;
31838
31856
 
31839
31857
  case 1870:
31840
31858
 
31841
31859
/* Line 1455 of yacc.c  */
31842
 
#line 11685 "sql_yacc.yy"
 
31860
#line 11705 "sql_yacc.yy"
31843
31861
    {}
31844
31862
    break;
31845
31863
 
31846
31864
  case 1871:
31847
31865
 
31848
31866
/* Line 1455 of yacc.c  */
31849
 
#line 11686 "sql_yacc.yy"
 
31867
#line 11706 "sql_yacc.yy"
31850
31868
    {}
31851
31869
    break;
31852
31870
 
31853
31871
  case 1872:
31854
31872
 
31855
31873
/* Line 1455 of yacc.c  */
31856
 
#line 11687 "sql_yacc.yy"
 
31874
#line 11707 "sql_yacc.yy"
31857
31875
    {}
31858
31876
    break;
31859
31877
 
31860
31878
  case 1873:
31861
31879
 
31862
31880
/* Line 1455 of yacc.c  */
31863
 
#line 11688 "sql_yacc.yy"
 
31881
#line 11708 "sql_yacc.yy"
31864
31882
    {}
31865
31883
    break;
31866
31884
 
31867
31885
  case 1874:
31868
31886
 
31869
31887
/* Line 1455 of yacc.c  */
31870
 
#line 11689 "sql_yacc.yy"
 
31888
#line 11709 "sql_yacc.yy"
31871
31889
    {}
31872
31890
    break;
31873
31891
 
31874
31892
  case 1875:
31875
31893
 
31876
31894
/* Line 1455 of yacc.c  */
31877
 
#line 11690 "sql_yacc.yy"
 
31895
#line 11710 "sql_yacc.yy"
31878
31896
    {}
31879
31897
    break;
31880
31898
 
31881
31899
  case 1876:
31882
31900
 
31883
31901
/* Line 1455 of yacc.c  */
31884
 
#line 11691 "sql_yacc.yy"
 
31902
#line 11711 "sql_yacc.yy"
31885
31903
    {}
31886
31904
    break;
31887
31905
 
31888
31906
  case 1877:
31889
31907
 
31890
31908
/* Line 1455 of yacc.c  */
31891
 
#line 11692 "sql_yacc.yy"
 
31909
#line 11712 "sql_yacc.yy"
31892
31910
    {}
31893
31911
    break;
31894
31912
 
31895
31913
  case 1878:
31896
31914
 
31897
31915
/* Line 1455 of yacc.c  */
31898
 
#line 11693 "sql_yacc.yy"
 
31916
#line 11713 "sql_yacc.yy"
31899
31917
    {}
31900
31918
    break;
31901
31919
 
31902
31920
  case 1879:
31903
31921
 
31904
31922
/* Line 1455 of yacc.c  */
31905
 
#line 11694 "sql_yacc.yy"
 
31923
#line 11714 "sql_yacc.yy"
31906
31924
    {}
31907
31925
    break;
31908
31926
 
31909
31927
  case 1880:
31910
31928
 
31911
31929
/* Line 1455 of yacc.c  */
31912
 
#line 11695 "sql_yacc.yy"
 
31930
#line 11715 "sql_yacc.yy"
31913
31931
    {}
31914
31932
    break;
31915
31933
 
31916
31934
  case 1881:
31917
31935
 
31918
31936
/* Line 1455 of yacc.c  */
31919
 
#line 11696 "sql_yacc.yy"
 
31937
#line 11716 "sql_yacc.yy"
31920
31938
    {}
31921
31939
    break;
31922
31940
 
31923
31941
  case 1882:
31924
31942
 
31925
31943
/* Line 1455 of yacc.c  */
31926
 
#line 11697 "sql_yacc.yy"
 
31944
#line 11717 "sql_yacc.yy"
31927
31945
    {}
31928
31946
    break;
31929
31947
 
31930
31948
  case 1883:
31931
31949
 
31932
31950
/* Line 1455 of yacc.c  */
31933
 
#line 11698 "sql_yacc.yy"
 
31951
#line 11718 "sql_yacc.yy"
31934
31952
    {}
31935
31953
    break;
31936
31954
 
31937
31955
  case 1884:
31938
31956
 
31939
31957
/* Line 1455 of yacc.c  */
31940
 
#line 11699 "sql_yacc.yy"
 
31958
#line 11719 "sql_yacc.yy"
31941
31959
    {}
31942
31960
    break;
31943
31961
 
31944
31962
  case 1885:
31945
31963
 
31946
31964
/* Line 1455 of yacc.c  */
31947
 
#line 11700 "sql_yacc.yy"
 
31965
#line 11720 "sql_yacc.yy"
31948
31966
    {}
31949
31967
    break;
31950
31968
 
31951
31969
  case 1886:
31952
31970
 
31953
31971
/* Line 1455 of yacc.c  */
31954
 
#line 11701 "sql_yacc.yy"
 
31972
#line 11721 "sql_yacc.yy"
31955
31973
    {}
31956
31974
    break;
31957
31975
 
31958
31976
  case 1887:
31959
31977
 
31960
31978
/* Line 1455 of yacc.c  */
31961
 
#line 11702 "sql_yacc.yy"
 
31979
#line 11722 "sql_yacc.yy"
31962
31980
    {}
31963
31981
    break;
31964
31982
 
31965
31983
  case 1888:
31966
31984
 
31967
31985
/* Line 1455 of yacc.c  */
31968
 
#line 11703 "sql_yacc.yy"
 
31986
#line 11723 "sql_yacc.yy"
31969
31987
    {}
31970
31988
    break;
31971
31989
 
31972
31990
  case 1889:
31973
31991
 
31974
31992
/* Line 1455 of yacc.c  */
31975
 
#line 11704 "sql_yacc.yy"
 
31993
#line 11724 "sql_yacc.yy"
31976
31994
    {}
31977
31995
    break;
31978
31996
 
31979
31997
  case 1890:
31980
31998
 
31981
31999
/* Line 1455 of yacc.c  */
31982
 
#line 11705 "sql_yacc.yy"
 
32000
#line 11725 "sql_yacc.yy"
31983
32001
    {}
31984
32002
    break;
31985
32003
 
31986
32004
  case 1891:
31987
32005
 
31988
32006
/* Line 1455 of yacc.c  */
31989
 
#line 11706 "sql_yacc.yy"
 
32007
#line 11726 "sql_yacc.yy"
31990
32008
    {}
31991
32009
    break;
31992
32010
 
31993
32011
  case 1892:
31994
32012
 
31995
32013
/* Line 1455 of yacc.c  */
31996
 
#line 11707 "sql_yacc.yy"
 
32014
#line 11727 "sql_yacc.yy"
31997
32015
    {}
31998
32016
    break;
31999
32017
 
32000
32018
  case 1893:
32001
32019
 
32002
32020
/* Line 1455 of yacc.c  */
32003
 
#line 11708 "sql_yacc.yy"
 
32021
#line 11728 "sql_yacc.yy"
32004
32022
    {}
32005
32023
    break;
32006
32024
 
32007
32025
  case 1894:
32008
32026
 
32009
32027
/* Line 1455 of yacc.c  */
32010
 
#line 11709 "sql_yacc.yy"
 
32028
#line 11729 "sql_yacc.yy"
32011
32029
    {}
32012
32030
    break;
32013
32031
 
32014
32032
  case 1895:
32015
32033
 
32016
32034
/* Line 1455 of yacc.c  */
32017
 
#line 11710 "sql_yacc.yy"
 
32035
#line 11730 "sql_yacc.yy"
32018
32036
    {}
32019
32037
    break;
32020
32038
 
32021
32039
  case 1896:
32022
32040
 
32023
32041
/* Line 1455 of yacc.c  */
32024
 
#line 11711 "sql_yacc.yy"
 
32042
#line 11731 "sql_yacc.yy"
32025
32043
    {}
32026
32044
    break;
32027
32045
 
32028
32046
  case 1897:
32029
32047
 
32030
32048
/* Line 1455 of yacc.c  */
32031
 
#line 11712 "sql_yacc.yy"
 
32049
#line 11732 "sql_yacc.yy"
32032
32050
    {}
32033
32051
    break;
32034
32052
 
32035
32053
  case 1898:
32036
32054
 
32037
32055
/* Line 1455 of yacc.c  */
32038
 
#line 11713 "sql_yacc.yy"
 
32056
#line 11733 "sql_yacc.yy"
32039
32057
    {}
32040
32058
    break;
32041
32059
 
32042
32060
  case 1899:
32043
32061
 
32044
32062
/* Line 1455 of yacc.c  */
32045
 
#line 11714 "sql_yacc.yy"
 
32063
#line 11734 "sql_yacc.yy"
32046
32064
    {}
32047
32065
    break;
32048
32066
 
32049
32067
  case 1900:
32050
32068
 
32051
32069
/* Line 1455 of yacc.c  */
32052
 
#line 11715 "sql_yacc.yy"
 
32070
#line 11735 "sql_yacc.yy"
32053
32071
    {}
32054
32072
    break;
32055
32073
 
32056
32074
  case 1901:
32057
32075
 
32058
32076
/* Line 1455 of yacc.c  */
32059
 
#line 11716 "sql_yacc.yy"
 
32077
#line 11736 "sql_yacc.yy"
32060
32078
    {}
32061
32079
    break;
32062
32080
 
32063
32081
  case 1902:
32064
32082
 
32065
32083
/* Line 1455 of yacc.c  */
32066
 
#line 11717 "sql_yacc.yy"
 
32084
#line 11737 "sql_yacc.yy"
32067
32085
    {}
32068
32086
    break;
32069
32087
 
32070
32088
  case 1903:
32071
32089
 
32072
32090
/* Line 1455 of yacc.c  */
32073
 
#line 11718 "sql_yacc.yy"
 
32091
#line 11738 "sql_yacc.yy"
32074
32092
    {}
32075
32093
    break;
32076
32094
 
32077
32095
  case 1904:
32078
32096
 
32079
32097
/* Line 1455 of yacc.c  */
32080
 
#line 11719 "sql_yacc.yy"
 
32098
#line 11739 "sql_yacc.yy"
32081
32099
    {}
32082
32100
    break;
32083
32101
 
32084
32102
  case 1905:
32085
32103
 
32086
32104
/* Line 1455 of yacc.c  */
32087
 
#line 11720 "sql_yacc.yy"
 
32105
#line 11740 "sql_yacc.yy"
32088
32106
    {}
32089
32107
    break;
32090
32108
 
32091
32109
  case 1906:
32092
32110
 
32093
32111
/* Line 1455 of yacc.c  */
32094
 
#line 11721 "sql_yacc.yy"
 
32112
#line 11741 "sql_yacc.yy"
32095
32113
    {}
32096
32114
    break;
32097
32115
 
32098
32116
  case 1907:
32099
32117
 
32100
32118
/* Line 1455 of yacc.c  */
32101
 
#line 11722 "sql_yacc.yy"
 
32119
#line 11742 "sql_yacc.yy"
32102
32120
    {}
32103
32121
    break;
32104
32122
 
32105
32123
  case 1908:
32106
32124
 
32107
32125
/* Line 1455 of yacc.c  */
32108
 
#line 11723 "sql_yacc.yy"
 
32126
#line 11743 "sql_yacc.yy"
32109
32127
    {}
32110
32128
    break;
32111
32129
 
32112
32130
  case 1909:
32113
32131
 
32114
32132
/* Line 1455 of yacc.c  */
32115
 
#line 11724 "sql_yacc.yy"
 
32133
#line 11744 "sql_yacc.yy"
32116
32134
    {}
32117
32135
    break;
32118
32136
 
32119
32137
  case 1910:
32120
32138
 
32121
32139
/* Line 1455 of yacc.c  */
32122
 
#line 11725 "sql_yacc.yy"
 
32140
#line 11745 "sql_yacc.yy"
32123
32141
    {}
32124
32142
    break;
32125
32143
 
32126
32144
  case 1911:
32127
32145
 
32128
32146
/* Line 1455 of yacc.c  */
32129
 
#line 11726 "sql_yacc.yy"
 
32147
#line 11746 "sql_yacc.yy"
32130
32148
    {}
32131
32149
    break;
32132
32150
 
32133
32151
  case 1912:
32134
32152
 
32135
32153
/* Line 1455 of yacc.c  */
32136
 
#line 11727 "sql_yacc.yy"
 
32154
#line 11747 "sql_yacc.yy"
32137
32155
    {}
32138
32156
    break;
32139
32157
 
32140
32158
  case 1913:
32141
32159
 
32142
32160
/* Line 1455 of yacc.c  */
32143
 
#line 11728 "sql_yacc.yy"
 
32161
#line 11748 "sql_yacc.yy"
32144
32162
    {}
32145
32163
    break;
32146
32164
 
32147
32165
  case 1914:
32148
32166
 
32149
32167
/* Line 1455 of yacc.c  */
32150
 
#line 11729 "sql_yacc.yy"
 
32168
#line 11749 "sql_yacc.yy"
32151
32169
    {}
32152
32170
    break;
32153
32171
 
32154
32172
  case 1915:
32155
32173
 
32156
32174
/* Line 1455 of yacc.c  */
32157
 
#line 11730 "sql_yacc.yy"
 
32175
#line 11750 "sql_yacc.yy"
32158
32176
    {}
32159
32177
    break;
32160
32178
 
32161
32179
  case 1916:
32162
32180
 
32163
32181
/* Line 1455 of yacc.c  */
32164
 
#line 11731 "sql_yacc.yy"
 
32182
#line 11751 "sql_yacc.yy"
32165
32183
    {}
32166
32184
    break;
32167
32185
 
32168
32186
  case 1917:
32169
32187
 
32170
32188
/* Line 1455 of yacc.c  */
32171
 
#line 11732 "sql_yacc.yy"
 
32189
#line 11752 "sql_yacc.yy"
32172
32190
    {}
32173
32191
    break;
32174
32192
 
32175
32193
  case 1918:
32176
32194
 
32177
32195
/* Line 1455 of yacc.c  */
32178
 
#line 11733 "sql_yacc.yy"
 
32196
#line 11753 "sql_yacc.yy"
32179
32197
    {}
32180
32198
    break;
32181
32199
 
32182
32200
  case 1919:
32183
32201
 
32184
32202
/* Line 1455 of yacc.c  */
32185
 
#line 11734 "sql_yacc.yy"
 
32203
#line 11754 "sql_yacc.yy"
32186
32204
    {}
32187
32205
    break;
32188
32206
 
32189
32207
  case 1920:
32190
32208
 
32191
32209
/* Line 1455 of yacc.c  */
32192
 
#line 11735 "sql_yacc.yy"
 
32210
#line 11755 "sql_yacc.yy"
32193
32211
    {}
32194
32212
    break;
32195
32213
 
32196
32214
  case 1921:
32197
32215
 
32198
32216
/* Line 1455 of yacc.c  */
32199
 
#line 11736 "sql_yacc.yy"
 
32217
#line 11756 "sql_yacc.yy"
32200
32218
    {}
32201
32219
    break;
32202
32220
 
32203
32221
  case 1922:
32204
32222
 
32205
32223
/* Line 1455 of yacc.c  */
32206
 
#line 11737 "sql_yacc.yy"
 
32224
#line 11757 "sql_yacc.yy"
32207
32225
    {}
32208
32226
    break;
32209
32227
 
32210
32228
  case 1923:
32211
32229
 
32212
32230
/* Line 1455 of yacc.c  */
32213
 
#line 11738 "sql_yacc.yy"
 
32231
#line 11758 "sql_yacc.yy"
32214
32232
    {}
32215
32233
    break;
32216
32234
 
32217
32235
  case 1924:
32218
32236
 
32219
32237
/* Line 1455 of yacc.c  */
32220
 
#line 11739 "sql_yacc.yy"
 
32238
#line 11759 "sql_yacc.yy"
32221
32239
    {}
32222
32240
    break;
32223
32241
 
32224
32242
  case 1925:
32225
32243
 
32226
32244
/* Line 1455 of yacc.c  */
32227
 
#line 11740 "sql_yacc.yy"
 
32245
#line 11760 "sql_yacc.yy"
32228
32246
    {}
32229
32247
    break;
32230
32248
 
32231
32249
  case 1926:
32232
32250
 
32233
32251
/* Line 1455 of yacc.c  */
32234
 
#line 11741 "sql_yacc.yy"
 
32252
#line 11761 "sql_yacc.yy"
32235
32253
    {}
32236
32254
    break;
32237
32255
 
32238
32256
  case 1927:
32239
32257
 
32240
32258
/* Line 1455 of yacc.c  */
32241
 
#line 11742 "sql_yacc.yy"
 
32259
#line 11762 "sql_yacc.yy"
32242
32260
    {}
32243
32261
    break;
32244
32262
 
32245
32263
  case 1928:
32246
32264
 
32247
32265
/* Line 1455 of yacc.c  */
32248
 
#line 11743 "sql_yacc.yy"
 
32266
#line 11763 "sql_yacc.yy"
32249
32267
    {}
32250
32268
    break;
32251
32269
 
32252
32270
  case 1929:
32253
32271
 
32254
32272
/* Line 1455 of yacc.c  */
32255
 
#line 11744 "sql_yacc.yy"
 
32273
#line 11764 "sql_yacc.yy"
32256
32274
    {}
32257
32275
    break;
32258
32276
 
32259
32277
  case 1930:
32260
32278
 
32261
32279
/* Line 1455 of yacc.c  */
32262
 
#line 11745 "sql_yacc.yy"
 
32280
#line 11765 "sql_yacc.yy"
32263
32281
    {}
32264
32282
    break;
32265
32283
 
32266
32284
  case 1931:
32267
32285
 
32268
32286
/* Line 1455 of yacc.c  */
32269
 
#line 11746 "sql_yacc.yy"
 
32287
#line 11766 "sql_yacc.yy"
32270
32288
    {}
32271
32289
    break;
32272
32290
 
32273
32291
  case 1932:
32274
32292
 
32275
32293
/* Line 1455 of yacc.c  */
32276
 
#line 11747 "sql_yacc.yy"
 
32294
#line 11767 "sql_yacc.yy"
32277
32295
    {}
32278
32296
    break;
32279
32297
 
32280
32298
  case 1933:
32281
32299
 
32282
32300
/* Line 1455 of yacc.c  */
32283
 
#line 11748 "sql_yacc.yy"
 
32301
#line 11768 "sql_yacc.yy"
32284
32302
    {}
32285
32303
    break;
32286
32304
 
32287
32305
  case 1934:
32288
32306
 
32289
32307
/* Line 1455 of yacc.c  */
32290
 
#line 11749 "sql_yacc.yy"
 
32308
#line 11769 "sql_yacc.yy"
32291
32309
    {}
32292
32310
    break;
32293
32311
 
32294
32312
  case 1935:
32295
32313
 
32296
32314
/* Line 1455 of yacc.c  */
32297
 
#line 11750 "sql_yacc.yy"
 
32315
#line 11770 "sql_yacc.yy"
32298
32316
    {}
32299
32317
    break;
32300
32318
 
32301
32319
  case 1936:
32302
32320
 
32303
32321
/* Line 1455 of yacc.c  */
32304
 
#line 11751 "sql_yacc.yy"
 
32322
#line 11771 "sql_yacc.yy"
32305
32323
    {}
32306
32324
    break;
32307
32325
 
32308
32326
  case 1937:
32309
32327
 
32310
32328
/* Line 1455 of yacc.c  */
32311
 
#line 11752 "sql_yacc.yy"
 
32329
#line 11772 "sql_yacc.yy"
32312
32330
    {}
32313
32331
    break;
32314
32332
 
32315
32333
  case 1938:
32316
32334
 
32317
32335
/* Line 1455 of yacc.c  */
32318
 
#line 11753 "sql_yacc.yy"
 
32336
#line 11773 "sql_yacc.yy"
32319
32337
    {}
32320
32338
    break;
32321
32339
 
32322
32340
  case 1939:
32323
32341
 
32324
32342
/* Line 1455 of yacc.c  */
32325
 
#line 11754 "sql_yacc.yy"
 
32343
#line 11774 "sql_yacc.yy"
32326
32344
    {}
32327
32345
    break;
32328
32346
 
32329
32347
  case 1940:
32330
32348
 
32331
32349
/* Line 1455 of yacc.c  */
32332
 
#line 11755 "sql_yacc.yy"
 
32350
#line 11775 "sql_yacc.yy"
32333
32351
    {}
32334
32352
    break;
32335
32353
 
32336
32354
  case 1941:
32337
32355
 
32338
32356
/* Line 1455 of yacc.c  */
32339
 
#line 11756 "sql_yacc.yy"
 
32357
#line 11776 "sql_yacc.yy"
32340
32358
    {}
32341
32359
    break;
32342
32360
 
32343
32361
  case 1942:
32344
32362
 
32345
32363
/* Line 1455 of yacc.c  */
32346
 
#line 11757 "sql_yacc.yy"
 
32364
#line 11777 "sql_yacc.yy"
32347
32365
    {}
32348
32366
    break;
32349
32367
 
32350
32368
  case 1943:
32351
32369
 
32352
32370
/* Line 1455 of yacc.c  */
32353
 
#line 11758 "sql_yacc.yy"
 
32371
#line 11778 "sql_yacc.yy"
32354
32372
    {}
32355
32373
    break;
32356
32374
 
32357
32375
  case 1944:
32358
32376
 
32359
32377
/* Line 1455 of yacc.c  */
32360
 
#line 11759 "sql_yacc.yy"
 
32378
#line 11779 "sql_yacc.yy"
32361
32379
    {}
32362
32380
    break;
32363
32381
 
32364
32382
  case 1945:
32365
32383
 
32366
32384
/* Line 1455 of yacc.c  */
32367
 
#line 11760 "sql_yacc.yy"
 
32385
#line 11780 "sql_yacc.yy"
32368
32386
    {}
32369
32387
    break;
32370
32388
 
32371
32389
  case 1946:
32372
32390
 
32373
32391
/* Line 1455 of yacc.c  */
32374
 
#line 11761 "sql_yacc.yy"
 
32392
#line 11781 "sql_yacc.yy"
32375
32393
    {}
32376
32394
    break;
32377
32395
 
32378
32396
  case 1947:
32379
32397
 
32380
32398
/* Line 1455 of yacc.c  */
32381
 
#line 11762 "sql_yacc.yy"
 
32399
#line 11782 "sql_yacc.yy"
32382
32400
    {}
32383
32401
    break;
32384
32402
 
32385
32403
  case 1948:
32386
32404
 
32387
32405
/* Line 1455 of yacc.c  */
32388
 
#line 11763 "sql_yacc.yy"
 
32406
#line 11783 "sql_yacc.yy"
32389
32407
    {}
32390
32408
    break;
32391
32409
 
32392
32410
  case 1949:
32393
32411
 
32394
32412
/* Line 1455 of yacc.c  */
32395
 
#line 11764 "sql_yacc.yy"
 
32413
#line 11784 "sql_yacc.yy"
32396
32414
    {}
32397
32415
    break;
32398
32416
 
32399
32417
  case 1950:
32400
32418
 
32401
32419
/* Line 1455 of yacc.c  */
32402
 
#line 11765 "sql_yacc.yy"
 
32420
#line 11785 "sql_yacc.yy"
32403
32421
    {}
32404
32422
    break;
32405
32423
 
32406
32424
  case 1951:
32407
32425
 
32408
32426
/* Line 1455 of yacc.c  */
32409
 
#line 11766 "sql_yacc.yy"
 
32427
#line 11786 "sql_yacc.yy"
32410
32428
    {}
32411
32429
    break;
32412
32430
 
32413
32431
  case 1952:
32414
32432
 
32415
32433
/* Line 1455 of yacc.c  */
32416
 
#line 11767 "sql_yacc.yy"
 
32434
#line 11787 "sql_yacc.yy"
32417
32435
    {}
32418
32436
    break;
32419
32437
 
32420
32438
  case 1953:
32421
32439
 
32422
32440
/* Line 1455 of yacc.c  */
32423
 
#line 11768 "sql_yacc.yy"
 
32441
#line 11788 "sql_yacc.yy"
32424
32442
    {}
32425
32443
    break;
32426
32444
 
32427
32445
  case 1954:
32428
32446
 
32429
32447
/* Line 1455 of yacc.c  */
32430
 
#line 11769 "sql_yacc.yy"
 
32448
#line 11789 "sql_yacc.yy"
32431
32449
    {}
32432
32450
    break;
32433
32451
 
32434
32452
  case 1955:
32435
32453
 
32436
32454
/* Line 1455 of yacc.c  */
32437
 
#line 11770 "sql_yacc.yy"
 
32455
#line 11790 "sql_yacc.yy"
32438
32456
    {}
32439
32457
    break;
32440
32458
 
32441
32459
  case 1956:
32442
32460
 
32443
32461
/* Line 1455 of yacc.c  */
32444
 
#line 11771 "sql_yacc.yy"
 
32462
#line 11791 "sql_yacc.yy"
32445
32463
    {}
32446
32464
    break;
32447
32465
 
32448
32466
  case 1957:
32449
32467
 
32450
32468
/* Line 1455 of yacc.c  */
32451
 
#line 11772 "sql_yacc.yy"
 
32469
#line 11792 "sql_yacc.yy"
32452
32470
    {}
32453
32471
    break;
32454
32472
 
32455
32473
  case 1958:
32456
32474
 
32457
32475
/* Line 1455 of yacc.c  */
32458
 
#line 11773 "sql_yacc.yy"
 
32476
#line 11793 "sql_yacc.yy"
32459
32477
    {}
32460
32478
    break;
32461
32479
 
32462
32480
  case 1959:
32463
32481
 
32464
32482
/* Line 1455 of yacc.c  */
32465
 
#line 11774 "sql_yacc.yy"
 
32483
#line 11794 "sql_yacc.yy"
32466
32484
    {}
32467
32485
    break;
32468
32486
 
32469
32487
  case 1960:
32470
32488
 
32471
32489
/* Line 1455 of yacc.c  */
32472
 
#line 11775 "sql_yacc.yy"
 
32490
#line 11795 "sql_yacc.yy"
32473
32491
    {}
32474
32492
    break;
32475
32493
 
32476
32494
  case 1961:
32477
32495
 
32478
32496
/* Line 1455 of yacc.c  */
32479
 
#line 11776 "sql_yacc.yy"
 
32497
#line 11796 "sql_yacc.yy"
32480
32498
    {}
32481
32499
    break;
32482
32500
 
32483
32501
  case 1962:
32484
32502
 
32485
32503
/* Line 1455 of yacc.c  */
32486
 
#line 11777 "sql_yacc.yy"
 
32504
#line 11797 "sql_yacc.yy"
32487
32505
    {}
32488
32506
    break;
32489
32507
 
32490
32508
  case 1963:
32491
32509
 
32492
32510
/* Line 1455 of yacc.c  */
32493
 
#line 11778 "sql_yacc.yy"
 
32511
#line 11798 "sql_yacc.yy"
32494
32512
    {}
32495
32513
    break;
32496
32514
 
32497
32515
  case 1964:
32498
32516
 
32499
32517
/* Line 1455 of yacc.c  */
32500
 
#line 11779 "sql_yacc.yy"
 
32518
#line 11799 "sql_yacc.yy"
32501
32519
    {}
32502
32520
    break;
32503
32521
 
32504
32522
  case 1965:
32505
32523
 
32506
32524
/* Line 1455 of yacc.c  */
32507
 
#line 11780 "sql_yacc.yy"
 
32525
#line 11800 "sql_yacc.yy"
32508
32526
    {}
32509
32527
    break;
32510
32528
 
32511
32529
  case 1966:
32512
32530
 
32513
32531
/* Line 1455 of yacc.c  */
32514
 
#line 11781 "sql_yacc.yy"
 
32532
#line 11801 "sql_yacc.yy"
32515
32533
    {}
32516
32534
    break;
32517
32535
 
32518
32536
  case 1967:
32519
32537
 
32520
32538
/* Line 1455 of yacc.c  */
32521
 
#line 11782 "sql_yacc.yy"
 
32539
#line 11802 "sql_yacc.yy"
32522
32540
    {}
32523
32541
    break;
32524
32542
 
32525
32543
  case 1968:
32526
32544
 
32527
32545
/* Line 1455 of yacc.c  */
32528
 
#line 11783 "sql_yacc.yy"
 
32546
#line 11803 "sql_yacc.yy"
32529
32547
    {}
32530
32548
    break;
32531
32549
 
32532
32550
  case 1969:
32533
32551
 
32534
32552
/* Line 1455 of yacc.c  */
32535
 
#line 11784 "sql_yacc.yy"
 
32553
#line 11804 "sql_yacc.yy"
32536
32554
    {}
32537
32555
    break;
32538
32556
 
32539
32557
  case 1970:
32540
32558
 
32541
32559
/* Line 1455 of yacc.c  */
32542
 
#line 11785 "sql_yacc.yy"
 
32560
#line 11805 "sql_yacc.yy"
32543
32561
    {}
32544
32562
    break;
32545
32563
 
32546
32564
  case 1971:
32547
32565
 
32548
32566
/* Line 1455 of yacc.c  */
32549
 
#line 11786 "sql_yacc.yy"
 
32567
#line 11806 "sql_yacc.yy"
32550
32568
    {}
32551
32569
    break;
32552
32570
 
32553
32571
  case 1972:
32554
32572
 
32555
32573
/* Line 1455 of yacc.c  */
32556
 
#line 11787 "sql_yacc.yy"
 
32574
#line 11807 "sql_yacc.yy"
32557
32575
    {}
32558
32576
    break;
32559
32577
 
32560
32578
  case 1973:
32561
32579
 
32562
32580
/* Line 1455 of yacc.c  */
32563
 
#line 11788 "sql_yacc.yy"
 
32581
#line 11808 "sql_yacc.yy"
32564
32582
    {}
32565
32583
    break;
32566
32584
 
32567
32585
  case 1974:
32568
32586
 
32569
32587
/* Line 1455 of yacc.c  */
32570
 
#line 11789 "sql_yacc.yy"
 
32588
#line 11809 "sql_yacc.yy"
32571
32589
    {}
32572
32590
    break;
32573
32591
 
32574
32592
  case 1975:
32575
32593
 
32576
32594
/* Line 1455 of yacc.c  */
32577
 
#line 11790 "sql_yacc.yy"
 
32595
#line 11810 "sql_yacc.yy"
32578
32596
    {}
32579
32597
    break;
32580
32598
 
32581
32599
  case 1976:
32582
32600
 
32583
32601
/* Line 1455 of yacc.c  */
32584
 
#line 11791 "sql_yacc.yy"
 
32602
#line 11811 "sql_yacc.yy"
32585
32603
    {}
32586
32604
    break;
32587
32605
 
32588
32606
  case 1977:
32589
32607
 
32590
32608
/* Line 1455 of yacc.c  */
32591
 
#line 11792 "sql_yacc.yy"
 
32609
#line 11812 "sql_yacc.yy"
32592
32610
    {}
32593
32611
    break;
32594
32612
 
32595
32613
  case 1978:
32596
32614
 
32597
32615
/* Line 1455 of yacc.c  */
32598
 
#line 11793 "sql_yacc.yy"
 
32616
#line 11813 "sql_yacc.yy"
32599
32617
    {}
32600
32618
    break;
32601
32619
 
32602
32620
  case 1979:
32603
32621
 
32604
32622
/* Line 1455 of yacc.c  */
32605
 
#line 11794 "sql_yacc.yy"
 
32623
#line 11814 "sql_yacc.yy"
32606
32624
    {}
32607
32625
    break;
32608
32626
 
32609
32627
  case 1980:
32610
32628
 
32611
32629
/* Line 1455 of yacc.c  */
32612
 
#line 11795 "sql_yacc.yy"
 
32630
#line 11815 "sql_yacc.yy"
32613
32631
    {}
32614
32632
    break;
32615
32633
 
32616
32634
  case 1981:
32617
32635
 
32618
32636
/* Line 1455 of yacc.c  */
32619
 
#line 11796 "sql_yacc.yy"
 
32637
#line 11816 "sql_yacc.yy"
32620
32638
    {}
32621
32639
    break;
32622
32640
 
32623
32641
  case 1982:
32624
32642
 
32625
32643
/* Line 1455 of yacc.c  */
32626
 
#line 11797 "sql_yacc.yy"
 
32644
#line 11817 "sql_yacc.yy"
32627
32645
    {}
32628
32646
    break;
32629
32647
 
32630
32648
  case 1983:
32631
32649
 
32632
32650
/* Line 1455 of yacc.c  */
32633
 
#line 11798 "sql_yacc.yy"
 
32651
#line 11818 "sql_yacc.yy"
32634
32652
    {}
32635
32653
    break;
32636
32654
 
32637
32655
  case 1984:
32638
32656
 
32639
32657
/* Line 1455 of yacc.c  */
32640
 
#line 11799 "sql_yacc.yy"
 
32658
#line 11819 "sql_yacc.yy"
32641
32659
    {}
32642
32660
    break;
32643
32661
 
32644
32662
  case 1985:
32645
32663
 
32646
32664
/* Line 1455 of yacc.c  */
32647
 
#line 11800 "sql_yacc.yy"
 
32665
#line 11820 "sql_yacc.yy"
32648
32666
    {}
32649
32667
    break;
32650
32668
 
32651
32669
  case 1986:
32652
32670
 
32653
32671
/* Line 1455 of yacc.c  */
32654
 
#line 11801 "sql_yacc.yy"
 
32672
#line 11821 "sql_yacc.yy"
32655
32673
    {}
32656
32674
    break;
32657
32675
 
32658
32676
  case 1987:
32659
32677
 
32660
32678
/* Line 1455 of yacc.c  */
32661
 
#line 11802 "sql_yacc.yy"
 
32679
#line 11822 "sql_yacc.yy"
32662
32680
    {}
32663
32681
    break;
32664
32682
 
32665
32683
  case 1988:
32666
32684
 
32667
32685
/* Line 1455 of yacc.c  */
32668
 
#line 11803 "sql_yacc.yy"
 
32686
#line 11823 "sql_yacc.yy"
32669
32687
    {}
32670
32688
    break;
32671
32689
 
32672
32690
  case 1989:
32673
32691
 
32674
32692
/* Line 1455 of yacc.c  */
32675
 
#line 11804 "sql_yacc.yy"
 
32693
#line 11824 "sql_yacc.yy"
32676
32694
    {}
32677
32695
    break;
32678
32696
 
32679
32697
  case 1990:
32680
32698
 
32681
32699
/* Line 1455 of yacc.c  */
32682
 
#line 11805 "sql_yacc.yy"
 
32700
#line 11825 "sql_yacc.yy"
32683
32701
    {}
32684
32702
    break;
32685
32703
 
32686
32704
  case 1991:
32687
32705
 
32688
32706
/* Line 1455 of yacc.c  */
32689
 
#line 11806 "sql_yacc.yy"
 
32707
#line 11826 "sql_yacc.yy"
32690
32708
    {}
32691
32709
    break;
32692
32710
 
32693
32711
  case 1992:
32694
32712
 
32695
32713
/* Line 1455 of yacc.c  */
32696
 
#line 11807 "sql_yacc.yy"
 
32714
#line 11827 "sql_yacc.yy"
32697
32715
    {}
32698
32716
    break;
32699
32717
 
32700
32718
  case 1993:
32701
32719
 
32702
32720
/* Line 1455 of yacc.c  */
32703
 
#line 11808 "sql_yacc.yy"
 
32721
#line 11828 "sql_yacc.yy"
32704
32722
    {}
32705
32723
    break;
32706
32724
 
32707
32725
  case 1994:
32708
32726
 
32709
32727
/* Line 1455 of yacc.c  */
32710
 
#line 11809 "sql_yacc.yy"
 
32728
#line 11829 "sql_yacc.yy"
32711
32729
    {}
32712
32730
    break;
32713
32731
 
32714
32732
  case 1995:
32715
32733
 
32716
32734
/* Line 1455 of yacc.c  */
32717
 
#line 11810 "sql_yacc.yy"
 
32735
#line 11830 "sql_yacc.yy"
32718
32736
    {}
32719
32737
    break;
32720
32738
 
32721
32739
  case 1996:
32722
32740
 
32723
32741
/* Line 1455 of yacc.c  */
32724
 
#line 11811 "sql_yacc.yy"
 
32742
#line 11831 "sql_yacc.yy"
32725
32743
    {}
32726
32744
    break;
32727
32745
 
32728
32746
  case 1997:
32729
32747
 
32730
32748
/* Line 1455 of yacc.c  */
32731
 
#line 11812 "sql_yacc.yy"
 
32749
#line 11832 "sql_yacc.yy"
32732
32750
    {}
32733
32751
    break;
32734
32752
 
32735
32753
  case 1998:
32736
32754
 
32737
32755
/* Line 1455 of yacc.c  */
32738
 
#line 11813 "sql_yacc.yy"
 
32756
#line 11833 "sql_yacc.yy"
32739
32757
    {}
32740
32758
    break;
32741
32759
 
32742
32760
  case 1999:
32743
32761
 
32744
32762
/* Line 1455 of yacc.c  */
32745
 
#line 11814 "sql_yacc.yy"
 
32763
#line 11834 "sql_yacc.yy"
32746
32764
    {}
32747
32765
    break;
32748
32766
 
32749
32767
  case 2000:
32750
32768
 
32751
32769
/* Line 1455 of yacc.c  */
32752
 
#line 11815 "sql_yacc.yy"
 
32770
#line 11835 "sql_yacc.yy"
32753
32771
    {}
32754
32772
    break;
32755
32773
 
32756
32774
  case 2001:
32757
32775
 
32758
32776
/* Line 1455 of yacc.c  */
32759
 
#line 11816 "sql_yacc.yy"
 
32777
#line 11836 "sql_yacc.yy"
32760
32778
    {}
32761
32779
    break;
32762
32780
 
32763
32781
  case 2002:
32764
32782
 
32765
32783
/* Line 1455 of yacc.c  */
32766
 
#line 11817 "sql_yacc.yy"
 
32784
#line 11837 "sql_yacc.yy"
32767
32785
    {}
32768
32786
    break;
32769
32787
 
32770
32788
  case 2003:
32771
32789
 
32772
32790
/* Line 1455 of yacc.c  */
32773
 
#line 11818 "sql_yacc.yy"
 
32791
#line 11838 "sql_yacc.yy"
32774
32792
    {}
32775
32793
    break;
32776
32794
 
32777
32795
  case 2004:
32778
32796
 
32779
32797
/* Line 1455 of yacc.c  */
32780
 
#line 11819 "sql_yacc.yy"
 
32798
#line 11839 "sql_yacc.yy"
32781
32799
    {}
32782
32800
    break;
32783
32801
 
32784
32802
  case 2005:
32785
32803
 
32786
32804
/* Line 1455 of yacc.c  */
32787
 
#line 11820 "sql_yacc.yy"
 
32805
#line 11840 "sql_yacc.yy"
32788
32806
    {}
32789
32807
    break;
32790
32808
 
32791
32809
  case 2006:
32792
32810
 
32793
32811
/* Line 1455 of yacc.c  */
32794
 
#line 11821 "sql_yacc.yy"
 
32812
#line 11841 "sql_yacc.yy"
32795
32813
    {}
32796
32814
    break;
32797
32815
 
32798
32816
  case 2007:
32799
32817
 
32800
32818
/* Line 1455 of yacc.c  */
32801
 
#line 11822 "sql_yacc.yy"
 
32819
#line 11842 "sql_yacc.yy"
32802
32820
    {}
32803
32821
    break;
32804
32822
 
32805
32823
  case 2008:
32806
32824
 
32807
32825
/* Line 1455 of yacc.c  */
32808
 
#line 11823 "sql_yacc.yy"
 
32826
#line 11843 "sql_yacc.yy"
32809
32827
    {}
32810
32828
    break;
32811
32829
 
32812
32830
  case 2009:
32813
32831
 
32814
32832
/* Line 1455 of yacc.c  */
32815
 
#line 11824 "sql_yacc.yy"
 
32833
#line 11844 "sql_yacc.yy"
32816
32834
    {}
32817
32835
    break;
32818
32836
 
32819
32837
  case 2010:
32820
32838
 
32821
32839
/* Line 1455 of yacc.c  */
32822
 
#line 11825 "sql_yacc.yy"
 
32840
#line 11845 "sql_yacc.yy"
32823
32841
    {}
32824
32842
    break;
32825
32843
 
32826
32844
  case 2011:
32827
32845
 
32828
32846
/* Line 1455 of yacc.c  */
32829
 
#line 11826 "sql_yacc.yy"
 
32847
#line 11846 "sql_yacc.yy"
32830
32848
    {}
32831
32849
    break;
32832
32850
 
32833
32851
  case 2012:
32834
32852
 
32835
32853
/* Line 1455 of yacc.c  */
32836
 
#line 11827 "sql_yacc.yy"
 
32854
#line 11847 "sql_yacc.yy"
32837
32855
    {}
32838
32856
    break;
32839
32857
 
32840
32858
  case 2013:
32841
32859
 
32842
32860
/* Line 1455 of yacc.c  */
32843
 
#line 11828 "sql_yacc.yy"
 
32861
#line 11848 "sql_yacc.yy"
32844
32862
    {}
32845
32863
    break;
32846
32864
 
32847
32865
  case 2014:
32848
32866
 
32849
32867
/* Line 1455 of yacc.c  */
32850
 
#line 11829 "sql_yacc.yy"
 
32868
#line 11849 "sql_yacc.yy"
32851
32869
    {}
32852
32870
    break;
32853
32871
 
32854
32872
  case 2015:
32855
32873
 
32856
32874
/* Line 1455 of yacc.c  */
32857
 
#line 11830 "sql_yacc.yy"
 
32875
#line 11850 "sql_yacc.yy"
32858
32876
    {}
32859
32877
    break;
32860
32878
 
32861
32879
  case 2016:
32862
32880
 
32863
32881
/* Line 1455 of yacc.c  */
32864
 
#line 11831 "sql_yacc.yy"
 
32882
#line 11851 "sql_yacc.yy"
32865
32883
    {}
32866
32884
    break;
32867
32885
 
32868
32886
  case 2017:
32869
32887
 
32870
32888
/* Line 1455 of yacc.c  */
32871
 
#line 11832 "sql_yacc.yy"
 
32889
#line 11852 "sql_yacc.yy"
32872
32890
    {}
32873
32891
    break;
32874
32892
 
32875
32893
  case 2018:
32876
32894
 
32877
32895
/* Line 1455 of yacc.c  */
32878
 
#line 11833 "sql_yacc.yy"
 
32896
#line 11853 "sql_yacc.yy"
32879
32897
    {}
32880
32898
    break;
32881
32899
 
32882
32900
  case 2019:
32883
32901
 
32884
32902
/* Line 1455 of yacc.c  */
32885
 
#line 11834 "sql_yacc.yy"
 
32903
#line 11854 "sql_yacc.yy"
32886
32904
    {}
32887
32905
    break;
32888
32906
 
32889
32907
  case 2020:
32890
32908
 
32891
32909
/* Line 1455 of yacc.c  */
32892
 
#line 11835 "sql_yacc.yy"
 
32910
#line 11855 "sql_yacc.yy"
32893
32911
    {}
32894
32912
    break;
32895
32913
 
32896
32914
  case 2021:
32897
32915
 
32898
32916
/* Line 1455 of yacc.c  */
32899
 
#line 11836 "sql_yacc.yy"
 
32917
#line 11856 "sql_yacc.yy"
32900
32918
    {}
32901
32919
    break;
32902
32920
 
32903
32921
  case 2022:
32904
32922
 
32905
32923
/* Line 1455 of yacc.c  */
32906
 
#line 11837 "sql_yacc.yy"
 
32924
#line 11857 "sql_yacc.yy"
32907
32925
    {}
32908
32926
    break;
32909
32927
 
32910
32928
  case 2023:
32911
32929
 
32912
32930
/* Line 1455 of yacc.c  */
32913
 
#line 11838 "sql_yacc.yy"
 
32931
#line 11858 "sql_yacc.yy"
32914
32932
    {}
32915
32933
    break;
32916
32934
 
32917
32935
  case 2024:
32918
32936
 
32919
32937
/* Line 1455 of yacc.c  */
32920
 
#line 11839 "sql_yacc.yy"
 
32938
#line 11859 "sql_yacc.yy"
32921
32939
    {}
32922
32940
    break;
32923
32941
 
32924
32942
  case 2025:
32925
32943
 
32926
32944
/* Line 1455 of yacc.c  */
32927
 
#line 11840 "sql_yacc.yy"
 
32945
#line 11860 "sql_yacc.yy"
32928
32946
    {}
32929
32947
    break;
32930
32948
 
32931
32949
  case 2026:
32932
32950
 
32933
32951
/* Line 1455 of yacc.c  */
32934
 
#line 11841 "sql_yacc.yy"
 
32952
#line 11861 "sql_yacc.yy"
32935
32953
    {}
32936
32954
    break;
32937
32955
 
32938
32956
  case 2027:
32939
32957
 
32940
32958
/* Line 1455 of yacc.c  */
32941
 
#line 11842 "sql_yacc.yy"
 
32959
#line 11862 "sql_yacc.yy"
32942
32960
    {}
32943
32961
    break;
32944
32962
 
32945
32963
  case 2028:
32946
32964
 
32947
32965
/* Line 1455 of yacc.c  */
32948
 
#line 11843 "sql_yacc.yy"
 
32966
#line 11863 "sql_yacc.yy"
32949
32967
    {}
32950
32968
    break;
32951
32969
 
32952
32970
  case 2029:
32953
32971
 
32954
32972
/* Line 1455 of yacc.c  */
32955
 
#line 11844 "sql_yacc.yy"
 
32973
#line 11864 "sql_yacc.yy"
32956
32974
    {}
32957
32975
    break;
32958
32976
 
32959
32977
  case 2030:
32960
32978
 
32961
32979
/* Line 1455 of yacc.c  */
32962
 
#line 11845 "sql_yacc.yy"
 
32980
#line 11865 "sql_yacc.yy"
32963
32981
    {}
32964
32982
    break;
32965
32983
 
32966
32984
  case 2031:
32967
32985
 
32968
32986
/* Line 1455 of yacc.c  */
32969
 
#line 11846 "sql_yacc.yy"
 
32987
#line 11866 "sql_yacc.yy"
32970
32988
    {}
32971
32989
    break;
32972
32990
 
32973
32991
  case 2032:
32974
32992
 
32975
32993
/* Line 1455 of yacc.c  */
32976
 
#line 11847 "sql_yacc.yy"
 
32994
#line 11867 "sql_yacc.yy"
32977
32995
    {}
32978
32996
    break;
32979
32997
 
32980
32998
  case 2033:
32981
32999
 
32982
33000
/* Line 1455 of yacc.c  */
32983
 
#line 11848 "sql_yacc.yy"
 
33001
#line 11868 "sql_yacc.yy"
32984
33002
    {}
32985
33003
    break;
32986
33004
 
32987
33005
  case 2034:
32988
33006
 
32989
33007
/* Line 1455 of yacc.c  */
32990
 
#line 11849 "sql_yacc.yy"
 
33008
#line 11869 "sql_yacc.yy"
32991
33009
    {}
32992
33010
    break;
32993
33011
 
32994
33012
  case 2035:
32995
33013
 
32996
33014
/* Line 1455 of yacc.c  */
32997
 
#line 11850 "sql_yacc.yy"
 
33015
#line 11870 "sql_yacc.yy"
32998
33016
    {}
32999
33017
    break;
33000
33018
 
33001
33019
  case 2036:
33002
33020
 
33003
33021
/* Line 1455 of yacc.c  */
33004
 
#line 11851 "sql_yacc.yy"
 
33022
#line 11871 "sql_yacc.yy"
33005
33023
    {}
33006
33024
    break;
33007
33025
 
33008
33026
  case 2037:
33009
33027
 
33010
33028
/* Line 1455 of yacc.c  */
33011
 
#line 11852 "sql_yacc.yy"
 
33029
#line 11872 "sql_yacc.yy"
33012
33030
    {}
33013
33031
    break;
33014
33032
 
33015
33033
  case 2038:
33016
33034
 
33017
33035
/* Line 1455 of yacc.c  */
33018
 
#line 11853 "sql_yacc.yy"
 
33036
#line 11873 "sql_yacc.yy"
33019
33037
    {}
33020
33038
    break;
33021
33039
 
33022
33040
  case 2039:
33023
33041
 
33024
33042
/* Line 1455 of yacc.c  */
33025
 
#line 11854 "sql_yacc.yy"
 
33043
#line 11874 "sql_yacc.yy"
33026
33044
    {}
33027
33045
    break;
33028
33046
 
33029
33047
  case 2040:
33030
33048
 
33031
33049
/* Line 1455 of yacc.c  */
33032
 
#line 11855 "sql_yacc.yy"
 
33050
#line 11875 "sql_yacc.yy"
33033
33051
    {}
33034
33052
    break;
33035
33053
 
33036
33054
  case 2041:
33037
33055
 
33038
33056
/* Line 1455 of yacc.c  */
33039
 
#line 11856 "sql_yacc.yy"
 
33057
#line 11876 "sql_yacc.yy"
33040
33058
    {}
33041
33059
    break;
33042
33060
 
33043
33061
  case 2042:
33044
33062
 
33045
33063
/* Line 1455 of yacc.c  */
33046
 
#line 11857 "sql_yacc.yy"
 
33064
#line 11877 "sql_yacc.yy"
33047
33065
    {}
33048
33066
    break;
33049
33067
 
33050
33068
  case 2043:
33051
33069
 
33052
33070
/* Line 1455 of yacc.c  */
33053
 
#line 11858 "sql_yacc.yy"
 
33071
#line 11878 "sql_yacc.yy"
33054
33072
    {}
33055
33073
    break;
33056
33074
 
33057
33075
  case 2044:
33058
33076
 
33059
33077
/* Line 1455 of yacc.c  */
33060
 
#line 11859 "sql_yacc.yy"
 
33078
#line 11879 "sql_yacc.yy"
33061
33079
    {}
33062
33080
    break;
33063
33081
 
33064
33082
  case 2045:
33065
33083
 
33066
33084
/* Line 1455 of yacc.c  */
33067
 
#line 11860 "sql_yacc.yy"
 
33085
#line 11880 "sql_yacc.yy"
33068
33086
    {}
33069
33087
    break;
33070
33088
 
33071
33089
  case 2046:
33072
33090
 
33073
33091
/* Line 1455 of yacc.c  */
33074
 
#line 11861 "sql_yacc.yy"
 
33092
#line 11881 "sql_yacc.yy"
33075
33093
    {}
33076
33094
    break;
33077
33095
 
33078
33096
  case 2047:
33079
33097
 
33080
33098
/* Line 1455 of yacc.c  */
33081
 
#line 11862 "sql_yacc.yy"
 
33099
#line 11882 "sql_yacc.yy"
33082
33100
    {}
33083
33101
    break;
33084
33102
 
33085
33103
  case 2048:
33086
33104
 
33087
33105
/* Line 1455 of yacc.c  */
33088
 
#line 11863 "sql_yacc.yy"
 
33106
#line 11883 "sql_yacc.yy"
33089
33107
    {}
33090
33108
    break;
33091
33109
 
33092
33110
  case 2049:
33093
33111
 
33094
33112
/* Line 1455 of yacc.c  */
33095
 
#line 11864 "sql_yacc.yy"
 
33113
#line 11884 "sql_yacc.yy"
33096
33114
    {}
33097
33115
    break;
33098
33116
 
33099
33117
  case 2050:
33100
33118
 
33101
33119
/* Line 1455 of yacc.c  */
33102
 
#line 11865 "sql_yacc.yy"
 
33120
#line 11885 "sql_yacc.yy"
33103
33121
    {}
33104
33122
    break;
33105
33123
 
33106
33124
  case 2051:
33107
33125
 
33108
33126
/* Line 1455 of yacc.c  */
33109
 
#line 11866 "sql_yacc.yy"
 
33127
#line 11886 "sql_yacc.yy"
33110
33128
    {}
33111
33129
    break;
33112
33130
 
33113
33131
  case 2052:
33114
33132
 
33115
33133
/* Line 1455 of yacc.c  */
33116
 
#line 11867 "sql_yacc.yy"
 
33134
#line 11887 "sql_yacc.yy"
33117
33135
    {}
33118
33136
    break;
33119
33137
 
33120
33138
  case 2053:
33121
33139
 
33122
33140
/* Line 1455 of yacc.c  */
33123
 
#line 11868 "sql_yacc.yy"
 
33141
#line 11888 "sql_yacc.yy"
33124
33142
    {}
33125
33143
    break;
33126
33144
 
33127
33145
  case 2054:
33128
33146
 
33129
33147
/* Line 1455 of yacc.c  */
33130
 
#line 11869 "sql_yacc.yy"
 
33148
#line 11889 "sql_yacc.yy"
33131
33149
    {}
33132
33150
    break;
33133
33151
 
33134
33152
  case 2055:
33135
33153
 
33136
33154
/* Line 1455 of yacc.c  */
33137
 
#line 11870 "sql_yacc.yy"
 
33155
#line 11890 "sql_yacc.yy"
33138
33156
    {}
33139
33157
    break;
33140
33158
 
33141
33159
  case 2056:
33142
33160
 
33143
33161
/* Line 1455 of yacc.c  */
33144
 
#line 11871 "sql_yacc.yy"
 
33162
#line 11891 "sql_yacc.yy"
33145
33163
    {}
33146
33164
    break;
33147
33165
 
33148
33166
  case 2057:
33149
33167
 
33150
33168
/* Line 1455 of yacc.c  */
33151
 
#line 11872 "sql_yacc.yy"
 
33169
#line 11892 "sql_yacc.yy"
33152
33170
    {}
33153
33171
    break;
33154
33172
 
33155
33173
  case 2058:
33156
33174
 
33157
33175
/* Line 1455 of yacc.c  */
33158
 
#line 11873 "sql_yacc.yy"
 
33176
#line 11893 "sql_yacc.yy"
33159
33177
    {}
33160
33178
    break;
33161
33179
 
33162
33180
  case 2059:
33163
33181
 
33164
33182
/* Line 1455 of yacc.c  */
33165
 
#line 11874 "sql_yacc.yy"
 
33183
#line 11894 "sql_yacc.yy"
33166
33184
    {}
33167
33185
    break;
33168
33186
 
33169
33187
  case 2060:
33170
33188
 
33171
33189
/* Line 1455 of yacc.c  */
33172
 
#line 11875 "sql_yacc.yy"
 
33190
#line 11895 "sql_yacc.yy"
33173
33191
    {}
33174
33192
    break;
33175
33193
 
33176
33194
  case 2061:
33177
33195
 
33178
33196
/* Line 1455 of yacc.c  */
33179
 
#line 11876 "sql_yacc.yy"
 
33197
#line 11896 "sql_yacc.yy"
33180
33198
    {}
33181
33199
    break;
33182
33200
 
33183
33201
  case 2062:
33184
33202
 
33185
33203
/* Line 1455 of yacc.c  */
33186
 
#line 11877 "sql_yacc.yy"
 
33204
#line 11897 "sql_yacc.yy"
33187
33205
    {}
33188
33206
    break;
33189
33207
 
33190
33208
  case 2063:
33191
33209
 
33192
33210
/* Line 1455 of yacc.c  */
33193
 
#line 11878 "sql_yacc.yy"
 
33211
#line 11898 "sql_yacc.yy"
33194
33212
    {}
33195
33213
    break;
33196
33214
 
33197
33215
  case 2064:
33198
33216
 
33199
33217
/* Line 1455 of yacc.c  */
33200
 
#line 11879 "sql_yacc.yy"
 
33218
#line 11899 "sql_yacc.yy"
33201
33219
    {}
33202
33220
    break;
33203
33221
 
33204
33222
  case 2065:
33205
33223
 
33206
33224
/* Line 1455 of yacc.c  */
33207
 
#line 11880 "sql_yacc.yy"
 
33225
#line 11900 "sql_yacc.yy"
33208
33226
    {}
33209
33227
    break;
33210
33228
 
33211
33229
  case 2066:
33212
33230
 
33213
33231
/* Line 1455 of yacc.c  */
33214
 
#line 11881 "sql_yacc.yy"
 
33232
#line 11901 "sql_yacc.yy"
33215
33233
    {}
33216
33234
    break;
33217
33235
 
33218
33236
  case 2067:
33219
33237
 
33220
33238
/* Line 1455 of yacc.c  */
33221
 
#line 11882 "sql_yacc.yy"
 
33239
#line 11902 "sql_yacc.yy"
33222
33240
    {}
33223
33241
    break;
33224
33242
 
33225
33243
  case 2068:
33226
33244
 
33227
33245
/* Line 1455 of yacc.c  */
33228
 
#line 11883 "sql_yacc.yy"
 
33246
#line 11903 "sql_yacc.yy"
33229
33247
    {}
33230
33248
    break;
33231
33249
 
33232
33250
  case 2069:
33233
33251
 
33234
33252
/* Line 1455 of yacc.c  */
33235
 
#line 11884 "sql_yacc.yy"
 
33253
#line 11904 "sql_yacc.yy"
33236
33254
    {}
33237
33255
    break;
33238
33256
 
33239
33257
  case 2070:
33240
33258
 
33241
33259
/* Line 1455 of yacc.c  */
33242
 
#line 11885 "sql_yacc.yy"
 
33260
#line 11905 "sql_yacc.yy"
33243
33261
    {}
33244
33262
    break;
33245
33263
 
33246
33264
  case 2071:
33247
33265
 
33248
33266
/* Line 1455 of yacc.c  */
33249
 
#line 11886 "sql_yacc.yy"
 
33267
#line 11906 "sql_yacc.yy"
33250
33268
    {}
33251
33269
    break;
33252
33270
 
33253
33271
  case 2072:
33254
33272
 
33255
33273
/* Line 1455 of yacc.c  */
33256
 
#line 11887 "sql_yacc.yy"
 
33274
#line 11907 "sql_yacc.yy"
33257
33275
    {}
33258
33276
    break;
33259
33277
 
33260
33278
  case 2073:
33261
33279
 
33262
33280
/* Line 1455 of yacc.c  */
33263
 
#line 11888 "sql_yacc.yy"
 
33281
#line 11908 "sql_yacc.yy"
33264
33282
    {}
33265
33283
    break;
33266
33284
 
33267
33285
  case 2074:
33268
33286
 
33269
33287
/* Line 1455 of yacc.c  */
33270
 
#line 11889 "sql_yacc.yy"
 
33288
#line 11909 "sql_yacc.yy"
33271
33289
    {}
33272
33290
    break;
33273
33291
 
33274
33292
  case 2075:
33275
33293
 
33276
33294
/* Line 1455 of yacc.c  */
33277
 
#line 11890 "sql_yacc.yy"
 
33295
#line 11910 "sql_yacc.yy"
33278
33296
    {}
33279
33297
    break;
33280
33298
 
33281
33299
  case 2076:
33282
33300
 
33283
33301
/* Line 1455 of yacc.c  */
33284
 
#line 11891 "sql_yacc.yy"
 
33302
#line 11911 "sql_yacc.yy"
33285
33303
    {}
33286
33304
    break;
33287
33305
 
33288
33306
  case 2077:
33289
33307
 
33290
33308
/* Line 1455 of yacc.c  */
33291
 
#line 11892 "sql_yacc.yy"
 
33309
#line 11912 "sql_yacc.yy"
33292
33310
    {}
33293
33311
    break;
33294
33312
 
33295
33313
  case 2078:
33296
33314
 
33297
33315
/* Line 1455 of yacc.c  */
33298
 
#line 11893 "sql_yacc.yy"
 
33316
#line 11913 "sql_yacc.yy"
33299
33317
    {}
33300
33318
    break;
33301
33319
 
33302
33320
  case 2079:
33303
33321
 
33304
33322
/* Line 1455 of yacc.c  */
33305
 
#line 11894 "sql_yacc.yy"
 
33323
#line 11914 "sql_yacc.yy"
33306
33324
    {}
33307
33325
    break;
33308
33326
 
33309
33327
  case 2080:
33310
33328
 
33311
33329
/* Line 1455 of yacc.c  */
33312
 
#line 11895 "sql_yacc.yy"
 
33330
#line 11915 "sql_yacc.yy"
33313
33331
    {}
33314
33332
    break;
33315
33333
 
33316
33334
  case 2081:
33317
33335
 
33318
33336
/* Line 1455 of yacc.c  */
33319
 
#line 11896 "sql_yacc.yy"
 
33337
#line 11916 "sql_yacc.yy"
33320
33338
    {}
33321
33339
    break;
33322
33340
 
33323
33341
  case 2082:
33324
33342
 
33325
33343
/* Line 1455 of yacc.c  */
33326
 
#line 11897 "sql_yacc.yy"
 
33344
#line 11917 "sql_yacc.yy"
33327
33345
    {}
33328
33346
    break;
33329
33347
 
33330
33348
  case 2083:
33331
33349
 
33332
33350
/* Line 1455 of yacc.c  */
33333
 
#line 11898 "sql_yacc.yy"
 
33351
#line 11918 "sql_yacc.yy"
33334
33352
    {}
33335
33353
    break;
33336
33354
 
33337
33355
  case 2084:
33338
33356
 
33339
33357
/* Line 1455 of yacc.c  */
33340
 
#line 11899 "sql_yacc.yy"
 
33358
#line 11919 "sql_yacc.yy"
33341
33359
    {}
33342
33360
    break;
33343
33361
 
33344
33362
  case 2085:
33345
33363
 
33346
33364
/* Line 1455 of yacc.c  */
33347
 
#line 11900 "sql_yacc.yy"
 
33365
#line 11920 "sql_yacc.yy"
33348
33366
    {}
33349
33367
    break;
33350
33368
 
33351
33369
  case 2086:
33352
33370
 
33353
33371
/* Line 1455 of yacc.c  */
33354
 
#line 11901 "sql_yacc.yy"
 
33372
#line 11921 "sql_yacc.yy"
33355
33373
    {}
33356
33374
    break;
33357
33375
 
33358
33376
  case 2087:
33359
33377
 
33360
33378
/* Line 1455 of yacc.c  */
33361
 
#line 11902 "sql_yacc.yy"
 
33379
#line 11922 "sql_yacc.yy"
33362
33380
    {}
33363
33381
    break;
33364
33382
 
33365
33383
  case 2088:
33366
33384
 
33367
33385
/* Line 1455 of yacc.c  */
33368
 
#line 11903 "sql_yacc.yy"
 
33386
#line 11923 "sql_yacc.yy"
33369
33387
    {}
33370
33388
    break;
33371
33389
 
33372
33390
  case 2089:
33373
33391
 
33374
33392
/* Line 1455 of yacc.c  */
33375
 
#line 11904 "sql_yacc.yy"
 
33393
#line 11924 "sql_yacc.yy"
33376
33394
    {}
33377
33395
    break;
33378
33396
 
33379
33397
  case 2090:
33380
33398
 
33381
33399
/* Line 1455 of yacc.c  */
33382
 
#line 11905 "sql_yacc.yy"
 
33400
#line 11925 "sql_yacc.yy"
33383
33401
    {}
33384
33402
    break;
33385
33403
 
33386
33404
  case 2091:
33387
33405
 
33388
33406
/* Line 1455 of yacc.c  */
33389
 
#line 11906 "sql_yacc.yy"
 
33407
#line 11926 "sql_yacc.yy"
33390
33408
    {}
33391
33409
    break;
33392
33410
 
33393
33411
  case 2092:
33394
33412
 
33395
33413
/* Line 1455 of yacc.c  */
33396
 
#line 11907 "sql_yacc.yy"
 
33414
#line 11927 "sql_yacc.yy"
33397
33415
    {}
33398
33416
    break;
33399
33417
 
33400
33418
  case 2093:
33401
33419
 
33402
33420
/* Line 1455 of yacc.c  */
33403
 
#line 11908 "sql_yacc.yy"
 
33421
#line 11928 "sql_yacc.yy"
33404
33422
    {}
33405
33423
    break;
33406
33424
 
33407
33425
  case 2094:
33408
33426
 
33409
33427
/* Line 1455 of yacc.c  */
33410
 
#line 11909 "sql_yacc.yy"
 
33428
#line 11929 "sql_yacc.yy"
33411
33429
    {}
33412
33430
    break;
33413
33431
 
33414
33432
  case 2095:
33415
33433
 
33416
33434
/* Line 1455 of yacc.c  */
33417
 
#line 11910 "sql_yacc.yy"
 
33435
#line 11930 "sql_yacc.yy"
33418
33436
    {}
33419
33437
    break;
33420
33438
 
33421
33439
  case 2096:
33422
33440
 
33423
33441
/* Line 1455 of yacc.c  */
33424
 
#line 11917 "sql_yacc.yy"
 
33442
#line 11937 "sql_yacc.yy"
33425
33443
    {
33426
33444
            LEX *lex=Lex;
33427
33445
            lex->sql_command= SQLCOM_SET_OPTION;
33436
33454
  case 2097:
33437
33455
 
33438
33456
/* Line 1455 of yacc.c  */
33439
 
#line 11927 "sql_yacc.yy"
 
33457
#line 11947 "sql_yacc.yy"
33440
33458
    {}
33441
33459
    break;
33442
33460
 
33443
33461
  case 2098:
33444
33462
 
33445
33463
/* Line 1455 of yacc.c  */
33446
 
#line 11931 "sql_yacc.yy"
 
33464
#line 11951 "sql_yacc.yy"
33447
33465
    {}
33448
33466
    break;
33449
33467
 
33450
33468
  case 2099:
33451
33469
 
33452
33470
/* Line 1455 of yacc.c  */
33453
 
#line 11932 "sql_yacc.yy"
 
33471
#line 11952 "sql_yacc.yy"
33454
33472
    {}
33455
33473
    break;
33456
33474
 
33457
33475
  case 2102:
33458
33476
 
33459
33477
/* Line 1455 of yacc.c  */
33460
 
#line 11941 "sql_yacc.yy"
 
33478
#line 11961 "sql_yacc.yy"
33461
33479
    {
33462
33480
            THD *thd= YYTHD;
33463
33481
            LEX *lex= thd->lex;
33493
33511
  case 2103:
33494
33512
 
33495
33513
/* Line 1455 of yacc.c  */
33496
 
#line 11972 "sql_yacc.yy"
 
33514
#line 11992 "sql_yacc.yy"
33497
33515
    {
33498
33516
            THD *thd= YYTHD;
33499
33517
            LEX *lex= thd->lex;
33547
33565
  case 2104:
33548
33566
 
33549
33567
/* Line 1455 of yacc.c  */
33550
 
#line 12023 "sql_yacc.yy"
 
33568
#line 12043 "sql_yacc.yy"
33551
33569
    {}
33552
33570
    break;
33553
33571
 
33554
33572
  case 2105:
33555
33573
 
33556
33574
/* Line 1455 of yacc.c  */
33557
 
#line 12024 "sql_yacc.yy"
 
33575
#line 12044 "sql_yacc.yy"
33558
33576
    { (yyval.var_type)=OPT_GLOBAL; }
33559
33577
    break;
33560
33578
 
33561
33579
  case 2106:
33562
33580
 
33563
33581
/* Line 1455 of yacc.c  */
33564
 
#line 12025 "sql_yacc.yy"
 
33582
#line 12045 "sql_yacc.yy"
33565
33583
    { (yyval.var_type)=OPT_SESSION; }
33566
33584
    break;
33567
33585
 
33568
33586
  case 2107:
33569
33587
 
33570
33588
/* Line 1455 of yacc.c  */
33571
 
#line 12026 "sql_yacc.yy"
 
33589
#line 12046 "sql_yacc.yy"
33572
33590
    { (yyval.var_type)=OPT_SESSION; }
33573
33591
    break;
33574
33592
 
33575
33593
  case 2108:
33576
33594
 
33577
33595
/* Line 1455 of yacc.c  */
33578
 
#line 12030 "sql_yacc.yy"
 
33596
#line 12050 "sql_yacc.yy"
33579
33597
    { (yyval.num)= OPT_DEFAULT; }
33580
33598
    break;
33581
33599
 
33582
33600
  case 2109:
33583
33601
 
33584
33602
/* Line 1455 of yacc.c  */
33585
 
#line 12031 "sql_yacc.yy"
 
33603
#line 12051 "sql_yacc.yy"
33586
33604
    { Lex->one_shot_set= 1; (yyval.num)= OPT_SESSION; }
33587
33605
    break;
33588
33606
 
33589
33607
  case 2110:
33590
33608
 
33591
33609
/* Line 1455 of yacc.c  */
33592
 
#line 12035 "sql_yacc.yy"
 
33610
#line 12055 "sql_yacc.yy"
33593
33611
    { (yyval.var_type)=OPT_SESSION; }
33594
33612
    break;
33595
33613
 
33596
33614
  case 2111:
33597
33615
 
33598
33616
/* Line 1455 of yacc.c  */
33599
 
#line 12036 "sql_yacc.yy"
 
33617
#line 12056 "sql_yacc.yy"
33600
33618
    { (yyval.var_type)=OPT_GLOBAL; }
33601
33619
    break;
33602
33620
 
33603
33621
  case 2112:
33604
33622
 
33605
33623
/* Line 1455 of yacc.c  */
33606
 
#line 12037 "sql_yacc.yy"
 
33624
#line 12057 "sql_yacc.yy"
33607
33625
    { (yyval.var_type)=OPT_SESSION; }
33608
33626
    break;
33609
33627
 
33610
33628
  case 2113:
33611
33629
 
33612
33630
/* Line 1455 of yacc.c  */
33613
 
#line 12038 "sql_yacc.yy"
 
33631
#line 12058 "sql_yacc.yy"
33614
33632
    { (yyval.var_type)=OPT_SESSION; }
33615
33633
    break;
33616
33634
 
33617
33635
  case 2114:
33618
33636
 
33619
33637
/* Line 1455 of yacc.c  */
33620
 
#line 12042 "sql_yacc.yy"
 
33638
#line 12062 "sql_yacc.yy"
33621
33639
    { (yyval.var_type)=OPT_DEFAULT; }
33622
33640
    break;
33623
33641
 
33624
33642
  case 2115:
33625
33643
 
33626
33644
/* Line 1455 of yacc.c  */
33627
 
#line 12043 "sql_yacc.yy"
 
33645
#line 12063 "sql_yacc.yy"
33628
33646
    { (yyval.var_type)=OPT_GLOBAL; }
33629
33647
    break;
33630
33648
 
33631
33649
  case 2116:
33632
33650
 
33633
33651
/* Line 1455 of yacc.c  */
33634
 
#line 12044 "sql_yacc.yy"
 
33652
#line 12064 "sql_yacc.yy"
33635
33653
    { (yyval.var_type)=OPT_SESSION; }
33636
33654
    break;
33637
33655
 
33638
33656
  case 2117:
33639
33657
 
33640
33658
/* Line 1455 of yacc.c  */
33641
 
#line 12045 "sql_yacc.yy"
 
33659
#line 12065 "sql_yacc.yy"
33642
33660
    { (yyval.var_type)=OPT_SESSION; }
33643
33661
    break;
33644
33662
 
33645
33663
  case 2120:
33646
33664
 
33647
33665
/* Line 1455 of yacc.c  */
33648
 
#line 12055 "sql_yacc.yy"
 
33666
#line 12075 "sql_yacc.yy"
33649
33667
    {
33650
33668
            THD *thd= YYTHD;
33651
33669
            LEX *lex= Lex;
33692
33710
  case 2121:
33693
33711
 
33694
33712
/* Line 1455 of yacc.c  */
33695
 
#line 12097 "sql_yacc.yy"
 
33713
#line 12117 "sql_yacc.yy"
33696
33714
    {
33697
33715
            THD *thd= YYTHD;
33698
33716
            LEX *lex=Lex;
33713
33731
  case 2122:
33714
33732
 
33715
33733
/* Line 1455 of yacc.c  */
33716
 
#line 12116 "sql_yacc.yy"
 
33734
#line 12136 "sql_yacc.yy"
33717
33735
    {
33718
33736
            Item_func_set_user_var *item;
33719
33737
            item= new (YYTHD->mem_root) Item_func_set_user_var((yyvsp[(2) - (4)].lex_str), (yyvsp[(4) - (4)].item));
33729
33747
  case 2123:
33730
33748
 
33731
33749
/* Line 1455 of yacc.c  */
33732
 
#line 12127 "sql_yacc.yy"
 
33750
#line 12147 "sql_yacc.yy"
33733
33751
    {
33734
33752
            THD *thd= YYTHD;
33735
33753
            struct sys_var_with_base tmp= (yyvsp[(4) - (6)].variable);
33747
33765
  case 2124:
33748
33766
 
33749
33767
/* Line 1455 of yacc.c  */
33750
 
#line 12140 "sql_yacc.yy"
 
33768
#line 12160 "sql_yacc.yy"
33751
33769
    {
33752
33770
            THD *thd= YYTHD;
33753
33771
            LEX *lex= thd->lex;
33766
33784
  case 2125:
33767
33785
 
33768
33786
/* Line 1455 of yacc.c  */
33769
 
#line 12154 "sql_yacc.yy"
 
33787
#line 12174 "sql_yacc.yy"
33770
33788
    {
33771
33789
            LEX *lex= Lex;
33772
33790
            sp_pcontext *spc= lex->spcont;
33786
33804
  case 2126:
33787
33805
 
33788
33806
/* Line 1455 of yacc.c  */
33789
 
#line 12169 "sql_yacc.yy"
 
33807
#line 12189 "sql_yacc.yy"
33790
33808
    {
33791
33809
            LEX *lex= Lex;
33792
33810
            CHARSET_INFO *cs2;
33810
33828
  case 2127:
33811
33829
 
33812
33830
/* Line 1455 of yacc.c  */
33813
 
#line 12188 "sql_yacc.yy"
 
33831
#line 12208 "sql_yacc.yy"
33814
33832
    {
33815
33833
            THD *thd= YYTHD;
33816
33834
            LEX *lex= thd->lex;
33842
33860
  case 2128:
33843
33861
 
33844
33862
/* Line 1455 of yacc.c  */
33845
 
#line 12215 "sql_yacc.yy"
 
33863
#line 12235 "sql_yacc.yy"
33846
33864
    {
33847
33865
            set_var_password *var= new set_var_password((yyvsp[(3) - (5)].lex_user),(yyvsp[(5) - (5)].simple_string));
33848
33866
            if (var == NULL)
33857
33875
  case 2129:
33858
33876
 
33859
33877
/* Line 1455 of yacc.c  */
33860
 
#line 12228 "sql_yacc.yy"
 
33878
#line 12248 "sql_yacc.yy"
33861
33879
    {
33862
33880
            THD *thd= YYTHD;
33863
33881
            sp_pcontext *spc= thd->lex->spcont;
33889
33907
  case 2130:
33890
33908
 
33891
33909
/* Line 1455 of yacc.c  */
33892
 
#line 12255 "sql_yacc.yy"
 
33910
#line 12275 "sql_yacc.yy"
33893
33911
    {
33894
33912
            LEX *lex= Lex;
33895
33913
            if (check_reserved_words(&(yyvsp[(1) - (3)].lex_str)))
33937
33955
  case 2131:
33938
33956
 
33939
33957
/* Line 1455 of yacc.c  */
33940
 
#line 12298 "sql_yacc.yy"
 
33958
#line 12318 "sql_yacc.yy"
33941
33959
    {
33942
33960
            sys_var *tmp=find_sys_var(YYTHD, (yyvsp[(3) - (3)].lex_str).str, (yyvsp[(3) - (3)].lex_str).length);
33943
33961
            if (!tmp)
33953
33971
  case 2132:
33954
33972
 
33955
33973
/* Line 1455 of yacc.c  */
33956
 
#line 12311 "sql_yacc.yy"
 
33974
#line 12331 "sql_yacc.yy"
33957
33975
    { (yyval.tx_isolation)= ISO_READ_UNCOMMITTED; }
33958
33976
    break;
33959
33977
 
33960
33978
  case 2133:
33961
33979
 
33962
33980
/* Line 1455 of yacc.c  */
33963
 
#line 12312 "sql_yacc.yy"
 
33981
#line 12332 "sql_yacc.yy"
33964
33982
    { (yyval.tx_isolation)= ISO_READ_COMMITTED; }
33965
33983
    break;
33966
33984
 
33967
33985
  case 2134:
33968
33986
 
33969
33987
/* Line 1455 of yacc.c  */
33970
 
#line 12313 "sql_yacc.yy"
 
33988
#line 12333 "sql_yacc.yy"
33971
33989
    { (yyval.tx_isolation)= ISO_REPEATABLE_READ; }
33972
33990
    break;
33973
33991
 
33974
33992
  case 2135:
33975
33993
 
33976
33994
/* Line 1455 of yacc.c  */
33977
 
#line 12314 "sql_yacc.yy"
 
33995
#line 12334 "sql_yacc.yy"
33978
33996
    { (yyval.tx_isolation)= ISO_SERIALIZABLE; }
33979
33997
    break;
33980
33998
 
33981
33999
  case 2136:
33982
34000
 
33983
34001
/* Line 1455 of yacc.c  */
33984
 
#line 12318 "sql_yacc.yy"
 
34002
#line 12338 "sql_yacc.yy"
33985
34003
    { (yyval.simple_string)=(yyvsp[(1) - (1)].lex_str).str;}
33986
34004
    break;
33987
34005
 
33988
34006
  case 2137:
33989
34007
 
33990
34008
/* Line 1455 of yacc.c  */
33991
 
#line 12320 "sql_yacc.yy"
 
34009
#line 12340 "sql_yacc.yy"
33992
34010
    {
33993
34011
            (yyval.simple_string)= (yyvsp[(3) - (4)].lex_str).length ? YYTHD->variables.old_passwords ?
33994
34012
              Item_func_old_password::alloc(YYTHD, (yyvsp[(3) - (4)].lex_str).str, (yyvsp[(3) - (4)].lex_str).length) :
34002
34020
  case 2138:
34003
34021
 
34004
34022
/* Line 1455 of yacc.c  */
34005
 
#line 12329 "sql_yacc.yy"
 
34023
#line 12349 "sql_yacc.yy"
34006
34024
    {
34007
34025
            (yyval.simple_string)= (yyvsp[(3) - (4)].lex_str).length ? Item_func_old_password::alloc(YYTHD, (yyvsp[(3) - (4)].lex_str).str,
34008
34026
                                                          (yyvsp[(3) - (4)].lex_str).length) :
34015
34033
  case 2139:
34016
34034
 
34017
34035
/* Line 1455 of yacc.c  */
34018
 
#line 12340 "sql_yacc.yy"
 
34036
#line 12360 "sql_yacc.yy"
34019
34037
    { (yyval.item)=(yyvsp[(1) - (1)].item); }
34020
34038
    break;
34021
34039
 
34022
34040
  case 2140:
34023
34041
 
34024
34042
/* Line 1455 of yacc.c  */
34025
 
#line 12341 "sql_yacc.yy"
 
34043
#line 12361 "sql_yacc.yy"
34026
34044
    { (yyval.item)=0; }
34027
34045
    break;
34028
34046
 
34029
34047
  case 2141:
34030
34048
 
34031
34049
/* Line 1455 of yacc.c  */
34032
 
#line 12343 "sql_yacc.yy"
 
34050
#line 12363 "sql_yacc.yy"
34033
34051
    {
34034
34052
            (yyval.item)=new (YYTHD->mem_root) Item_string("ON",  2, system_charset_info);
34035
34053
            if ((yyval.item) == NULL)
34040
34058
  case 2142:
34041
34059
 
34042
34060
/* Line 1455 of yacc.c  */
34043
 
#line 12349 "sql_yacc.yy"
 
34061
#line 12369 "sql_yacc.yy"
34044
34062
    {
34045
34063
            (yyval.item)=new (YYTHD->mem_root) Item_string("ALL", 3, system_charset_info);
34046
34064
            if ((yyval.item) == NULL)
34051
34069
  case 2143:
34052
34070
 
34053
34071
/* Line 1455 of yacc.c  */
34054
 
#line 12355 "sql_yacc.yy"
 
34072
#line 12375 "sql_yacc.yy"
34055
34073
    {
34056
34074
            (yyval.item)=new (YYTHD->mem_root) Item_string("binary", 6, system_charset_info);
34057
34075
            if ((yyval.item) == NULL)
34062
34080
  case 2144:
34063
34081
 
34064
34082
/* Line 1455 of yacc.c  */
34065
 
#line 12366 "sql_yacc.yy"
 
34083
#line 12386 "sql_yacc.yy"
34066
34084
    {
34067
34085
            LEX *lex= Lex;
34068
34086
 
34078
34096
  case 2145:
34079
34097
 
34080
34098
/* Line 1455 of yacc.c  */
34081
 
#line 12377 "sql_yacc.yy"
 
34099
#line 12397 "sql_yacc.yy"
34082
34100
    {}
34083
34101
    break;
34084
34102
 
34085
34103
  case 2150:
34086
34104
 
34087
34105
/* Line 1455 of yacc.c  */
34088
 
#line 12392 "sql_yacc.yy"
 
34106
#line 12412 "sql_yacc.yy"
34089
34107
    {
34090
34108
            thr_lock_type lock_type= (thr_lock_type) (yyvsp[(3) - (3)].num);
34091
34109
            if (!Select->add_table_to_list(YYTHD, (yyvsp[(1) - (3)].table), (yyvsp[(2) - (3)].lex_str_ptr), 0, lock_type))
34099
34117
  case 2151:
34100
34118
 
34101
34119
/* Line 1455 of yacc.c  */
34102
 
#line 12403 "sql_yacc.yy"
 
34120
#line 12423 "sql_yacc.yy"
34103
34121
    { (yyval.num)= TL_READ_NO_INSERT; }
34104
34122
    break;
34105
34123
 
34106
34124
  case 2152:
34107
34125
 
34108
34126
/* Line 1455 of yacc.c  */
34109
 
#line 12404 "sql_yacc.yy"
 
34127
#line 12424 "sql_yacc.yy"
34110
34128
    { (yyval.num)= TL_WRITE_DEFAULT; }
34111
34129
    break;
34112
34130
 
34113
34131
  case 2153:
34114
34132
 
34115
34133
/* Line 1455 of yacc.c  */
34116
 
#line 12405 "sql_yacc.yy"
 
34134
#line 12425 "sql_yacc.yy"
34117
34135
    { (yyval.num)= TL_WRITE_LOW_PRIORITY; }
34118
34136
    break;
34119
34137
 
34120
34138
  case 2154:
34121
34139
 
34122
34140
/* Line 1455 of yacc.c  */
34123
 
#line 12406 "sql_yacc.yy"
 
34141
#line 12426 "sql_yacc.yy"
34124
34142
    { (yyval.num)= TL_READ; }
34125
34143
    break;
34126
34144
 
34127
34145
  case 2155:
34128
34146
 
34129
34147
/* Line 1455 of yacc.c  */
34130
 
#line 12411 "sql_yacc.yy"
 
34148
#line 12431 "sql_yacc.yy"
34131
34149
    {
34132
34150
            LEX *lex= Lex;
34133
34151
 
34143
34161
  case 2156:
34144
34162
 
34145
34163
/* Line 1455 of yacc.c  */
34146
 
#line 12422 "sql_yacc.yy"
 
34164
#line 12442 "sql_yacc.yy"
34147
34165
    {}
34148
34166
    break;
34149
34167
 
34150
34168
  case 2157:
34151
34169
 
34152
34170
/* Line 1455 of yacc.c  */
34153
 
#line 12431 "sql_yacc.yy"
 
34171
#line 12451 "sql_yacc.yy"
34154
34172
    {
34155
34173
            LEX *lex= Lex;
34156
34174
            if (lex->sphead)
34167
34185
  case 2158:
34168
34186
 
34169
34187
/* Line 1455 of yacc.c  */
34170
 
#line 12443 "sql_yacc.yy"
 
34188
#line 12463 "sql_yacc.yy"
34171
34189
    {
34172
34190
            LEX *lex= Lex;
34173
34191
            if (lex->sphead)
34184
34202
  case 2159:
34185
34203
 
34186
34204
/* Line 1455 of yacc.c  */
34187
 
#line 12455 "sql_yacc.yy"
 
34205
#line 12475 "sql_yacc.yy"
34188
34206
    {
34189
34207
            LEX *lex=Lex;
34190
34208
            if (lex->sphead)
34208
34226
  case 2160:
34209
34227
 
34210
34228
/* Line 1455 of yacc.c  */
34211
 
#line 12474 "sql_yacc.yy"
 
34229
#line 12494 "sql_yacc.yy"
34212
34230
    {
34213
34231
            Lex->expr_allows_subselect= TRUE;
34214
34232
          }
34217
34235
  case 2161:
34218
34236
 
34219
34237
/* Line 1455 of yacc.c  */
34220
 
#line 12480 "sql_yacc.yy"
 
34238
#line 12500 "sql_yacc.yy"
34221
34239
    { Lex->ident= null_lex_str; }
34222
34240
    break;
34223
34241
 
34224
34242
  case 2162:
34225
34243
 
34226
34244
/* Line 1455 of yacc.c  */
34227
 
#line 12481 "sql_yacc.yy"
 
34245
#line 12501 "sql_yacc.yy"
34228
34246
    { Lex->ident= (yyvsp[(1) - (2)].lex_str); }
34229
34247
    break;
34230
34248
 
34231
34249
  case 2163:
34232
34250
 
34233
34251
/* Line 1455 of yacc.c  */
34234
 
#line 12485 "sql_yacc.yy"
 
34252
#line 12505 "sql_yacc.yy"
34235
34253
    { Lex->ha_read_mode = RFIRST; }
34236
34254
    break;
34237
34255
 
34238
34256
  case 2164:
34239
34257
 
34240
34258
/* Line 1455 of yacc.c  */
34241
 
#line 12486 "sql_yacc.yy"
 
34259
#line 12506 "sql_yacc.yy"
34242
34260
    { Lex->ha_read_mode = RNEXT;  }
34243
34261
    break;
34244
34262
 
34245
34263
  case 2165:
34246
34264
 
34247
34265
/* Line 1455 of yacc.c  */
34248
 
#line 12490 "sql_yacc.yy"
 
34266
#line 12510 "sql_yacc.yy"
34249
34267
    { Lex->ha_read_mode = RFIRST; }
34250
34268
    break;
34251
34269
 
34252
34270
  case 2166:
34253
34271
 
34254
34272
/* Line 1455 of yacc.c  */
34255
 
#line 12491 "sql_yacc.yy"
 
34273
#line 12511 "sql_yacc.yy"
34256
34274
    { Lex->ha_read_mode = RNEXT;  }
34257
34275
    break;
34258
34276
 
34259
34277
  case 2167:
34260
34278
 
34261
34279
/* Line 1455 of yacc.c  */
34262
 
#line 12492 "sql_yacc.yy"
 
34280
#line 12512 "sql_yacc.yy"
34263
34281
    { Lex->ha_read_mode = RPREV;  }
34264
34282
    break;
34265
34283
 
34266
34284
  case 2168:
34267
34285
 
34268
34286
/* Line 1455 of yacc.c  */
34269
 
#line 12493 "sql_yacc.yy"
 
34287
#line 12513 "sql_yacc.yy"
34270
34288
    { Lex->ha_read_mode = RLAST;  }
34271
34289
    break;
34272
34290
 
34273
34291
  case 2169:
34274
34292
 
34275
34293
/* Line 1455 of yacc.c  */
34276
 
#line 12495 "sql_yacc.yy"
 
34294
#line 12515 "sql_yacc.yy"
34277
34295
    {
34278
34296
            LEX *lex=Lex;
34279
34297
            lex->ha_read_mode = RKEY;
34286
34304
  case 2170:
34287
34305
 
34288
34306
/* Line 1455 of yacc.c  */
34289
 
#line 12503 "sql_yacc.yy"
 
34307
#line 12523 "sql_yacc.yy"
34290
34308
    {}
34291
34309
    break;
34292
34310
 
34293
34311
  case 2171:
34294
34312
 
34295
34313
/* Line 1455 of yacc.c  */
34296
 
#line 12507 "sql_yacc.yy"
 
34314
#line 12527 "sql_yacc.yy"
34297
34315
    { (yyval.ha_rkey_mode)=HA_READ_KEY_EXACT;   }
34298
34316
    break;
34299
34317
 
34300
34318
  case 2172:
34301
34319
 
34302
34320
/* Line 1455 of yacc.c  */
34303
 
#line 12508 "sql_yacc.yy"
 
34321
#line 12528 "sql_yacc.yy"
34304
34322
    { (yyval.ha_rkey_mode)=HA_READ_KEY_OR_NEXT; }
34305
34323
    break;
34306
34324
 
34307
34325
  case 2173:
34308
34326
 
34309
34327
/* Line 1455 of yacc.c  */
34310
 
#line 12509 "sql_yacc.yy"
 
34328
#line 12529 "sql_yacc.yy"
34311
34329
    { (yyval.ha_rkey_mode)=HA_READ_KEY_OR_PREV; }
34312
34330
    break;
34313
34331
 
34314
34332
  case 2174:
34315
34333
 
34316
34334
/* Line 1455 of yacc.c  */
34317
 
#line 12510 "sql_yacc.yy"
 
34335
#line 12530 "sql_yacc.yy"
34318
34336
    { (yyval.ha_rkey_mode)=HA_READ_AFTER_KEY;   }
34319
34337
    break;
34320
34338
 
34321
34339
  case 2175:
34322
34340
 
34323
34341
/* Line 1455 of yacc.c  */
34324
 
#line 12511 "sql_yacc.yy"
 
34342
#line 12531 "sql_yacc.yy"
34325
34343
    { (yyval.ha_rkey_mode)=HA_READ_BEFORE_KEY;  }
34326
34344
    break;
34327
34345
 
34328
34346
  case 2176:
34329
34347
 
34330
34348
/* Line 1455 of yacc.c  */
34331
 
#line 12518 "sql_yacc.yy"
 
34349
#line 12538 "sql_yacc.yy"
34332
34350
    {}
34333
34351
    break;
34334
34352
 
34335
34353
  case 2177:
34336
34354
 
34337
34355
/* Line 1455 of yacc.c  */
34338
 
#line 12523 "sql_yacc.yy"
 
34356
#line 12543 "sql_yacc.yy"
34339
34357
    {
34340
34358
            LEX *lex= Lex;
34341
34359
            lex->sql_command= SQLCOM_REVOKE;
34346
34364
  case 2178:
34347
34365
 
34348
34366
/* Line 1455 of yacc.c  */
34349
 
#line 12529 "sql_yacc.yy"
 
34367
#line 12549 "sql_yacc.yy"
34350
34368
    {
34351
34369
            LEX *lex= Lex;
34352
34370
            if (lex->columns.elements)
34362
34380
  case 2179:
34363
34381
 
34364
34382
/* Line 1455 of yacc.c  */
34365
 
#line 12540 "sql_yacc.yy"
 
34383
#line 12560 "sql_yacc.yy"
34366
34384
    {
34367
34385
            LEX *lex= Lex;
34368
34386
            if (lex->columns.elements)
34378
34396
  case 2180:
34379
34397
 
34380
34398
/* Line 1455 of yacc.c  */
34381
 
#line 12551 "sql_yacc.yy"
 
34399
#line 12571 "sql_yacc.yy"
34382
34400
    {
34383
34401
            Lex->sql_command = SQLCOM_REVOKE_ALL;
34384
34402
          }
34387
34405
  case 2181:
34388
34406
 
34389
34407
/* Line 1455 of yacc.c  */
34390
 
#line 12558 "sql_yacc.yy"
 
34408
#line 12578 "sql_yacc.yy"
34391
34409
    {}
34392
34410
    break;
34393
34411
 
34394
34412
  case 2182:
34395
34413
 
34396
34414
/* Line 1455 of yacc.c  */
34397
 
#line 12564 "sql_yacc.yy"
 
34415
#line 12584 "sql_yacc.yy"
34398
34416
    {
34399
34417
            LEX *lex= Lex;
34400
34418
            lex->sql_command= SQLCOM_GRANT;
34405
34423
  case 2183:
34406
34424
 
34407
34425
/* Line 1455 of yacc.c  */
34408
 
#line 12571 "sql_yacc.yy"
 
34426
#line 12591 "sql_yacc.yy"
34409
34427
    {
34410
34428
            LEX *lex= Lex;
34411
34429
            if (lex->columns.elements)
34421
34439
  case 2184:
34422
34440
 
34423
34441
/* Line 1455 of yacc.c  */
34424
 
#line 12583 "sql_yacc.yy"
 
34442
#line 12603 "sql_yacc.yy"
34425
34443
    {
34426
34444
            LEX *lex= Lex;
34427
34445
            if (lex->columns.elements)
34437
34455
  case 2187:
34438
34456
 
34439
34457
/* Line 1455 of yacc.c  */
34440
 
#line 12601 "sql_yacc.yy"
 
34458
#line 12621 "sql_yacc.yy"
34441
34459
    {}
34442
34460
    break;
34443
34461
 
34444
34462
  case 2188:
34445
34463
 
34446
34464
/* Line 1455 of yacc.c  */
34447
 
#line 12603 "sql_yacc.yy"
 
34465
#line 12623 "sql_yacc.yy"
34448
34466
    { 
34449
34467
            Lex->all_privileges= 1; 
34450
34468
            Lex->grant= GLOBAL_ACLS;
34454
34472
  case 2193:
34455
34473
 
34456
34474
/* Line 1455 of yacc.c  */
34457
 
#line 12621 "sql_yacc.yy"
 
34475
#line 12641 "sql_yacc.yy"
34458
34476
    { Lex->which_columns = SELECT_ACL;}
34459
34477
    break;
34460
34478
 
34461
34479
  case 2194:
34462
34480
 
34463
34481
/* Line 1455 of yacc.c  */
34464
 
#line 12622 "sql_yacc.yy"
 
34482
#line 12642 "sql_yacc.yy"
34465
34483
    {}
34466
34484
    break;
34467
34485
 
34468
34486
  case 2195:
34469
34487
 
34470
34488
/* Line 1455 of yacc.c  */
34471
 
#line 12624 "sql_yacc.yy"
 
34489
#line 12644 "sql_yacc.yy"
34472
34490
    { Lex->which_columns = INSERT_ACL;}
34473
34491
    break;
34474
34492
 
34475
34493
  case 2196:
34476
34494
 
34477
34495
/* Line 1455 of yacc.c  */
34478
 
#line 12625 "sql_yacc.yy"
 
34496
#line 12645 "sql_yacc.yy"
34479
34497
    {}
34480
34498
    break;
34481
34499
 
34482
34500
  case 2197:
34483
34501
 
34484
34502
/* Line 1455 of yacc.c  */
34485
 
#line 12627 "sql_yacc.yy"
 
34503
#line 12647 "sql_yacc.yy"
34486
34504
    { Lex->which_columns = UPDATE_ACL; }
34487
34505
    break;
34488
34506
 
34489
34507
  case 2198:
34490
34508
 
34491
34509
/* Line 1455 of yacc.c  */
34492
 
#line 12628 "sql_yacc.yy"
 
34510
#line 12648 "sql_yacc.yy"
34493
34511
    {}
34494
34512
    break;
34495
34513
 
34496
34514
  case 2199:
34497
34515
 
34498
34516
/* Line 1455 of yacc.c  */
34499
 
#line 12630 "sql_yacc.yy"
 
34517
#line 12650 "sql_yacc.yy"
34500
34518
    { Lex->which_columns = REFERENCES_ACL;}
34501
34519
    break;
34502
34520
 
34503
34521
  case 2200:
34504
34522
 
34505
34523
/* Line 1455 of yacc.c  */
34506
 
#line 12631 "sql_yacc.yy"
 
34524
#line 12651 "sql_yacc.yy"
34507
34525
    {}
34508
34526
    break;
34509
34527
 
34510
34528
  case 2201:
34511
34529
 
34512
34530
/* Line 1455 of yacc.c  */
34513
 
#line 12632 "sql_yacc.yy"
 
34531
#line 12652 "sql_yacc.yy"
34514
34532
    { Lex->grant |= DELETE_ACL;}
34515
34533
    break;
34516
34534
 
34517
34535
  case 2202:
34518
34536
 
34519
34537
/* Line 1455 of yacc.c  */
34520
 
#line 12633 "sql_yacc.yy"
 
34538
#line 12653 "sql_yacc.yy"
34521
34539
    {}
34522
34540
    break;
34523
34541
 
34524
34542
  case 2203:
34525
34543
 
34526
34544
/* Line 1455 of yacc.c  */
34527
 
#line 12634 "sql_yacc.yy"
 
34545
#line 12654 "sql_yacc.yy"
34528
34546
    { Lex->grant |= INDEX_ACL;}
34529
34547
    break;
34530
34548
 
34531
34549
  case 2204:
34532
34550
 
34533
34551
/* Line 1455 of yacc.c  */
34534
 
#line 12635 "sql_yacc.yy"
 
34552
#line 12655 "sql_yacc.yy"
34535
34553
    { Lex->grant |= ALTER_ACL;}
34536
34554
    break;
34537
34555
 
34538
34556
  case 2205:
34539
34557
 
34540
34558
/* Line 1455 of yacc.c  */
34541
 
#line 12636 "sql_yacc.yy"
 
34559
#line 12656 "sql_yacc.yy"
34542
34560
    { Lex->grant |= CREATE_ACL;}
34543
34561
    break;
34544
34562
 
34545
34563
  case 2206:
34546
34564
 
34547
34565
/* Line 1455 of yacc.c  */
34548
 
#line 12637 "sql_yacc.yy"
 
34566
#line 12657 "sql_yacc.yy"
34549
34567
    { Lex->grant |= DROP_ACL;}
34550
34568
    break;
34551
34569
 
34552
34570
  case 2207:
34553
34571
 
34554
34572
/* Line 1455 of yacc.c  */
34555
 
#line 12638 "sql_yacc.yy"
 
34573
#line 12658 "sql_yacc.yy"
34556
34574
    { Lex->grant |= EXECUTE_ACL;}
34557
34575
    break;
34558
34576
 
34559
34577
  case 2208:
34560
34578
 
34561
34579
/* Line 1455 of yacc.c  */
34562
 
#line 12639 "sql_yacc.yy"
 
34580
#line 12659 "sql_yacc.yy"
34563
34581
    { Lex->grant |= RELOAD_ACL;}
34564
34582
    break;
34565
34583
 
34566
34584
  case 2209:
34567
34585
 
34568
34586
/* Line 1455 of yacc.c  */
34569
 
#line 12640 "sql_yacc.yy"
 
34587
#line 12660 "sql_yacc.yy"
34570
34588
    { Lex->grant |= SHUTDOWN_ACL;}
34571
34589
    break;
34572
34590
 
34573
34591
  case 2210:
34574
34592
 
34575
34593
/* Line 1455 of yacc.c  */
34576
 
#line 12641 "sql_yacc.yy"
 
34594
#line 12661 "sql_yacc.yy"
34577
34595
    { Lex->grant |= PROCESS_ACL;}
34578
34596
    break;
34579
34597
 
34580
34598
  case 2211:
34581
34599
 
34582
34600
/* Line 1455 of yacc.c  */
34583
 
#line 12642 "sql_yacc.yy"
 
34601
#line 12662 "sql_yacc.yy"
34584
34602
    { Lex->grant |= FILE_ACL;}
34585
34603
    break;
34586
34604
 
34587
34605
  case 2212:
34588
34606
 
34589
34607
/* Line 1455 of yacc.c  */
34590
 
#line 12643 "sql_yacc.yy"
 
34608
#line 12663 "sql_yacc.yy"
34591
34609
    { Lex->grant |= GRANT_ACL;}
34592
34610
    break;
34593
34611
 
34594
34612
  case 2213:
34595
34613
 
34596
34614
/* Line 1455 of yacc.c  */
34597
 
#line 12644 "sql_yacc.yy"
 
34615
#line 12664 "sql_yacc.yy"
34598
34616
    { Lex->grant |= SHOW_DB_ACL;}
34599
34617
    break;
34600
34618
 
34601
34619
  case 2214:
34602
34620
 
34603
34621
/* Line 1455 of yacc.c  */
34604
 
#line 12645 "sql_yacc.yy"
 
34622
#line 12665 "sql_yacc.yy"
34605
34623
    { Lex->grant |= SUPER_ACL;}
34606
34624
    break;
34607
34625
 
34608
34626
  case 2215:
34609
34627
 
34610
34628
/* Line 1455 of yacc.c  */
34611
 
#line 12646 "sql_yacc.yy"
 
34629
#line 12666 "sql_yacc.yy"
34612
34630
    { Lex->grant |= CREATE_TMP_ACL;}
34613
34631
    break;
34614
34632
 
34615
34633
  case 2216:
34616
34634
 
34617
34635
/* Line 1455 of yacc.c  */
34618
 
#line 12647 "sql_yacc.yy"
 
34636
#line 12667 "sql_yacc.yy"
34619
34637
    { Lex->grant |= LOCK_TABLES_ACL; }
34620
34638
    break;
34621
34639
 
34622
34640
  case 2217:
34623
34641
 
34624
34642
/* Line 1455 of yacc.c  */
34625
 
#line 12648 "sql_yacc.yy"
 
34643
#line 12668 "sql_yacc.yy"
34626
34644
    { Lex->grant |= REPL_SLAVE_ACL; }
34627
34645
    break;
34628
34646
 
34629
34647
  case 2218:
34630
34648
 
34631
34649
/* Line 1455 of yacc.c  */
34632
 
#line 12649 "sql_yacc.yy"
 
34650
#line 12669 "sql_yacc.yy"
34633
34651
    { Lex->grant |= REPL_CLIENT_ACL; }
34634
34652
    break;
34635
34653
 
34636
34654
  case 2219:
34637
34655
 
34638
34656
/* Line 1455 of yacc.c  */
34639
 
#line 12650 "sql_yacc.yy"
 
34657
#line 12670 "sql_yacc.yy"
34640
34658
    { Lex->grant |= CREATE_VIEW_ACL; }
34641
34659
    break;
34642
34660
 
34643
34661
  case 2220:
34644
34662
 
34645
34663
/* Line 1455 of yacc.c  */
34646
 
#line 12651 "sql_yacc.yy"
 
34664
#line 12671 "sql_yacc.yy"
34647
34665
    { Lex->grant |= SHOW_VIEW_ACL; }
34648
34666
    break;
34649
34667
 
34650
34668
  case 2221:
34651
34669
 
34652
34670
/* Line 1455 of yacc.c  */
34653
 
#line 12652 "sql_yacc.yy"
 
34671
#line 12672 "sql_yacc.yy"
34654
34672
    { Lex->grant |= CREATE_PROC_ACL; }
34655
34673
    break;
34656
34674
 
34657
34675
  case 2222:
34658
34676
 
34659
34677
/* Line 1455 of yacc.c  */
34660
 
#line 12653 "sql_yacc.yy"
 
34678
#line 12673 "sql_yacc.yy"
34661
34679
    { Lex->grant |= ALTER_PROC_ACL; }
34662
34680
    break;
34663
34681
 
34664
34682
  case 2223:
34665
34683
 
34666
34684
/* Line 1455 of yacc.c  */
34667
 
#line 12654 "sql_yacc.yy"
 
34685
#line 12674 "sql_yacc.yy"
34668
34686
    { Lex->grant |= CREATE_USER_ACL; }
34669
34687
    break;
34670
34688
 
34671
34689
  case 2224:
34672
34690
 
34673
34691
/* Line 1455 of yacc.c  */
34674
 
#line 12655 "sql_yacc.yy"
 
34692
#line 12675 "sql_yacc.yy"
34675
34693
    { Lex->grant |= EVENT_ACL;}
34676
34694
    break;
34677
34695
 
34678
34696
  case 2225:
34679
34697
 
34680
34698
/* Line 1455 of yacc.c  */
34681
 
#line 12656 "sql_yacc.yy"
 
34699
#line 12676 "sql_yacc.yy"
34682
34700
    { Lex->grant |= TRIGGER_ACL; }
34683
34701
    break;
34684
34702
 
34685
34703
  case 2226:
34686
34704
 
34687
34705
/* Line 1455 of yacc.c  */
34688
 
#line 12660 "sql_yacc.yy"
 
34706
#line 12680 "sql_yacc.yy"
34689
34707
    {}
34690
34708
    break;
34691
34709
 
34692
34710
  case 2227:
34693
34711
 
34694
34712
/* Line 1455 of yacc.c  */
34695
 
#line 12661 "sql_yacc.yy"
 
34713
#line 12681 "sql_yacc.yy"
34696
34714
    {}
34697
34715
    break;
34698
34716
 
34699
34717
  case 2230:
34700
34718
 
34701
34719
/* Line 1455 of yacc.c  */
34702
 
#line 12671 "sql_yacc.yy"
 
34720
#line 12691 "sql_yacc.yy"
34703
34721
    {
34704
34722
            LEX *lex=Lex;
34705
34723
            if (lex->x509_subject)
34714
34732
  case 2231:
34715
34733
 
34716
34734
/* Line 1455 of yacc.c  */
34717
 
#line 12681 "sql_yacc.yy"
 
34735
#line 12701 "sql_yacc.yy"
34718
34736
    {
34719
34737
            LEX *lex=Lex;
34720
34738
            if (lex->x509_issuer)
34729
34747
  case 2232:
34730
34748
 
34731
34749
/* Line 1455 of yacc.c  */
34732
 
#line 12691 "sql_yacc.yy"
 
34750
#line 12711 "sql_yacc.yy"
34733
34751
    {
34734
34752
            LEX *lex=Lex;
34735
34753
            if (lex->ssl_cipher)
34744
34762
  case 2233:
34745
34763
 
34746
34764
/* Line 1455 of yacc.c  */
34747
 
#line 12704 "sql_yacc.yy"
 
34765
#line 12724 "sql_yacc.yy"
34748
34766
    {
34749
34767
            LEX *lex= Lex;
34750
34768
            size_t dummy;
34764
34782
  case 2234:
34765
34783
 
34766
34784
/* Line 1455 of yacc.c  */
34767
 
#line 12719 "sql_yacc.yy"
 
34785
#line 12739 "sql_yacc.yy"
34768
34786
    {
34769
34787
            LEX *lex= Lex;
34770
34788
            lex->current_select->db = (yyvsp[(1) - (3)].lex_str).str;
34782
34800
  case 2235:
34783
34801
 
34784
34802
/* Line 1455 of yacc.c  */
34785
 
#line 12732 "sql_yacc.yy"
 
34803
#line 12752 "sql_yacc.yy"
34786
34804
    {
34787
34805
            LEX *lex= Lex;
34788
34806
            lex->current_select->db = NULL;
34800
34818
  case 2236:
34801
34819
 
34802
34820
/* Line 1455 of yacc.c  */
34803
 
#line 12745 "sql_yacc.yy"
 
34821
#line 12765 "sql_yacc.yy"
34804
34822
    {
34805
34823
            LEX *lex=Lex;
34806
34824
            if (!lex->current_select->add_table_to_list(lex->thd, (yyvsp[(1) - (1)].table),NULL,
34814
34832
  case 2237:
34815
34833
 
34816
34834
/* Line 1455 of yacc.c  */
34817
 
#line 12757 "sql_yacc.yy"
 
34835
#line 12777 "sql_yacc.yy"
34818
34836
    {
34819
34837
            if (Lex->users_list.push_back((yyvsp[(1) - (1)].lex_user)))
34820
34838
              MYSQL_YYABORT;
34824
34842
  case 2238:
34825
34843
 
34826
34844
/* Line 1455 of yacc.c  */
34827
 
#line 12762 "sql_yacc.yy"
 
34845
#line 12782 "sql_yacc.yy"
34828
34846
    {
34829
34847
            if (Lex->users_list.push_back((yyvsp[(3) - (3)].lex_user)))
34830
34848
              MYSQL_YYABORT;
34834
34852
  case 2239:
34835
34853
 
34836
34854
/* Line 1455 of yacc.c  */
34837
 
#line 12770 "sql_yacc.yy"
 
34855
#line 12790 "sql_yacc.yy"
34838
34856
    {
34839
34857
            if (Lex->users_list.push_back((yyvsp[(1) - (1)].lex_user)))
34840
34858
              MYSQL_YYABORT;
34844
34862
  case 2240:
34845
34863
 
34846
34864
/* Line 1455 of yacc.c  */
34847
 
#line 12775 "sql_yacc.yy"
 
34865
#line 12795 "sql_yacc.yy"
34848
34866
    {
34849
34867
            if (Lex->users_list.push_back((yyvsp[(3) - (3)].lex_user)))
34850
34868
              MYSQL_YYABORT;
34854
34872
  case 2241:
34855
34873
 
34856
34874
/* Line 1455 of yacc.c  */
34857
 
#line 12783 "sql_yacc.yy"
 
34875
#line 12803 "sql_yacc.yy"
34858
34876
    {
34859
34877
            (yyval.lex_user)=(yyvsp[(1) - (4)].lex_user); (yyvsp[(1) - (4)].lex_user)->password=(yyvsp[(4) - (4)].lex_str);
34860
34878
            if ((yyvsp[(4) - (4)].lex_str).length)
34886
34904
  case 2242:
34887
34905
 
34888
34906
/* Line 1455 of yacc.c  */
34889
 
#line 12810 "sql_yacc.yy"
 
34907
#line 12830 "sql_yacc.yy"
34890
34908
    { (yyval.lex_user)= (yyvsp[(1) - (5)].lex_user); (yyvsp[(1) - (5)].lex_user)->password= (yyvsp[(5) - (5)].lex_str); }
34891
34909
    break;
34892
34910
 
34893
34911
  case 2243:
34894
34912
 
34895
34913
/* Line 1455 of yacc.c  */
34896
 
#line 12812 "sql_yacc.yy"
 
34914
#line 12832 "sql_yacc.yy"
34897
34915
    { (yyval.lex_user)= (yyvsp[(1) - (1)].lex_user); (yyvsp[(1) - (1)].lex_user)->password= null_lex_str; }
34898
34916
    break;
34899
34917
 
34900
34918
  case 2244:
34901
34919
 
34902
34920
/* Line 1455 of yacc.c  */
34903
 
#line 12817 "sql_yacc.yy"
 
34921
#line 12837 "sql_yacc.yy"
34904
34922
    {
34905
34923
            LEX *lex=Lex;
34906
34924
            lex->grant |= lex->which_columns;
34910
34928
  case 2248:
34911
34929
 
34912
34930
/* Line 1455 of yacc.c  */
34913
 
#line 12831 "sql_yacc.yy"
 
34931
#line 12851 "sql_yacc.yy"
34914
34932
    {
34915
34933
            String *new_str = new (YYTHD->mem_root) String((const char*) (yyvsp[(1) - (1)].lex_str).str,(yyvsp[(1) - (1)].lex_str).length,system_charset_info);
34916
34934
            if (new_str == NULL)
34940
34958
  case 2250:
34941
34959
 
34942
34960
/* Line 1455 of yacc.c  */
34943
 
#line 12860 "sql_yacc.yy"
 
34961
#line 12880 "sql_yacc.yy"
34944
34962
    {
34945
34963
            Lex->ssl_type=SSL_TYPE_SPECIFIED;
34946
34964
          }
34949
34967
  case 2251:
34950
34968
 
34951
34969
/* Line 1455 of yacc.c  */
34952
 
#line 12864 "sql_yacc.yy"
 
34970
#line 12884 "sql_yacc.yy"
34953
34971
    {
34954
34972
            Lex->ssl_type=SSL_TYPE_ANY;
34955
34973
          }
34958
34976
  case 2252:
34959
34977
 
34960
34978
/* Line 1455 of yacc.c  */
34961
 
#line 12868 "sql_yacc.yy"
 
34979
#line 12888 "sql_yacc.yy"
34962
34980
    {
34963
34981
            Lex->ssl_type=SSL_TYPE_X509;
34964
34982
          }
34967
34985
  case 2253:
34968
34986
 
34969
34987
/* Line 1455 of yacc.c  */
34970
 
#line 12872 "sql_yacc.yy"
 
34988
#line 12892 "sql_yacc.yy"
34971
34989
    {
34972
34990
            Lex->ssl_type=SSL_TYPE_NONE;
34973
34991
          }
34976
34994
  case 2254:
34977
34995
 
34978
34996
/* Line 1455 of yacc.c  */
34979
 
#line 12878 "sql_yacc.yy"
 
34997
#line 12898 "sql_yacc.yy"
34980
34998
    {}
34981
34999
    break;
34982
35000
 
34983
35001
  case 2256:
34984
35002
 
34985
35003
/* Line 1455 of yacc.c  */
34986
 
#line 12883 "sql_yacc.yy"
 
35004
#line 12903 "sql_yacc.yy"
34987
35005
    {}
34988
35006
    break;
34989
35007
 
34990
35008
  case 2257:
34991
35009
 
34992
35010
/* Line 1455 of yacc.c  */
34993
 
#line 12884 "sql_yacc.yy"
 
35011
#line 12904 "sql_yacc.yy"
34994
35012
    {}
34995
35013
    break;
34996
35014
 
34997
35015
  case 2258:
34998
35016
 
34999
35017
/* Line 1455 of yacc.c  */
35000
 
#line 12888 "sql_yacc.yy"
 
35018
#line 12908 "sql_yacc.yy"
35001
35019
    { Lex->grant |= GRANT_ACL;}
35002
35020
    break;
35003
35021
 
35004
35022
  case 2259:
35005
35023
 
35006
35024
/* Line 1455 of yacc.c  */
35007
 
#line 12890 "sql_yacc.yy"
 
35025
#line 12910 "sql_yacc.yy"
35008
35026
    {
35009
35027
            LEX *lex=Lex;
35010
35028
            lex->mqh.questions=(yyvsp[(2) - (2)].ulong_num);
35015
35033
  case 2260:
35016
35034
 
35017
35035
/* Line 1455 of yacc.c  */
35018
 
#line 12896 "sql_yacc.yy"
 
35036
#line 12916 "sql_yacc.yy"
35019
35037
    {
35020
35038
            LEX *lex=Lex;
35021
35039
            lex->mqh.updates=(yyvsp[(2) - (2)].ulong_num);
35026
35044
  case 2261:
35027
35045
 
35028
35046
/* Line 1455 of yacc.c  */
35029
 
#line 12902 "sql_yacc.yy"
 
35047
#line 12922 "sql_yacc.yy"
35030
35048
    {
35031
35049
            LEX *lex=Lex;
35032
35050
            lex->mqh.conn_per_hour= (yyvsp[(2) - (2)].ulong_num);
35037
35055
  case 2262:
35038
35056
 
35039
35057
/* Line 1455 of yacc.c  */
35040
 
#line 12908 "sql_yacc.yy"
 
35058
#line 12928 "sql_yacc.yy"
35041
35059
    {
35042
35060
            LEX *lex=Lex;
35043
35061
            lex->mqh.user_conn= (yyvsp[(2) - (2)].ulong_num);
35048
35066
  case 2263:
35049
35067
 
35050
35068
/* Line 1455 of yacc.c  */
35051
 
#line 12917 "sql_yacc.yy"
 
35069
#line 12937 "sql_yacc.yy"
35052
35070
    {
35053
35071
            LEX *lex=Lex;
35054
35072
            lex->sql_command = SQLCOM_BEGIN;
35059
35077
  case 2264:
35060
35078
 
35061
35079
/* Line 1455 of yacc.c  */
35062
 
#line 12922 "sql_yacc.yy"
 
35080
#line 12942 "sql_yacc.yy"
35063
35081
    {}
35064
35082
    break;
35065
35083
 
35066
35084
  case 2265:
35067
35085
 
35068
35086
/* Line 1455 of yacc.c  */
35069
 
#line 12926 "sql_yacc.yy"
 
35087
#line 12946 "sql_yacc.yy"
35070
35088
    {}
35071
35089
    break;
35072
35090
 
35073
35091
  case 2266:
35074
35092
 
35075
35093
/* Line 1455 of yacc.c  */
35076
 
#line 12927 "sql_yacc.yy"
 
35094
#line 12947 "sql_yacc.yy"
35077
35095
    {}
35078
35096
    break;
35079
35097
 
35080
35098
  case 2267:
35081
35099
 
35082
35100
/* Line 1455 of yacc.c  */
35083
 
#line 12932 "sql_yacc.yy"
 
35101
#line 12952 "sql_yacc.yy"
35084
35102
    { (yyval.num)= (YYTHD->variables.completion_type == 1); }
35085
35103
    break;
35086
35104
 
35087
35105
  case 2268:
35088
35106
 
35089
35107
/* Line 1455 of yacc.c  */
35090
 
#line 12933 "sql_yacc.yy"
 
35108
#line 12953 "sql_yacc.yy"
35091
35109
    { (yyval.num)=0; }
35092
35110
    break;
35093
35111
 
35094
35112
  case 2269:
35095
35113
 
35096
35114
/* Line 1455 of yacc.c  */
35097
 
#line 12934 "sql_yacc.yy"
 
35115
#line 12954 "sql_yacc.yy"
35098
35116
    { (yyval.num)=1; }
35099
35117
    break;
35100
35118
 
35101
35119
  case 2270:
35102
35120
 
35103
35121
/* Line 1455 of yacc.c  */
35104
 
#line 12939 "sql_yacc.yy"
 
35122
#line 12959 "sql_yacc.yy"
35105
35123
    { (yyval.num)= (YYTHD->variables.completion_type == 2); }
35106
35124
    break;
35107
35125
 
35108
35126
  case 2271:
35109
35127
 
35110
35128
/* Line 1455 of yacc.c  */
35111
 
#line 12940 "sql_yacc.yy"
 
35129
#line 12960 "sql_yacc.yy"
35112
35130
    { (yyval.num)=1; }
35113
35131
    break;
35114
35132
 
35115
35133
  case 2272:
35116
35134
 
35117
35135
/* Line 1455 of yacc.c  */
35118
 
#line 12941 "sql_yacc.yy"
 
35136
#line 12961 "sql_yacc.yy"
35119
35137
    { (yyval.num)=0; }
35120
35138
    break;
35121
35139
 
35122
35140
  case 2273:
35123
35141
 
35124
35142
/* Line 1455 of yacc.c  */
35125
 
#line 12945 "sql_yacc.yy"
 
35143
#line 12965 "sql_yacc.yy"
35126
35144
    {}
35127
35145
    break;
35128
35146
 
35129
35147
  case 2274:
35130
35148
 
35131
35149
/* Line 1455 of yacc.c  */
35132
 
#line 12946 "sql_yacc.yy"
 
35150
#line 12966 "sql_yacc.yy"
35133
35151
    {}
35134
35152
    break;
35135
35153
 
35136
35154
  case 2275:
35137
35155
 
35138
35156
/* Line 1455 of yacc.c  */
35139
 
#line 12951 "sql_yacc.yy"
 
35157
#line 12971 "sql_yacc.yy"
35140
35158
    {
35141
35159
            LEX *lex=Lex;
35142
35160
            lex->sql_command= SQLCOM_COMMIT;
35148
35166
  case 2276:
35149
35167
 
35150
35168
/* Line 1455 of yacc.c  */
35151
 
#line 12961 "sql_yacc.yy"
 
35169
#line 12981 "sql_yacc.yy"
35152
35170
    {
35153
35171
            LEX *lex=Lex;
35154
35172
            lex->sql_command= SQLCOM_ROLLBACK;
35160
35178
  case 2277:
35161
35179
 
35162
35180
/* Line 1455 of yacc.c  */
35163
 
#line 12969 "sql_yacc.yy"
 
35181
#line 12989 "sql_yacc.yy"
35164
35182
    {
35165
35183
            LEX *lex=Lex;
35166
35184
            lex->sql_command= SQLCOM_ROLLBACK_TO_SAVEPOINT;
35171
35189
  case 2278:
35172
35190
 
35173
35191
/* Line 1455 of yacc.c  */
35174
 
#line 12978 "sql_yacc.yy"
 
35192
#line 12998 "sql_yacc.yy"
35175
35193
    {
35176
35194
            LEX *lex=Lex;
35177
35195
            lex->sql_command= SQLCOM_SAVEPOINT;
35182
35200
  case 2279:
35183
35201
 
35184
35202
/* Line 1455 of yacc.c  */
35185
 
#line 12987 "sql_yacc.yy"
 
35203
#line 13007 "sql_yacc.yy"
35186
35204
    {
35187
35205
            LEX *lex=Lex;
35188
35206
            lex->sql_command= SQLCOM_RELEASE_SAVEPOINT;
35193
35211
  case 2280:
35194
35212
 
35195
35213
/* Line 1455 of yacc.c  */
35196
 
#line 13000 "sql_yacc.yy"
 
35214
#line 13020 "sql_yacc.yy"
35197
35215
    {}
35198
35216
    break;
35199
35217
 
35200
35218
  case 2282:
35201
35219
 
35202
35220
/* Line 1455 of yacc.c  */
35203
 
#line 13006 "sql_yacc.yy"
 
35221
#line 13026 "sql_yacc.yy"
35204
35222
    {
35205
35223
            LEX *lex=Lex;
35206
35224
            if (lex->result && 
35235
35253
  case 2283:
35236
35254
 
35237
35255
/* Line 1455 of yacc.c  */
35238
 
#line 13036 "sql_yacc.yy"
 
35256
#line 13056 "sql_yacc.yy"
35239
35257
    {
35240
35258
            /*
35241
35259
              Remove from the name resolution context stack the context of the
35248
35266
  case 2284:
35249
35267
 
35250
35268
/* Line 1455 of yacc.c  */
35251
 
#line 13046 "sql_yacc.yy"
 
35269
#line 13066 "sql_yacc.yy"
35252
35270
    { (yyval.num)= 0; }
35253
35271
    break;
35254
35272
 
35255
35273
  case 2285:
35256
35274
 
35257
35275
/* Line 1455 of yacc.c  */
35258
 
#line 13047 "sql_yacc.yy"
 
35276
#line 13067 "sql_yacc.yy"
35259
35277
    { (yyval.num)= 1; }
35260
35278
    break;
35261
35279
 
35262
35280
  case 2286:
35263
35281
 
35264
35282
/* Line 1455 of yacc.c  */
35265
 
#line 13048 "sql_yacc.yy"
 
35283
#line 13068 "sql_yacc.yy"
35266
35284
    { (yyval.num)= 1; }
35267
35285
    break;
35268
35286
 
35269
35287
  case 2287:
35270
35288
 
35271
35289
/* Line 1455 of yacc.c  */
35272
 
#line 13052 "sql_yacc.yy"
 
35290
#line 13072 "sql_yacc.yy"
35273
35291
    {
35274
35292
            THD *thd= YYTHD;
35275
35293
            LEX *lex= thd->lex;
35290
35308
  case 2288:
35291
35309
 
35292
35310
/* Line 1455 of yacc.c  */
35293
 
#line 13068 "sql_yacc.yy"
 
35311
#line 13088 "sql_yacc.yy"
35294
35312
    {
35295
35313
            THD *thd= YYTHD;
35296
35314
            thd->lex->current_select->no_table_names_allowed= 0;
35301
35319
  case 2291:
35302
35320
 
35303
35321
/* Line 1455 of yacc.c  */
35304
 
#line 13081 "sql_yacc.yy"
 
35322
#line 13101 "sql_yacc.yy"
35305
35323
    { (yyval.num)=1; }
35306
35324
    break;
35307
35325
 
35308
35326
  case 2292:
35309
35327
 
35310
35328
/* Line 1455 of yacc.c  */
35311
 
#line 13082 "sql_yacc.yy"
 
35329
#line 13102 "sql_yacc.yy"
35312
35330
    { (yyval.num)=1; }
35313
35331
    break;
35314
35332
 
35315
35333
  case 2293:
35316
35334
 
35317
35335
/* Line 1455 of yacc.c  */
35318
 
#line 13083 "sql_yacc.yy"
 
35336
#line 13103 "sql_yacc.yy"
35319
35337
    { (yyval.num)=0; }
35320
35338
    break;
35321
35339
 
35322
35340
  case 2294:
35323
35341
 
35324
35342
/* Line 1455 of yacc.c  */
35325
 
#line 13087 "sql_yacc.yy"
 
35343
#line 13107 "sql_yacc.yy"
35326
35344
    {
35327
35345
          (yyval.select_lex)= Lex->current_select->master_unit()->first_select();
35328
35346
        }
35331
35349
  case 2295:
35332
35350
 
35333
35351
/* Line 1455 of yacc.c  */
35334
 
#line 13094 "sql_yacc.yy"
 
35352
#line 13114 "sql_yacc.yy"
35335
35353
    {
35336
35354
          (yyval.select_lex)= (yyvsp[(4) - (5)].select_lex);
35337
35355
        }
35340
35358
  case 2296:
35341
35359
 
35342
35360
/* Line 1455 of yacc.c  */
35343
 
#line 13099 "sql_yacc.yy"
 
35361
#line 13119 "sql_yacc.yy"
35344
35362
    {
35345
35363
          (yyval.select_lex)= (yyvsp[(4) - (6)].select_lex);
35346
35364
        }
35349
35367
  case 2297:
35350
35368
 
35351
35369
/* Line 1455 of yacc.c  */
35352
 
#line 13104 "sql_yacc.yy"
 
35370
#line 13124 "sql_yacc.yy"
35353
35371
    {
35354
35372
            LEX *lex=Lex;
35355
35373
            if (!lex->expr_allows_subselect ||
35373
35391
  case 2298:
35374
35392
 
35375
35393
/* Line 1455 of yacc.c  */
35376
 
#line 13125 "sql_yacc.yy"
 
35394
#line 13145 "sql_yacc.yy"
35377
35395
    {
35378
35396
            LEX *lex=Lex;
35379
35397
            /*
35405
35423
  case 2299:
35406
35424
 
35407
35425
/* Line 1455 of yacc.c  */
35408
 
#line 13161 "sql_yacc.yy"
 
35426
#line 13181 "sql_yacc.yy"
35409
35427
    {}
35410
35428
    break;
35411
35429
 
35412
35430
  case 2300:
35413
35431
 
35414
35432
/* Line 1455 of yacc.c  */
35415
 
#line 13163 "sql_yacc.yy"
 
35433
#line 13183 "sql_yacc.yy"
35416
35434
    {}
35417
35435
    break;
35418
35436
 
35419
35437
  case 2301:
35420
35438
 
35421
35439
/* Line 1455 of yacc.c  */
35422
 
#line 13165 "sql_yacc.yy"
 
35440
#line 13185 "sql_yacc.yy"
35423
35441
    {}
35424
35442
    break;
35425
35443
 
35426
35444
  case 2315:
35427
35445
 
35428
35446
/* Line 1455 of yacc.c  */
35429
 
#line 13198 "sql_yacc.yy"
 
35447
#line 13218 "sql_yacc.yy"
35430
35448
    {
35431
35449
            /*
35432
35450
              We have to distinguish missing DEFINER-clause from case when
35442
35460
  case 2316:
35443
35461
 
35444
35462
/* Line 1455 of yacc.c  */
35445
 
#line 13212 "sql_yacc.yy"
 
35463
#line 13232 "sql_yacc.yy"
35446
35464
    {
35447
35465
            YYTHD->lex->definer= get_current_user(YYTHD, (yyvsp[(3) - (3)].lex_user));
35448
35466
          }
35451
35469
  case 2317:
35452
35470
 
35453
35471
/* Line 1455 of yacc.c  */
35454
 
#line 13225 "sql_yacc.yy"
 
35472
#line 13245 "sql_yacc.yy"
35455
35473
    {}
35456
35474
    break;
35457
35475
 
35458
35476
  case 2318:
35459
35477
 
35460
35478
/* Line 1455 of yacc.c  */
35461
 
#line 13227 "sql_yacc.yy"
 
35479
#line 13247 "sql_yacc.yy"
35462
35480
    {}
35463
35481
    break;
35464
35482
 
35465
35483
  case 2319:
35466
35484
 
35467
35485
/* Line 1455 of yacc.c  */
35468
 
#line 13229 "sql_yacc.yy"
 
35486
#line 13249 "sql_yacc.yy"
35469
35487
    {}
35470
35488
    break;
35471
35489
 
35472
35490
  case 2320:
35473
35491
 
35474
35492
/* Line 1455 of yacc.c  */
35475
 
#line 13234 "sql_yacc.yy"
 
35493
#line 13254 "sql_yacc.yy"
35476
35494
    { Lex->create_view_mode= VIEW_CREATE_OR_REPLACE; }
35477
35495
    break;
35478
35496
 
35479
35497
  case 2321:
35480
35498
 
35481
35499
/* Line 1455 of yacc.c  */
35482
 
#line 13239 "sql_yacc.yy"
 
35500
#line 13259 "sql_yacc.yy"
35483
35501
    { Lex->create_view_algorithm= VIEW_ALGORITHM_UNDEFINED; }
35484
35502
    break;
35485
35503
 
35486
35504
  case 2322:
35487
35505
 
35488
35506
/* Line 1455 of yacc.c  */
35489
 
#line 13241 "sql_yacc.yy"
 
35507
#line 13261 "sql_yacc.yy"
35490
35508
    { Lex->create_view_algorithm= VIEW_ALGORITHM_MERGE; }
35491
35509
    break;
35492
35510
 
35493
35511
  case 2323:
35494
35512
 
35495
35513
/* Line 1455 of yacc.c  */
35496
 
#line 13243 "sql_yacc.yy"
 
35514
#line 13263 "sql_yacc.yy"
35497
35515
    { Lex->create_view_algorithm= VIEW_ALGORITHM_TMPTABLE; }
35498
35516
    break;
35499
35517
 
35500
35518
  case 2324:
35501
35519
 
35502
35520
/* Line 1455 of yacc.c  */
35503
 
#line 13248 "sql_yacc.yy"
 
35521
#line 13268 "sql_yacc.yy"
35504
35522
    { Lex->create_view_suid= VIEW_SUID_DEFAULT; }
35505
35523
    break;
35506
35524
 
35507
35525
  case 2325:
35508
35526
 
35509
35527
/* Line 1455 of yacc.c  */
35510
 
#line 13250 "sql_yacc.yy"
 
35528
#line 13270 "sql_yacc.yy"
35511
35529
    { Lex->create_view_suid= VIEW_SUID_DEFINER; }
35512
35530
    break;
35513
35531
 
35514
35532
  case 2326:
35515
35533
 
35516
35534
/* Line 1455 of yacc.c  */
35517
 
#line 13252 "sql_yacc.yy"
 
35535
#line 13272 "sql_yacc.yy"
35518
35536
    { Lex->create_view_suid= VIEW_SUID_INVOKER; }
35519
35537
    break;
35520
35538
 
35521
35539
  case 2327:
35522
35540
 
35523
35541
/* Line 1455 of yacc.c  */
35524
 
#line 13257 "sql_yacc.yy"
 
35542
#line 13277 "sql_yacc.yy"
35525
35543
    {
35526
35544
            THD *thd= YYTHD;
35527
35545
            LEX *lex= thd->lex;
35535
35553
  case 2329:
35536
35554
 
35537
35555
/* Line 1455 of yacc.c  */
35538
 
#line 13270 "sql_yacc.yy"
 
35556
#line 13290 "sql_yacc.yy"
35539
35557
    {}
35540
35558
    break;
35541
35559
 
35542
35560
  case 2331:
35543
35561
 
35544
35562
/* Line 1455 of yacc.c  */
35545
 
#line 13276 "sql_yacc.yy"
 
35563
#line 13296 "sql_yacc.yy"
35546
35564
    {
35547
35565
              Lex->view_list.push_back((LEX_STRING*)
35548
35566
              sql_memdup(&(yyvsp[(1) - (1)].lex_str), sizeof(LEX_STRING)));
35552
35570
  case 2332:
35553
35571
 
35554
35572
/* Line 1455 of yacc.c  */
35555
 
#line 13281 "sql_yacc.yy"
 
35573
#line 13301 "sql_yacc.yy"
35556
35574
    {
35557
35575
              Lex->view_list.push_back((LEX_STRING*)
35558
35576
              sql_memdup(&(yyvsp[(3) - (3)].lex_str), sizeof(LEX_STRING)));
35562
35580
  case 2333:
35563
35581
 
35564
35582
/* Line 1455 of yacc.c  */
35565
 
#line 13288 "sql_yacc.yy"
 
35583
#line 13308 "sql_yacc.yy"
35566
35584
    {
35567
35585
            LEX *lex= Lex;
35568
35586
            lex->parsing_options.allows_variable= FALSE;
35576
35594
  case 2334:
35577
35595
 
35578
35596
/* Line 1455 of yacc.c  */
35579
 
#line 13297 "sql_yacc.yy"
 
35597
#line 13317 "sql_yacc.yy"
35580
35598
    {
35581
35599
            THD *thd= YYTHD;
35582
35600
            LEX *lex= Lex;
35595
35613
  case 2337:
35596
35614
 
35597
35615
/* Line 1455 of yacc.c  */
35598
 
#line 13319 "sql_yacc.yy"
 
35616
#line 13339 "sql_yacc.yy"
35599
35617
    { Lex->create_view_check= VIEW_CHECK_NONE; }
35600
35618
    break;
35601
35619
 
35602
35620
  case 2338:
35603
35621
 
35604
35622
/* Line 1455 of yacc.c  */
35605
 
#line 13321 "sql_yacc.yy"
 
35623
#line 13341 "sql_yacc.yy"
35606
35624
    { Lex->create_view_check= VIEW_CHECK_CASCADED; }
35607
35625
    break;
35608
35626
 
35609
35627
  case 2339:
35610
35628
 
35611
35629
/* Line 1455 of yacc.c  */
35612
 
#line 13323 "sql_yacc.yy"
 
35630
#line 13343 "sql_yacc.yy"
35613
35631
    { Lex->create_view_check= VIEW_CHECK_CASCADED; }
35614
35632
    break;
35615
35633
 
35616
35634
  case 2340:
35617
35635
 
35618
35636
/* Line 1455 of yacc.c  */
35619
 
#line 13325 "sql_yacc.yy"
 
35637
#line 13345 "sql_yacc.yy"
35620
35638
    { Lex->create_view_check= VIEW_CHECK_LOCAL; }
35621
35639
    break;
35622
35640
 
35623
35641
  case 2341:
35624
35642
 
35625
35643
/* Line 1455 of yacc.c  */
35626
 
#line 13342 "sql_yacc.yy"
 
35644
#line 13362 "sql_yacc.yy"
35627
35645
    { /* $8 */
35628
35646
            Lex->raw_trg_on_table_name_begin= YYLIP->get_tok_start();
35629
35647
          }
35632
35650
  case 2342:
35633
35651
 
35634
35652
/* Line 1455 of yacc.c  */
35635
 
#line 13348 "sql_yacc.yy"
 
35653
#line 13368 "sql_yacc.yy"
35636
35654
    { /* $12 */
35637
35655
            Lex->raw_trg_on_table_name_end= YYLIP->get_tok_start();
35638
35656
          }
35641
35659
  case 2343:
35642
35660
 
35643
35661
/* Line 1455 of yacc.c  */
35644
 
#line 13353 "sql_yacc.yy"
 
35662
#line 13373 "sql_yacc.yy"
35645
35663
    { /* $15 */
35646
35664
            THD *thd= YYTHD;
35647
35665
            LEX *lex= thd->lex;
35676
35694
  case 2344:
35677
35695
 
35678
35696
/* Line 1455 of yacc.c  */
35679
 
#line 13383 "sql_yacc.yy"
 
35697
#line 13403 "sql_yacc.yy"
35680
35698
    { /* $17 */
35681
35699
            LEX *lex= Lex;
35682
35700
            sp_head *sp= lex->sphead;
35704
35722
  case 2345:
35705
35723
 
35706
35724
/* Line 1455 of yacc.c  */
35707
 
#line 13416 "sql_yacc.yy"
 
35725
#line 13436 "sql_yacc.yy"
35708
35726
    {
35709
35727
            THD *thd= YYTHD;
35710
35728
            LEX *lex= thd->lex;
35726
35744
  case 2346:
35727
35745
 
35728
35746
/* Line 1455 of yacc.c  */
35729
 
#line 13434 "sql_yacc.yy"
 
35747
#line 13454 "sql_yacc.yy"
35730
35748
    {
35731
35749
            THD *thd= YYTHD;
35732
35750
            LEX *lex= thd->lex;
35748
35766
  case 2347:
35749
35767
 
35750
35768
/* Line 1455 of yacc.c  */
35751
 
#line 13457 "sql_yacc.yy"
 
35769
#line 13477 "sql_yacc.yy"
35752
35770
    { /* $5 */
35753
35771
            THD *thd= YYTHD;
35754
35772
            LEX *lex= thd->lex;
35784
35802
  case 2348:
35785
35803
 
35786
35804
/* Line 1455 of yacc.c  */
35787
 
#line 13489 "sql_yacc.yy"
 
35805
#line 13509 "sql_yacc.yy"
35788
35806
    { /* $8 */
35789
35807
            Lex->sphead->m_param_end= YYLIP->get_cpp_tok_start();
35790
35808
          }
35793
35811
  case 2349:
35794
35812
 
35795
35813
/* Line 1455 of yacc.c  */
35796
 
#line 13493 "sql_yacc.yy"
 
35814
#line 13513 "sql_yacc.yy"
35797
35815
    { /* $10 */
35798
35816
            LEX *lex= Lex;
35799
35817
            lex->charset= NULL;
35806
35824
  case 2350:
35807
35825
 
35808
35826
/* Line 1455 of yacc.c  */
35809
 
#line 13501 "sql_yacc.yy"
 
35827
#line 13521 "sql_yacc.yy"
35810
35828
    { /* $12 */
35811
35829
            LEX *lex= Lex;
35812
35830
            sp_head *sp= lex->sphead;
35834
35852
  case 2351:
35835
35853
 
35836
35854
/* Line 1455 of yacc.c  */
35837
 
#line 13524 "sql_yacc.yy"
 
35855
#line 13544 "sql_yacc.yy"
35838
35856
    { /* $14 */
35839
35857
            THD *thd= YYTHD;
35840
35858
            LEX *lex= thd->lex;
35848
35866
  case 2352:
35849
35867
 
35850
35868
/* Line 1455 of yacc.c  */
35851
 
#line 13533 "sql_yacc.yy"
 
35869
#line 13553 "sql_yacc.yy"
35852
35870
    {
35853
35871
            THD *thd= YYTHD;
35854
35872
            LEX *lex= thd->lex;
35906
35924
  case 2353:
35907
35925
 
35908
35926
/* Line 1455 of yacc.c  */
35909
 
#line 13589 "sql_yacc.yy"
 
35927
#line 13609 "sql_yacc.yy"
35910
35928
    {
35911
35929
            LEX *lex= Lex;
35912
35930
            sp_head *sp;
35935
35953
  case 2354:
35936
35954
 
35937
35955
/* Line 1455 of yacc.c  */
35938
 
#line 13613 "sql_yacc.yy"
 
35956
#line 13633 "sql_yacc.yy"
35939
35957
    {
35940
35958
            const char* tmp_param_begin;
35941
35959
 
35948
35966
  case 2355:
35949
35967
 
35950
35968
/* Line 1455 of yacc.c  */
35951
 
#line 13622 "sql_yacc.yy"
 
35969
#line 13642 "sql_yacc.yy"
35952
35970
    {
35953
35971
            THD *thd= YYTHD;
35954
35972
            LEX *lex= thd->lex;
35961
35979
  case 2356:
35962
35980
 
35963
35981
/* Line 1455 of yacc.c  */
35964
 
#line 13630 "sql_yacc.yy"
 
35982
#line 13650 "sql_yacc.yy"
35965
35983
    {
35966
35984
            THD *thd= YYTHD;
35967
35985
            LEX *lex= thd->lex;
35974
35992
  case 2357:
35975
35993
 
35976
35994
/* Line 1455 of yacc.c  */
35977
 
#line 13638 "sql_yacc.yy"
 
35995
#line 13658 "sql_yacc.yy"
35978
35996
    {
35979
35997
            LEX *lex= Lex;
35980
35998
            sp_head *sp= lex->sphead;
35988
36006
  case 2358:
35989
36007
 
35990
36008
/* Line 1455 of yacc.c  */
35991
 
#line 13652 "sql_yacc.yy"
 
36009
#line 13672 "sql_yacc.yy"
35992
36010
    {
35993
36011
            Lex->sql_command = SQLCOM_XA_START;
35994
36012
          }
35997
36015
  case 2359:
35998
36016
 
35999
36017
/* Line 1455 of yacc.c  */
36000
 
#line 13656 "sql_yacc.yy"
 
36018
#line 13676 "sql_yacc.yy"
36001
36019
    {
36002
36020
            Lex->sql_command = SQLCOM_XA_END;
36003
36021
          }
36006
36024
  case 2360:
36007
36025
 
36008
36026
/* Line 1455 of yacc.c  */
36009
 
#line 13660 "sql_yacc.yy"
 
36027
#line 13680 "sql_yacc.yy"
36010
36028
    {
36011
36029
            Lex->sql_command = SQLCOM_XA_PREPARE;
36012
36030
          }
36015
36033
  case 2361:
36016
36034
 
36017
36035
/* Line 1455 of yacc.c  */
36018
 
#line 13664 "sql_yacc.yy"
 
36036
#line 13684 "sql_yacc.yy"
36019
36037
    {
36020
36038
            Lex->sql_command = SQLCOM_XA_COMMIT;
36021
36039
          }
36024
36042
  case 2362:
36025
36043
 
36026
36044
/* Line 1455 of yacc.c  */
36027
 
#line 13668 "sql_yacc.yy"
 
36045
#line 13688 "sql_yacc.yy"
36028
36046
    {
36029
36047
            Lex->sql_command = SQLCOM_XA_ROLLBACK;
36030
36048
          }
36033
36051
  case 2363:
36034
36052
 
36035
36053
/* Line 1455 of yacc.c  */
36036
 
#line 13672 "sql_yacc.yy"
 
36054
#line 13692 "sql_yacc.yy"
36037
36055
    {
36038
36056
            Lex->sql_command = SQLCOM_XA_RECOVER;
36039
36057
          }
36042
36060
  case 2364:
36043
36061
 
36044
36062
/* Line 1455 of yacc.c  */
36045
 
#line 13679 "sql_yacc.yy"
 
36063
#line 13699 "sql_yacc.yy"
36046
36064
    {
36047
36065
            MYSQL_YYABORT_UNLESS((yyvsp[(1) - (1)].string)->length() <= MAXGTRIDSIZE);
36048
36066
            if (!(Lex->xid=(XID *)YYTHD->alloc(sizeof(XID))))
36054
36072
  case 2365:
36055
36073
 
36056
36074
/* Line 1455 of yacc.c  */
36057
 
#line 13686 "sql_yacc.yy"
 
36075
#line 13706 "sql_yacc.yy"
36058
36076
    {
36059
36077
            MYSQL_YYABORT_UNLESS((yyvsp[(1) - (3)].string)->length() <= MAXGTRIDSIZE && (yyvsp[(3) - (3)].string)->length() <= MAXBQUALSIZE);
36060
36078
            if (!(Lex->xid=(XID *)YYTHD->alloc(sizeof(XID))))
36066
36084
  case 2366:
36067
36085
 
36068
36086
/* Line 1455 of yacc.c  */
36069
 
#line 13693 "sql_yacc.yy"
 
36087
#line 13713 "sql_yacc.yy"
36070
36088
    {
36071
36089
            MYSQL_YYABORT_UNLESS((yyvsp[(1) - (5)].string)->length() <= MAXGTRIDSIZE && (yyvsp[(3) - (5)].string)->length() <= MAXBQUALSIZE);
36072
36090
            if (!(Lex->xid=(XID *)YYTHD->alloc(sizeof(XID))))
36078
36096
  case 2367:
36079
36097
 
36080
36098
/* Line 1455 of yacc.c  */
36081
 
#line 13702 "sql_yacc.yy"
 
36099
#line 13722 "sql_yacc.yy"
36082
36100
    {}
36083
36101
    break;
36084
36102
 
36085
36103
  case 2368:
36086
36104
 
36087
36105
/* Line 1455 of yacc.c  */
36088
 
#line 13703 "sql_yacc.yy"
 
36106
#line 13723 "sql_yacc.yy"
36089
36107
    {}
36090
36108
    break;
36091
36109
 
36092
36110
  case 2369:
36093
36111
 
36094
36112
/* Line 1455 of yacc.c  */
36095
 
#line 13707 "sql_yacc.yy"
 
36113
#line 13727 "sql_yacc.yy"
36096
36114
    { Lex->xa_opt=XA_NONE;        }
36097
36115
    break;
36098
36116
 
36099
36117
  case 2370:
36100
36118
 
36101
36119
/* Line 1455 of yacc.c  */
36102
 
#line 13708 "sql_yacc.yy"
 
36120
#line 13728 "sql_yacc.yy"
36103
36121
    { Lex->xa_opt=XA_JOIN;        }
36104
36122
    break;
36105
36123
 
36106
36124
  case 2371:
36107
36125
 
36108
36126
/* Line 1455 of yacc.c  */
36109
 
#line 13709 "sql_yacc.yy"
 
36127
#line 13729 "sql_yacc.yy"
36110
36128
    { Lex->xa_opt=XA_RESUME;      }
36111
36129
    break;
36112
36130
 
36113
36131
  case 2372:
36114
36132
 
36115
36133
/* Line 1455 of yacc.c  */
36116
 
#line 13713 "sql_yacc.yy"
 
36134
#line 13733 "sql_yacc.yy"
36117
36135
    { Lex->xa_opt=XA_NONE;        }
36118
36136
    break;
36119
36137
 
36120
36138
  case 2373:
36121
36139
 
36122
36140
/* Line 1455 of yacc.c  */
36123
 
#line 13714 "sql_yacc.yy"
 
36141
#line 13734 "sql_yacc.yy"
36124
36142
    { Lex->xa_opt=XA_ONE_PHASE;   }
36125
36143
    break;
36126
36144
 
36127
36145
  case 2374:
36128
36146
 
36129
36147
/* Line 1455 of yacc.c  */
36130
 
#line 13719 "sql_yacc.yy"
 
36148
#line 13739 "sql_yacc.yy"
36131
36149
    { Lex->xa_opt=XA_NONE;        }
36132
36150
    break;
36133
36151
 
36134
36152
  case 2375:
36135
36153
 
36136
36154
/* Line 1455 of yacc.c  */
36137
 
#line 13721 "sql_yacc.yy"
 
36155
#line 13741 "sql_yacc.yy"
36138
36156
    { Lex->xa_opt=XA_SUSPEND;     }
36139
36157
    break;
36140
36158
 
36141
36159
  case 2377:
36142
36160
 
36143
36161
/* Line 1455 of yacc.c  */
36144
 
#line 13726 "sql_yacc.yy"
 
36162
#line 13746 "sql_yacc.yy"
36145
36163
    {}
36146
36164
    break;
36147
36165
 
36148
36166
  case 2378:
36149
36167
 
36150
36168
/* Line 1455 of yacc.c  */
36151
 
#line 13727 "sql_yacc.yy"
 
36169
#line 13747 "sql_yacc.yy"
36152
36170
    { Lex->xa_opt=XA_FOR_MIGRATE; }
36153
36171
    break;
36154
36172
 
36155
36173
  case 2379:
36156
36174
 
36157
36175
/* Line 1455 of yacc.c  */
36158
 
#line 13732 "sql_yacc.yy"
 
36176
#line 13752 "sql_yacc.yy"
36159
36177
    {
36160
36178
            LEX *lex= Lex;
36161
36179
            lex->sql_command= SQLCOM_INSTALL_PLUGIN;
36167
36185
  case 2380:
36168
36186
 
36169
36187
/* Line 1455 of yacc.c  */
36170
 
#line 13742 "sql_yacc.yy"
 
36188
#line 13762 "sql_yacc.yy"
36171
36189
    {
36172
36190
            LEX *lex= Lex;
36173
36191
            lex->sql_command= SQLCOM_UNINSTALL_PLUGIN;
36178
36196
 
36179
36197
 
36180
36198
/* Line 1455 of yacc.c  */
36181
 
#line 36182 "sql_yacc.cc"
 
36199
#line 36200 "sql_yacc.cc"
36182
36200
      default: break;
36183
36201
    }
36184
36202
  YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc);