> - why not moving to the official generated code? It seems it's the only stable one on the long term
At least because nobody has put the work in to do the conversion and demonstrate it is no worse than today. I don't like the extra fields in generated structs, but I didn't measure the impact. > - Is there a benchmark that I could run for prometheus using different plugins? Yes, here for instance: https://github.com/prometheus/prometheus/blob/122f9506e9c6/storage/remote/queue_manager_test.go#L872 For completeness one should check the 4 combinations: remote-read sender/receiver and remote-write sender/receiver. There are some unit tests but I don't think they will help to check forwards/backwards compatibility. You could set up another Prometheus and have them to talk to each other. Some discussion about how to check at https://github.com/prometheus/prometheus/pull/9991 Bryan On Friday, 20 October 2023 at 03:36:13 UTC+1 Clément Jean wrote: > That actually sounds interesting to me! I have few questions though: > > - why not moving to the official generated code? It seems it's the only > stable one on the long term > - Is there a benchmark that I could run for prometheus using different > plugins? > - How can I test if my code changes didn't break the project? go test > ./... ? > - Are there some platform specific tests? > > Hope we can work on that > > On Wednesday, October 18, 2023 at 8:42:21 PM UTC+8 Bjoern Rabenstein wrote: > >> On 05.10.23 17:48, Clément Jean wrote: >> > I'm not entirely sure yet because I'm new to contributing to >> prometheus. If >> > there is any use cases that you guys already discussed around Protobuf, >> I'd >> > be happy to help. >> >> If you are really deep into protobuf, there is definitely one big and >> fat issue to solve: We are still using gogo-protobuf in >> prometheus/prometheus, which has good performance properties, but is >> unmaintained. The plan has been for a while to migrate to another >> protobuf implementation that performs similarly well. Here is the >> discussion on this mailing list: >> >> https://groups.google.com/g/prometheus-developers/c/uFWRyqZaQis/m/1OOGT7s5AwAJ >> >> >> And here is a branch that contains a PoC of migrating to the vitess >> protoc plugin: >> https://github.com/austince/prometheus/tree/feat/drop-gogo >> (Note that it is more than two years old, and I'm not sure if the >> vitess plugin performs well enough. But it could be a starting point.) >> >> -- >> Björn Rabenstein >> [PGP-ID] 0x851C3DA17D748D03 >> [email] [email protected] >> > -- You received this message because you are subscribed to the Google Groups "Prometheus Developers" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/prometheus-developers/6b56e75d-7fb5-4ab8-a0bd-3d140c32ec7fn%40googlegroups.com.

