RavenDB ArgumentOutOfRangeException索引创建-版本4.2.102
我刚刚更新了我的项目依赖项,其中之一就是RavenDB升级。从4.2.101->4.2.102。在此之后,我会因为参数超出范围而引发异常。我的代码库没有任何变化,回滚到版本4.2.101修复了这个问题。我试图找到某种解释来解释为什么会发生这种情况,但我什么也找不到。我希望在座的人能对这个问题有所了解 执行索引时发生异常: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
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索引不应该索引隐式空值”,我认为这是罪魁祸首
有人知道这是什么意思吗?因为我的索引位于已创建属性上,该属性具有默认值
提前谢谢 这是一只虫子,谢谢!前几天我无法访问该问题跟踪程序。这是一个错误。谢谢!前几天我无法访问该问题跟踪程序。