Which features do you want to see in next MyDAC versions?
Which features do you want to see in next MyDAC versions?
You can dedicate all three votes for single feature or distribute them for different features.
All three votes are used one by one by pushing "Submit Vote" button. Only users registered on the forum can vote.
All three votes are used one by one by pushing "Submit Vote" button. Only users registered on the forum can vote.
-
swierzbicki
- Posts: 451
- Joined: Wed 19 Jan 2005 09:59
All nice features
Just my comments;
There are also other requested things, like removing the Database_Name when creating SQL with SQLBuilder.
Now MySQL v5 is already in Release Candidate stage, so it will be also nice to have full MySQL 5 support
Just my comments;
This is delicated, breaking query would mean server rollback, sometimes it worse rollback than leaving running until end.TMyQuery.BreakExec. Add capability to break execution of any long query from another thread
There are also other requested things, like removing the Database_Name when creating SQL with SQLBuilder.
Now MySQL v5 is already in Release Candidate stage, so it will be also nice to have full MySQL 5 support
> This is delicated, breaking query would mean server rollback, sometimes
> it worse rollback than leaving running until end.
Yes, restrictions are unavoidable. We plan to do this task using KILL statement.
> Now MySQL v5 is already in Release Candidate stage, so it will be also
> nice to have full MySQL 5 support
What MySQL 5 features do you mean?
> it worse rollback than leaving running until end.
Yes, restrictions are unavoidable. We plan to do this task using KILL statement.
> Now MySQL v5 is already in Release Candidate stage, so it will be also
> nice to have full MySQL 5 support
What MySQL 5 features do you mean?
-
swierzbicki
- Posts: 451
- Joined: Wed 19 Jan 2005 09:59
If you find any unsupported MySQL 5 feature that you need please let us knowGEswin wrote:I haven't tried MySQL v5, it was just a general comment/idea. I see it has views/triggers/storedprocedures & dataschema, and afaik also some new field-types, but as said, i didn't try any of them right now, but I will soon.
"SSL support without using external dll "
YES! But how much heavier will the exe file size be?
Now i need to attach 2 dlls for SSL to work on Windows 98 SE and Me and this is really not perfect.
"Disconnected model. May be useful to save server resources and operate in unstable or expensive network (GPRS, modem etc)"
I would like MyDAC to be able to disconnect from server and still have the data in tables, then if necessary, update online database when the connection is back. So offline mode would be a great feature.
"AutoRefresh. Add capability to autorefresh dataset on server data change by timer-scheduled call to RefreshQuick. Useful to track changes made by other users"
Now i can add timer to my application and do the same(???)
What this feature will do then?
>Performance improvement
Yes, always.
CAN MyDAC/SDAC work on a separate threads, so they do not lock main application???
>TMyQuery.BreakExec. Add capability to break execution of any long query from another thread
Pleaae add this feature too.
YES! But how much heavier will the exe file size be?
Now i need to attach 2 dlls for SSL to work on Windows 98 SE and Me and this is really not perfect.
"Disconnected model. May be useful to save server resources and operate in unstable or expensive network (GPRS, modem etc)"
I would like MyDAC to be able to disconnect from server and still have the data in tables, then if necessary, update online database when the connection is back. So offline mode would be a great feature.
"AutoRefresh. Add capability to autorefresh dataset on server data change by timer-scheduled call to RefreshQuick. Useful to track changes made by other users"
Now i can add timer to my application and do the same(???)
What this feature will do then?
>Performance improvement
Yes, always.
CAN MyDAC/SDAC work on a separate threads, so they do not lock main application???
>TMyQuery.BreakExec. Add capability to break execution of any long query from another thread
Pleaae add this feature too.
>> "SSL support without using external dll "
> YES! But how much heavier will the exe file size be?
It is too early to speak about it. Of course, we will try to minimize project size increasing.
> Now i can add timer to my application and do the same(???)
> What this feature will do then?
Yes, it is only small improvement.
> CAN MyDAC/SDAC work on a separate threads, so they do not lock main application???
Yes, you can read details in MyDAC FAQ
> YES! But how much heavier will the exe file size be?
It is too early to speak about it. Of course, we will try to minimize project size increasing.
> Now i can add timer to my application and do the same(???)
> What this feature will do then?
Yes, it is only small improvement.
> CAN MyDAC/SDAC work on a separate threads, so they do not lock main application???
Yes, you can read details in MyDAC FAQ
For speed improvements I would definitely like to see the Handler command syntax implemented. See http://dev.mysql.com/doc/mysql/en/handler.html
For just one process, I execute tens of thousands of SQL Select queries that is sorted in the same order as an existing compound index. MySQL spends a great deal of overhead parsing the SQL and sorting the rows (around 8000 rows returned for each query). There are 10-100 million rows in the table.
The Handler more closely resembles a Delphi Table range (cursor) and has far less overhead than SQL. It uses the index to retrieve the rows in sorted order. It is also extremely fast (5x-10x) compared to SQL.
It has gotten to a point that I may chuck MySQL altogether and go with DBISAM or NexusDb just to use their table component and Ranges. Ideally I'd like to see the Handler implemented at a TTable so it is easier to use.
For just one process, I execute tens of thousands of SQL Select queries that is sorted in the same order as an existing compound index. MySQL spends a great deal of overhead parsing the SQL and sorting the rows (around 8000 rows returned for each query). There are 10-100 million rows in the table.
The Handler more closely resembles a Delphi Table range (cursor) and has far less overhead than SQL. It uses the index to retrieve the rows in sorted order. It is also extremely fast (5x-10x) compared to SQL.
It has gotten to a point that I may chuck MySQL altogether and go with DBISAM or NexusDb just to use their table component and Ranges. Ideally I'd like to see the Handler implemented at a TTable so it is easier to use.
>>Which HANDLER features can't you implement by TMyQuery?<<
A TMyQuery can do anything Handler can do and more. But more slowly.
Handler is like having a cursor into the table. You can open a Handler and access the next 100 rows in sorted order from a 10 million+ row table in zero milliseconds. SQL will take 200 ms or much longer if there is a sort. Handler will traverse the table in index order eliminating a separate sort step. You can fetch 'n' rows at a time so there is no wait time (TMySQL can try to fetch 'n' rows at a time but requires a great deal of overhead-spawns more threads and won't be any faster if traversing the entire table).
So Handler would be like have a true TTable (not one implemented using SQL), so you could have extremely fast table access in index order. If you're ever done Ranges in a TTable and compared that to a TSQL query, you'll find the Range is over 10x faster and the results are sorted according to your current index!
A TMyQuery can do anything Handler can do and more. But more slowly.
Handler is like having a cursor into the table. You can open a Handler and access the next 100 rows in sorted order from a 10 million+ row table in zero milliseconds. SQL will take 200 ms or much longer if there is a sort. Handler will traverse the table in index order eliminating a separate sort step. You can fetch 'n' rows at a time so there is no wait time (TMySQL can try to fetch 'n' rows at a time but requires a great deal of overhead-spawns more threads and won't be any faster if traversing the entire table).
So Handler would be like have a true TTable (not one implemented using SQL), so you could have extremely fast table access in index order. If you're ever done Ranges in a TTable and compared that to a TSQL query, you'll find the Range is over 10x faster and the results are sorted according to your current index!