Message 175754 - Python tracker
The issue is not only in difference between Python and C implementations, but also between 32-bit and 64-bit. pickle.py on 32-bit accepts data up to 2G. pickle.py on 64-bit accepts data up to 2G. _pickle.c on 32-bit accepts data up to 2G. _pickle.c on 64-bit accepts data up to 4G. 3:1 for 2G. Current _pickle.c behavior is just not portable. Of course, I can rewrite the patch, expanding the limit to 4G on 64-bit if you insist. But I doubt that this is the best variant.