That was originally part of the design spec. The hope was that the price of bitcoin would get so high that you had to break it up into smaller units.
We have mBTC (1/1000th of a BTC), uBTC (1/1000,000th of a BTC) and the "Satoshi" (1/100,000,000th of a BTC).
At current prices, $1 USD = 57 uBTC.
That's interesting. I hadn't known that.
Looked it up, admittedly very cursorily, and apparently the tiny Satoshi unit can get recorded in the blockchain. That's very cool, in that that specific issue I spoke of had clearly been pre-empted, and a workaround already built in. So I can, already, and ignoring all other issues for the moment, actually order a pizza today using BTC.
Heh, but that also means Satoshi had intended, or at least pre-empted (maybe hoped and prayed for?!), this frenzy of speculation interest. ............But I guess that's kind of unfair, that criticism, because if you don't do it it's a design glitch, and if you do then it's greedy hope-to-get-rich-quick cunning!
So, the sense I get from a cursory read of some stuff, is that as we get closer to the limit, it isn't that mining will stop, but that smaller and smaller units will be produced, in lesser and lesser amounts. Of course, whether that will be cost-effective will be a function of the price levels prevailing, as always.