国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > MySQL > 正文

隨筆 MYSQL_BIN_LOG COND_done 是啥

2024-07-24 12:35:36
字體:
來源:轉載
供稿:網友
        隨筆 MYSQL_BIN_LOG COND_done 是啥:

  一、問題
 
  二、找到影響位置
  整個尋找過程應該找到key_BINLOG_COND_done這個取值,然后去看他是在那里被定義到相應的mutex/cond上,然后查找mutex/cond的作用即可。
 
  定義:
  static PSI_cond_info all_server_conds[]=
  {
  { &key_PAGE_cond, “PAGE::cond”, 0},
  { &key_COND_active, “TC_LOG_MMAP::COND_active”, 0},
  { &key_COND_pool, “TC_LOG_MMAP::COND_pool”, 0},
  { &key_BINLOG_COND_done, “MYSQL_BIN_LOG::COND_done”, 0},
  { &key_BINLOG_update_cond, “MYSQL_BIN_LOG::update_cond”, 0},
  注冊:
  register_cond_class
  初始化:
  MYSQL_BIN_LOG::set_psi_keys
 
  建立條件變量:
  Stage_manager::init
 
  使用:
    */
    if (!leader) //如果不是 leader
    {
      mysql_mutex_lock(&m_lock_done);//加鎖
      while (thd->get_transaction()->m_flags.pending) //喚醒時 設置每個事物的狀態 為ture
        mysql_cond_wait(&m_cond_done, &m_lock_done);//釋放鎖 等待條件滿足 pending=false
      mysql_mutex_unlock(&m_lock_done);//解鎖
    }
  棧幀
  Breakpoint 2, MYSQL_BIN_LOG::set_psi_keys (this=0x2e83640, key_LOCK_index=7, key_LOCK_commit=3, key_LOCK_commit_queue=4, key_LOCK_done=5, key_LOCK_flush_queue=6,
      key_LOCK_log=8, key_LOCK_binlog_end_pos=9, key_LOCK_sync=10, key_LOCK_sync_queue=11, key_LOCK_xids=12, key_COND_done=4, key_update_cond=5, key_prep_xids_cond=6,
      key_file_log=2, key_file_log_index=4, key_file_log_cache=3, key_file_log_index_cache=5) at /mysqldata/percona-server-locks-detail-5.7.22/sql/binlog.h:539
  539         m_key_COND_done= key_COND_done;
  (gdb) bt
  #0  MYSQL_BIN_LOG::set_psi_keys (this=0x2e83640, key_LOCK_index=7, key_LOCK_commit=3, key_LOCK_commit_queue=4, key_LOCK_done=5, key_LOCK_flush_queue=6,
      key_LOCK_log=8, key_LOCK_binlog_end_pos=9, key_LOCK_sync=10, key_LOCK_sync_queue=11, key_LOCK_xids=12, key_COND_done=4, key_update_cond=5, key_prep_xids_cond=6,
      key_file_log=2, key_file_log_index=4, key_file_log_cache=3, key_file_log_index_cache=5) at /mysqldata/percona-server-locks-detail-5.7.22/sql/binlog.h:539
  #1  0x0000000000edcee4 in init_common_variables () at /mysqldata/percona-server-locks-detail-5.7.22/sql/mysqld.cc:2974
  #2  0x0000000000ee117f in mysqld_main (argc=82, argv=0x2f26738) at /mysqldata/percona-server-locks-detail-5.7.22/sql/mysqld.cc:4938
  #3  0x0000000000ed8504 in main (argc=4, argv=0x7fffffffe3f8) at /mysqldata/percona-server-locks-detail-5.7.22/sql/main.cc:25
  建立條件變量
  Breakpoint 3, Stage_manager::init (this=0x2e84858, key_LOCK_flush_queue=6, key_LOCK_sync_queue=11, key_LOCK_commit_queue=4, key_LOCK_done=5, key_COND_done=4)
      at /mysqldata/percona-server-locks-detail-5.7.22/sql/binlog.h:156
  156         mysql_mutex_init(key_LOCK_done, &m_lock_done, MY_MUTEX_INIT_FAST);
  (gdb) bt
  #0  Stage_manager::init (this=0x2e84858, key_LOCK_flush_queue=6, key_LOCK_sync_queue=11, key_LOCK_commit_queue=4, key_LOCK_done=5, key_COND_done=4)
      at /mysqldata/percona-server-locks-detail-5.7.22/sql/binlog.h:156
  #1  0x000000000187cbea in MYSQL_BIN_LOG::init_pthread_objects (this=0x2e83640) at /mysqldata/percona-server-locks-detail-5.7.22/sql/binlog.cc:3601
  #2  0x0000000000edcef3 in init_common_variables () at /mysqldata/percona-server-locks-detail-5.7.22/sql/mysqld.cc:2983
  #3  0x0000000000ee117f in mysqld_main (argc=82, argv=0x2f26738) at /mysqldata/percona-server-locks-detail-5.7.22/sql/mysqld.cc:4938
  #4  0x0000000000ed8504 in main (argc=4, argv=0x7fffffffe3f8) at /mysqldata/percona-server-locks-detail-5.7.22/sql/main.cc:25

(編輯:武林網)

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 久治县| 五常市| 西宁市| 巴塘县| 垦利县| 肥城市| 宝清县| 安顺市| 宁夏| 桐柏县| 吉木乃县| 习水县| 平谷区| 凤山市| 永登县| 南江县| 上虞市| 海原县| 周口市| 林甸县| 鲁山县| 洛浦县| 特克斯县| 宁波市| 泸州市| 正蓝旗| 芜湖市| 双辽市| 吴江市| 应城市| 锡林浩特市| 阜平县| 新河县| 鄄城县| 海宁市| 黑水县| 娄底市| 斗六市| 永德县| 黄陵县| 永寿县|