Stuck in CRLicenseProvider.a(...)

Discussion of open issues, suggestions and bugs regarding ADO.NET provider for Oracle
Post Reply
BGrojer
Posts: 18
Joined: Thu 19 Sep 2013 12:35

Stuck in CRLicenseProvider.a(...)

Post by BGrojer » Thu 01 Dec 2016 22:03

Hi,
I have seen a lot of threads spending quite a lot of time in CRLicenseProvider.a(...) method. Can you explain why is that? Checking the licx should be very cheap?

[Managed to Native Transition]
Devart.Data.Oracle.dll!Devart.Common.CRLicenseProvider.a(System.ComponentModel.LicenseContext A_0, System.Type A_1, bool A_2)
Devart.Data.Oracle.dll!Devart.Common.CRLicenseProvider.a(System.ComponentModel.LicenseContext A_0, System.Type A_1, object A_2, bool A_3)
Devart.Data.Oracle.dll!Devart.Data.Oracle.OracleConnection.Open()
EntityFramework.dll!System.Data.Entity.Infrastructure.Interception.InternalDispatcher<System.Data.Entity.Infrastructure.Interception.IDbConnectionInterceptor>.Dispatch<System.Data.Common.DbConnection, System.Data.Entity.Infrastructure.Interception.DbConnectionInterceptionContext>(System.Data.Common.DbConnection target, System.Action<System.Data.Common.DbConnection, System.Data.Entity.Infrastructure.Interception.DbConnectionInterceptionContext> operation, System.Data.Entity.Infrastructure.Interception.DbConnectionInterceptionContext interceptionContext, System.Action<System.Data.Entity.Infrastructure.Interception.IDbConnectionInterceptor, System.Data.Common.DbConnection, System.Data.Entity.Infrastructure.Interception.DbConnectionInterceptionContext> executing, System.Action<System.Data.Entity.Infrastructure.Interception.IDbConnectionInterceptor, System.Data.Common.DbConnection, System.Data.Entity.Infrastructure.Interception.DbConnectionInterceptionContext> executed)
EntityFramework.dll!System.Data.Entity.Infrastructure.Interception.DbConnectionDispatcher.Open(System.Data.Common.DbConnection connection, System.Data.Entity.Infrastructure.Interception.DbInterceptionContext interceptionContext)
EntityFramework.dll!System.Data.Entity.Core.EntityClient.EntityConnection.Open()
EntityFramework.dll!System.Data.Entity.Core.Objects.ObjectContext.EnsureConnection(bool shouldMonitorTransactions)
EntityFramework.dll!System.Data.Entity.Core.Objects.ObjectContext.ExecuteInTransaction<System.__Canon>(System.Func<System.__Canon> func, System.Data.Entity.Infrastructure.IDbExecutionStrategy executionStrategy, bool startLocalTransaction, bool releaseConnectionOnSuccess)

Version 8.05.616.0

Thanks

Pinturiccio
Devart Team
Posts: 2420
Joined: Wed 02 Nov 2011 09:44

Re: Stuck in CRLicenseProvider.a(...)

Post by Pinturiccio » Mon 05 Dec 2016 15:17

The CRLicenseProvider.a method is our internal method and unfortunately we cannot disclose its purpose.

BGrojer
Posts: 18
Joined: Thu 19 Sep 2013 12:35

Re: Stuck in CRLicenseProvider.a(...)

Post by BGrojer » Sat 10 Dec 2016 10:27

I understand. Looks like this method is a performance bottleneck. Can u please think about caching the results of the licx validation?

Cannot be that we waste a lot of CPU cycles on a fully licensed product :-)

Pinturiccio
Devart Team
Posts: 2420
Joined: Wed 02 Nov 2011 09:44

Re: Stuck in CRLicenseProvider.a(...)

Post by Pinturiccio » Tue 13 Dec 2016 16:56

Unfortunately we cannot improve the performance concerning to the CRLicenseProvider.a(...) method.

Post Reply