【问题标题】:Silence "unknown OID 17227: failed to recognize type of 'geography'. It will be treated as String."沉默“未知的 OID 17227:无法识别‘地理’的类型。它将被视为字符串。”
【发布时间】:2018-09-25 09:27:06
【问题描述】:

对于一些“多边形内的点”查询,我使用“地理”类型的列。它们太少也太简单,无法捆绑 GIS gem,我在 SQL 级别上处理。

但是,每次 Rails 启动(rake 任务、控制台等)时,都会发出以下警告:

unknown OID 17227: failed to recognize type of 'geography'. It will be treated as String.

我可以将“geography”视为“String”,但每次 cronjob 执行任何 rake 任务时,警告都会触发警告邮件。

知道如何消除此警告吗?

感谢您的提示!

【问题讨论】:

    标签: postgresql ruby-on-rails-5 pg


    【解决方案1】:

    查看ActiveRecord的源码,我可以自己回答问题:

    警告是硬编码的,因此不能通过 AR 配置静音。但是,RUBYOPT=-W0 完全摆脱了警告。这当然是一个大问题,但由于我仍然在本地开发中收到这些警告,所以我可以使用完全没有警告的生产系统。

    【讨论】:

    【解决方案2】:

    鉴于标题是错误,这是出现的第一个问题/答案,我建议按照此答案进行修复:What is the source of "unknown OID" errors in Rails?

    【讨论】:

    • 添加 postgis gem 只是为了使警告静音?不,谢谢。 :-)
    猜你喜欢
    • 1970-01-01
    • 2023-01-29
    • 2022-06-16
    • 1970-01-01
    • 2011-09-12
    • 1970-01-01
    • 2017-02-12
    • 2013-01-25
    相关资源
    最近更新 更多