use of cn.edu.tsinghua.iginx.exceptions.ExecutionException in project iotdb-benchmark by thulab.
the class IginX method insertOneBatch.
@Override
public Status insertOneBatch(Batch batch) throws DBConnectException {
List<String> paths = new ArrayList<>();
List<DataType> types = new ArrayList<>();
buildPathsAndTypesFromSchema(batch.getDeviceSchema(), paths, types);
int size = batch.getRecords().size();
long[] timestamps = new long[size];
Object[] values = new Object[size];
for (int i = 0; i < size; i++) {
Record record = batch.getRecords().get(i);
timestamps[i] = record.getTimestamp();
int colSize = record.getRecordDataValue().size();
Object[] rowValue = new Object[colSize];
for (int j = 0; j < colSize; j++) {
Object value = record.getRecordDataValue().get(j);
if (value instanceof String)
value = ((String) value).getBytes();
rowValue[j] = value;
}
values[i] = rowValue;
}
try {
session.insertRowRecords(paths, timestamps, values, types, null);
return new Status(true);
} catch (SessionException | ExecutionException e) {
return new Status(false, 0, e, e.toString());
}
}
use of cn.edu.tsinghua.iginx.exceptions.ExecutionException in project iotdb-benchmark by thulab.
the class IginX method cleanup.
@Override
public void cleanup() throws TsdbException {
try {
session.deleteColumn(FULL_PATHS);
LOGGER.info("Finish clean data!");
} catch (SessionException | ExecutionException e) {
LOGGER.warn("Clear Data failed because ", e);
throw new TsdbException(e);
}
}
use of cn.edu.tsinghua.iginx.exceptions.ExecutionException in project IginX by thulab.
the class StatementExecutor method process.
private void process(RequestContext ctx) throws ExecutionException, PhysicalException {
List<LogicalGenerator> generatorList = generatorMap.get(ctx.getStatement().getType());
for (LogicalGenerator generator : generatorList) {
before(ctx, preLogicalProcessors);
Operator root = generator.generate(ctx);
after(ctx, postLogicalProcessors);
if (constraintManager.check(root) && checker.check(root)) {
before(ctx, prePhysicalProcessors);
RowStream stream = engine.execute(root);
after(ctx, postPhysicalProcessors);
setResult(ctx, stream);
return;
}
}
throw new ExecutionException("Execute Error: can not construct a legal logical tree.");
}
use of cn.edu.tsinghua.iginx.exceptions.ExecutionException in project IginX by thulab.
the class IginxClient method processSql.
private static void processSql(String sql) {
try {
SessionExecuteSqlResult res = session.executeSql(sql);
String parseErrorMsg = res.getParseErrorMsg();
if (parseErrorMsg != null && !parseErrorMsg.equals("")) {
if (sql.startsWith("show")) {
System.out.println("unsupported command");
} else {
System.out.println(res.getParseErrorMsg());
}
return;
}
if (res.isQuery()) {
res.print(true, timestampPrecision);
} else if (res.getSqlType() == SqlType.ShowTimeSeries) {
res.print(false, "");
} else if (res.getSqlType() == SqlType.ShowClusterInfo) {
res.print(false, "");
} else if (res.getSqlType() == SqlType.GetReplicaNum) {
System.out.println(res.getReplicaNum());
System.out.println("success");
} else if (res.getSqlType() == SqlType.CountPoints) {
System.out.println(res.getPointsNum());
System.out.println("success");
} else {
System.out.println("success");
}
} catch (SessionException | ExecutionException e) {
System.out.println(e.getMessage());
} catch (Exception e) {
System.out.println("encounter error when executing sql statement.");
}
}
use of cn.edu.tsinghua.iginx.exceptions.ExecutionException in project IginX by thulab.
the class QueryClientImpl method downsampleQuery.
private IginXTable downsampleQuery(DownsampleQuery query) throws IginXException {
List<String> measurements = new ArrayList<>(query.getMeasurements());
DownsampleQueryReq req = new DownsampleQueryReq(sessionId, MeasurementUtils.mergeAndSortMeasurements(measurements), query.getStartTime(), query.getEndTime(), query.getAggregateType(), query.getPrecision());
DownsampleQueryResp resp;
synchronized (iginXClient) {
iginXClient.checkIsClosed();
try {
resp = client.downsampleQuery(req);
RpcUtils.verifySuccess(resp.status);
} catch (TException | ExecutionException e) {
throw new IginXException("downsample query failure: ", e);
}
}
return buildIginXTable(resp.getQueryDataSet(), resp.getPaths(), resp.getDataTypeList());
}
Aggregations