defaultLanguage of Document is different in DataModel View, MySQL View and Solr View

XWiki-10.11.11

defaultLanguage = zh in MySQL view,
defaultLanguage = zh in Solr view,
defaultLanguage = zh_CN in DataModel.

Is there any bug?

MySQL:

mysql> select XWD_ID, XWD_DEFAULT_LANGUAGE, XWD_LANGUAGE from xwikidoc where XWD_TITLE="搜索中台";
+----------------------+----------------------+--------------+
| XWD_ID               | XWD_DEFAULT_LANGUAGE | XWD_LANGUAGE |
+----------------------+----------------------+--------------+
| -5536078120845629456 | zh                   |              |
+----------------------+----------------------+--------------+

Solr:

  {
    "id":"xwiki:SearchDev.SearchMiddleEnd.WebHome_zh",
    "hidden":false,
    "wiki":"xwiki",
    "name":"WebHome",
    "space":"SearchDev.SearchMiddleEnd",
    "spaces":["SearchDev",
      "SearchMiddleEnd"],
    "locale":"zh",
    "language":"zh",
    "type":"DOCUMENT",
    "fullname":"SearchDev.SearchMiddleEnd.WebHome",
    "title_zh":["搜索中台"],
    "title_":"搜索中台",
    ....
    "version":"36.1",
    "doclocale":"",
    "locales":["",
      "zh_CN",
      "zh",
      "en"],
    "lang":["",
      "zh_CN",
      "zh",
      "en"],
    "creationdate":"2019-05-23T08:42:35Z",
    "date":"2020-02-26T10:37:47Z",
    "_version_":1659595361637892096,
    "score":15.667223}]
  }

DataModel:

#set($allDocsHQL = "where (doc.title = '搜索中台' )")
#foreach($oneDoc in $services.query.hql($allDocsHQL).setWiki("$wiki").execute())
  #set($langDocument = $xwiki.getDocument("$wiki:$emptyDoc").getDocument())
  language=$langDocument.language, defaultLanguage=$langDocument.defaultLanguage 
#end

get result: defaultLanguage == zh_CN

where is $emptyDoc defined? You’re iterating using $oneDoc.

Sorry, I made a mistake while shorting the code.

It should be:

#foreach($oneDoc in $services.query.hql($allDocsHQL).setWiki("$wiki").execute())
#set($langDocument = $xwiki.getDocument("$wiki:$oneDoc").getDocument())

But problem still exist.