code: def _put_attributes_using_post(self, domain_or_name, item_name, attributes,
                                 replace=True, expected_value=None):
      
      domain, domain_name = self.get_domain_and_name(domain_or_name)
      params = {'DomainName': domain_name,
                'ItemName': item_name}
      self._build_name_value_list(params, attributes, replace)
      if expected_value:
          self._build_expected_value(params, expected_value)
      # The addition of the verb keyword argument is the only difference to put_attributes (Hannes)
      return self.get_status('PutAttributes', params, verb='POST')
docs: Monkey-patched version of SDBConnection.put_attributes that uses POST instead of GET
  
      The GET version is subject to the URL length limit which kicks in before the 256 x 1024 limit
      for attribute values. Using POST prevents that.
  
      https://github.com/BD2KGenomics/toil/issues/502