apache / druid

Apache Druid: a high performance real-time analytics database.
https://druid.apache.org/
Apache License 2.0
13.46k stars 3.7k forks source link

QTL problem during upgrade to 0.10.x #4603

Closed drcrallen closed 7 years ago

drcrallen commented 7 years ago

During the course of upgrading, there is a time where historicals and the coordinator will be on different versions. When the historicals are updated to the latest version, they like to spew the following error:

got notice to load lookup [LookupExtractorFactoryContainer{version='null', lookupExtractorFactory=io.druid.query.lookup.NamespaceLookupExtractorFactory@*}] that can't replace existing [LookupExtractorFactoryContainer{version='null', lookupExtractorFactory=io.druid.query.lookup.NamespaceLookupExtractorFactory@*
drcrallen commented 7 years ago

This might just be noise during the switchover, but is very annoying

gianm commented 7 years ago

@himanshug do you know if this is expected or not?

himanshug commented 7 years ago

@drcrallen @gianm it is expected. The reason is that when historical is on 0.10.1 while coordinator is on smaller version, coordinator would try to propagate lookups to historical even if they are already loaded on the historical... historical prints a warning on receiving request to load a lookup whose same or higher version is already loaded. warning message is intended to find out any bugs in coordinator code, 0.10.1 coordinator is suppose to first check with historical what it has and then ask it to do stuff so these warnings shouldn't get printed once coordinator is upgraded too.

drcrallen commented 7 years ago

The concern is that it reports as an error but isn't really an error, which makes it harder to catch real errors. I propose simply calling it out in the release notes.

drcrallen commented 7 years ago

Resolving by adding info to release notes

himanshug commented 7 years ago

@drcrallen I believe the message to be printed from https://github.com/druid-io/druid/blob/0.10.1/processing/src/main/java/io/druid/query/lookup/LookupReferencesManager.java#L366 which is a "warn" not "error" . Did you see "error" printed ? that would be unexpected. in any case, i think its great to put it in release notes to avoid surprises. @drcrallen @jon-wei thanks.