As part of a POC, someone had created a big object called
StatusTracking__b. After a few stuff-ups they ended up keeping
StatusTracking3__bin the system.
The time has come for things to get refactored and I thought I’d go back and use a proper API name for this object, so I tried to deploy a new metadata definition for
StatusTracking__b. The platform complained with:
objects/StatusTracking__b.object — Error: That object name is already
I have gone through all things – metadata API, enterprise WSDL, describes, SOQL queries and I can assure you that this object does not exists – at least form my perspective.
System.NullPointerException: Attempt to de-reference a null object
To confirm this I created a brand new big object
Boris__band also created a bunch of records. Then I deleted this object (and erased it). Second time around I was able to deploy the metadata definition using the same API name
Boris__bwithout any issues.
Is this an intermittent bug with big objects or is there something that I could be missing? Where else could the object name be used, without the actual definition (object doesn’t exist)?
Apparently, this works as expected. Salesforce support came back with an answer that the prefix of the object name (the API name before the
__) must be unique across any object types (custom, big, platform events etc.).
To verify this I tried creating a big object and a platform even that had the same prefix as one of my other custom objects, and I got the same error.
Lesson learned the hard way – keep your object names unique across all different types.