Skip to content

Fix NRE#105

Closed
SergeiPavlov wants to merge 46 commits intoDataObjects-NET:masterfrom
servicetitan:fix_NRE
Closed

Fix NRE#105
SergeiPavlov wants to merge 46 commits intoDataObjects-NET:masterfrom
servicetitan:fix_NRE

Conversation

@SergeiPavlov
Copy link
Copy Markdown
Contributor

GetTypeInfo() uses Session which uses QueryBuilder
We muse assign QueryBuilder before calling GetTypeInfo()

AlexUstinov and others added 30 commits May 7, 2020 12:59
# Conflicts:
#	Orm/Xtensive.Orm.Tests.Core/Linq/LambdaExpressionFactoryTests.cs
#	Orm/Xtensive.Orm/Orm/Domain.cs
#	Orm/Xtensive.Orm/Orm/Linq/QueryHelper.cs
# Conflicts:
#	Orm/Xtensive.Orm/Orm/Linq/Expressions/EntityExpression.cs
#	Orm/Xtensive.Orm/Orm/Linq/Expressions/EntityFieldExpression.cs
#	Orm/Xtensive.Orm/Orm/Linq/Expressions/StructureExpression.cs
#	Orm/Xtensive.Orm/Orm/Model/FieldInfo.cs
#	Orm/Xtensive.Orm/Orm/Providers/SqlCompiler.cs
#	Orm/Xtensive.Orm/Sql/Dml/Collections/SqlColumnCollection.cs
#	Orm/Xtensive.Orm/Sql/Dml/Collections/SqlTableColumnCollection.cs
#	Orm/Xtensive.Orm/Sql/Dml/SqlQueryRef.cs
#	Orm/Xtensive.Orm/Sql/Dml/SqlTableRef.cs
# Conflicts:
#	Orm/Xtensive.Orm/Sql/Drivers/SqlServer/Connection.cs
#	Orm/Xtensive.Orm/Sql/SqlConnection.cs
commit 2ff86bd
Merge: 3364faf 188bc73
Author: Alexey Kulakov <alexey.kulakov@dataobjects.net>
Date:   Mon Mar 2 13:03:55 2020 +0500

    Merge branch 'master' into master-various-hotfixes

    # Conflicts:
    #	Orm/Xtensive.Orm.Tests/Xtensive.Orm.Tests.csproj

commit 3364faf
Author: Alexey Kulakov <alexey.kulakov@dataobjects.net>
Date:   Tue Feb 18 18:05:30 2020 +0500

    No extra select wrapping because of TypeId calculated column

    Queries of a lot of entities have type Id as constant value column
    included to sql query and this cause SELECT ... FROM (SELECT)
    queries where outer select just used all the fields from inner select.
    For some cases such wrapping was turned off.

commit 024206d
Author: Alexey Kulakov <alexey.kulakov@dataobjects.net>
Date:   Tue Feb 18 17:08:21 2020 +0500

    Constraints validation fixes and improvements

    - Fixed case when lazy load field fetched even if it has no constraint
    - Fixed but when validation tries to run on fields without constraints
    - Used late field value getting. Now validator gets value only when it is about
    to validate it. It is especially useful with lazy load fields.

commit cc35e26
Author: Alexey Kulakov <alexey.kulakov@dataobjects.net>
Date:   Fri Feb 14 20:55:05 2020 +0500

    Fix reference synchronization issue

commit 22a0c67
Author: Alexey Kulakov <alexey.kulakov@dataobjects.net>
Date:   Fri Feb 14 16:41:47 2020 +0500

    Fix EntityStateRegistry issues

    Count could be desynchronized with collection contents
    during movements between states

