oracle / dotnet-db-samples

.NET code samples for Oracle database developers #OracleDotNet
http://otn.oracle.com/dotnet
MIT License
413 stars 191 forks source link

Guid property raises a System.NullReferenceException #350

Closed Shortcheese closed 5 months ago

Shortcheese commented 9 months ago

File a bug

When there is an entity with a Guid property and a .HasConversion<byte[]>() on it. And it is already in the modelsnapshot and even rolled out to a database. Adding a migration or even running a not rolled out migration (created with EFCore 7.0, rolled out with version 8). A NullReferenceException got thrown.

Include your code

// In a IEntityTypeConfiguration Configuration
builder
    .Property(entity => entity.Id)
    .HasConversion<byte[]>()
    .ValueGeneratedOnAdd();

// Results in a Snapshot
 b.Property<byte[]>("Id")
    .ValueGeneratedOnAdd()
    .HasColumnType("RAW(16)")
    .HasColumnName("ID")
    .HasColumnOrder(0);

It seems that adding a migration only works after removing the

.HasConversion<byte[]>()

And changing the property in the snapshot from byte[] to Guid.

//  ContextSnapshot
 b.Property<Guid>("Id")
    .ValueGeneratedOnAdd()
    .HasColumnType("RAW(16)")
    .HasColumnName("ID")
    .HasColumnOrder(0);

add-migration will work after this change, but update-database still fails

Stack trace

