(I have a script needs to build up a table of UID/screenname
associations for a particular social networking site. This could
clearly become a moderately large string.)
-pm
I've just tested this.  Running up to a 32 meg string seems to work
without major issues, but 64 or 128 starts to thrash the disk for
virtual memory a fair deal.
I think the issue is the number of preferences more than the size of any
one string.  But to be honest, I can't replicate that, either.  After 
setting and getting randomly named preferences in groups of 1000, the 
time to do so is not growing.  (Actually, after a restart to check how 
many lines prefs.js was, it started going much faster!)  And I'm running 
over 50k distinct preferences now.
I suppose, ultimately, the real limitation is that all of the entire 
preferences store is open in memory the whole time that Firefox is running.