Dataflow runner specialization of PubsubIO should validate messages
Currently invalid messages, such as those with attributes exceeding the maximum size are processed by the bundle successfully but fail to commit.
Throwing an exception when trying to write such a message directly would increase visibility as well as allowing users to catch and handle such exceptions.
Imported from Jira BEAM-12942. Original Jira may contain additional context.
Reported by: scwhittle.