Aug 23, 2007

Settings, they are supposed to help ?!?

Yesterday I had a tricky problem. I client of our company complained he can't upload files on our system. I started troubleshooting the problem. Each time I clicked the "Continue" button exception was thrown as if an assembly can not be found. It was pain in the neck. The assembly was something like "System.Web.UI.MobileControls.Adapters" (I can't remember the exact name now but it doesn't matter as we didn't use that assembly at all). I asked a collegue of mine for help (thanks Vesko!). The problem was in Machine.config file so we decided to back it up and comment that provider to see what will happen. It threw an exception, but this time more reasonable. It said there is no disk space. I logged again onto the server to free some more space
and gues what? There were 60GB of free disk space! I started to think where the problem might be and tried to find solution in Google. It finally appeared that the problem is a setting within the OS. Short explanation below:
Windows 2003 Server uses NTFS file system. This file system is capable of maintaining disk quotas for each user. In other words - the administrator may define how much disk space each user can use. It was set to 1 GB for the user, running the service responsible for the upload. So I set it to 3 GB, tested to see if it works and it worked. Then I left the server and asked the administrator to decide how much disk space will be available to the user running the process.

After this space is used again I will know what to do ;).

So I learned very useful lesson - first check the settings and then try to debug or touch the code. In most cases if the code worked before and you know nothing has changed - this means that some resources available to the application before aren't available now OR someboddy changed some setting which was important for your code to run smoothly.