tremor-runtime icon indicating copy to clipboard operation
tremor-runtime copied to clipboard

Otel upgrade

Open dak-x opened this issue 2 years ago • 5 comments

Pull request

Description

Adds a configurable compression on otel connectors. Integration tests are a copy of existing otel tests with only a modification to connectors config.

Note that tonic only supports gzip as of now. This code will require changes once tonic has a new release as these function signatures have changed. Refer here for the latest (not released)

Related

  • Related Issues: closes #1688
  • Related [docs PR]: https://github.com/tremor-rs/tremor-www/pull/222

Checklist

  • [X] The RFC, if required, has been submitted and approved
  • [X] Any user-facing impact of the changes is reflected in docs.tremor.rs
  • [X] The code is tested
  • [X] Use of unsafe code is reasoned about in a comment
  • [X] Update CHANGELOG.md appropriately, recording any changes, bug fixes, or other observable changes in behavior
  • [ ] The performance impact of the change is measured (see below)

dak-x avatar Jul 07 '22 11:07 dak-x

I acknowledge the formatting and clippy warnings. Will fix in the next iteration.

dak-x avatar Jul 07 '22 11:07 dak-x

Discussion with Matthias: We witness the tests for googapis failing. googapis consumes tonic = ^0.6.1, now this was fine previously. But in this change we enabled the compression feature on tonic in the tremor-otelapis crate. This feature introduced a problem which is fixed in tonic = 0.7. cargo does not build the same version of the same crate multiple times, and features apply to the whole dependency tree. As per semver rules, tonic = 0.6.2 with compression is the only version of tonic that is built.

Migrating tremor-otelapis to consume tonic = 0.7 was discussed, as then cargo would build both version of tonic. But this still comes with the problem that tremor-runtime depends on tonic = 0.6.1 and otel-clients are instantiated in the tremor-runtime, and I am unsure how two incompatible versions of tonic will behave.

If this issue is not priority then we must wait till googapis migrates to tonic - 0.7.

dak-x avatar Jul 08 '22 10:07 dak-x

The unfortunate truth is that https://github.com/mechiru/googapis did have any work done for months now. It could be at a time, where we just create our own fork and maintain that, this could bring us to tonic 0.7 much quicker.

mfelsche avatar Jul 12 '22 07:07 mfelsche

:sob:

Licenser avatar Jul 13 '22 11:07 Licenser

Superceded by #1980 and awaiting feedback from @dak-x

darach avatar Sep 22 '22 08:09 darach

Cancelling this. Refer to the above comment.

dak-x avatar Nov 06 '22 09:11 dak-x