paul-rogers opened a new pull request, #12672:
URL: https://github.com/apache/druid/pull/12672

   The [new IT PR](https://github.com/apache/druid/pull/12368/files#) has 
struggled to get a clean build due to the complexity and flakiness of the Druid 
build system. It is ironic that the attempt to fix the ITs has been stymied by 
the fragility of the existing ITs. Out of desperation, the big PR is being 
broken up into smaller chunks. This one provides the myriad cleanup tasks done 
in that PR.
   The cleanup is of two kinds:
   
   * Just general cleanup: fixing misspellings, etc.
   * Allowing the use of some of Druid's "JSON config" objects in tests.
   
   The general cleanup is self-explanatory. The JSON configs are odd beasts: 
there is no way to create one via code; only using the JSON config mechanism 
that populates the instance dynamically from a provided set of properties. 
While that is great in production, it does make it very hard to create the 
config in tests. Since we do, in fact, want to test, this PR alters a few of 
these configs to provide a constructor or factory method.
   
   Further, the config key used for properties tends to reside in the consumer 
of those properties. If we do want to create one in tests, using the property 
mechanism, we have to copy/paste that key. To make life a bit easier here, this 
PR moves the key to a constant inside the config object itself (but only for 
those configs used by the IT PR.)
   
   The ITs want to create a Guice instance for "client" use, not for use in a 
Druid server. The existing ITs jump though some amazing hoops to do this. The 
new ones take a somewhat different path. To make this possible, a few of the 
formerly-private bits related to Guice initialization are now exposed for use 
by tests.
   
   <hr>
   
   This PR has:
   - [X] been self-reviewed.
   - [X] added Javadocs for most classes and all non-trivial methods. Linked 
related entities via Javadoc links.
   - [X] added comments explaining the "why" and the intent of the code 
wherever would not be obvious for an unfamiliar reader.
   - [X] added unit tests or modified existing tests to cover new code paths, 
ensuring the threshold for [code 
coverage](https://github.com/apache/druid/blob/master/dev/code-review/code-coverage.md)
 is met.
   - [ ] been tested in a test Druid cluster.
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to