30 days free. No credit card. Full access from the moment you connect your site.

Start free trial

List MyISAM Tables

litespeed/list-myisam-tables reports which database tables still use the MyISAM storage engine rather than InnoDB.

It reports. database/convert-core-tables-to-innodb performs the conversion.

At a glance

Abilitylitespeed/list-myisam-tables
ToolsetLiteSpeed Cache — toolset/litespeed
GroupLiteSpeed Cache › Database Health
RequiresLiteSpeed Cache, active on the site
Capabilitymanage_options
SafetyRead-only — changes nothing
RepeatableIdempotent — running it twice leaves the same result
Ships inAcrossAI Abilities Manager 0.0.34 and later

How it works

MyISAM locks the entire table on a write. While one request updates a row, every other request that needs that table waits — not for the row, for the table.

On a quiet site nothing notices. On a busy one it produces a characteristic failure: the site is fine until a threshold, then requests pile up behind each other and response times go vertical. It looks like a resource problem and is not.

InnoDB locks rows instead, which removes the pile-up entirely. Every core WordPress table has defaulted to InnoDB for many years, so a MyISAM table is almost always a legacy of an old migration or a plugin that specified the engine explicitly.

The conversion is a separate, more consequential operation and lives in the database abilities. This is the call that tells you whether it is needed and on what.

Input

This ability takes no input.

What comes back

NameTypeWhat it is
tablesarrayThe tables still using MyISAM, with their sizes.
countintegerHow many there are.
successbooleanWhether the call completed.
messagestringA one-line summary of what happened, suitable for showing a human.
error_codestringPresent only on failure — a stable machine-readable reason, such as a missing field, a wrong field type or an unmet confirmation.

Example

Ask your assistant:

Do we have any MyISAM tables left?

It resolves to one call:

{
  "ability": "litespeed/list-myisam-tables",
  "parameters": {}
}

Worth knowing

  • MyISAM locks whole tables; InnoDB locks rows. Under load that is the whole difference.
  • A MyISAM table today is usually a legacy of an old migration.
  • This reports only. The conversion is a database ability.
  • Back up before converting anything.

Related abilities


Get the plugins:
AcrossAI Abilities Manager · AcrossAI MCP Manager

Browse the rest: Every ability, by category


Keep reading