There are a couple of reasons we chose the integer IDs:
- They are easier to type, as a lot of practical work for FWs is to do things like “lpad get_wfs -i 3534” and this can be easier than copy-pasting Mongo IDs. I think this is the main reason.
- It can be easier to copy a FireWorks document - for example, if you copy a document and then insert it into a new database, all the relevant information is preserved. It becomes trickier if you are trying to preserve Mongo IDs unless you use dump/restore tools.
There are good reasons to use Mongo IDs as well - in addition to what you pointed out, there would be much less likelihood of a conflict if you try to merge two FWS databases. This would probably be one of the more useful cases for switching.
All that stated, my sense is that you will probably run into other performance issues before hitting your 2 billion limit for FW ids. And if you are using FWS that heavily, it might be worth just starting a second database. So unfortunately, I don’t think it is on the current roadmap to change the ID type as I think this will be a major undertaking, particularly if we try to keep backward compatibility with existing FWS databases.