I'm having problems with disappearing "fillfactor" property from PrimaryKeys.
finally i reproduced this problem to having imports a database into a model. Checkk if fillfactors are set and if not set them for the Primary keys.
Then do a second import from database for a different table (not importing the first tables again!).
After this second import the fillfactor of the first "untouched" tables have disappreared.
I need this solved since i cannot do a database comparison without correct fillfactor settings and not being able to do an import for a new table is no solution.
Regards
![]() |
168 KB
|
112 KB
|
117 KB
|
108 KB
|
77 KB
|
109 KB
|
78 KB
|
69 KB
|
62 KB
Hi Coen,
I am not clear about your issue. Are you talking about SQL Server fill factor? What version of the database? Can you give me a test case so that I can recreate it?
Thanks,
Tom
See added attachment with steps to reproduce
See added attachment with steps to reproduce
Hi Coen,
I ran your test case and it seems to return the fill factor correctly. Perhaps an extraction query is failing. Please turn on Help->SQL.Log and Help->View.Log and rerun your test case. Do you see any queries that are failing? If so, please send me the query with a screenshot. The queries that you see in the SQL.Log when opening ERM are the extraction queries used to get the data to populate ADS->ERM.
Thanks,
Tom
Hi Coen,
I ran your test case and it seems to return the fill factor correctly. Perhaps an extraction query is failing. Please turn on Help->SQL.Log and Help->View.Log and rerun your test case. Do you see any queries that are failing? If so, please send me the query with a screenshot. The queries that you see in the SQL.Log when opening ERM are the extraction queries used to get the data to populate ADS->ERM.
Thanks,
Tom
Tom hi,
all runs well , no errors , but i still can reproduce this problem. If you want i can demonstrate with a remote session.
Coen
Tom hi,
all runs well , no errors , but i still can reproduce this problem. If you want i can demonstrate with a remote session.
Coen
Hi Coen,
Hmm... Let's see if the database actually got updated or is it an ADS display problem. When you get the empty fill factor for your test scenario, please run the query below and see if the database was updated. You can run the query before and after the import also to see if the constraint was changed. Another way to test the constraint is to just create the constraint in a new query analyzer window. Since I can't seem to recreate the issue on my machine, this should help identify where the problem is.
Thanks, Tom
SELECT t.name TABLE_NAME, i.name index_name, INDEXPROPERTY(t.object_id, i.name, 'IndexFillFactor') indexFillFactor, i.has_filter, i.filter_definition, i.type FROM sys.objects t LEFT JOIN sys.indexes i ON t.object_id = i.object_id WHERE SCHEMA_NAME(t.schema_id) = N'dbo' AND t.name = N'AanslagSoort'
Hi Coen,
Hmm... Let's see if the database actually got updated or is it an ADS display problem. When you get the empty fill factor for your test scenario, please run the query below and see if the database was updated. You can run the query before and after the import also to see if the constraint was changed. Another way to test the constraint is to just create the constraint in a new query analyzer window. Since I can't seem to recreate the issue on my machine, this should help identify where the problem is.
Thanks, Tom
SELECT t.name TABLE_NAME, i.name index_name, INDEXPROPERTY(t.object_id, i.name, 'IndexFillFactor') indexFillFactor, i.has_filter, i.filter_definition, i.type FROM sys.objects t LEFT JOIN sys.indexes i ON t.object_id = i.object_id WHERE SCHEMA_NAME(t.schema_id) = N'dbo' AND t.name = N'AanslagSoort'
tom i think i should clarify because you are asking me to see whether the SQL database gets changed, but thats not the problem.
Clarification: I'm not changing the database. I'm importing the database (in 2 steps) into my ER model and after the second import the model is not showing the correct value anymore for the fillfactor (while the fillfactor and everything else in the database is untouched/unchanged).
TABLE_NAME index_name indexFillFactor has_filter filter_definition type
tom i think i should clarify because you are asking me to see whether the SQL database gets changed, but thats not the problem.
Clarification: I'm not changing the database. I'm importing the database (in 2 steps) into my ER model and after the second import the model is not showing the correct value anymore for the fillfactor (while the fillfactor and everything else in the database is untouched/unchanged).
TABLE_NAME index_name indexFillFactor has_filter filter_definition type
Hi Coen,
Ok. I got it now. Yes, I am able to re-create the error. Let me dig into the code and see what is causing the issue. Will get back to you shortly.
Thanks for your patience,
Tom
Hi Coen,
Ok. I got it now. Yes, I am able to re-create the error. Let me dig into the code and see what is causing the issue. Will get back to you shortly.
Thanks for your patience,
Tom
The reason that this is happening is that the ADS conversion logic when importing a new database into a current diagram isn't that detailed. Even though the two databases are identical, our conversion logic will pick up the constraint but not the options in the constraint. I believe this is done since each database type(we have 30 of them) that can be imported has it's own detail information for it's constraint.
I don't really have a work around for this other than to import all the tables for a single database at the same time or have two separate diagrams.
Will leave this issue open to explore for a future release.
The reason that this is happening is that the ADS conversion logic when importing a new database into a current diagram isn't that detailed. Even though the two databases are identical, our conversion logic will pick up the constraint but not the options in the constraint. I believe this is done since each database type(we have 30 of them) that can be imported has it's own detail information for it's constraint.
I don't really have a work around for this other than to import all the tables for a single database at the same time or have two separate diagrams.
Will leave this issue open to explore for a future release.
Put a break point on EDiagram convert at this line...
EConstraint c2 = c.convert(newDB, lookup, t2);
as a starting point to debug.
Put a break point on EDiagram convert at this line...
EConstraint c2 = c.convert(newDB, lookup, t2);
as a starting point to debug.
Issue #15873 |
In Progress |
Completion |
No due date |
No fixed build |
No time estimate |
Hi Coen,
I am not clear about your issue. Are you talking about SQL Server fill factor? What version of the database? Can you give me a test case so that I can recreate it?
Thanks,
Tom