This morning, this Percona XtraBackup bug came to my attention: https://bugs.launchpad.net/bugs/1170340 - basically, it’s now really quite tricky to determine if a MySQL server you’re connected to supports partitioning or not.
If you’re connected to anything less than MySQL 5.6, you can use have_partitioning variable. But since that’s gone in 5.6, you’re going to get a false negative if you’re connected to 5.6. You could use INFORMATION_SCHEMA.PLUGINS table, but that’s not there in 5.0, so you have some added workarounds to add there too.
A simple version check could be the solution… but what if you compiled the server without partitioning support?