Skip to main content
1 of 2
Csaba Toth
  • 239
  • 3
  • 9

Why could pgloader fail with 'undocumented reason' while migrating large MySQL database to PostgreSQL?

The database I would like to import is approximately 55GB in binary format, about 36 GB exported by mysqldump. But as we know even the postgres compatible mysqldump is not 100% compatible, so I'm trying pgloader:

pgloader mysql://user:pw@localhost/db181126 postgresql://user:pw@localhost/db181126

The command creates the 330 tables in the PostgreSQL schema, and starts to iterate through. There are warnings because Django generates very long index names which need to be truncated, but that would not be a problem. However at the first really big table the command errors out:

SSL error queue is empty.
2018-11-27T17:49:25.660000Z ERROR A thread failed with error: An I/O error occurred: undocumented reason (return code: 5).
SSL error queue is empty.
2018-11-27T17:49:25.660000Z FATAL An unhandled error condition has been signalled:
   An I/O error occurred: undocumented reason (return code: 5).
SSL error queue is empty.

I don't see issue related to that in https://github.com/dimitri/pgloader/issues . I'm not sure if it's a buffer size or some kind of network timeout due to the size.

My system is Debian Stretch based Devuan ascii, I'm running a 4.18.0 kernel. MySQL version: 5.7.24, PostgreSQL version 9.6.10. I needed to increase buffer sizes for MySQL to be able to handle the import of 36 GB mysqldump.

Csaba Toth
  • 239
  • 3
  • 9