nhibernate-core icon indicating copy to clipboard operation
nhibernate-core copied to clipboard

Fix optional join optimistic lock handling

Open bahusoid opened this issue 3 years ago • 1 comments

Fixes #1235

bahusoid avatar Feb 05 '22 17:02 bahusoid

I just tried to regen async code just in case and it seems it's utterly broken on my machine. Throws some random exceptions when processing NHibernate.Test project like symbol for field type [Name] was not found where Name in message is different for different executions:

     [exec] crit: AsyncGenerator.CommandLine[0]
     [exec]       One or more errors occurred. (symbol for field type TypedValue was not found) (symbol for field type Dialect.Dialect was not found)
     [exec]       System.AggregateException: One or more errors occurred. (symbol for field type TypedValue was not found) (symbol for field type Dialect.Dialect was not found)
     [exec]        ---> System.InvalidOperationException: symbol for field type TypedValue was not found
     [exec]          at AsyncGenerator.Internal.BaseFieldData..ctor(TypeData typeData, BaseFieldDeclarationSyntax node, SemanticModel semanticModel) in C:\Workspace\Git\AsyncGenerator\Source\AsyncGenerator\Internal\FieldData.cs:line 20
     [exec]          at AsyncGenerator.Internal.TypeData.<>c__DisplayClass54_0.<GetBaseFieldData>b__0(BaseFieldDeclarationSyntax syntax) in C:\Workspace\Git\AsyncGenerator\Source\AsyncGenerator\Internal\TypeData.cs:line 170
     [exec]          at System.Collections.Concurrent.ConcurrentDictionary`2.GetOrAdd(TKey key, Func`2 valueFactory)
     [exec]          at AsyncGenerator.Internal.TypeData.GetBaseFieldData(BaseFieldDeclarationSyntax node, SemanticModel semanticModel, Boolean create) in C:\Workspace\Git\AsyncGenerator\Source\AsyncGenerator\Internal\TypeData.cs:line 170
     [exec]          at AsyncGenerator.Internal.DocumentData.GetNodeData(SyntaxNode node, Boolean create, NamespaceData namespaceData, TypeData typeData, BaseMethodData baseMethodData) in C:\Workspace\Git\AsyncGenerator\Source\AsyncGenerator\Internal\DocumentData.cs:line 247
     [exec]          at AsyncGenerator.Analyzation.Internal.ProjectAnalyzer.PreAnalyzeDocumentData(DocumentData documentData) in C:\Workspace\Git\AsyncGenerator\Source\AsyncGenerator\Analyzation\Internal\ProjectAnalyzer.PreAnalyze.cs:line 109
     [exec]          at System.Threading.Tasks.Parallel.<>c__DisplayClass19_0`1.<ForWorker>b__1(RangeWorker& currentWorker, Int32 timeout, Boolean& replicationDelegateYieldedBeforeCompletion)
     [exec]          at AsyncGenerator.Analyzation.Internal.ProjectAnalyzer.Analyze(CancellationToken cancellationToken) in C:\Workspace\Git\AsyncGenerator\Source\AsyncGenerator\Analyzation\Internal\ProjectAnalyzer.cs:line 81
     [exec]          at AsyncGenerator.AsyncCodeGenerator.GenerateProject(ProjectData projectData, ILoggerFactory loggerFactory, ILogger logger, CancellationToken cancellationToken) in C:\Workspace\Git\AsyncGenerator\Source\AsyncGenerator\AsyncCodeGenerator.cs:line 152
     [exec]          at AsyncGenerator.AsyncCodeGenerator.GenerateAsync(AsyncCodeConfiguration configuration, CancellationToken cancellationToken) in C:\Workspace\Git\AsyncGenerator\Source\AsyncGenerator\AsyncCodeGenerator.cs:line 84
     [exec]          at AsyncGenerator.CommandLine.Program.Main(String[] args) in C:\Workspace\Git\AsyncGenerator\Source\AsyncGenerator.CommandLine\Program.cs:line 51
     [exec]        ---> (Inner Exception #1) System.InvalidOperationException: symbol for field type Dialect.Dialect was not found
     [exec]          at AsyncGenerator.Internal.BaseFieldData..ctor(TypeData typeData, BaseFieldDeclarationSyntax node, SemanticModel semanticModel) in C:\Workspace\Git\AsyncGenerator\Source\AsyncGenerator\Internal\FieldData.cs:line 20
     [exec]          at AsyncGenerator.Internal.TypeData.<>c__DisplayClass54_0.<GetBaseFieldData>b__0(BaseFieldDeclarationSyntax syntax) in C:\Workspace\Git\AsyncGenerator\Source\AsyncGenerator\Internal\TypeData.cs:line 170
     [exec]          at System.Collections.Concurrent.ConcurrentDictionary`2.GetOrAdd(TKey key, Func`2 valueFactory)
     [exec]          at AsyncGenerator.Internal.TypeData.GetBaseFieldData(BaseFieldDeclarationSyntax node, SemanticModel semanticModel, Boolean create) in C:\Workspace\Git\AsyncGenerator\Source\AsyncGenerator\Internal\TypeData.cs:line 170
     [exec]          at AsyncGenerator.Internal.DocumentData.GetNodeData(SyntaxNode node, Boolean create, NamespaceData namespaceData, TypeData typeData, BaseMethodData baseMethodData) in C:\Workspace\Git\AsyncGenerator\Source\AsyncGenerator\Internal\DocumentData.cs:line 247
     [exec]          at AsyncGenerator.Analyzation.Internal.ProjectAnalyzer.PreAnalyzeDocumentData(DocumentData documentData) in C:\Workspace\Git\AsyncGenerator\Source\AsyncGenerator\Analyzation\Internal\ProjectAnalyzer.PreAnalyze.cs:line 109
     [exec]          at System.Threading.Tasks.Parallel.<>c__DisplayClass19_0`1.<ForWorker>b__1(RangeWorker& currentWorker, Int32 timeout, Boolean& replicationDelegateYieldedBeforeCompletion)

bahusoid avatar Feb 10 '22 06:02 bahusoid