} catch (Throwable t) {
throw new RuntimeException("Invalid primary key element "+Arrays.toString(primaryKey), t);
}
PreparedStatement pstmt = preparedStatements.statementFor(session, PreparedStatements.StatementType.SELECT, binder, persistOptions);
BoundStatement bStmt = pstmt.bind();
statementOptions.applyRead(bStmt, readConsistencyLevel, persistOptions);
PersistOption.forBoundStatement(persistOptions, bStmt);
idx = binder.bindColumns(0, bStmt);
PersistOption.LimitOption.apply(bStmt, persistOptions, idx);
if (LOGGER.isTraceEnabled()) {
LOGGER.trace("Submitting load for {} : {}", type, bStmt.preparedStatement().getQueryString());
}
if (tracer != null) {
tracer.onBeginQuery(futures.session, this, bStmt);
}
futures.addResultSetFuture(this, session.executeAsync(bStmt), readColumns);