System.NullReferenceException: Object reference not set to an instance of an object.
   at Microsoft.EntityFrameworkCore.Storage.RelationalTypeMappingSource.FindCollectionMapping(RelationalTypeMappingInfo info, Type modelType, Type providerType, CoreTypeMapping elementMapping)
   at Microsoft.EntityFrameworkCore.Storage.RelationalTypeMappingSource.<>c.<FindMappingWithConversion>b__8_0(ValueTuple`4 k, RelationalTypeMappingSource self)
   at System.Collections.Concurrent.ConcurrentDictionary`2.GetOrAdd[TArg](TKey key, Func`3 valueFactory, TArg factoryArgument)
   at Microsoft.EntityFrameworkCore.Storage.RelationalTypeMappingSource.FindMappingWithConversion(RelationalTypeMappingInfo mappingInfo, Type providerClrType, ValueConverter customConverter)
   at Microsoft.EntityFrameworkCore.Storage.RelationalTypeMappingSource.FindMappingWithConversion(RelationalTypeMappingInfo mappingInfo, IReadOnlyList`1 principals)
   at Microsoft.EntityFrameworkCore.Storage.RelationalTypeMappingSource.FindMapping(IProperty property)
   at Microsoft.EntityFrameworkCore.Metadata.Internal.Property.<>c.<get_TypeMapping>b__91_0(IProperty property)
   at Microsoft.EntityFrameworkCore.Internal.NonCapturingLazyInitializer.EnsureInitialized[TParam,TValue](TValue& target, TParam param, Func`2 valueFactory)
   at Microsoft.EntityFrameworkCore.Metadata.Internal.Property.get_TypeMapping()
   at Microsoft.EntityFrameworkCore.Metadata.Internal.Property.Microsoft.EntityFrameworkCore.Metadata.IReadOnlyProperty.FindTypeMapping()
   at Microsoft.EntityFrameworkCore.RelationalPropertyExtensions.FindRelationalTypeMapping(IReadOnlyProperty property)
   at Microsoft.EntityFrameworkCore.RelationalPropertyExtensions.GetColumnType(IReadOnlyProperty property)
   at Microsoft.EntityFrameworkCore.RelationalPropertyExtensions.GetColumnType(IProperty property)
   at Microsoft.EntityFrameworkCore.Metadata.Internal.RelationalModel.AddDefaultMappings(RelationalModel databaseModel, IEntityType entityType, IRelationalTypeMappingSource relationalTypeMappingSource)
   at Microsoft.EntityFrameworkCore.Metadata.Internal.RelationalModel.Create(IModel model, IRelationalAnnotationProvider relationalAnnotationProvider, IRelationalTypeMappingSource relationalTypeMappingSource, Boolean designTime)
   at Microsoft.EntityFrameworkCore.Metadata.Internal.RelationalModel.Add(IModel model, IRelationalAnnotationProvider relationalAnnotationProvider, IRelationalTypeMappingSource relationalTypeMappingSource, Boolean designTime)
   at Microsoft.EntityFrameworkCore.Infrastructure.RelationalModelRuntimeInitializer.InitializeModel(IModel model, Boolean designTime, Boolean prevalidation)
   at Microsoft.EntityFrameworkCore.Infrastructure.ModelRuntimeInitializer.Initialize(IModel model, Boolean designTime, IDiagnosticsLogger`1 validationLogger)
   at Microsoft.EntityFrameworkCore.Migrations.Internal.SnapshotModelProcessor.Process(IReadOnlyModel model)
   at Microsoft.EntityFrameworkCore.Migrations.Design.MigrationsScaffolder.ScaffoldMigration(String migrationName, String rootNamespace, String subNamespace, String language)
   at Microsoft.EntityFrameworkCore.Design.Internal.MigrationsOperations.AddMigration(String name, String outputDir, String contextType, String namespace)
   at Microsoft.EntityFrameworkCore.Design.OperationExecutor.AddMigrationImpl(String name, String outputDir, String contextType, String namespace)
   at Microsoft.EntityFrameworkCore.Design.OperationExecutor.AddMigration.<>c__DisplayClass0_0.<.ctor>b__0()
   at Microsoft.EntityFrameworkCore.Design.OperationExecutor.OperationBase.<>c__DisplayClass3_0`1.<Execute>b__0()
   at Microsoft.EntityFrameworkCore.Design.OperationExecutor.OperationBase.Execute(Action action)

Include verbose output

Add-Migration

Add-Migration 
Finding DbContext classes...
Finding IDesignTimeDbContextFactory implementations...
Found IDesignTimeDbContextFactory implementation 'WeatherContextFactory'.
Found DbContext 'WeatherContext'.
Finding application service provider in assembly 'EfCore.Migration.Data'...
Finding Microsoft.Extensions.Hosting service provider...
No static method 'CreateHostBuilder(string[])' was found on class 'Program'.
No application service provider was found.
Finding DbContext classes in the project...
Using DbContext factory 'WeatherContextFactory'.
Using context 'WeatherContext'.
Finding design-time services referenced by assembly 'EfCore.Migration.Data'...
No referenced design-time services were found.
Finding design-time services for provider 'Oracle.EntityFrameworkCore'...
Using design-time services from provider 'Oracle.EntityFrameworkCore'.
Finding IDesignTimeServices implementations in assembly 'EfCore.Migration.Data'...
No design-time services were found.
2023-12-20 13:43:43.646498 ThreadID:1   (CONFIG) Machine Name : xxxx
2023-12-20 13:43:43.670912 ThreadID:1   (CONFIG) User Name : xxxx
2023-12-20 13:43:43.670956 ThreadID:1   (CONFIG) OS Version : Microsoft Windows NT 10.0.22631.0
2023-12-20 13:43:43.670967 ThreadID:1   (CONFIG) 64-bit OS : True
2023-12-20 13:43:43.670970 ThreadID:1   (CONFIG) 64-bit Process : True
2023-12-20 13:43:43.670973 ThreadID:1   (CONFIG) ProcessID: 28704
2023-12-20 13:43:43.670976 ThreadID:1   (CONFIG) AppDomainId: 1
2023-12-20 13:43:43.670979 ThreadID:1   (CONFIG) .NET Core Runtime Version: 8.0.0
2023-12-20 13:43:43.670986 ThreadID:1   (CONFIG) Oracle Data Provider for EF Core Driver Informational Version : 8.0.21.1-20231204
2023-12-20 13:43:43.670989 ThreadID:1   (CONFIG) Assembly: System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e
2023-12-20 13:43:43.670993 ThreadID:1   (CONFIG) Assembly: ef, Version=8.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60
2023-12-20 13:43:43.670999 ThreadID:1   (CONFIG) Assembly: System.Runtime, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
2023-12-20 13:43:43.671002 ThreadID:1   (CONFIG) Assembly: System.Console, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
2023-12-20 13:43:43.671005 ThreadID:1   (CONFIG) Assembly: System.Runtime.InteropServices, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
2023-12-20 13:43:43.671009 ThreadID:1   (CONFIG) Assembly: System.Threading, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
2023-12-20 13:43:43.671015 ThreadID:1   (CONFIG) Assembly: System.Collections, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
2023-12-20 13:43:43.671018 ThreadID:1   (CONFIG) Assembly: System.Resources.ResourceManager, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
2023-12-20 13:43:43.671021 ThreadID:1   (CONFIG) Assembly: System.Linq, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
2023-12-20 13:43:43.671028 ThreadID:1   (CONFIG) Assembly: System.Runtime.Extensions, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
2023-12-20 13:43:43.671031 ThreadID:1   (CONFIG) Assembly: System.IO.FileSystem, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
2023-12-20 13:43:43.671034 ThreadID:1   (CONFIG) Assembly: Microsoft.EntityFrameworkCore.Design, Version=8.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60
2023-12-20 13:43:43.671039 ThreadID:1   (CONFIG) Assembly: Microsoft.EntityFrameworkCore, Version=8.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60
2023-12-20 13:43:43.671042 ThreadID:1   (CONFIG) Assembly: Microsoft.EntityFrameworkCore.Relational, Version=8.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60
2023-12-20 13:43:43.671045 ThreadID:1   (CONFIG) Assembly: System.Linq.Expressions, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
2023-12-20 13:43:43.671048 ThreadID:1   (CONFIG) Assembly: Microsoft.CSharp, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
2023-12-20 13:43:43.671058 ThreadID:1   (CONFIG) Assembly: System.Collections.Concurrent, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
2023-12-20 13:43:43.671061 ThreadID:1   (CONFIG) Assembly: System.Reflection.Emit.ILGeneration, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
2023-12-20 13:43:43.671063 ThreadID:1   (CONFIG) Assembly: System.Reflection.Emit.Lightweight, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
2023-12-20 13:43:43.671070 ThreadID:1   (CONFIG) Assembly: System.Reflection.Primitives, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
2023-12-20 13:43:43.685822 ThreadID:1   (CONFIG) Assembly: Anonymously Hosted DynamicMethods Assembly, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null
2023-12-20 13:43:43.685917 ThreadID:1   (CONFIG) Assembly: System.ComponentModel, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
2023-12-20 13:43:43.685938 ThreadID:1   (CONFIG) Assembly: Microsoft.EntityFrameworkCore.Abstractions, Version=8.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60
2023-12-20 13:43:43.685947 ThreadID:1   (CONFIG) Assembly: Microsoft.Extensions.DependencyInjection.Abstractions, Version=8.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60
2023-12-20 13:43:43.685956 ThreadID:1   (CONFIG) Assembly: Microsoft.Extensions.Logging.Abstractions, Version=8.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60
2023-12-20 13:43:43.685978 ThreadID:1   (CONFIG) Assembly: Microsoft.Extensions.DependencyInjection, Version=8.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60
2023-12-20 13:43:43.685983 ThreadID:1   (CONFIG) Assembly: System.Diagnostics.Tracing, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
2023-12-20 13:43:43.685987 ThreadID:1   (CONFIG) Assembly: Microsoft.Extensions.Configuration.Abstractions, Version=8.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60
2023-12-20 13:43:43.685997 ThreadID:1   (CONFIG) Assembly: Oracle.EntityFrameworkCore, Version=8.0.21.1, Culture=neutral, PublicKeyToken=89b483f429c47342
2023-12-20 13:43:43.686002 ThreadID:1   (CONFIG) Assembly: Microsoft.Extensions.Configuration, Version=8.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60
2023-12-20 13:43:43.686016 ThreadID:1   (CONFIG) Assembly: Microsoft.Extensions.Configuration.FileExtensions, Version=8.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60
2023-12-20 13:43:43.686021 ThreadID:1   (CONFIG) Assembly: Microsoft.Extensions.Configuration.Json, Version=8.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60
2023-12-20 13:43:43.686025 ThreadID:1   (CONFIG) Assembly: Microsoft.Extensions.FileProviders.Physical, Version=8.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60
2023-12-20 13:43:43.686033 ThreadID:1   (CONFIG) Assembly: Microsoft.Extensions.FileProviders.Abstractions, Version=8.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60
2023-12-20 13:43:43.686038 ThreadID:1   (CONFIG) Assembly: Microsoft.Extensions.Primitives, Version=8.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60
2023-12-20 13:43:43.686043 ThreadID:1   (CONFIG) Assembly: System.Memory, Version=8.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51
2023-12-20 13:43:43.686057 ThreadID:1   (CONFIG) Assembly: System.IO.FileSystem.Watcher, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
2023-12-20 13:43:43.686062 ThreadID:1   (CONFIG) Assembly: System.ComponentModel.Primitives, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
2023-12-20 13:43:43.686067 ThreadID:1   (CONFIG) Assembly: System.Threading.Overlapped, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
2023-12-20 13:43:44.975350 ThreadID:1   (CONFIG) Assembly: Microsoft.Win32.Primitives, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
2023-12-20 13:43:44.975464 ThreadID:1   (CONFIG) Assembly: System.Text.Json, Version=8.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51
2023-12-20 13:43:44.975481 ThreadID:1   (CONFIG) Assembly: System.Text.Encoding.Extensions, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
2023-12-20 13:43:44.975485 ThreadID:1   (CONFIG) Assembly: System.Collections.Immutable, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
2023-12-20 13:43:44.975492 ThreadID:1   (CONFIG) Assembly: System.Data.Common, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
2023-12-20 13:43:44.975501 ThreadID:1   (CONFIG) Assembly: Microsoft.Extensions.Caching.Abstractions, Version=8.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60
2023-12-20 13:43:44.975510 ThreadID:1   (CONFIG) Assembly: System.Diagnostics.DiagnosticSource, Version=8.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51
2023-12-20 13:43:44.975517 ThreadID:1   (CONFIG) Assembly: System.Transactions.Local, Version=8.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51
2023-12-20 13:43:44.975523 ThreadID:1   (CONFIG) Assembly: System.Threading.ThreadPool, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
2023-12-20 13:43:44.975526 ThreadID:1   (CONFIG) Assembly: Microsoft.Extensions.Logging, Version=8.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60
2023-12-20 13:43:44.975533 ThreadID:1   (CONFIG) Assembly: Microsoft.Extensions.Options, Version=8.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60
2023-12-20 13:43:44.975539 ThreadID:1   (CONFIG) Assembly: System.ComponentModel.TypeConverter, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
2023-12-20 13:43:44.975543 ThreadID:1   (CONFIG) Assembly: Microsoft.Extensions.Caching.Memory, Version=8.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60
2023-12-20 13:43:44.975546 ThreadID:1   (CONFIG) Assembly: System.ComponentModel.Annotations, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
2023-12-20 13:43:44.975554 ThreadID:1   (CONFIG) Assembly: System.Private.Uri, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
2023-12-20 13:43:44.975572 ThreadID:1   (CONFIG) Assembly: System.Net.Primitives, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
2023-12-20 13:43:44.975576 ThreadID:1   (CONFIG) Assembly: System.Net.NetworkInformation, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
2023-12-20 13:43:44.975583 ThreadID:1   (CONFIG) Assembly: System.Runtime.Intrinsics, Version=8.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51
2023-12-20 13:43:44.975590 ThreadID:1   (CONFIG) Assembly: System.ObjectModel, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
2023-12-20 13:43:44.975594 ThreadID:1   (CONFIG) Assembly: System.Runtime.Numerics, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
2023-12-20 13:43:44.975600 ThreadID:1   (CONFIG) Assembly: System.Diagnostics.FileVersionInfo, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
2023-12-20 13:43:44.975604 ThreadID:1   (CONFIG) Assembly: System.Diagnostics.Process, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
2023-12-20 13:43:44.976024 ThreadID:1   (ENTRY)   OracleMigrationsSqlGenerator.ctor() 
2023-12-20 13:43:44.976920 ThreadID:1   (EXIT)    OracleMigrationsSqlGenerator.ctor() 
2023-12-20 13:43:44.977370 ThreadID:1   (ENTRY)   OracleDatabaseCreator.ctor() 
2023-12-20 13:43:45.961659 ThreadID:1   (EXIT)    OracleDatabaseCreator.ctor() 
2023-12-20 13:43:45.962659 ThreadID:1   (ENTRY)   OracleHistoryRepository.ctor() 
2023-12-20 13:43:45.962730 ThreadID:1   (EXIT)    OracleHistoryRepository.ctor() 
2023-12-20 13:43:45.963216 ThreadID:1   (EXIT)    OracleMigrator.ctor() 
2023-12-20 13:43:45.964464 ThreadID:1   (ENTRY)   OracleValueGenerationStrategyConvention.ctor() 
2023-12-20 13:43:45.964505 ThreadID:1   (EXIT)    OracleValueGenerationStrategyConvention.ctor() 
2023-12-20 13:43:45.964522 ThreadID:1   (ENTRY)   OracleIndexConvention.ctor() 
2023-12-20 13:43:45.964529 ThreadID:1   (EXIT)    OracleIndexConvention.ctor() 
2023-12-20 13:43:45.964552 ThreadID:1   (ENTRY)   OracleValueGenerationConvention.ctor() 
2023-12-20 13:43:45.964558 ThreadID:1   (EXIT)    OracleValueGenerationConvention.ctor() 
2023-12-20 13:43:45.964790 ThreadID:1   (ENTRY)   OracleValueGenerationStrategyConvention.ProcessModelInitialized() 
2023-12-20 13:43:45.964818 ThreadID:1   (EXIT)    OracleValueGenerationStrategyConvention.ProcessModelInitialized() 
2023-12-20 13:43:45.974584 ThreadID:1   (ENTRY)   OracleValueGenerationConvention.ProcessPropertyAnnotationChanged() 
2023-12-20 13:43:45.974679 ThreadID:1   (EXIT)    OracleValueGenerationConvention.ProcessPropertyAnnotationChanged() 
2023-12-20 13:43:45.974691 ThreadID:1   (ENTRY)   OracleIndexConvention.ProcessPropertyAnnotationChanged() 
2023-12-20 13:43:45.974715 ThreadID:1   (EXIT)    OracleIndexConvention.ProcessPropertyAnnotationChanged() 
2023-12-20 13:43:45.975313 ThreadID:1   (ENTRY)   OracleValueGenerationConvention.ProcessPropertyAnnotationChanged() 
2023-12-20 13:43:45.975364 ThreadID:1   (EXIT)    OracleValueGenerationConvention.ProcessPropertyAnnotationChanged() 
2023-12-20 13:43:45.975374 ThreadID:1   (ENTRY)   OracleIndexConvention.ProcessPropertyAnnotationChanged() 
2023-12-20 13:43:45.975381 ThreadID:1   (EXIT)    OracleIndexConvention.ProcessPropertyAnnotationChanged() 
2023-12-20 13:43:45.975595 ThreadID:1   (ENTRY)   OracleIndexConvention.ProcessIndexAdded() 
2023-12-20 13:43:45.975629 ThreadID:1   (ENTRY)   OracleIndexConvention.SetIndexFilter() 
2023-12-20 13:43:45.975639 ThreadID:1   (EXIT)    OracleIndexConvention.SetIndexFilter() 
2023-12-20 13:43:45.975646 ThreadID:1   (EXIT)    OracleIndexConvention.ProcessIndexAdded() 
2023-12-20 13:43:45.975846 ThreadID:1   (ENTRY)   OracleValueGenerationConvention.ProcessPropertyAnnotationChanged() 
2023-12-20 13:43:45.975869 ThreadID:1   (EXIT)    OracleValueGenerationConvention.ProcessPropertyAnnotationChanged() 
2023-12-20 13:43:45.975884 ThreadID:1   (ENTRY)   OracleIndexConvention.ProcessPropertyAnnotationChanged() 
2023-12-20 13:43:45.975890 ThreadID:1   (EXIT)    OracleIndexConvention.ProcessPropertyAnnotationChanged() 
2023-12-20 13:43:45.976887 ThreadID:1   (ENTRY)   OracleIndexConvention.ProcessPropertyNullabilityChanged() 
2023-12-20 13:43:45.976938 ThreadID:1   (EXIT)    OracleIndexConvention.ProcessPropertyNullabilityChanged() 
2023-12-20 13:43:45.977010 ThreadID:1   (ENTRY)   OracleIndexConvention.ProcessPropertyNullabilityChanged() 
2023-12-20 13:43:45.977025 ThreadID:1   (EXIT)    OracleIndexConvention.ProcessPropertyNullabilityChanged() 
2023-12-20 13:43:45.977403 ThreadID:1   (ENTRY)   OracleIndexConvention.ProcessIndexAdded() 
2023-12-20 13:43:45.977427 ThreadID:1   (ENTRY)   OracleIndexConvention.SetIndexFilter() 
2023-12-20 13:43:45.977434 ThreadID:1   (EXIT)    OracleIndexConvention.SetIndexFilter() 
2023-12-20 13:43:45.977439 ThreadID:1   (EXIT)    OracleIndexConvention.ProcessIndexAdded() 
2023-12-20 13:43:45.977484 ThreadID:1   (ENTRY)   OracleIndexConvention.ProcessIndexUniquenessChanged() 
2023-12-20 13:43:45.977502 ThreadID:1   (ENTRY)   OracleIndexConvention.SetIndexFilter() 
2023-12-20 13:43:46.840785 ThreadID:1   (EXIT)    OracleIndexConvention.SetIndexFilter() 
2023-12-20 13:43:46.840933 ThreadID:1   (EXIT)    OracleIndexConvention.ProcessIndexUniquenessChanged() 
2023-12-20 13:43:46.841806 ThreadID:1   (ENTRY)   OracleIndexConvention.ProcessPropertyNullabilityChanged() 
2023-12-20 13:43:46.841842 ThreadID:1   (EXIT)    OracleIndexConvention.ProcessPropertyNullabilityChanged() 
2023-12-20 13:43:46.841935 ThreadID:1   (ENTRY)   OracleIndexConvention.ProcessPropertyNullabilityChanged() 
2023-12-20 13:43:46.841944 ThreadID:1   (EXIT)    OracleIndexConvention.ProcessPropertyNullabilityChanged() 
2023-12-20 13:43:46.842272 ThreadID:1   (ENTRY)   OracleIndexConvention.ProcessPropertyNullabilityChanged() 
2023-12-20 13:43:46.842284 ThreadID:1   (EXIT)    OracleIndexConvention.ProcessPropertyNullabilityChanged() 
2023-12-20 13:43:46.842311 ThreadID:1   (ENTRY)   OracleIndexConvention.ProcessPropertyNullabilityChanged() 
2023-12-20 13:43:46.842320 ThreadID:1   (EXIT)    OracleIndexConvention.ProcessPropertyNullabilityChanged() 
2023-12-20 13:43:46.842343 ThreadID:1   (ENTRY)   OracleIndexConvention.ProcessPropertyNullabilityChanged() 
2023-12-20 13:43:46.842356 ThreadID:1   (EXIT)    OracleIndexConvention.ProcessPropertyNullabilityChanged() 
2023-12-20 13:43:46.842376 ThreadID:1   (ENTRY)   OracleIndexConvention.ProcessPropertyNullabilityChanged() 
2023-12-20 13:43:46.842384 ThreadID:1   (EXIT)    OracleIndexConvention.ProcessPropertyNullabilityChanged() 
2023-12-20 13:43:46.843078 ThreadID:1   (ENTRY)   OracleIndexConvention.ProcessIndexAdded() 
2023-12-20 13:43:46.843104 ThreadID:1   (ENTRY)   OracleIndexConvention.SetIndexFilter() 
2023-12-20 13:43:46.843112 ThreadID:1   (EXIT)    OracleIndexConvention.SetIndexFilter() 
2023-12-20 13:43:46.843127 ThreadID:1   (EXIT)    OracleIndexConvention.ProcessIndexAdded() 
2023-12-20 13:43:46.843750 ThreadID:1   (ENTRY)   OracleIndexConvention.ProcessPropertyNullabilityChanged() 
2023-12-20 13:43:46.843779 ThreadID:1   (EXIT)    OracleIndexConvention.ProcessPropertyNullabilityChanged() 
2023-12-20 13:43:46.843845 ThreadID:1   (ENTRY)   OracleIndexConvention.ProcessPropertyNullabilityChanged() 
2023-12-20 13:43:46.843858 ThreadID:1   (EXIT)    OracleIndexConvention.ProcessPropertyNullabilityChanged() 
2023-12-20 13:43:46.844825 ThreadID:1   (ENTRY)   OracleIndexConvention.ProcessIndexAdded() 
2023-12-20 13:43:46.844847 ThreadID:1   (ENTRY)   OracleIndexConvention.SetIndexFilter() 
2023-12-20 13:43:46.844855 ThreadID:1   (EXIT)    OracleIndexConvention.SetIndexFilter() 
2023-12-20 13:43:46.844861 ThreadID:1   (EXIT)    OracleIndexConvention.ProcessIndexAdded() 
2023-12-20 13:43:46.844955 ThreadID:1   (ENTRY)   OracleValueGenerationConvention.ProcessPropertyAnnotationChanged() 
2023-12-20 13:43:46.844964 ThreadID:1   (EXIT)    OracleValueGenerationConvention.ProcessPropertyAnnotationChanged() 
<removed some reoccuring lines>
2023-12-20 13:43:57.122507 ThreadID:1   (ENTRY)   OracleValueGenerationConvention.ProcessPropertyAnnotationChanged() 
2023-12-20 13:43:57.122541 ThreadID:1   (EXIT)    OracleValueGenerationConvention.ProcessPropertyAnnotationChanged() 
2023-12-20 13:43:57.122547 ThreadID:1   (ENTRY)   OracleIndexConvention.ProcessPropertyAnnotationChanged() 
2023-12-20 13:43:57.122549 ThreadID:1   (EXIT)    OracleIndexConvention.ProcessPropertyAnnotationChanged() 
'WeatherContext' disposed.
System.NullReferenceException: Object reference not set to an instance of an object.

Update-Database (snippet)

Applying migration '20231128143139_xxxx'.
2023-12-20 14:14:01.752474 ThreadID:1   (ENTRY)   OracleMigrator.GenerateUpSql() 
2023-12-20 14:14:01.772051 ThreadID:1   (EXIT)    OracleMigrator.GenerateUpSql() 
'Weatherontext' disposed.
Disposing connection to database '' on server 'xxxx'.
Disposed connection to database '' on server '' (0ms).
System.NullReferenceException: Object reference not set to an instance of an object.

Include provider and version information

EF Core version: 8.0.0 Database provider: Oracle.EntityFrameworkCore (8.21.121) Target framework: .Net 8.0 Operating system: Windows 11 (23H2) IDE: Visual Studio 2022 (17.8.3)

alexkeh commented 9 months ago

Thanks @Shortcheese! I've been able to reproduce this error and filed a bug (36132873) to investigate the root cause and to fix the issue.