Source:
<code>public void run(PortBindings portBindings, Configuration configuration, Map<String, String> parameters) throws Exception { Path inputRecordsPath = portBindings.getInput().get(PORT_INPUT); String propertiesPathsCSV = parameters.get(PROPERTIES_CSV); Preconditions.checkArgument(StringUtils.isNotBlank(propertiesPathsCSV), "no '%s' property value provided, field requirements were not specified!", PROPERTIES_CSV); String[] recordsExpectationPropertiesLocations = StringUtils.split(propertiesPathsCSV, ','); FileSystem fs = FileSystem.get(configuration); if (!fs.exists(inputRecordsPath)) { throw new RuntimeException(inputRecordsPath + " hdfs location does not exist!"); } try (CloseableIterator<SpecificRecord> recordsIterator = DataStore.getReader(new FileSystemPath(fs, inputRecordsPath))) { int recordsCount = 0; while (recordsIterator.hasNext()) { SpecificRecord record = recordsIterator.next(); recordsCount++; if (recordsCount > recordsExpectationPropertiesLocations.length) { throw new RuntimeException("got more records than expected: " + "unable to verify record no " + recordsCount + ", no field specification provided! Record contents: " + JsonUtils.toPrettyJSON(record.toString())); } else { validateRecord(record, readProperties(recordsExpectationPropertiesLocations[recordsCount - 1])); } } <START> if (recordsCount < recordsExpectationPropertiesLocations.length) { <END> throw new RuntimeException( "records count mismatch: " + "got: " + recordsCount + " expected: " + recordsExpectationPropertiesLocations.length); } } }</code><technical_language>Marek, I see, put 's' in middle of variable name. But, honest, grammatically correct, I suggest overuse it. For example, is phrase in english 'records count'. 'record count' 'count of records'. is true record(s)Expectations etc</technical_language>

Target:
public void run(PortBindings portBindings, Configuration configuration, Map<String, String> parameters) throws Exception { Path inputRecordsPath = portBindings.getInput().get(PORT_INPUT); String expectationsPathsCSV = parameters.get(EXPECTATIONS_CSV); Preconditions.checkArgument(StringUtils.isNotBlank(expectationsPathsCSV), "no '%s' property value provided, field requirements were not specified!", EXPECTATIONS_CSV); String[] recordExpectationsLocations = StringUtils.split(expectationsPathsCSV, ','); FileSystem fs = FileSystem.get(configuration); if (!fs.exists(inputRecordsPath)) { throw new RuntimeException(inputRecordsPath + " hdfs location does not exist!"); } try (CloseableIterator<SpecificRecord> recordIterator = DataStore.getReader(new FileSystemPath(fs, inputRecordsPath))) { int recordCount = 0; while (recordIterator.hasNext()) { SpecificRecord record = recordIterator.next(); recordCount++; if (recordCount > recordExpectationsLocations.length) { throw new RuntimeException("got more records than expected: " + "unable to verify record no " + recordCount + ", no field specification provided! Record contents: " + JsonUtils.toPrettyJSON(record.toString())); } else { validateRecord(record, readExpectedValues(recordExpectationsLocations[recordCount - 1])); } } if (recordCount < recordExpectationsLocations.length) { throw new RuntimeException( "records count mismatch: " + "got: " + recordCount + " expected: " + recordExpectationsLocations.length); } } }