Denis Otkidach

Results 101 comments of Denis Otkidach

0.8.0 is just released. But beware, as it still has [a known bug with zstd](https://github.com/aio-libs/aiokafka/issues/843).

> Notice that [first error log](https://github.com/aio-libs/aiokafka/blob/6b15132f68bfd7925e1eb97257580b76d39858b7/aiokafka/client.py#L462) is missing stringified err (so it's probably an instance of OSError) and next logs comes probably from: It's certainly a bug, and it's easy...

@hellocoldworld Could you provide more info? The original problem stated here should have been fixed in https://github.com/aio-libs/aiokafka/pull/810

All binary wheels contain pre-build extensions, but you can set `AIOKAFKA_NO_EXTENSIONS=1` environment variable to disable them. Also you can import aiokafka directly from source, when extensions are not built.

The only place where `_fetch_task` is cancelled is the `Fetcher.close()` method. Or do you see other options? Also, for this exception to be propagated, you have to await the task,...

Hmm, there is other option to get `CancelledError` [here](https://github.com/aio-libs/aiokafka/blob/master/aiokafka/consumer/fetcher.py#L512-L517): ```python for task in self._pending_tasks: # Those tasks should have proper handling for # cancellation if not task.done(): task.cancel() await task...

> Which index? `self._requests` is a `deque`, so `self._requests[0]` raises `IndexError` when it's empty.

As @vmaurin already mentioned, disabling autocommit won't solve your problem completely, as offset may have already been committed to this moment. One solution is to commit offset manually after handling...

You can start consuming without group from the beginning (see `seek_to_beginning` method) or any other offset (e.g. see `offsets_for_times` and `seek` methods) in the past.

You don't need assignment if you don't use groups and not going to distribute messages among workers. But you need to seek for _all_ partitions you have. Use `partitions_for_topic` method...