Hi to all,
I have a problem, we have moved the DB on a Sql server, and in some situations the performances of the system am notably lowered.
Looking for to understand something, we have performed the Trace with the Monitor client.
What we have ascertained that some time, to a SetCurrentKey ( Key1, Key2...), SetRange ( Key1,..) in Navision, it corresponds a totally wrong use of the key in SQL.
Does some know how to says me the because?
God does not play dice with the universe. [Albert Einstein]
0
Comments
Client 3.70B
See also my response in http://www.mibuso.com/forum/viewtopic.php?t=7235
No PM,please use the forum. || May the <SOLVED>-attribute be in your title!
With the Client Monitor, I get: Time server: 300 ([ms]), then much fast the SQL Query, while, Elapsed Time: 25.000 ([ms]), anyone has determined this loss of time? and because?
Thanks.
I think that "Server time" is the time the CPU of the server was occuppied to find the records. "Elapsed Time" is the time it needed to do it, this because other processes also used time in the same moment and they had to share the time.
Maybe someone else has a better idea.
No PM,please use the forum. || May the <SOLVED>-attribute be in your title!
Then is not possible that a time uses the key near, and an other be wrong key, I don't understand the motive of this.
This happens since are passed to the SQL DB.
-it can also be that there is some extra processing on the form that sometimes doesn't trigger and sometimes it does.
-it can be that the first time it is slow, and the next times it is fast. This is because the next times, the data is in the DB-cache and it is faster to get the data. But this means something is read from the DB with bad indexes (Some filters on the table, some flowfields that are calculated with bad indexes)
These are all guesses.
No PM,please use the forum. || May the <SOLVED>-attribute be in your title!
The
FilterGroup(2);
..
SetRange(..)
..
FilterGroup(0)
It may influence on the speed ???
On SQL the FilterGroup as they act??
This can be used to put a filter in another filtergroup, and then getting back to filtergroup 0 to avoid that the user can see a filter or change it.
It can also be used to put 2 filters on the same field.
Eg. Give me all customers with an 'a' in their name and a 'b' in their name.
This will only retain the last filter.
This takes both filters.
In short : the filtergroup itself does not influence the speed. The SETRANGE,SETFILTER in a filtergroup influences the speed like a SETRANGE,SETFILTER without filtergroup.[/code]
No PM,please use the forum. || May the <SOLVED>-attribute be in your title!