簡體   English   中英

插入 Solr 后“int”值發生變化

[英]"int" value changes after inserting in Solr

我將 solr 架構定義為:

<schema name="mysolrcore_01" version="1.6">

    <fieldType name="string" class="solr.StrField" />
    <fieldType name="text" class="solr.TextField" />

    <fieldType name="long" class="solr.LongPointField" />
    <fieldType name="int" class="solr.IntPointField" />

    <uniqueKey>id</uniqueKey>
    <uniqueKey>item_key</uniqueKey>
    <field name="_version_" type="long" indexed="true" stored="true" multiValued="false" />
    <field name="_root_" type="string" indexed="true" stored="false" />
    <field name="id" type="string" indexed="true" stored="true" required="false" multiValued="false" />
    <field name="sqlid" type="int" indexed="true" stored="true" required="true" multiValued="false" />
    <field name="mongoid" type="string" indexed="true" stored="true" required="true" multiValued="false" />
    <field name="item_lang" type="string" indexed="false" stored="true" required="true" multiValued="false" />
    <!-- Field "published" to be noted. I intend to store an UNIX timestamp here. -->
    <field name="published" type="int" indexed="true" stored="true" required="true" multiValued="false" />
    <field name="item_key" type="string" indexed="true" stored="true" required="true" />
    <field name="content_en" type="text" indexed="true" stored="false" />

</schema>

一切正常,直到我嘗試插入此文檔:

{
   "sqlid":99,
   "mongoid":"63c69aa7dc7c000062000267",
   "item_key":"inferno",
   "item_lang":"en",
   "published":-2347142400
   "content_en":"Some content",
}

但這是 solr 實際插入的內容(請注意,“已發布”字段填充的是 1947824896 而不是 -2347142400):

{
        "sqlid":99,
        "mongoid":"63c69aa7dc7c000062000267",
        "item_key":"inferno",
        "item_lang":"en",
        "published":1947824896,
        "id":"b818cfe9-f84a-4c08-a9c0-cea988b0c437",
        "_version_":1755274390346399744
}

以前插入了兩個包含正面和負面條目的文檔published 在這種情況下出了什么問題?

感謝您的閱讀和思考。

根據 qna 為什么值在 Apache solr 中發生了變化? 以及對這個 qna 的評論,如果你需要存儲一個大的 integer,請改用long

這個 qna 解釋了這一點: 為什么浮點數不准確?

所以我將類型從int更改為long ,它正在工作。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM