Closed JackMyers001 closed 1 year ago
This should now be fixed in develop branch.
@JackMyers001 You should be able to get the fix from GitHub Packages
I can confirm this patch has fixed my issue! Thanks so much for fixing it so quickly :)
The only oddity I have noticed (and I need to do more testing to confirm if it's related to this patch) is it appears that insert time has taken a hit; inserting some 1.3 million rows used to take ~280 seconds, but now takes more like 370. Again, need to do more testing to confirm.
I made some changes to how strings are marshaled to native code. Can you check if the latest preview package is faster?
Apologies for the slow response.
I had run some testing a week or so ago with DuckDB.NET.Data.Full
version 0.6.1-alpha.9
and I could have sworn that I remember seeing no performance change (i.e. still ~370 seconds). However, I have just run two runs over 1.3 million rows (the same data as before) and they both completed in ~255 seconds. I also tried out 0.6.1-alpha.10
, and that appears to have within margin-of-error performance gains.
The difference in my memory vs testing now could be a slight coincidence as I have changed a couple of settings for my test VM, however I didn't change the amount of RAM / CPU cores... Maybe I'm just losing it 🤣
Anyhow, it does appear that the second patch has fixed that performance degradation. I really appreciate your help!
Nice to hear that it runs fast again. As 0.7.0 was released yesterday, I'll push a new build in a day or two for these fixes and include the 0.7.0 build too.
Consider Sponsoring the Project if you want to support it.
When using the
DuckDBAppender
, I am receiving exceptions when inserting some Unicode characters. I believe this is a DuckDB.NET issue, as similar code works fine with Python.Example code (uses the new .NET6 console application template):
If
USE_APPENDER = true
, the program will crash when inserting the 3rd word with the following log:If
USE_APPENDER = false
, the program will complete successfully. Opening up the database with Tad reveals that all data was inserted successfully, with no encoding issues.The only way I have found to insert strings containing
Ø
has been to convert the string to ASCII likeEncoding.ASCII.GetString(Encoding.UTF8.GetBytes(s))
, however this results in theØ
being replaced with??
- not exactly desirable.Other information:
dotnet --version
is7.0.102
DuckDB.NET.Data.Full
, version0.6.1