Photos are kept on the photo stream servers for up to 30 days, and only a max of 1000. When a computer or device is connected to photo stream, it will keep photos there, even when they are no longer available on the servers. If you turn off photo stream, then turn it on again, you will then get only those photos still on the servers. All others will have been deleted of the device.
Photos should be regularly synced to a computer (like you store photos from a digital camera) using either USB via iTunes (on a mac use iPhoto or Aperture to move them to an album) or using photo stream - and then moved into permanent albums for storage. If using Photo stream, but sure to move the received photos to a permanent album. If you have been doing that, then you can sync those photos back to your device.
One more note: My shared photo stream downloaded (well 4/10 of it), but not my regular photo stream. Also, once I was able to get two photos to download, but I know that is not all that I had taken in the past 30 days. Essentially iPhoto will say "downloading __ photos" but nothing will ever download. This is all I ever see now. A couple days ago, the number up ontop was 377. I cannot figure out what is going on.
I am having the same problem. iPhoto photostream shows "downloading 55 photos" but no photos ever download. I've tried turning off icloud and turning it back on on my mac, and that didn't help. I have photos from my iPad photostream that are just a few days old so they haven't expired. Did you ever get anywhere on this problem?
As a test launch iPhoto with the Option key held down and create a new, test library. Import some photos and test to see if the same problem persists. Does it?
If it doesn't and you are able to download successfully into the new library then your existing library needs repairs: apply the two fixes below in order as needed:
Launch iPhoto with the Command+Option keys held down and rebuild the library.
Since only one option can be run at a time start
with Option #4 and then #1 as needed.
Using iPhoto Library Manager to Rebuild Your iPhoto Library
1 - download iPhoto Library Manager and launch.
2 - click on the Add Library button, navigate to your Home/Pictures folder and select your iPhoto Library folder.
3 - Now that the library is listed in the left hand pane of iPLM, click on your library and go to the File ➙ Rebuild Library menu option.
4 - In the next window name the new library and select the location you want it to be placed.
5 - Click on the Create button.
Note: This creates a new library based on the LIbraryData.xml file in the library and will recover Events, Albums, keywords, titles and comments. However, books, calendars, cards and slideshows will be lost and converted to albums. The original library will be left untouched for further attempts at fixing the problem or in case the rebuilt library is not satisfactory.