I am switching from using SQLite3 to PostgreSQL, and hoped that I could populate the database using the fixtures I had been using to populate SQLite3. However, I am getting these errors:
$ python manage.py loaddata fixtures/core.json fixtures/auth.json
Installing json fixture 'fixtures/core' from absolute path.
Problem installing fixture 'fixtures/core.json': Traceback (most recent call last):
File "/home/mvid/webapps/nihl/nihlapp/django/core/management/commands/loaddata.py", line 153, in handle
obj.save()
File "/home/mvid/webapps/nihl/nihlapp/django/core/serializers/base.py", line 163, in save
models.Model.save_base(self.object, raw=True)
File "/home/mvid/webapps/nihl/nihlapp/django/db/models/base.py", line 495, in save_base
result = manager._insert(values, return_id=update_pk)
File "/home/mvid/webapps/nihl/nihlapp/django/db/models/manager.py", line 177, in _insert
return insert_query(self.model, values, **kwargs)
File "/home/mvid/webapps/nihl/nihlapp/django/db/models/query.py", line 1087, in insert_query
return query.execute_sql(return_id)
File "/home/mvid/webapps/nihl/nihlapp/django/db/models/sql/subqueries.py", line 320, in execute_sql
cursor = super(InsertQuery, self).execute_sql(None)
File "/home/mvid/webapps/nihl/nihlapp/django/db/models/sql/query.py", line 2369, in execute_sql
cursor.execute(sql, params)
File "/home/mvid/webapps/nihl/nihlapp/django/db/backends/util.py", line 19, in execute
return self.cursor.execute(sql, params)
DataError: value too long for type character varying(30)
I never used to get any data length errors, and I have not changed the models between database switches. PostgreSQL is running utf8. Is there a way to see exactly which json values it fails on so that I can update the respective models? Any idea as to why the values worked in SQLite but fail in PostgreSQL?