Hi,
Currently, what I see happen with MaxIdentifierLength is that the "relational" code truncates identifier strings (table names, column names, etc.) to the specified MaxIdentifierLength value (which defaults to 128 characters).
However, if the first 128 characters of the identifier is the SAME, then the names would clash/duplicated... and hence the table will fail to be created.
Thus, a simple truncation based on MaxIdentifierLength should not be the behavior, but it should rather truncate the string AND add some unique identifier to the name and still be within the MaxIdentifierLength limit.
And currently, it appears that this "relational" code that simply truncates the name cannot be overridden by the EF Core providers, so the provider writes are "stuck" with this issue where by default, unique names can be generated that adheres to the MaxIdentifierLength limit.
Can this be resolved so that identifers can be unique and still honor the MaxIdentifierLength limit?
Or at least allow the EF Core providers to override the implementation the enforces the MaxIdentifierLength limit?
Thank you very much in advance.
NOTE: Based on what we have checked, this issue exists with even with EF Core 2.2.
Hi,
Currently, what I see happen with MaxIdentifierLength is that the "relational" code truncates identifier strings (table names, column names, etc.) to the specified MaxIdentifierLength value (which defaults to 128 characters).
However, if the first 128 characters of the identifier is the SAME, then the names would clash/duplicated... and hence the table will fail to be created.
Thus, a simple truncation based on MaxIdentifierLength should not be the behavior, but it should rather truncate the string AND add some unique identifier to the name and still be within the MaxIdentifierLength limit.
And currently, it appears that this "relational" code that simply truncates the name cannot be overridden by the EF Core providers, so the provider writes are "stuck" with this issue where by default, unique names can be generated that adheres to the MaxIdentifierLength limit.
Can this be resolved so that identifers can be unique and still honor the MaxIdentifierLength limit?
Or at least allow the EF Core providers to override the implementation the enforces the MaxIdentifierLength limit?
Thank you very much in advance.
NOTE: Based on what we have checked, this issue exists with even with EF Core 2.2.