A rough napkin calculation yields that 2^128 IP addresses would require 42e37 bytes to store an index of which ones were taken, and which ones were not. The number works out to about 42.5 billion yottabyes to do a full index. This is assuming that each address has a 1-bit result for each ipv6 index. Obviously, all of humanities' combined storage space would not amount to this number.
So how does issuing work? Do the addresses get administered sequentially, and by the time we use all the addresses, the previous addresses are reliably offline for the taking by the time we reach the last one? does the ISP reserve a band to allocate how they please?
How does the ipv6 addressing system work?