我的一个服务器最近在尝试使用来自管理.py在
$ python ./manage.py migrate
TypeError: invalid postgreSQL type: bigint
$ python ./manage.py syncdb
TypeError: invalid postgreSQL type: bigint
$ python ./manage.py shell
TypeError: invalid postgreSQL type: bigint
设置:django,postgis,south,ubuntu。在
令人困惑的是,这台服务器最近没有任何变化,另外3台服务器的设置应该是完全相同的,但工作正常。在
我打开了postgres语句日志记录,但没有看到任何明显的错误:
^{pr2}$从设置.py公司名称:
DATABASES = {
'default': {
'ENGINE': 'django.contrib.gis.db.backends.postgis',
'NAME': 'redacted',
'USER': 'redacted',
'PASSWORD':'...',
'HOST': 'localhost',
'PORT': '5432',
}
}
postgres版本:
psql (9.1.9)
Type "help" for help.
redacted=# select version();
version
------------------------------------------------------------------------------------------------------------
PostgreSQL 9.1.9 on x86_64-unknown-linux-gnu, compiled by gcc (Ubuntu/Linaro 4.6.3-1ubuntu5) 4.6.3, 64-bit
(1 row)
redacted=# select postgis_lib_version();
postgis_lib_version
---------------------
2.0.1
(1 row)
Django-1.5.4型
Python 2.7.3
结果发现该bug是由另一个模块djormextpgarray引起的,该模块已在服务器上更新,但在其他服务器上没有更新。我通过greping python模块找到错误消息的原因。在
这是模块中的一个快速修复(1行代码),最初通过添加模块的本地副本,然后通过向模块作者发送拉请求来部署。在
这个故事的寓意是:小心用pip升级模块。在
相关问题 更多 >
编程相关推荐