А зачем на каждый getTable делать загрузку с диска? К тому же, эта загрузка делается под блокировкой providerController, а в существующей таблицы своя блокировка. Т.е. они могут обращаться к файловой системе параллельно, что чревато ошибками.