I'm new to salesforce and I'm doing the Trailhead problem about the validation ruels. This is che challenge:
To complete this challenge, add a validation rule which will block the insertion of a contact if the contact is related to an account and has a mailing postal code (which has the API Name MailingPostalCode) different from the account's shipping postal code (which has the API Name ShippingPostalCode). Name the validation rule 'Contact must be in Account ZIP Code'. A contact with a MailingPostalCode that has an account and does not match the associated Account ShippingPostalCode should return with a validation error and not be inserted. The validation rule should ONLY apply to contact records with an associated account. Contact records with no associated parent account can be added with any MailingPostalCode value. (Hint: you can use the ISBLANK function for this check)
This is my validation rule:
AND( NOT( isblank(AccountId ) ) , MailingPostalCode <> Account.ShippingPostalCode )
It raises this error (I see it in the Trailhead pages):
Challenge not yet complete... here's what's wrong: There was an unexpected error in your org which is preventing this assessment check from completing: System.DmlException: Insert failed. First exception on row 0; first error: FIELD_CUSTOM_VALIDATION_EXCEPTION, Postal code not consistent in contact and account: 
Moreover, if I manually test it creating and updating Contact and Account records I can update records without errors but not insert records (the error always show and it seems that che rule
NOT( isblank(AccountId ) ) is always true during the insert operation.