Hm, one more note on this. There was one character in the middle of that block that originally didn't print. It's the "\x81\xa7" towards the end of the text, which rendered as: ��.
In my copy-paste above, I replaced it with UTF-16 81a7: 膧 (http://www.mclean.net.nz/ucf/?c=U+81A7), but it was the one glyph in the block that Google Translate didn't recognize as Japanese. Instead, Google said it was Chinese. Perhaps this glyph had something to do with the issue? I wonder if it's meant to be the Hiragana で, which is UTF-8 E3 81 A7, i.e. "\xe3\x81\xa7", and the "\xe3" was left out as a typo. Cheers, Aaron -- You received this bug notification because you are a member of Mahara Contributors, which is subscribed to Mahara. Matching subscriptions: Subscription for all Mahara Contributors -- please ask on #mahara-dev or mahara.org forum before editing or unsubscribing it! https://bugs.launchpad.net/bugs/1613392 Title: PostgreSQL insert error into site_content with multibyte language packs. Status in Mahara: Incomplete Bug description: When we try to add a new institution using Japanese language menu, we have an error message "Mahara: Site unavailable A nonrecoverable error occurred. This probably means you have encountered a bug in the system" and can't add the institution. And Apache error log says as below: [error] [client xxx.xxx.xxx.xxx] [WAR] 18 (lib/errors.php:820) HINT: This error can also happen if the byte sequence does not match the encoding expected by the server, which is controlled by "client_encoding".] in adodb_throw(INSERT INTO "site_content" ("name", "content", "ctime", "mtime", "institution") VALUES (?, ?, ?, ?, ?), home,<h1>Mahara\xe3\x81\xab\xe3\x82\x88\xe3\x81\x86\xe3\x81\x93\xe3\x81\x9d</h1><p>[<b>\xe3\x81\x82\xe3\x81\xaa\xe3\x81\x9f\xe3\x81\xae\xe7\xb5\x84\xe7\xb9\x94\xe5\x90\x8d</b>]\xe3\x81\xaf\xe3\x82\xaa\xe3\x83\xb3\xe3\x83\xa9\xe3\x82\xa4\xe3\x83\xb3\xe3\x82\xb3\xe3\x83\x9f\xe3\x83\xa5\xe3\x83\x8b\xe3\x83\x86\xe3\x82\xa3\xe3\x82\x92\xe6\xa7\x8b\xe7\xaf\x89\xe3\x81\x99\xe3\x82\x8b\xe3\x81\x9f\xe3\x82\x81\xe3\x81\xae\xe5\x8d\x81\xe5\x88\x86\xe3\x81\xaa\xe6\xa9\x9f\xe8\x83\xbd\xe3\x82\x92\xe6\x9c\x89\xe3\x81\x99\xe3\x82\x8b\xe3\x82\xa4\xe3\x83\xb3\xe3\x82\xbf\xe3\x83\xbc\xe3\x83\x8d\xe3\x83\x83\xe3\x83\x88\xe4\xb8\x8a\xe3\x81\xae\xe3\x83\x9d\xe3\x83\xbc\xe3\x83\x88\xe3\x83\x95\xe3\x82\xa9\xe3\x83\xaa\xe3\x82\xaa\xe3\x82\xb7\xe3\x82\xb9\xe3\x83\x86\xe3\x83\xa0\xe3\x81\xa7\xe3\x81\x99\xe3\x80\x82</p><p>Mahara\xe3\x81\xab\xe9\x96\xa2\xe3\x81\x99\xe3\x82\x8b\xe8\xa9\xb3\xe7\xb4\xb0\xe3\x81\xaf<ahref="about.php">About</a>[\xe3\x81\x93\xe3\x81\xae\xe3\x83\x9a\xe3\x83\xbc\xe3\x82\xb8\xe3\x82\x92\xe5\xbf\x98\xe3\x82\x8c\xe3\x81\x9a\xe3\x81\xab\xe7\xb7\xa8\xe9\x9b\x86\xe3\x81\x97\xe3\x81\xa6\xe3\x81\x8f\xe3\x81\xa0\xe3\x81\x95\xe3\x81\x84]\xe3\x82\x92\xe3\x81\x8a\xe8\xaa\xad\xe3\x81\xbf\xe3\x81\x8f\xe3\x81\xa0\xe3\x81\x95\xe3\x81\x84\xe3\x80\x82\xe3\x81\xbe\xe3\x81\x9f\xe3\x80\x81\xe7\xa7\x81\xe3\x81\x9f\xe3\x81\xa1\xe3\x81\xab<ahref="contact.php">\xe3\x81\x8a\xe6\xb0\x97\xe8\xbb\xbd\xe3\x81\xab\xe3\x81\x8a\xe5\x95\x8f\xe3\x81\x84\xe5\x90\x88\xe3\x82\x8f\xe3\x81\x9b\xe3\x81\x8f\xe3\x81\xa0\xe3\x81\x95\xe3\x81\x84</a>\xe3\x80\x82</p><p>\xe3\x81\x82\xe3\x81\xaa\xe3\x81\x9f\xe3\x81\xaf\xe3\x81\x93\xe3\x81\xae\xe3\x83\x86\xe3\x82\xad\xe3\x82\xb9\xe3\x83\x88\xe3\x82\x92\x81\xa7\xe7\xb7\xa8\xe9\x9b\x86\xe3\x81\x99\xe3\x82\x8b\xe3\x81\x93\xe3\x81\xa8\xe3\x81\x8c\xe3\x81\xa7\xe3\x81\x8d\xe3\x81\xbe\xe3\x81\x99\xe3\x80\x82</p>,2016-08-1512:50:39,2016-08-1512:50:39,inst), referer: https://mahara.xxxxx.com/admin/users/institutions.php To avoid this error, I would like to recommend to modify lib/dml.php as below. File: lib/dml.php Line: 1061 [ Before ] // Pull out data matching these fields $ddd = array(); foreach ($columns as $column) { if (isset($data[$column->name])) { if ($column->name == $primarykey && empty($setfromseq)) { continue; } $ddd[$column->name] = $data[$column->name]; } } [ After ] // Pull out data matching these fields $ddd = array(); foreach ($columns as $column) { if (isset($data[$column->name])) { if ($column->name == $primarykey && empty($setfromseq)) { continue; } if (function_exists('mb_convert_encoding')) { $ddd[$column->name] = mb_convert_encoding($data[$column->name], "UTF-8", "auto"); } else { $ddd[$column->name] = $data[$column->name]; } } } To manage notifications about this bug go to: https://bugs.launchpad.net/mahara/+bug/1613392/+subscriptions _______________________________________________ Mailing list: https://launchpad.net/~mahara-contributors Post to : mahara-contributors@lists.launchpad.net Unsubscribe : https://launchpad.net/~mahara-contributors More help : https://help.launchpad.net/ListHelp