CouchDB排序-排序规范

CouchDB排序-排序规范,couchdb,Couchdb,整理规范 使用CouchDB视图,我的密钥似乎没有按照排序规则规范进行排序 rows: [0] key: ["bylatest", -1294536544000] value: 1 [1] key: ["bylatest", -1298817134000] value: 1 [2] key: ["bylatest", -1294505612000] value: 1 我当然希望第二个条目出现在第三个条目之后 为什么会这样 对于发出您指示的值的视图,我得到了这

整理规范

使用CouchDB视图,我的密钥似乎没有按照排序规则规范进行排序

rows:
   [0] key: ["bylatest", -1294536544000] value: 1         
   [1] key: ["bylatest", -1298817134000] value: 1
   [2] key: ["bylatest", -1294505612000] value: 1
我当然希望第二个条目出现在第三个条目之后


为什么会这样

对于发出您指示的值的视图,我得到了这个结果

{"total_rows":3,"offset":0,"rows":[
{"id":"29e86c6bf38b9068c56ab1cd0100101f","key":["bylatest",-1298817134000],"value":1},
{"id":"29e86c6bf38b9068c56ab1cd0100101f","key":["bylatest",-1294536544000],"value":1},
{"id":"29e86c6bf38b9068c56ab1cd0100101f","key":["bylatest",-1294505612000],"value":1}
]}
这些行与您的两个示例都不同。它们符合排序规则规范,以最小值(最大值为负值)开始,以最大值(本例中为最小值为负值)结束


您是否可以包括您正在使用的文档和映射/缩减函数?

我得到的结果是一个视图发出您所指示的值

{"total_rows":3,"offset":0,"rows":[
{"id":"29e86c6bf38b9068c56ab1cd0100101f","key":["bylatest",-1298817134000],"value":1},
{"id":"29e86c6bf38b9068c56ab1cd0100101f","key":["bylatest",-1294536544000],"value":1},
{"id":"29e86c6bf38b9068c56ab1cd0100101f","key":["bylatest",-1294505612000],"value":1}
]}
这些行与您的两个示例都不同。它们符合排序规则规范,以最小值(最大值为负值)开始,以最大值(本例中为最小值为负值)结束


您是否可以包括您正在使用的文档和映射/减少函数?

CouchDB团队已确认此错误似乎会影响大数值排序,因为/1000工作正常。好的,继续工作。。这个bug似乎在enif_compare中,它是Erlang本身的一部分。我们正在等待OTP团队的确认。短期修复方法是禁用ejson。我还要注意的是,这个问题只影响trunk,而不是任何正式的CouchDB版本。CouchDB团队已经承认,这个错误似乎影响了big num排序,因为/1000工作正常。好的,继续工作。。这个bug似乎在enif_compare中,它是Erlang本身的一部分。我们正在等待OTP团队的确认。短期修复方法是禁用ejson。我还要注意,这个问题只影响trunk,而不是任何官方的CouchDB版本。这只在trunk上被破坏(ejson是新的)。这只在trunk上被破坏(ejson是新的)。