The API said:
False on failure to retrieve contents or the cache contents on success
http://codex.wordpress.org/Function_Reference/wp_cache_get

You want to check if the cache exists first ($group_list == false) before doing the in_array.

So `if( $group_list == false || !in_array($group, $group_list) )` would be better