Hello Andrew,

On 05.02.2013 21:13, Andrew M. Bishop wrote:
Since 2^31 nodes will make older versions of some software unusable
and 2^32 nodes will make other versions unusable it would be helpful
to have a wiki page to record this information.  I think that most
useful would be a table of the minimum version of each piece of
software to support true 32-bit (> 2^31) and 64-bit node numbers.

I was going to suggest exactly the same.

I recently double checked and contrary to my believe, my server was not a 64bit installation but 32bit userland inside a 64bit kernel. Maybe I selected the wrong basic image when buying the vserver years ago. And PHP has only 64bit ints as a 64bit binary :(

I verified my scripts and think they are safe. You might want to check yours as well.

I hope most software should be able to handle a long long (64bit int) on a 32 bit platform, checking does help bringing clarity.

Sharing some basic stuff for an upcoming wiki page:

How do I find out how many bits my server OS has?

Windows:
"wmic os get osarchitecture"

Linux
kernel:
uname -m

software:
dpkg --print-architecture


Webspace with PHP:
<?php
echo "PHP int size: ".PHP_INT_SIZE." which is max ".PHP_INT_MAX;


Consequences of 32 bit:
PHP doing postgresql queries return ID from bigint column not as integer, but as string. If doing numerical operations a lib like GMP is required.


Stephan


_______________________________________________
dev mailing list
[email protected]
http://lists.openstreetmap.org/listinfo/dev

Reply via email to