anlek/mongify

String not valid UTF-8

Opened this issue · 7 comments

Even if add encoding "utf8" still facing same problem:
Here is my database.config file
sql_connection do
adapter "mysql2"
host "localhost"
username ""
password ""
database "
*****"
encoding "utf8"
end

mongodb_connection do
host "localhost"
database "*****"
encondig utf8
end

root@Database-server:~# mongify process database.config database_translation.rb
Copying actor (1/1): (200/200) 100% |ooooo| Time: 00:00:00
Copying actor_info (1/1): (200/200) 100% |ooooo| Time: 00:00:00
/var/lib/gems/2.3.0/gems/bson-1.12.5/lib/bson/bson_c.rb:20:in serialize': String not valid UTF-8 (BSON::InvalidStringEncoding) from /var/lib/gems/2.3.0/gems/bson-1.12.5/lib/bson/bson_c.rb:20:in serialize'
from /var/lib/gems/2.3.0/gems/mongo-1.12.5/lib/mongo/collection_writer.rb:65:in block in batch_write_incremental' from /var/lib/gems/2.3.0/gems/mongo-1.12.5/lib/mongo/collection_writer.rb:57:in catch'
from /var/lib/gems/2.3.0/gems/mongo-1.12.5/lib/mongo/collection_writer.rb:57:in batch_write_incremental' from /var/lib/gems/2.3.0/gems/mongo-1.12.5/lib/mongo/collection.rb:1184:in batch_write'
from /var/lib/gems/2.3.0/gems/mongo-1.12.5/lib/mongo/collection.rb:411:in insert' from /var/lib/gems/2.3.0/gems/mongify-1.3.2/lib/mongify/database/no_sql_connection.rb:101:in insert_into'
from /var/lib/gems/2.3.0/gems/mongify-1.3.2/lib/mongify/translation/process.rb:36:in block (2 levels) in copy_data' from /var/lib/gems/2.3.0/gems/mongify-1.3.2/lib/mongify/database/sql_connection.rb:86:in block in select_rows'
from /var/lib/gems/2.3.0/gems/activesupport-4.2.10/lib/active_support/core_ext/range/each.rb:7:in each' from /var/lib/gems/2.3.0/gems/activesupport-4.2.10/lib/active_support/core_ext/range/each.rb:7:in each_with_time_with_zone'
from /var/lib/gems/2.3.0/gems/mongify-1.3.2/lib/mongify/database/sql_connection.rb:84:in select_rows' from /var/lib/gems/2.3.0/gems/mongify-1.3.2/lib/mongify/translation/process.rb:29:in block in copy_data'
from /var/lib/gems/2.3.0/gems/mongify-1.3.2/lib/mongify/translation/process.rb:28:in each' from /var/lib/gems/2.3.0/gems/mongify-1.3.2/lib/mongify/translation/process.rb:28:in copy_data'
from /var/lib/gems/2.3.0/gems/mongify-1.3.2/lib/mongify/translation/process.rb:14:in process' from /var/lib/gems/2.3.0/gems/mongify-1.3.2/lib/mongify/cli/command/worker.rb:72:in execute'
from /var/lib/gems/2.3.0/gems/mongify-1.3.2/lib/mongify/cli/application.rb:28:in execute!' from /var/lib/gems/2.3.0/gems/mongify-1.3.2/bin/mongify:17:in <top (required)>'
from /usr/local/bin/mongify:23:in load' from /usr/local/bin/mongify:23:in

'

Hi. Is your mongoDB connection encoding a typo?

Could you explain me? I don't understanding about enconding typo?You want me to give you some specific data?

anlek commented

I believe it's supposed to be utf-8 instead of utf8. (Missing the dash)

Here is my database.config file
sql_connection do
adapter "mysql2"
host "localhost"
username ""
password ""
database "*****"
encoding "utf-8"
end

mongodb_connection do
host "localhost"
database "*****"
encondig utf-8
end

Hi, it's not supported with "utf-8".

mongify check database.config /var/lib/gems/2.3.0/gems/mysql2-0.4.10/lib/mysql2/client.rb:47:in charset_name=': Unsupported charset: '"utf-8"' (Mysql2::Error) from /var/lib/gems/2.3.0/gems/mysql2-0.4.10/lib/mysql2/client.rb:47:in initialize'

I change adpater for mysql and mysql2 and both are compatible only with utf8.

anlek commented

My bad.

Any help?

Addtional in sql_connection
encoding "utf8"