private PBinaryArray() { super("BINARY ARRAY", PDataType.ARRAY_TYPE_BASE + PBinary.INSTANCE.getSqlType(), PhoenixArray.class, null, 28); }
private static String getAffectedDataTypes() { StringBuilder buf = new StringBuilder("(" + PVarchar.INSTANCE.getSqlType() + "," + + PChar.INSTANCE.getSqlType() + "," + + PBinary.INSTANCE.getSqlType() + "," + + PFloat.INSTANCE.getSqlType() + "," + + PDouble.INSTANCE.getSqlType() + "," + + PDecimal.INSTANCE.getSqlType() + "," ); for (PDataType type : PDataType.values()) { if (type.isArrayType()) { buf.append(type.getSqlType()); buf.append(','); } } buf.setCharAt(buf.length()-1, ')'); return buf.toString(); }
/** * Identify the tables that need to be upgraded due to PHOENIX-2067 and PHOENIX-2120 */ public static List<String> getPhysicalTablesWithDescRowKey(PhoenixConnection conn) throws SQLException { String query = "SELECT TENANT_ID,TABLE_SCHEM,TABLE_NAME\n" + "FROM SYSTEM.CATALOG cat1\n" + "WHERE COLUMN_NAME IS NOT NULL\n" + "AND COLUMN_FAMILY IS NULL\n" + "AND ( ( SORT_ORDER = " + SortOrder.DESC.getSystemValue() + "\n" + " AND DATA_TYPE IN " + getAffectedDataTypes() + ")\n" + " OR ( SORT_ORDER = " + SortOrder.ASC.getSystemValue() + "\n" + " AND DATA_TYPE = " + PBinary.INSTANCE.getSqlType() + "\n" + " AND COLUMN_SIZE > 1 ) )\n" + "GROUP BY TENANT_ID,TABLE_SCHEM,TABLE_NAME"; return getPhysicalTablesWithDescRowKey(query, conn); }
private PBinaryArray() { super("BINARY ARRAY", PDataType.ARRAY_TYPE_BASE + PBinary.INSTANCE.getSqlType(), PhoenixArray.class, null, 28); }
private PBinaryArray() { super("BINARY ARRAY", PDataType.ARRAY_TYPE_BASE + PBinary.INSTANCE.getSqlType(), PhoenixArray.class, null, 28); }
byte[] bytes = PDataType.fromTypeId(PBinary.INSTANCE.getSqlType()).toBytes(object); tuple.set(i, new DataByteArray(bytes, 0, bytes.length)); break;
private static String getAffectedDataTypes() { StringBuilder buf = new StringBuilder("(" + PVarchar.INSTANCE.getSqlType() + "," + + PChar.INSTANCE.getSqlType() + "," + + PBinary.INSTANCE.getSqlType() + "," + + PFloat.INSTANCE.getSqlType() + "," + + PDouble.INSTANCE.getSqlType() + "," + + PDecimal.INSTANCE.getSqlType() + "," ); for (PDataType type : PDataType.values()) { if (type.isArrayType()) { buf.append(type.getSqlType()); buf.append(','); } } buf.setCharAt(buf.length()-1, ')'); return buf.toString(); }
private static String getAffectedDataTypes() { StringBuilder buf = new StringBuilder("(" + PVarchar.INSTANCE.getSqlType() + "," + + PChar.INSTANCE.getSqlType() + "," + + PBinary.INSTANCE.getSqlType() + "," + + PFloat.INSTANCE.getSqlType() + "," + + PDouble.INSTANCE.getSqlType() + "," + + PDecimal.INSTANCE.getSqlType() + "," ); for (PDataType type : PDataType.values()) { if (type.isArrayType()) { buf.append(type.getSqlType()); buf.append(','); } } buf.setCharAt(buf.length()-1, ')'); return buf.toString(); }
/** * Identify the tables that need to be upgraded due to PHOENIX-2067 and PHOENIX-2120 */ public static List<String> getPhysicalTablesWithDescRowKey(PhoenixConnection conn) throws SQLException { String query = "SELECT TENANT_ID,TABLE_SCHEM,TABLE_NAME\n" + "FROM SYSTEM.CATALOG cat1\n" + "WHERE COLUMN_NAME IS NOT NULL\n" + "AND COLUMN_FAMILY IS NULL\n" + "AND ( ( SORT_ORDER = " + SortOrder.DESC.getSystemValue() + "\n" + " AND DATA_TYPE IN " + getAffectedDataTypes() + ")\n" + " OR ( SORT_ORDER = " + SortOrder.ASC.getSystemValue() + "\n" + " AND DATA_TYPE = " + PBinary.INSTANCE.getSqlType() + "\n" + " AND COLUMN_SIZE > 1 ) )\n" + "GROUP BY TENANT_ID,TABLE_SCHEM,TABLE_NAME"; return getPhysicalTablesWithDescRowKey(query, conn); }
/** * Identify the tables that need to be upgraded due to PHOENIX-2067 and PHOENIX-2120 */ public static List<String> getPhysicalTablesWithDescRowKey(PhoenixConnection conn) throws SQLException { String query = "SELECT TENANT_ID,TABLE_SCHEM,TABLE_NAME\n" + "FROM SYSTEM.CATALOG cat1\n" + "WHERE COLUMN_NAME IS NOT NULL\n" + "AND COLUMN_FAMILY IS NULL\n" + "AND ( ( SORT_ORDER = " + SortOrder.DESC.getSystemValue() + "\n" + " AND DATA_TYPE IN " + getAffectedDataTypes() + ")\n" + " OR ( SORT_ORDER = " + SortOrder.ASC.getSystemValue() + "\n" + " AND DATA_TYPE = " + PBinary.INSTANCE.getSqlType() + "\n" + " AND COLUMN_SIZE > 1 ) )\n" + "GROUP BY TENANT_ID,TABLE_SCHEM,TABLE_NAME"; return getPhysicalTablesWithDescRowKey(query, conn); }
byte[] bytes = PDataType.fromTypeId(PBinary.INSTANCE.getSqlType()).toBytes(object); tuple.set(i, new DataByteArray(bytes, 0, bytes.length)); break;