# Conflicts:
#	Orm/Xtensive.Orm/Orm/Providers/SqlCompiler.Helpers.cs
# Conflicts:
#	Extensions/Xtensive.Orm.BulkOperations.Tests/Other.cs
#	Orm/Xtensive.Orm.Tests/Issues/IssueJira0792_UnableToRemoveAssignedEntityWithNonNullableAssociationField.cs
#	Orm/Xtensive.Orm.Tests/Issues/IssueJira0793_FieldValidationTriggersLazyLoadFieldsFetch.cs
#	Orm/Xtensive.Orm.Tests/Storage/EntityChangeRegistryTest.cs
#	Orm/Xtensive.Orm/Orm/Internals/ReferentialActions.cs
#	Orm/Xtensive.Orm/Orm/Providers/SqlCompiler.Helpers.cs
Eliminate GetGenericMethodDefinition method call in MemberCompilerProvider class
…d to thread contention and to lock convoy issue (#16)
# Conflicts:
#	Extensions/Xtensive.Orm.BulkOperations.Tests/Other.cs
#	Orm/Xtensive.Orm/Orm/Linq/Expressions/EntityExpression.cs
#	Orm/Xtensive.Orm/Orm/Linq/Expressions/EntityFieldExpression.cs
#	Orm/Xtensive.Orm/Orm/Linq/Expressions/FieldExpression.cs
#	Orm/Xtensive.Orm/Orm/Linq/Expressions/ItemProjectorExpression.cs
#	Orm/Xtensive.Orm/Orm/Linq/Expressions/StructureExpression.cs
#	Orm/Xtensive.Orm/Orm/Linq/Expressions/StructureFieldExpression.cs
#	Orm/Xtensive.Orm/Orm/Linq/LinqBindingCollection.cs
#	Orm/Xtensive.Orm/Orm/Providers/SqlCompiler.Helpers.cs
#	Orm/Xtensive.Orm/Orm/Rse/Transformation/Internals/SkipTakeRewriterState.cs
* Publishing to azure artifacts.

* Create/overwrite NuGet.Config file before publishing and delete after this.
AlexUstinov and others added 16 commits September 25, 2020 13:17
# Conflicts:
#	Extensions/TestCommon/TestCommon.csproj
#	Extensions/Xtensive.Orm.BulkOperations.Tests/Xtensive.Orm.BulkOperations.Tests.csproj
#	Extensions/Xtensive.Orm.BulkOperations/Xtensive.Orm.BulkOperations.csproj
#	Extensions/Xtensive.Orm.Localization.Tests/Xtensive.Orm.Localization.Tests.csproj
#	Extensions/Xtensive.Orm.Localization/Xtensive.Orm.Localization.csproj
#	Extensions/Xtensive.Orm.Logging.NLog.Tests/Xtensive.Orm.Logging.NLog.Tests.csproj
#	Extensions/Xtensive.Orm.Logging.NLog/Xtensive.Orm.Logging.NLog.csproj
#	Extensions/Xtensive.Orm.Logging.log4net.Tests/Xtensive.Orm.Logging.log4net.Tests.csproj
#	Extensions/Xtensive.Orm.Logging.log4net/Xtensive.Orm.Logging.log4net.csproj
#	Extensions/Xtensive.Orm.Reprocessing.Tests/Xtensive.Orm.Reprocessing.Tests.csproj
#	Extensions/Xtensive.Orm.Reprocessing/Xtensive.Orm.Reprocessing.csproj
#	Extensions/Xtensive.Orm.Security.Tests/Xtensive.Orm.Security.Tests.csproj
#	Extensions/Xtensive.Orm.Security/Xtensive.Orm.Security.csproj
#	Extensions/Xtensive.Orm.Tracking.Tests/Xtensive.Orm.Tracking.Tests.csproj
#	Extensions/Xtensive.Orm.Tracking/Xtensive.Orm.Tracking.csproj
#	Extensions/Xtensive.Orm.Web/Xtensive.Orm.Web.csproj
#	MSBuild/DataObjects.Net.InternalBuild.targets
#	MSBuild/DataObjects.Net.targets
#	Orm/Xtensive.Orm.Firebird/Xtensive.Orm.Firebird.csproj
#	Orm/Xtensive.Orm.Manual/Xtensive.Orm.Manual.csproj
#	Orm/Xtensive.Orm.MySql/Xtensive.Orm.MySql.csproj
#	Orm/Xtensive.Orm.Oracle/Xtensive.Orm.Oracle.csproj
#	Orm/Xtensive.Orm.PostgreSql/Xtensive.Orm.PostgreSql.csproj
#	Orm/Xtensive.Orm.Sqlite/Xtensive.Orm.Sqlite.csproj
#	Orm/Xtensive.Orm.Tests.Core/Xtensive.Orm.Tests.Core.csproj
#	Orm/Xtensive.Orm.Tests.Framework/Xtensive.Orm.Tests.Framework.csproj
#	Orm/Xtensive.Orm.Tests.Sql/Xtensive.Orm.Tests.Sql.csproj
#	Orm/Xtensive.Orm.Tests/Xtensive.Orm.Tests.csproj
#	Orm/Xtensive.Orm/Linq/Internals/CachingExpressionCompiler.cs
#	Orm/Xtensive.Orm/Orm/Providers/CommandProcessing/BatchingCommandProcessor.cs
#	Orm/Xtensive.Orm/Orm/Providers/CommandProcessing/Command.cs
#	Orm/Xtensive.Orm/Xtensive.Orm.csproj
#	Version.props
#	Weaver/Xtensive.Orm.Weaver/Xtensive.Orm.Weaver.csproj
# Conflicts:
#	Extensions/TestCommon/TestCommon.csproj
#	Extensions/Xtensive.Orm.BulkOperations/Xtensive.Orm.BulkOperations.csproj
#	Extensions/Xtensive.Orm.Tracking.Tests/Xtensive.Orm.Tracking.Tests.csproj
#	Orm/Xtensive.Orm.Firebird/Xtensive.Orm.Firebird.csproj
#	Orm/Xtensive.Orm.PostgreSql/Xtensive.Orm.PostgreSql.csproj
#	Orm/Xtensive.Orm.Sqlite/Xtensive.Orm.Sqlite.csproj
#	Orm/Xtensive.Orm.Tests.Core/Xtensive.Orm.Tests.Core.csproj
#	Orm/Xtensive.Orm.Tests.Framework/Xtensive.Orm.Tests.Framework.csproj
#	Orm/Xtensive.Orm.Tests.Sql/Xtensive.Orm.Tests.Sql.csproj
#	Orm/Xtensive.Orm/Xtensive.Orm.csproj
#	Weaver/Xtensive.Orm.Weaver/Xtensive.Orm.Weaver.csproj
# Conflicts:
#	Directory.Build.props
#	Orm/Xtensive.Orm/Linq/Internals/CachingExpressionCompiler.cs
#	Orm/Xtensive.Orm/Orm/Providers/CommandProcessing/BatchingCommandProcessor.cs
#	Orm/Xtensive.Orm/Orm/Providers/CommandProcessing/Command.cs
#	Publish/NuGetPublish.csproj
# Conflicts:
#	Extensions/Xtensive.Orm.BulkOperations/Internals/SetOperation.cs
#	Orm/Xtensive.Orm.Firebird/Sql.Drivers.Firebird/Connection.cs
#	Orm/Xtensive.Orm.MySql/Sql.Drivers.MySql/Connection.cs
#	Orm/Xtensive.Orm.Oracle/Sql.Drivers.Oracle/Connection.cs
#	Orm/Xtensive.Orm.PostgreSql/Sql.Drivers.PostgreSql/Connection.cs
#	Orm/Xtensive.Orm.SqlServer/Sql.Drivers.SqlServer/Connection.cs
#	Orm/Xtensive.Orm.Sqlite/Sql.Drivers.Sqlite/Connection.cs
#	Orm/Xtensive.Orm/Linq/FastExpression.cs
#	Orm/Xtensive.Orm/Orm/Domain.cs
#	Orm/Xtensive.Orm/Orm/Linq/Expressions/EntityExpression.cs
#	Orm/Xtensive.Orm/Orm/Linq/Expressions/EntityFieldExpression.cs
#	Orm/Xtensive.Orm/Orm/Linq/Expressions/FieldExpression.cs
#	Orm/Xtensive.Orm/Orm/Linq/Expressions/ItemProjectorExpression.cs
#	Orm/Xtensive.Orm/Orm/Linq/Expressions/StructureExpression.cs
#	Orm/Xtensive.Orm/Orm/Linq/Expressions/StructureFieldExpression.cs
#	Orm/Xtensive.Orm/Orm/Linq/LinqBindingCollection.cs
#	Orm/Xtensive.Orm/Orm/Linq/MemberCompilation/MemberCompilerProvider.cs
#	Orm/Xtensive.Orm/Orm/Linq/Model/QueryParser.cs
#	Orm/Xtensive.Orm/Orm/Linq/QueryHelper.cs
#	Orm/Xtensive.Orm/Orm/Linq/Translator.Expressions.cs
#	Orm/Xtensive.Orm/Orm/Linq/Translator.Queryable.cs
#	Orm/Xtensive.Orm/Orm/Providers/SqlCompiler.Helpers.cs
#	Orm/Xtensive.Orm/Orm/Providers/SqlCompiler.cs
#	Orm/Xtensive.Orm/Orm/Rse/Transformation/Internals/SkipTakeRewriterState.cs
#	Orm/Xtensive.Orm/Reflection/TypeHelper.cs
#	Orm/Xtensive.Orm/Sql/Dml/Collections/SqlTableColumnCollection.cs
#	Orm/Xtensive.Orm/Sql/Dml/SqlQueryRef.cs
#	Orm/Xtensive.Orm/Sql/Dml/SqlTableRef.cs
#	Orm/Xtensive.Orm/Sql/SqlConnection.cs
#	Publish/NuGetPublish.csproj
#	Version.props
# Conflicts:
#	Orm/Xtensive.Orm.Firebird/Xtensive.Orm.Firebird.csproj
#	Orm/Xtensive.Orm.MySql/Xtensive.Orm.MySql.csproj
#	Orm/Xtensive.Orm.Oracle/Xtensive.Orm.Oracle.csproj
#	Orm/Xtensive.Orm.PostgreSql/Sql.Drivers.PostgreSql/Connection.cs
#	Orm/Xtensive.Orm.Sqlite/Xtensive.Orm.Sqlite.csproj
#	Orm/Xtensive.Orm/Orm/Linq/Expressions/EntityExpression.cs
#	Orm/Xtensive.Orm/Orm/Linq/Translator.Expressions.cs
#	Orm/Xtensive.Orm/Orm/Linq/Translator.Queryable.cs
#	Orm/Xtensive.Orm/Orm/Providers/CommandProcessing/BatchingCommandProcessor.cs
#	Orm/Xtensive.Orm/Orm/Providers/CommandProcessing/Command.cs
#	Orm/Xtensive.Orm/Sql/SqlConnection.cs
@SergeiPavlov SergeiPavlov deleted the fix_NRE branch January 15, 2021 20:45
alex-kulakov pushed a commit that referenced this pull request Sep 2, 2023
* Optimize Visitors

* Memoize GetGenericTypeDefinition()

* Revert Memoizing MakeDelegateType()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants