Are you using NestedConventions? Have a look at this?
https://world.episerver.com/forum/developer-forum/EPiServer-Search/Thread-Container/2016/8/self-referencing-loop-detected-for-property-39manifestmodule39-/
Hi,
I can't find the word "NestedConventions" in my source code, also it seems like the post you are referring to is about searching, not indexing, but thanx anyway :)
I would try:
Example:
[JsonIgnore]
public string SuspectProperty { get; set; }
Joels comment in this thread might be interesting:
http://world.episerver.com/forum/developer-forum/EPiServer-Search/Thread-Container/2014/8/Indexing-issues/
Hi,
The problem is that it's not even possible to index this class ( without custom properties ):
[ContentType(DisplayName = "RAVerySimplePage", GUID = "EB44C08C-F8BC-4586-A594-26DF166C5B8E")]
public class AVerySimplePage : PageData
{
}
Same errors
Were you ever able to get this resolved? I'm getting the same error:
Self referencing loop detected for property 'ManifestModule' with type 'System.Reflection.RuntimeModule'
with Episerver 11.20.17 + Find 13.5.2. Downgrading Find to 13.0.5 gets rid of the error, but comes with a set of dependencies that won't work except for just trying out stuff locally...
Hi,
I did some software upgrades for our customer the other day, everything seemed to work fine, but when I try to re-index stuff, no pages will be indexed, instead I got loads of errors ( in the logs ), this happens both when the "EPiServer Find Content Indexing Job" and when I for ex publish a page.
Nothing is changed in the code, except for new software versions.
Parts of packages.config ( now, after upgrade )
Parts of packages.config ( before upgrade )
Parts of the Errors from logs ( this is when I try to publish/Index even my simplest "ContainerPage", code for that one below ), I remove stuff that's just reapeated
2019-10-09 08:59:18,021 [100] ERROR EPiServer.Find.Cms.ContentEventIndexer: An exception occurred while indexing (IContent). Self referencing loop detected for property 'ManifestModule' with type 'System.Reflection.RuntimeModule'. Path 'Property[0].LinkMapper.Accessor.Method.Module.Assembly'. The loop was detected in VolvoFinansBank.Web.Models.Pages.ContainerPage. To correct this you can exclude one of the properties (or otherwise mapped fields) that are causing the loop by modifying the Client class' conventions. You may also modify the serializer to ignore self references. If you require the fields causing the loop to be serialized you may annotate the one of the classes in the loop with [JsonObject(IsReference = true)] or modify the JsonContract for one of the types to use IsReference = true which also can be done by modifying the Client class' conventions..
EPiServer.Find.SelfReferencingLoopException: Self referencing loop detected for property 'ManifestModule' with type 'System.Reflection.RuntimeModule'. Path 'Property[0].LinkMapper.Accessor.Method.Module.Assembly'. The loop was detected in VolvoFinansBank.Web.Models.Pages.ContainerPage. To correct this you can exclude one of the properties (or otherwise mapped fields) that are causing the loop by modifying the Client class' conventions. You may also modify the serializer to ignore self references. If you require the fields causing the loop to be serialized you may annotate the one of the classes in the loop with [JsonObject(IsReference = true)] or modify the JsonContract for one of the types to use IsReference = true which also can be done by modifying the Client class' conventions. ---> Newtonsoft.Json.JsonSerializationException: Self referencing loop detected for property 'ManifestModule' with type 'System.Reflection.RuntimeModule'. Path 'Property[0].LinkMapper.Accessor.Method.Module.Assembly'.
at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.CheckForCircularReference(JsonWriter writer, Object value, JsonProperty property, JsonContract contract, JsonContainerContract containerContract, JsonProperty containerProperty)
...
EPiServer.Find.SelfReferencingLoopException: Self referencing loop detected for property 'ManifestModule' with type 'System.Reflection.RuntimeModule'. Path 'Property[0].LinkMapper.Accessor.Method.Module.Assembly'. The loop was detected in VolvoFinansBank.Web.Models.Pages.ContainerPage. To correct this you can exclude one of the properties (or otherwise mapped fields) that are causing the loop by modifying the Client class' conventions. You may also modify the serializer to ignore self references. If you require the fields causing the loop to be serialized you may annotate the one of the classes in the loop with [JsonObject(IsReference = true)] or modify the JsonContract for one of the types to use IsReference = true which also can be done by modifying the Client class' conventions. ---> Newtonsoft.Json.JsonSerializationException: Self referencing loop detected for property 'ManifestModule' with type 'System.Reflection.RuntimeModule'. Path 'Property[0].LinkMapper.Accessor.Method.Module.Assembly'.
...
at EPiServer.Find.Api.BulkActionConverter.WriteJson(JsonWriter writer, Object value, JsonSerializer serializer)
--- End of inner exception stack trace ---
at EPiServer.Find.Api.BulkActionConverter.WriteJson(JsonWriter writer, Object value, JsonSerializer serializer)
at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.SerializeConvertable(JsonWriter writer, JsonConverter converter, Object value, JsonContract contract, JsonContainerContract collectionContract, JsonProperty containerProperty)
at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.Serialize(JsonWriter jsonWriter, Object value, Type objectType)
at Newtonsoft.Json.JsonSerializer.SerializeInternal(JsonWriter jsonWriter, Object value, Type objectType)
at EPiServer.Find.Json.Serializer.SerializeToTextWriter(JsonSerializer serializer, Object value, TextWriter textWriter)
at EPiServer.Find.Json.Serializer.SerializeObjectsToJsonRequest(JsonSerializer serializer, IJsonRequest jsonRequest, IEnumerable values)
at EPiServer.Find.Api.BulkCommand.Execute(List`1& serializationFailures)
at EPiServer.Find.Api.BulkCommand.Execute()
at EPiServer.Find.Cms.ContentIndexer.IndexWithRetry(IContent[] contents, Int32 maxRetries, Boolean deleteLanguageRoutingDuplicatesOnIndex)
at EPiServer.Find.Cms.ContentIndexer.Index(IEnumerable`1 contents, IndexOptions options)
at EPiServer.Find.Cms.ContentEventIndexer.Index(IEnumerable`1 contentLinks)
at EPiServer.Find.Cms.ContentEventIndexer.Sync(IEnumerable`1 contentToIndex, HashSet`1 contentToIndexSet, Func`1 index)
at EPiServer.Find.Cms.ContentEventIndexer.IndexPageQueue(IEnumerable`1 contentToIndex)
at EPiServer.Find.Cms.ContentEventIndexer.IndexPageQueue()
Code for ContainerPage
Also, in a InitModule, I tried to add handling for ReferenceLoopHandling ( did not need that before upgrade ), but that did not help either
Will be very happy if you have any ideas on how to solve this :)