>>Is the production server 64bit? Are you compiling for 64bit (or Any CPU) ? Do the dev servers have more RAM than the production server?
>
>It seems this was related to a FileToStr() of a 80MB file, which was caused by a bad manipulation of content from a user. That seems to be too big to be considred by UCase() despite the fact that it was possible to store the content of that file into a string. I will add verification to prevent such a situation in the future at that specific location in case a user does that again.
Keep in mind that an 80MB file occupies 160MB once read into memory with your FileToStr() ( and UCase another 160MB)
Just did a test
- created an 80MB file
- read into a string with File.ReadAllText()
- ran the regex (about 160000 matches)
- filled the LIst()
Total time: 1.6 sec
Gregory