When validation sh:maxCount there are two possible validation approaches for bulk validation. The first option is to generate a SPARQL query that returns all the invalid data, the second is to use the transactional validation approach with fallback bulk validation. This second option uses a lot of memory and is typically very slow, but at some point the SPARQL query actually becomes even slower. This point is set to 5 in the code, but for performance testing and optimisation it would be useful to change this using a java system property.
When validation sh:maxCount there are two possible validation approaches for bulk validation. The first option is to generate a SPARQL query that returns all the invalid data, the second is to use the transactional validation approach with fallback bulk validation. This second option uses a lot of memory and is typically very slow, but at some point the SPARQL query actually becomes even slower. This point is set to 5 in the code, but for performance testing and optimisation it would be useful to change this using a java system property.