 c447e5cf15
			
		
	
	c447e5cf15
	
	
	
		
			
			See script directory for method. The script to run in the top level MaxScale directory is called maxscale-uncrustify.sh, which uses another script, list-src, from the same directory (so you need to set your PATH). The uncrustify version was 0.66.
		
			
				
	
	
		
			106 lines
		
	
	
		
			3.0 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
			
		
		
	
	
			106 lines
		
	
	
		
			3.0 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
| #include "testconnections.h"
 | |
| 
 | |
| /**
 | |
|  *  Reads COM_SELECT and COM_INSERT variables from all nodes and stores into 'selects' and 'inserts'
 | |
|  */
 | |
| int get_global_status_allnodes(long int* selects, long int* inserts, Mariadb_nodes* nodes, int silent)
 | |
| {
 | |
|     int i;
 | |
|     MYSQL_RES* res;
 | |
|     MYSQL_ROW row;
 | |
| 
 | |
|     for (i = 0; i < nodes->N; i++)
 | |
|     {
 | |
|         if (nodes->nodes[i] != NULL)
 | |
|         {
 | |
| 
 | |
|             if (mysql_query(nodes->nodes[i], "show global status like 'COM_SELECT';") != 0)
 | |
|             {
 | |
|                 printf("Error: can't execute SQL-query\n");
 | |
|                 printf("%s\n", mysql_error(nodes->nodes[i]));
 | |
|                 return 1;
 | |
|             }
 | |
| 
 | |
|             res = mysql_store_result(nodes->nodes[i]);
 | |
|             if (res == NULL)
 | |
|             {
 | |
|                 printf("Error: can't get the result description\n");
 | |
|                 return 1;
 | |
|             }
 | |
| 
 | |
|             if (mysql_num_rows(res) > 0)
 | |
|             {
 | |
|                 while ((row = mysql_fetch_row(res)) != NULL)
 | |
|                 {
 | |
|                     if (silent == 0)
 | |
|                     {
 | |
|                         printf("Node %d COM_SELECT=%s\n", i, row[1]);
 | |
|                     }
 | |
|                     sscanf(row[1], "%ld", &selects[i]);
 | |
|                 }
 | |
|             }
 | |
| 
 | |
|             mysql_free_result(res);
 | |
|             while (mysql_next_result(nodes->nodes[i]) == 0)
 | |
|             {
 | |
|                 res = mysql_store_result(nodes->nodes[i]);
 | |
|                 mysql_free_result(res);
 | |
|             }
 | |
| 
 | |
|             if (mysql_query(nodes->nodes[i], "show global status like 'COM_INSERT';") != 0)
 | |
|             {
 | |
|                 printf("Error: can't execute SQL-query\n");
 | |
|             }
 | |
| 
 | |
|             res = mysql_store_result(nodes->nodes[i]);
 | |
|             if (res == NULL)
 | |
|             {
 | |
|                 printf("Error: can't get the result description\n");
 | |
|             }
 | |
| 
 | |
|             if (mysql_num_rows(res) > 0)
 | |
|             {
 | |
|                 while ((row = mysql_fetch_row(res)) != NULL)
 | |
|                 {
 | |
|                     if (silent == 0)
 | |
|                     {
 | |
|                         printf("Node %d COM_INSERT=%s\n", i, row[1]);
 | |
|                     }
 | |
|                     sscanf(row[1], "%ld", &inserts[i]);
 | |
|                 }
 | |
|             }
 | |
| 
 | |
|             mysql_free_result(res);
 | |
|             while (mysql_next_result(nodes->nodes[i]) == 0)
 | |
|             {
 | |
|                 res = mysql_store_result(nodes->nodes[i]);
 | |
|                 mysql_free_result(res);
 | |
|             }
 | |
|         }
 | |
|         else
 | |
|         {
 | |
|             selects[i] = 0;
 | |
|             inserts[i] = 0;
 | |
|         }
 | |
|     }
 | |
|     return 0;
 | |
| }
 | |
| 
 | |
| /**
 | |
|  *  Prints difference in COM_SELECT and COM_INSERT
 | |
|  */
 | |
| int print_delta(long int* new_selects,
 | |
|                 long int* new_inserts,
 | |
|                 long int* selects,
 | |
|                 long int* inserts,
 | |
|                 int nodes_num)
 | |
| {
 | |
|     int i;
 | |
|     for (i = 0; i < nodes_num; i++)
 | |
|     {
 | |
|         printf("COM_SELECT increase on node %d is %ld\n", i, new_selects[i] - selects[i]);
 | |
|         printf("COM_INSERT increase on node %d is %ld\n", i, new_inserts[i] - inserts[i]);
 | |
|     }
 | |
|     return 0;
 | |
| }
 |