It's a pretty straightforward error message. Some of your rows have columns
with empty names (e.g. an empty string), and column names can't be empty.
2011/11/27 Masoud Moshref Javadi
> I get this error
>
> Required field 'name' was not present! Struct: Column(name:null)
>
> on different column families. My code is going to insert lots of rows in
> parallel.
>
> I think this debug log from django may help:
>
>
>
>- /root/twiss/lib/python2.7/site-packages/pycassa/pool.py in new_f
> 1.
>
> if self.max_retries != -1 and self._retry_count >
> self.max_retries:
>
>2.
>
> raise MaximumRetryException('Retried %d times. Last
> failure was %s: %s' %
>
>3.
>
> (self._retry_count,
> exc.__class__.__name__, exc))
>
>4.
>
> # Exponential backoff
>
>5.
>
> time.sleep(_BASE_BACKOFF * (2 ** self._retry_count))
>
>6.
>7.
>
> kwargs['reset'] = True
>
> 1.
>
> return new_f(self, *args, **kwargs)
>
> ...
> 1.
>2.
>
> new_f.__name__ = f.__name__
>
>3.
>
> return new_f
>
>4.
>5.
>
> def _fail_once(self, *args, **kwargs):
>
>6.
>
> if self._should_fail:
>
> ▼ Local vars <http://204.57.0.195/LOAD/#>
> Variable Value exc
>
>EOFError()
>
> f
>
>
>
> self
>
>
>
> args
>
>({'user50': {'User':
> [Mutation(column_or_supercolumn=ColumnOrSuperColumn(column=Column(timestamp=1322382778794088,
> name='password', value='password50', ttl=None), counter_super_column=None,
> super_column=None, counter_column=None), deletion=None),
>
> Mutation(column_or_supercolumn=ColumnOrSuperColumn(column=Column(timestamp=1322382778794088,
> name='name', value='User 50', ttl=None), counter_super_column=None,
> super_column=None, counter_column=None), deletion=None)]}},
> 1)
>
> new_f
>
>
>
> kwargs
>
>{'reset': True}
>
> - /root/twiss/lib/python2.7/site-packages/pycassa/pool.py in new_f
> 1.
>
> result = f(self, *args, **kwargs)
>
>2.
>
> self._retry_count = 0 # reset the count after a success
>
>3.
>
> return result
>
>4.
>
> except Thrift.TApplicationException, app_exc:
>
>5.
>
> self.close()
>
>6.
>
> self._pool._decrement_overflow()
>
>7.
>
> self._pool._clear_current()
>
> 1.
>
> raise app_exc
>
> ...
> 1.
>
> except (TimedOutException, UnavailableException,
> Thrift.TException,
>
>2.
>
> socket.error, IOError, EOFError), exc:
>
>3.
>
> self._pool._notify_on_failure(exc, server=self.server,
> connection=self)
>
>4.
>5.
>
> self.close()
>
>6.
>
> self._pool._decrement_overflow()
>
> ▼ Local vars <http://204.57.0.195/LOAD/#>
> Variable Value f
>
>
>
> self
>
>
>
> args
>
>({'user50': {'User':
> [Mutation(column_or_supercolumn=ColumnOrSuperColumn(column=Column(timestamp=1322382778794088,
> name='password', value='password50', ttl=None), counter_super_column=None,
> super_column=None, counter_column=None), deletion=None),
>
> Mutation(column_or_supercolumn=ColumnOrSuperColumn(column=Column(timestamp=1322382778794088,
> name='name', value='User 50', ttl=None), counter_super_column=None,
> super_column=None, counter_column=None), deletion=None)]}},
> 1)
>
> app_exc
>
>TApplicationException(None,)
>
> new_f
>
>
>
> kwargs
>
>{}
>
>
>
>
>
--
Filipe Gonçalves