uid_t and gid_t is uint32_t (unsigned 32bit integers). They are printed as signed integers when calling getfacl (and other tools using the acl_to_text() libc function). This causes uid/gids larger than 2G (214783648) to print as negative numbers - which causes problem with setfacl since the acl_from_text() libc function fails on negative numbers.
# mkdir testdir
# chgrp 3000000005 testdir
# setfacl -x 1 -a 1 group:3000000005:full_set:fd:allow testdir
# getfacl testdir
# file: testdir
# owner: root
# group: 3000000005
owner@:rwxpDdaARWcCos:fd-----:allow
group:-1294967291:rwxpDdaARWcCos:fd-----:allow