MCPcopy Create free account
hub / github.com/Meituan-Dianping/SQLAdvisor / do_check

Method do_check

sql/sys_vars.h:489–514  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

487 flags&= ~ALLOCATED;
488 }
489 bool do_check(THD *thd, set_var *var)
490 {
491 char buff[STRING_BUFFER_USUAL_SIZE], buff2[STRING_BUFFER_USUAL_SIZE];
492 String str(buff, sizeof(buff), charset(thd));
493 String str2(buff2, sizeof(buff2), charset(thd)), *res;
494
495 if (!(res=var->value->val_str(&str)))
496 var->save_result.string_value.str= 0;
497 else
498 {
499 uint32 unused;
500 if (String::needs_conversion(res->length(), res->charset(),
501 charset(thd), &unused))
502 {
503 uint errors;
504 str2.copy(res->ptr(), res->length(), res->charset(), charset(thd),
505 &errors);
506 res=&str2;
507
508 }
509 var->save_result.string_value.str= thd->strmake(res->ptr(), res->length());
510 var->save_result.string_value.length= res->length();
511 }
512
513 return false;
514 }
515 bool session_update(THD *thd, set_var *var)
516 {
517 DBUG_ASSERT(FALSE);

Callers

nothing calls this directly

Calls 6

strmakeMethod · 0.80
val_strMethod · 0.45
lengthMethod · 0.45
charsetMethod · 0.45
copyMethod · 0.45
ptrMethod · 0.45

Tested by

no test coverage detected