Wrap plan-specific query hints (like joinType).
Wrap plan-specific query hints (like joinType). This extends Spark's BroadcastHint so that filters/projections etc can be pushed below this by optimizer.
Helper object for PutInto operations for column tables.
Helper object for PutInto operations for column tables. This class takes the logical plans from SnappyParser and converts it into another plan.
An utility class to store jar file reference with their individual class loaders.
An utility class to store jar file reference with their individual class loaders. This is to reflect class changes at driver side. e.g. If an UDF definition changes the driver should pick up the correct UDF class. This class can not initialize itself after a driver failure. So the callers will have to make sure that the classloader gets initialized after a driver startup. Usually it can be achieved by adding classloader at query time.
Deals with any escape characters in the LIKE pattern in optimization.
Deals with any escape characters in the LIKE pattern in optimization. Does not deal with startsAndEndsWith equivalent of Spark's LikeSimplification so 'a%b' kind of pattern with additional escaped chars will not be optimized.
Rule to "normalize" ParamLiterals for the case of aggregation expression being used in projection.
Rule to "normalize" ParamLiterals for the case of aggregation expression being used in projection. Specifically the ParamLiterals from aggregations need to be replaced into projection so that latter can be resolved successfully in plan execution because ParamLiterals will match expression only by position and not value at the time of execution. This rule is useful only before plan caching after parsing.
See Spark's PhysicalAggregation rule for more details.