we have multiple processes adding adding documents to the same collection in a single instance of solr. what will happen if all the apps send a commit all at the same once, or very close to each other? will it cause data corruption, or some kind of lock?
You are not going to get data corruption or locks, but you will get some performance issues as Solr will repeatedly do the heavy commit work (flush and reopen of readers).
If you are on latest Solr (4.3+), you could look into Soft/Hard commits based on timeout or document count. That way you don't need to manage the commits explicitly at all.