fix no wait const param is not consistent in fp and np
This commit is contained in:
		@ -2042,19 +2042,6 @@ int ObFastParserMysql::process_identifier_begin_with_n()
 | 
			
		||||
      OZ (add_null_type_node());
 | 
			
		||||
    }
 | 
			
		||||
  } else {
 | 
			
		||||
    bool is_nowait = false;
 | 
			
		||||
    if (CHECK_EQ_STRNCASECMP("o_wait", 6)) {
 | 
			
		||||
      is_nowait = true;
 | 
			
		||||
      cur_token_type_ = PARAM_TOKEN;
 | 
			
		||||
      raw_sql_.scan(6);
 | 
			
		||||
    } else if (CHECK_EQ_STRNCASECMP("owait", 5)) {
 | 
			
		||||
      is_nowait = true;
 | 
			
		||||
      cur_token_type_ = PARAM_TOKEN;
 | 
			
		||||
      raw_sql_.scan(5);
 | 
			
		||||
    }
 | 
			
		||||
    if (is_nowait && OB_FAIL(add_nowait_type_node())) {
 | 
			
		||||
      LOG_WARN("failed to add nowait node info", K(ret));
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
  return ret;
 | 
			
		||||
}
 | 
			
		||||
@ -2453,15 +2440,6 @@ int ObFastParserOracle::process_identifier_begin_with_n()
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
  } else {
 | 
			
		||||
    bool is_nowait = false;
 | 
			
		||||
    if (CHECK_EQ_STRNCASECMP("owait", 5)) {
 | 
			
		||||
      is_nowait = true;
 | 
			
		||||
      cur_token_type_ = PARAM_TOKEN;
 | 
			
		||||
      raw_sql_.scan(5);
 | 
			
		||||
    }
 | 
			
		||||
    if (is_nowait && OB_FAIL(add_nowait_type_node())) {
 | 
			
		||||
      LOG_WARN("failed to add nowait node info", K(ret));
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
  return ret;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@ -1488,14 +1488,7 @@ BEGIN(in_c_comment);
 | 
			
		||||
  if (IS_FAST_PARAMETERIZE) {
 | 
			
		||||
    ParseResult *p = (ParseResult *)yyextra;
 | 
			
		||||
    REPUT_NEG_SIGN(p);
 | 
			
		||||
    if (strcasecmp("nowait", yytext) == 0
 | 
			
		||||
        || strcasecmp("no_wait", yytext) == 0) {
 | 
			
		||||
      //语法阶段for update nowait 会给默认值0,所以如果是fast parse也需要给0, 从而保证常量个数识别的一致性
 | 
			
		||||
      char num[2] = "0";
 | 
			
		||||
      STORE_UNIT_TYPE_NODE(num);
 | 
			
		||||
    } else {
 | 
			
		||||
      return NAME_OB;
 | 
			
		||||
    }
 | 
			
		||||
    return NAME_OB;
 | 
			
		||||
  } else {
 | 
			
		||||
    int ret = NAME_OB;
 | 
			
		||||
    if (NULL == (word = mysql_non_reserved_keyword_lookup(yytext)))
 | 
			
		||||
 | 
			
		||||
		Reference in New Issue
	
	Block a user