Add support for routing options in query string

Add support for passing routing options (eg. FORCE_HLC, FORCE_LLC)
through query string options (eg. SELECT ...
OPTION(routingOptions=FORCE_LLC)).
diff --git a/pinot-broker/src/main/java/com/linkedin/pinot/broker/requesthandler/BrokerRequestHandler.java b/pinot-broker/src/main/java/com/linkedin/pinot/broker/requesthandler/BrokerRequestHandler.java
index f9c18f9..0ad72d4 100644
--- a/pinot-broker/src/main/java/com/linkedin/pinot/broker/requesthandler/BrokerRequestHandler.java
+++ b/pinot-broker/src/main/java/com/linkedin/pinot/broker/requesthandler/BrokerRequestHandler.java
@@ -564,11 +564,16 @@
     List<String> routingOptions;
     Map<String, String> debugOptions = brokerRequest.getDebugOptions();
     if (debugOptions == null || !debugOptions.containsKey("routingOptions")) {
-      routingOptions = Collections.emptyList();
+      routingOptions = new ArrayList<>();
     } else {
       routingOptions =
           Splitter.on(",").omitEmptyStrings().trimResults().splitToList(debugOptions.get("routingOptions"));
     }
+    Map<String, String> queryOptions = brokerRequest.getQueryOptions();
+    if (queryOptions != null && queryOptions.containsKey("routingOptions")) {
+      routingOptions.addAll(
+          Splitter.on(",").omitEmptyStrings().trimResults().splitToList(queryOptions.get("routingOptions")));
+    }
     RoutingTableLookupRequest routingTableLookupRequest = new RoutingTableLookupRequest(tableName, routingOptions);
     return _routingTable.findServers(routingTableLookupRequest);
   }