Closed newHand1 closed 2 months ago
I drop a table encrypted by AES 256,why cost less time when use wxsqlite3 version 3.5.9,but cost more time when use wxsqlite3 version 4.0.0?
You are giving too little information to allow thorough analysis of what may be going on.
What does "larger data" mean? Are you talking of thousands, millions or billions of data rows resp megabytes, gigabytes or terabytes of data? What size does your database have?
What does "much time" mean? Are you talking of milliseconds, seconds, minutes ...?
wxSQLite3 version 3.5.9 and 4.0.0 are both over 6 years old. Do you experience the same problems with more recent versions?
The encryption algorithms themselves did not change between the mentioned versions. Version 4.0.0 added the option to select the encryption scheme at runtime. This only adds a level of indirection and can hardly explain bigger time differences. However, the included SQLite version changed, too, from version 3.22.0 to 3.23.0.
Searching the internet for sqlite3 drop table slow
results in many hits. That is, you are not the only one experiencing performance problems with drop table
- and that has nothing to do with encryption. Dropping a table in SQLite can be an expensive operation, because SQLite may have to change many database pages on disk. There are many factors that have influence on performance - like cache size, page size, foreign keys, journal mode etc.
One experiment I would recommend would be to test the behaviour of drop table
with an unencrypted database with both wxSQLite3 resp SQLite3 versions. This would allow to verify whether encryption is really responsible for time differences.
OK,I'll look for problems with my own program and try to do some test.Thank you for your answer.
I drop a table encrypted by AES 256,why cost less time when use wxsqlite3 version 3.5.9,but cost more time when use wxsqlite3 version 4.0.0?Thanks for answering;