# What does Handler\_commit counter mean?

**URL:** <https://forums.percona.com/t/what-does-handler-commit-counter-mean/1373>\
**Category:** Other MySQL® Questions\
**Created:** [March 26, 2010, 3:28am UTC](https://forums.percona.com/t/what-does-handler-commit-counter-mean/1373 "2010-03-26T03:28:41Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![krteq](https://avatars.discourse-cdn.com/v4/letter/k/c57346/32.png) [@krteq](https://forums.percona.com/u/krteq)\
**Post date:** [March 26, 2010, 3:28am UTC](https://forums.percona.com/t/what-does-handler-commit-counter-mean/1373/1 "2010-03-26T03:28:41Z")

</div>

Does anyone know, what exactly is the Handler\_commit item in SHOW SESSION STATUS and in which occasions is incremented?

I haven’t found any details in mysql manual, it is mentioned very briefly:

| [B]Quote:[/B] |
| The number of internal COMMIT statements. |

For example, this statment increments the counter (innodb table):

SELECT COUNT(\*) FROM `MyTable`;

Thank you, Vojtech

---

<div class="post-metadata">

**Author:** ![xaprb](https://avatars.discourse-cdn.com/v4/letter/x/49beb7/32.png) [@xaprb](https://forums.percona.com/u/xaprb)\
**Post date:** [March 26, 2010, 8:01am UTC](https://forums.percona.com/t/what-does-handler-commit-counter-mean/1373/2 "2010-03-26T08:01:27Z")

</div>

That statement should not increment Handler\_commit. If you examine what is REALLY happening I think you will probably find that whatever you’re using to run that query is running a COMMIT right afterwards.

---

<div class="post-metadata">

**Author:** ![krteq](https://avatars.discourse-cdn.com/v4/letter/k/c57346/32.png) [@krteq](https://forums.percona.com/u/krteq)\
**Post date:** [March 26, 2010, 8:08am UTC](https://forums.percona.com/t/what-does-handler-commit-counter-mean/1373/3 "2010-03-26T08:08:26Z")

</div>

Baron, I’m using new connection:

mysql\> select version();±-------------------+| version() |±-------------------+| 5.1.42-percona-log |±-------------------+1 row in set (0.00 sec)mysql\> use tempDatabase changedmysql\> create table test\_innodb (col int primary key) engine=innodb;Query OK, 0 rows affected (0.05 sec)mysql\> flush status; select count(_) from test\_innodb; show status like ‘Handler\_commit’;Query OK, 0 rows affected (0.00 sec)±---------+| count(_) |±---------+| 0 |±---------+1 row in set (0.01 sec)±---------------±------+| Variable\_name | Value |±---------------±------+| Handler\_commit | 1 |±---------------±------+1 row in set (0.00 sec)

---

<div class="post-metadata">

**Author:** ![xaprb](https://avatars.discourse-cdn.com/v4/letter/x/49beb7/32.png) [@xaprb](https://forums.percona.com/u/xaprb)\
**Post date:** [March 26, 2010, 8:21am UTC](https://forums.percona.com/t/what-does-handler-commit-counter-mean/1373/4 "2010-03-26T08:21:04Z")

</div>

I’m not seeing the same behavior on 5.0, so this might be something that changed in 5.1, or in the plugin version of InnoDB. It could have to do with changes in the storage engine API. I’m not sure what to think about this. It _ought_ to be a no-op anyway, but I’d like to understand this more.

---

<div class="post-metadata">

**Author:** ![krteq](https://avatars.discourse-cdn.com/v4/letter/k/c57346/32.png) [@krteq](https://forums.percona.com/u/krteq)\
**Post date:** [March 26, 2010, 8:26am UTC](https://forums.percona.com/t/what-does-handler-commit-counter-mean/1373/5 "2010-03-26T08:26:25Z")

</div>

You are right, I see zero on 5.0.77-community.

I’ll stay tuned, thank you Baron )

---

<div class="post-metadata">

**Author:** ![xaprb](https://avatars.discourse-cdn.com/v4/letter/x/49beb7/32.png) [@xaprb](https://forums.percona.com/u/xaprb)\
**Post date:** [March 26, 2010, 8:38am UTC](https://forums.percona.com/t/what-does-handler-commit-counter-mean/1373/6 "2010-03-26T08:38:18Z")

</div>

I’ll put it into my TODO list, but don’t hold your breath )
