protected void validate()

in harry-core/src/harry/model/QuiescentLocalStateCheckerBase.java [78:105]


    protected void validate(Query query, NavigableMap<Range, List<Node>> ring)
    {
        CompiledStatement compiled = query.toSelectStatement();
        List<Node> replicas = getReplicas(ring, token(query.pd));

        logger.trace("Predicted {} as replicas for {}. Ring: {}", replicas, query.pd, ring);
        for (Node node : replicas)
        {
            try
            {
                validate(() -> {
                    Object[][] objects = executeNodeLocal(compiled.cql(), node, compiled.bindings());

                    List<ResultSetRow> result = new ArrayList<>();
                    for (Object[] obj : objects)
                        result.add(resultSetToRow(query.schemaSpec, clock, obj));

                    return result;
                }, query);
            }
            catch (ValidationException e)
            {
                throw new AssertionError(String.format("Caught error while validating replica %s of replica set %s",
                                                       node, replicas),
                                         e);
            }
        }
    }