Symptoms
VPS-related task fails like below:
Task ID 26037817
Task name Migrate VPS (host_id: 101) from HN (host_id: 100) to HN (host_id: 102)
Task description Task that performs VPS migration
Parent task ID 153
Queue name vps_operations_101
Method name taskVPSMigration
Execution status Failed
Start not earlier than Dec-04-2014 16:28
Finished Dec-04-2014 17:50
Output
'ERROR: invalid byte sequence for encoding "UTF8": 0xe78427;
Error while executing the query' while ' UPDATE vps_operations SET state = ? , error = ? , completed = ? WHERE op_id = ?'
On the Virtuozzo servers a hieroglyphical(Japanese, for example) locale is used.
Cause
During the operation OA tries to grab the whole output of vzmigrate
command on the source server and insert it into vps_operations
table, error
column. However, the column size limit is only 1024 chars, so the whole output could not fit into it.
Here's where the Japanese locale had effect: each hieroglyph is a UTF-8 symbol, encoded with 3 hexadecimal characters, and each one in particular is recognized successfully by the posgresql engine. However, when the message hits the limit of 1024 chars, it tears one symbol apart and leaves only 2 chars out of 3 required, so it cannot be interpreted correctly by postgres as a UTF8 symbol.
Resolution
It is necessary to increase the size limit for the error
column of the vps_operations
table. Please contact Odin technical support to request assistance in this task.