Bug #20417397 MYSQL SHOW ENGINE INNODB STATUS SHOWING NEGATIVE

RESERVATION AND SIGNAL COUNT

Problem:
	Reservation and Signal count value shows negative value for show engine
innodb statement.

Solution:
	This is happening due to counter overflow error. Reservation and Signal
count values are defined as unsigned long but these variables are converted to
long while printing it. Change Reservation and Signal count values as unsigned
long datatype while printing it.

Reviewed-by: Marko Mäkelä <marko.makela@oracle.com>
Approved in bug page.
This commit is contained in:
Thirunarayanan Balathandayuthapani 2015-03-11 15:17:35 +05:30
parent 54d23eceb7
commit 48869fceba

View File

@ -1,6 +1,6 @@
/*****************************************************************************
Copyright (c) 1995, 2011, Oracle and/or its affiliates. All Rights Reserved.
Copyright (c) 1995, 2015, Oracle and/or its affiliates. All Rights Reserved.
Copyright (c) 2008, Google Inc.
Portions of this file contain modifications contributed and copyrighted by
@ -1027,8 +1027,9 @@ sync_array_output_info(
ulint i;
fprintf(file,
"OS WAIT ARRAY INFO: reservation count %ld, signal count %ld\n",
(long) arr->res_count, (long) arr->sg_count);
"OS WAIT ARRAY INFO: reservation count " ULINTPF
", signal count " ULINTPF "\n",
arr->res_count, arr->sg_count);
i = 0;
count = 0;