Skip to content
Discussion options

You must be logged in to vote

Answer

This is a known limitation of how RubyGems resolves dependencies at runtime, and Fluentd inherits this behavior.

When multiple versions of the same gem exist in GEM_PATH, RubyGems will resolve and activate a single version per process, usually the highest version that satisfies any dependency. Once a gem is activated, another version of the same gem cannot be loaded in the same Ruby process. This is why pluginA ends up breaking when gemA 2.3 is selected.

Unfortunately, Fluentd does not provide native per-plugin dependency isolation, so this conflict cannot be fully solved within a single Fluentd process.

Below are the recommended and practical ways to handle this.


  1. Use Bundler to …

Replies: 2 comments

Comment options

You must be logged in to vote
0 replies
Comment options

You must be logged in to vote
0 replies
Answer selected by RamHaridas
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Category
Q&A
Labels
None yet
3 participants