You can't put null in a lowercase long, thus strongly signifying that the default is not "null" (but -1 here).

Now, the even better option is IMO to use Long and use null as the semantic null, handling this at either a Pojo ModuleOptions level, or in SD hadoop directly