I was curious if o3 (model from OpenAI) would be able to do a deep dive health check on a repo to assist in considering taking it as a dependency. The results can be found here: https://chatgpt.com/share/684be703-1d4c-8002-b831-f997f829f4b4
Apparently it can, and can do it quite well. This was a useful time saver (and honestly did a better job than I usually can in > 10x the time) I'm +1 to taking this as a dependency on the lib in core C*. The rest of the ecosystem can consume it (more easily if we move to a cassandra-shared regime shared library build as well), and it opens up some interesting opportunities for us in both how we test core C* proper and what we expose in tooling. On Thu, Jun 12, 2025, at 7:36 PM, Paulo Motta wrote: > I'd prefer to avoid calling an external process and use the library if > possible. Not sure about including it in the project by default, but also not > against. > > If there's contention about including it, I wonder if it would make sense to > explore java's optional module extension[1] to make this available > optionally ? I can see this being useful for other extensions if we haven't > explored that option. > > Then we could have another project cassandra-sidecar-extensions (or similar) > that would be linked by sidecar/advanced operators to enable extended > featureset in the main process. > > > [1] - > https://openjdk.org/projects/jigsaw/doc/topics/optional.html > > On Thu, 12 Jun 2025 at 17:57 Doug Rohrer <droh...@apple.com> wrote: >> Hey folks! >> >> We're looking into enabling the sidecar to collect async profiles from >> Cassandra and, digging through the async-profiler code and usage, it seems >> like there may be a few different ways to do it. I’m curious if other folks >> have already done this beyond just “run asprof with the pid of the Cassandra >> process”, as I’m a bit hesitant to depend on executing an external process >> from the Sidecar to gather the actual profile if we can avoid it. >> >> There seem to be some opportunities to integrate the profiler into another >> project (see >> https://github.com/async-profiler/async-profiler/blob/master/docs/IntegratingAsyncProfiler.md#using-java-api) >> but it seems this would end up having to be part of Cassandra, and somehow >> callable via the sidecar (JMX? Some virtual table interface where you insert >> a row to start a profile with the profiler options, and it kicks off the >> profile, dumping the results into the table when it’s done?). >> >> The benefit in putting this functionality into Cassandra would be that other >> consumers (in-jvm dtests, python dtests, other monitoring systems where >> Sidecar isn’t available, easy-cass-lab) would be able to leverage the same >> interface rather than having to re-invent the wheel each time. >> >> Drawback is it’s another library, and one with native library dependencies, >> added to the class path and loaded at runtime. >> >> Thoughts? Previous experiences (good or bad)? >> >> Thanks, >> >> Doug