Skip to content

DataLoaderOptions immutability change is not breaking #190

Closed
@bbakerman

Description

@bbakerman

Discussed in #188

Originally posted by zsmoore April 30, 2025
Hello all,

We are upgrading to 4.0.0 to get the latest instrumentation changes (thank you this will remove some custom infra we have). However, after the upgrade we have failing tests due to the immutability change.

This is fine as its a major change and we expect to need changes however the immutability change seems like we could go farther here. I agree that we should ditch the mutability and move to immutability however, since this is a major change anyway should we have just deleted the old functionality? Now code that does not have test coverage might break at runtime rather than compile time. Luckily we had test coverage to cover this scenario.

example code

DataLoaderOptions options = DataLoaderOptions.newOptions();
if (maxBatchSize != BatchLoader.UNSET_BATCH_SIZE) {
  options.setMaxBatchSize(maxBatchSize);
}
return options.setCacheMap(cache);

In this case I would prefer if the codebase was broken so we could make the proper fix rather than needing to find it ourselves based on the test results.

Thank you!

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions