In the past I came across two strange errors when processing a cube:
- Locale 8129 not supported – this was just a warning, processing succeeded. Still, it didn’t radiate confidence. Something was going to go wrong at some point
- A device attached to the system is not functioning – this was an error, and processing didn’t succeed.
Both seem to be related to the same underlying problem : the locale of the account used to process the data into the cube..
Procedure
- Find out which account is running the SQLServer instance
- Find out what the SID is of this account
- Lookup the locale in the registry for this SID
- Restart SQLServer
- Process without warnings or errors related to locale
Find account that runs SQLServer instance
NT Service\MSSQL$SQL is the account created by the installer of named instance SQL of SQLServer. This is the account that has an incorrect locale set.
Find SID
Install PSTools (which you can download here: https://docs.microsoft.com/en-us/sysinternals/downloads/pstools ) and use psgetsid to retrieve the SID of the account used to run the SQLServer service noted in above step.
Update locale in registry
Now that we know the SID, we’ll find it in the registry (use regedit.exe) to update the locale that is set for it. In this example we’ll update the locale to 1033 en-US, the default, but you can choose as you need for the list of valid locales. The list can be found here: https://docs.microsoft.com/en-us/openspecs/windows_protocols/ms-lcid/70feba9f-294e-491e-b6eb-56532684c37f
Make sure to update in the Key Computer\HKEY_USERS\<SID-from-previous-step>\Control Panel\International:
- the Value Locale to the HEX value of the locale.
E.g. if you want to use 1033 (Default English Locale ID), the HEX value is 00000409, with the 0 padding in front to 8 digits. - the Value LocaleName to the name, in this case en-US, matching the 1033.
Restart
Restart the server where SQLServer is running on, for the changes to become active. The cube now processes fine.
Read more
If you’re interested in SQLServer article I make, make sure to read others like:
Casper Kristiansen
This did not work for me. When trying to deploy or process my Cube, i get the message “A Device Attached To The System Is Not Functioning”.. I don’t get an locale error, and didn’t even get that before, but now i changed the locale as in your guide..
Do you have any recommendations on what to do?
Rob Devilee
Thanks, this solved the issue for me.
In addition, I also changed the locale on my computer from en-NL to en-US.
THOMAS HUBER
I changed the Locale and Locale Name, but still get the same error (even after a reboot)
mattias
Hi Thomas, it’s been a while since I did this, which version of SSAS are you using? Do you have it in other environments as well?
THOMAS HUBER
Hi, SSAS is version 15.0.35.33, OS is Windows 10 Version 21H2 (OS Build 19044.1889)