Description
Here is the scenario tested:
- Brought up a server with 4.16 where new columns are added but not added as part of upgrade path
- Connect with 4.14 client
- Connect with a 4.16 client - this will throw an exception as the new columns added as part of 4.16 were not added as part of upgrade path
- Now the code will force update the cache in PhoenixStatement#executeQuery() method
- Now the buildTable is removing even the columns added as part of 4.15 , the reason being we are passing the clientTimeStamp to build table ( say 29 is the timestamp for column added for 4.15) but the table is scanning rows EXCLUDING the passed clientTimeSTamp as the Scan#setTimeRange method excludes the end time stamp
The passing of clientTimeStamp to build table is in MetaDataEndPointImpl#doGetTable method