-
Notifications
You must be signed in to change notification settings - Fork 453
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
I cannot delete the language I downloaded #792
Comments
I cannot reproduce this problem. Sqlite.Exception "database disk image is malformed" sounds like a corrupted database file. |
If I run the shrink (admin/maintenance/systeminfo/) , I can delete it. if I can delete the language I added manually. this situation does not occur... |
@mgesing Please check again with SQLite. Could be a file locking problem caused by the fire-forget async operation. |
I still cannot reproduce it. Of course I have tried it with SQLite. |
Does this happen only with a specific language or with all downloaded languages? |
yes, I all downloaded languages.
note: as I understand it that when I use the admin panel in Turkish, it does not allow me to delete the languages which I downloaded? allows me to delete languages that I have manually saved (admin/language/create/). ================= I just realized now that this problem does not occur if shrink is run once. Now I download and delete and no error occurs. I made Turkish the second language and then updated it with the refresh button. then I made it the first language again and made the admin panel language Turkish. when I add a new language by download, this error occurs again |
Looks like the reason is a corrupted index on
gave me a hint about it.
fixed it for me. (It cannot be excuted via backend, only via SQLite Db Browser.) Had to switch back from Turkish to English to get the language deleted afterwards. How can a database system be so fragile.... |
https://ibb.co/Q8tRBqk |
I figured it out... problem is here >> I removed the DownloadCore method from being static - to be able to use the _xmlResourceManager from ctor now it is working...
|
But now you will have to deal with possible memory leaks, because Better we investigate what's going on in |
@suatsuphi Please test if the problem was fixed by b9110c5 for you, too. |
it is working now with the patch that you made. The index problem occurs when downloading, not deleting. The reason for this seems to be xmlResourceManager. Calling from xml ctor as below solves the problem. No index problem occurs as below.
XmlResourceManager.cs : I have culture in XmlResourceManager - even if I make the value here in English the same problem occurs. Like the exact solution above...
|
You do not understand scoping. Your code does not insert any string resource. That's why the database index does not get corrupted and why there is no "database disk image is malformed". |
you are right... but I think the problem is the XmlResourceManager. |
I changed this 271a052. This is Intellisense suggested and auto generated code from yesterday commit. If its German or invariant culture should not make any difference in this particular case. I'm surprised that bothers you. |
I thought the problem was with culture. I think I found out what the problem was. I tested it locally and it works fine.
I need to fix two ResourceValue values in all languages so that I can test them by downloading. otherwise it causes indexing and then malformed error.
I think the problem will be solved when we fix the "info" here in all languages. Because the "i" character is not equal to the "I" character. Can you fix this problem in xml files? |
Interesting, but this looks like a workaround. There are very many resource names that are lowercase and contain an i. Should they all be changed manually, for all 32 languages? |
No, just this tag > systeminfo, because the use is different like
|
Why these two? Why is the usage different? The XML contains a lot of names in lower case and LocalizedDisplay is always in pascal case. So the case applies to many string resources. |
because these two records are not pascal case
where is the converter that LocalizedDisplay is always in pascal case? Maybe something can be done here?
No, only pascal case applies to unused 'LocaleResource - Name' and just thesee two records We had a similar problem here. |
There are more than the two resources in lower case. These are very old resources that have been in the XML file from the beginning, not added later. I have fixed Admin.System.SystemInfo.AppVersion via migration now. But this is just the beginning. When you download Turkish you still get the lower case version though. I don't want to change it manually in Smartstore Translate. But you will get it after the next published Smartstore version when it will be changed there too. Smartstore Translate routinely updates the resources a short time after a new Smartstore version has been published. |
thank you I looked at the records and there are only 14 records with lowercase typed - pascal case does not fit.
only two of these records are causing problems.
the reason why these are causing problems is that the pascal case of the previous admin.system.systeminfo info is set differently
Admin.System.SystemInfo > where the letters S and I are capitalized but for the appversion resourcename it stays as Systeminfo. So it creates a different directory and this creates a problem. I don't understand at what stage this occurs, but I am sure it is related to the cache because I manually delete the relevant records and if I don't delete the cache, it gives an error. So I have to delete the cache. There is a situation related to the pascal case between the cache and the database beacuse SystemInfo is not equal Systeminfo |
|
Hi,
It gives me an error when I delete the language I downloaded from Available Languages in the Languages section.
I can delete the language I added manually.
https://ibb.co/qpnBGgB
The text was updated successfully, but these errors were encountered: