streamnative / mop

MQTT on Pulsar implemented using Pulsar Protocol Handler
Apache License 2.0
174 stars 54 forks source link

Is this still maintained? #1193

Closed tsturzl closed 9 months ago

tsturzl commented 10 months ago

It's been several months and several major bug fix PRs have sat with no response. I was under the impression that MoP was part of Stream Native's commercial Pulsar solution, however it seems to be completely unmaintained. There has been no work put forward on outstanding bugs, seemingly even when the solution has already been provided. I've gotten no response on my open PRs dating back to March. We've been building out own MoP version with these patches for most of the year now. Is this project still officially maintained? If so is there a timeline I can expect to get replies to the PRs that are currently open which address major bugs?

BewareMyPower commented 10 months ago

AFAIK, this project is not actively maintained though we have customers using mop. The core maintainers are focusing on other projects. I have pinged my colleagues and hoped to get some responses.

mattisonchao commented 10 months ago

Hi, @tsturzl

If so is there a timeline I can expect to get replies to the PRs that are currently open which address major bugs?

sorry for the inconvenient, let us work with you to fix the problems. :)

mattisonchao commented 10 months ago

@tsturzl one more question: what pulsar version are you using?

tsturzl commented 10 months ago

@mattisonchao We were using 2.10, and now we're using 3.1.1. We've noticed the bug present in all versions we've tested so far, and have been running in production with both PRs applied for quite a while now. We've been patching 2.10 builds ourselves, and recently just patched the 3.1.1.2 MoP build with the PRs recently and have run it through a series of our own integration tests that rely on MoP to test for regressions.

tsturzl commented 10 months ago

We are actively using this plugin for commercial use, and we heavily depend on many MQTT features. I assume many of these bugs may not be something others have run into, since MQTT is often just used for simple telemetry. I'm happy to contribute to the project, have a lot of experience with MQTT and have done some work on the VerneMQ MQTT broker as well. I'm happy to give back to an opensource project. Is there anything I can do to make this easier? I assume MoP might not be a priority project as KoP is likely a more popular plugin, and I assume most of you are concerned with Pulsar.

MoP has been incredibly useful for us. We deal with robotics systems working on cellular networks, and Pulsar is incredibly useful for handling large volumes of telemetry, and MQTT is very useful for dealing with these devices which don't have reliable connectivity. I'd love to continue improving this project, and wonder if that's something I can continue to do. I'd rather maintain this project than fork it.

mattisonchao commented 10 months ago

@tsturzl Thanks for your great contribution. Let us review all the features first, then improve them step by step. :)

I will create some issues next week. Then we can discuss them. :)

tsturzl commented 9 months ago

I have another bugfix that I found when running the MoP proxy on a cluster that does not have TLS enabled. Seems there is a null pointer exception as something expect the pulsarServiceUrlTls metadata to not be null. I'm assuming Stream Native never ran across this issue since you're probably always running with TLS enabled. The fix is very simple if you could please take time to review it.