[Maria-discuss] R: Are some MyISAM settings used for Aria
Steve, aria_used_for_temp_tables only affects internally created temporary tables, not the temp tables created explicitly by applications. So I suggest: * check if your applications create MyISAM (temporary) tables * use the slow log (long_query_time=0, min_examine_rows=0) and pt-query-digest to check which queries are slower when you comment those settings Federico -------------------------------------------- Dom 23/4/17, Sales <info@smallbusinessconsultingexperts.com> ha scritto: Oggetto: [Maria-discuss] Are some MyISAM settings used for Aria A: maria-discuss@lists.launchpad.net Data: Domenica 23 Aprile 2017, 19:32 On our system, Mariadb 10.1.22, with aria_used_for_temp_tables = ON, we have a set of MyISAM settings carried over from an earlier setup. Those settings are: key_buffer_size=256M myisam_sort_buffer_size = 64M join_buffer_size=512K bulk_insert_buffer_size=512M read_rnd_buffer_size = 1M Looking in the information_schema, we have one entire schema of tables still using MyISAM (third party system), and, this schema is not used in any daily processing. The only other MyISAM tables are in the mysql schema. So, nothing else, not one table. The way I understand aria, it should be used instead of MyISAM even for tmp tables given our settings. We have a long running set of programs that do things over night to manage products, many millions of them, ends up processing at least 50 million rows of various tables, thousands of mysql statements. This process has no MyISAM as noted. When I disable the settings above for MyISAM, a significant runtime increase is noted, I’ve repeated this 5 times now over a few week period. The increase is 20%, pretty significant, and that 20% never occurs when not changing settings. So, it would seem unlikely that I am just that unlucky. I am curious as to why those settings for MyISAM would have an impact? There are certainly tmp tables in the process (or internally created tmp tables) and the rest is innodb. Any good potential reason I am missing? I have not really looked into aria much before, read most of the mariadb doc. Maybe I missed something key, it appears likely I did! We have the following somewhat corresponding aria settings: aria_pagecache_buffer_size = 256M aria_sort_buffer_size = 256M Steve _______________________________________________ Mailing list: https://launchpad.net/~maria-discuss Post to : maria-discuss@lists.launchpad.net Unsubscribe : https://launchpad.net/~maria-discuss More help : https://help.launchpad.net/ListHelp
On Apr 23, 2017, at 3:00 PM, Federico Razzoli <federico_raz@yahoo.it> wrote:
Steve,
aria_used_for_temp_tables only affects internally created temporary tables, not the temp tables created explicitly by applications. So I suggest: * check if your applications create MyISAM (temporary) tables * use the slow log (long_query_time=0, min_examine_rows=0) and pt-query-digest to check which queries are slower when you comment those settings
Federico
Yes, the default engine for tables is innodb as evidenced by default_storage_engine, so, those are not using MyISAM. The default_tmp_storage_engine defaults to nothing, so, according to the doc, this means it uses default_storage_engine, which means innodb again. I was merely pointing out that all temp tables are not using MyISAM, or at least should not be. Have used the slow query log and Percona toolkit with various length settings and did not give much benefit sadly. It showed some queries running longer, but, that did not help too much as far as why since the queries were using optimal query paths. We have many long running queries and that’s fine as these are calculations and mass imports from suppliers, pricing, etc. We’ve just been unable to make sense of the why of it. A second potential hint is mariadb 10.1 has performed slower than mariadb 5.5 on the same machine, and thus far, we’ve been unable to isolate why. It’s not slower by a lot, maybe 5%. The word MyISAM does not exist anywhere in our code. Simple grep -ri shows this. It’s puzzling to me. Kind of makes me want to explicitly set default_tmp_storage_engine just to see if any effect. I am just checking if anything might still use MyISAM despite these settings. It’s not a big deal as the settings don’t use a tremendous amount of memory by any means, but, was hoping to just size MyISAM all the way down. And then became curious as to why this might be. Thanks!
Yes, the default engine for tables is innodb as evidenced by default_storage_engine, so, those are not using MyISAM. The default_tmp_storage_engine defaults to nothing, so, according to the doc, this means it uses default_storage_engine, which means innodb again
according to *which* documentation? https://mariadb.com/kb/en/mariadb/aria-system-variables/#aria_used_for_temp_...
On Apr 23, 2017, at 5:06 PM, Reindl Harald <h.reindl@thelounge.net> wrote:
Yes, the default engine for tables is innodb as evidenced by default_storage_engine, so, those are not using MyISAM. The default_tmp_storage_engine defaults to nothing, so, according to the doc, this means it uses default_storage_engine, which means innodb again
according to *which* documentation?
https://mariadb.com/kb/en/mariadb/server-system-variables/#default_tmp_stora...
participants (3)
-
Federico Razzoli
-
Reindl Harald
-
Sales