RavenDB ArgumentOutOfRangeException索引创建-版本4.2.102

RavenDB ArgumentOutOfRangeException索引创建-版本4.2.102,exception,ravendb,Exception,Ravendb,我刚刚更新了我的项目依赖项,其中之一就是RavenDB升级。从4.2.101->4.2.102。在此之后,我会因为参数超出范围而引发异常。我的代码库没有任何变化,回滚到版本4.2.101修复了这个问题。我试图找到某种解释来解释为什么会发生这种情况,但我什么也找不到。我希望在座的人能对这个问题有所了解 执行索引时发生异常: Exception thrown: 'Raven.Client.Exceptions.RavenException' in System.Private.CoreLib.dll

我刚刚更新了我的项目依赖项,其中之一就是RavenDB升级。从4.2.101->4.2.102。在此之后,我会因为参数超出范围而引发异常。我的代码库没有任何变化,回滚到版本4.2.101修复了这个问题。我试图找到某种解释来解释为什么会发生这种情况,但我什么也找不到。我希望在座的人能对这个问题有所了解

执行索引时发生异常:

Exception thrown: 'Raven.Client.Exceptions.RavenException' in System.Private.CoreLib.dll
An exception of type 'Raven.Client.Exceptions.RavenException' occurred in System.Private.CoreLib.dll but was not handled in user code
System.ArgumentOutOfRangeException: Specified argument was out of the range of valid values.
Parameter name: column
Actual value was -17.
   at Esprima.Position..ctor(Int32 line, Int32 column)
   at Esprima.ErrorHandler.CreateError(Int32 index, Int32 line, Int32 col, String description)
   at Esprima.JavaScriptParser.UnexpectedTokenError(Token token, String message)
   at Esprima.JavaScriptParser.ThrowUnexpectedToken(Token token, String message)
   at Esprima.JavaScriptParser.IsolateCoverGrammar[T](Func`1 parseFunction)
   at Esprima.JavaScriptParser.ParseNewExpression()
   at Esprima.JavaScriptParser.InheritCoverGrammar[T](Func`1 parseFunction)
   at Esprima.JavaScriptParser.ParseLeftHandSideExpressionAllowCall()
   at Esprima.JavaScriptParser.InheritCoverGrammar[T](Func`1 parseFunction)
   at Esprima.JavaScriptParser.ParseUpdateExpression()
   at Esprima.JavaScriptParser.ParseUnaryExpression()
   at Esprima.JavaScriptParser.InheritCoverGrammar[T](Func`1 parseFunction)
   at Esprima.JavaScriptParser.ParseExponentiationExpression()
   at Esprima.JavaScriptParser.InheritCoverGrammar[T](Func`1 parseFunction)
   at Esprima.JavaScriptParser.ParseBinaryExpression()
   at Esprima.JavaScriptParser.InheritCoverGrammar[T](Func`1 parseFunction)
   at Esprima.JavaScriptParser.ParseConditionalExpression()
   at Esprima.JavaScriptParser.ParseAssignmentExpression()
   at Esprima.JavaScriptParser.IsolateCoverGrammar[T](Func`1 parseFunction)
   at Esprima.JavaScriptParser.ParseAssignmentExpression()
   at Esprima.JavaScriptParser.IsolateCoverGrammar[T](Func`1 parseFunction)
   at Esprima.JavaScriptParser.ParseArguments()
   at Esprima.JavaScriptParser.ParseLeftHandSideExpressionAllowCall()
   at Esprima.JavaScriptParser.InheritCoverGrammar[T](Func`1 parseFunction)
   at Esprima.JavaScriptParser.ParseUpdateExpression()
   at Esprima.JavaScriptParser.ParseUnaryExpression()
   at Esprima.JavaScriptParser.InheritCoverGrammar[T](Func`1 parseFunction)
   at Esprima.JavaScriptParser.ParseExponentiationExpression()
   at Esprima.JavaScriptParser.InheritCoverGrammar[T](Func`1 parseFunction)
   at Esprima.JavaScriptParser.ParseBinaryExpression()
   at Esprima.JavaScriptParser.InheritCoverGrammar[T](Func`1 parseFunction)
   at Esprima.JavaScriptParser.ParseConditionalExpression()
   at Esprima.JavaScriptParser.ParseAssignmentExpression()
   at Esprima.JavaScriptParser.IsolateCoverGrammar[T](Func`1 parseFunction)
   at Esprima.JavaScriptParser.ParseExpression()
   at Esprima.JavaScriptParser.ParseLabelledStatement()
   at Esprima.JavaScriptParser.ParseStatement()
   at Esprima.JavaScriptParser.ParseStatementListItem()
   at Esprima.JavaScriptParser.ParseProgram(Boolean strict)
   at Raven.Server.Documents.Indexes.Static.JavaScriptIndex.ExecuteCodeAndCollectReferencedCollections(String code) in C:\Builds\RavenDB-Stable-4.2\42034\src\Raven.Server\Documents\Indexes\Static\JavaScriptIndex.cs:line 196
   at Raven.Server.Documents.Indexes.Static.JavaScriptIndex.InitializeEngine(IndexDefinition definition) in C:\Builds\RavenDB-Stable-4.2\42034\src\Raven.Server\Documents\Indexes\Static\JavaScriptIndex.cs:line 221
   at Raven.Server.Documents.Indexes.Static.JavaScriptIndex..ctor(IndexDefinition definition, RavenConfiguration configuration) in C:\Builds\RavenDB-Stable-4.2\42034\src\Raven.Server\Documents\Indexes\Static\JavaScriptIndex.cs:line 54
   at Raven.Server.Documents.Indexes.Static.IndexCompilationCache.GenerateIndex(IndexDefinition definition, RavenConfiguration configuration, IndexType type) in C:\Builds\RavenDB-Stable-4.2\42034\src\Raven.Server\Documents\Indexes\Static\IndexCompilationCache.cs:line 75
   at Raven.Server.Documents.Indexes.Static.IndexCompilationCache.GetIndexInstance(IndexDefinition definition, RavenConfiguration configuration) in C:\Builds\RavenDB-Stable-4.2\42034\src\Raven.Server\Documents\Indexes\Static\IndexCompilationCache.cs:line 41
   at Raven.Server.Documents.Indexes.IndexStore.ValidateStaticIndex(IndexDefinition definition) in C:\Builds\RavenDB-Stable-4.2\42034\src\Raven.Server\Documents\Indexes\IndexStore.cs:line 689
   at Raven.Server.Documents.Indexes.IndexStore.CreateIndex(IndexDefinition definition, String raftRequestId, String source) in C:\Builds\RavenDB-Stable-4.2\42034\src\Raven.Server\Documents\Indexes\IndexStore.cs:line 560
   at Raven.Server.Documents.Handlers.Admin.AdminIndexHandler.PutInternal(Boolean validatedAsAdmin) in C:\Builds\RavenDB-Stable-4.2\42034\src\Raven.Server\Documents\Handlers\Admin\AdminIndexHandler.cs:line 74
   at Raven.Server.Documents.Handlers.Admin.AdminIndexHandler.PutJavaScript() in C:\Builds\RavenDB-Stable-4.2\42034\src\Raven.Server\Documents\Handlers\Admin\AdminIndexHandler.cs:line 30
   at Raven.Server.Routing.RequestRouter.HandlePath(RequestHandlerContext reqCtx) in C:\Builds\RavenDB-Stable-4.2\42034\src\Raven.Server\Routing\RequestRouter.cs:line 184
   at Raven.Server.RavenServerStartup.RequestHandler(HttpContext context) in C:\Builds\RavenDB-Stable-4.2\42034\src\Raven.Server\RavenServerStartup.cs:line 173
索引:

    public class SystemMetrics_ByDate : AbstractIndexCreationTask<SystemMetrics>
    {
        public SystemMetrics_ByDate()
        {
            Map = metrics => from metric in metrics
                             orderby metric.Created descending
                             select new 
                             {
                                  metric.Created
                             };
        }
    }
公共类SystemMetrics\u按日期:AbstractIndexCreationTask
{
公共SystemMetrics_ByDate()
{
映射=度量=>来自度量中的度量
orderby度量。按降序创建
选择新的
{
公制。已创建
};
}
}
系统度量:

    public class SystemMetrics
    {
        public DateTimeOffset Created { get; set; } = DateTimeOffset.UtcNow;
        public CpuMetrics? Cpu { get; set; }
        public MetricData? Memory { get; set; }
        public Dictionary<string, MetricData>? Disks { get; set; }
    }
公共类SystemMetrics
{
创建的公共DateTimeOffset{get;set;}=DateTimeOffset.UtcNow;
公共cpumeters?Cpu{get;set;}
公共度量数据?内存{get;set;}
公共字典?磁盘{get;set;}
}
我唯一的想法是,ravendb改变了一些关于nullables的东西。在这里阅读:我发现:“[索引]JavaScript索引不应该索引隐式空值”,我认为这是罪魁祸首

有人知道这是什么意思吗?因为我的索引位于已创建属性上,该属性具有默认值


提前谢谢

这是一只虫子,谢谢!前几天我无法访问该问题跟踪程序。这是一个错误。谢谢!前几天我无法访问该问题跟踪程序。