@kirklund 
> We can't use org.apache.geode.cache.query.cq inside geode-cq? Or is that just 
> convention?
Since package`org.apache.geode.cache.query.cq` is not in the `geode-core` 
module we could use that package in `geode-cq` module. It is convention to keep 
package, module and artifact names similar. There are certainly good reasons to 
deviate and plenty of examples in the wild where people have. I would be most 
inclined to keep the module name and artifact name in sync since that is what 
module automatic naming would do anyway. So artifact `geode-cq.jar` would be 
automatic module `geode.cq`. So for consistency I would just append the group 
name, minus redundancy, to get module `org.apache.geode.cq`. In doing that I 
lean towards keeping the root package name the same, but eh... I do feel like 
the `cache` part of `o.a.geode.cache.cq` is redundant though. What's he 
argument for `cache`?

> Would we ever create geode-query to contain org.apache.geode.cache.query and 
> then geode-cq adds cq onto that?
Maybe... We can alway refactor later if we do and it feels better to have cq 
someone logically grouped under query at that point. Having two modules that 
contain the same bits with different names would be fine as long as one and 
only one is on the module path at any time. You would simply stop including the 
deprecated on in the BOM.

> I'm thinking that geode-core will eventually contain org.apache.geode.logging 
> to contain our LogService and SPI for the LogWriter and Alert appenders (or 
> even move that to geode-logging). Then geode-log4j would contain our default 
> impls of that SPI which are the LogWriter and Alert appenders that are 
> written with log4j-core. Then geode-core uses geode-logging and geode-log4j 
> is an optional provider to the SPI in geode-logging. Or is that too many 
> sub-modules (I'm new to modules!)?
No that sounds perfect.

> So, my input on cq is based mainly on cq being something that builds on 
> query. If org.apache.geode.cache.query.cq is ugly because of geode-cq or if 
> we would never split out query to geode-query then my suggestion probably 
> isn't very relevant. Either way I'll mark my request as resolved and let you 
> decide which way to go.
All valid thoughts. It would be good for us to get it right and not have to 
deprecate and refactor a module later.

I guess I could fall sort of in the middle. I wouldn't have the package name to 
deviate too far from the module name unless there is a really strong argument. 
To me the "cache" part feels redundant since Geode is the "cache". So I could 
see module and package name of `o.a.geode.query.cq` and deviating only in the 
artifact name not match at this point and remaining `geode-cq`. But in my mind 
adding the "query" part is redundant to the "cq" part and removing it makes all 
3 names consistent. Hmmm...

Any additional thoughts before I flip a coin?


[ Full content available at: https://github.com/apache/geode/pull/2915 ]
This message was relayed via gitbox.apache.org for 
notifications@geode.apache.org

Reply via email to