import java.util.Map;\r
\r
import org.apache.log4j.Logger;\r
+import org.springframework.transaction.TransactionStatus;\r
\r
import eu.etaxonomy.cdm.common.CdmUtils;\r
import eu.etaxonomy.cdm.io.common.CdmImportBase;\r
+ ", n = " + n); \r
}\r
\r
- // save taxa in chunks of <=limit\r
+ // save taxa in blocks of <=limit\r
\r
for (int j = 1; j <= n + 1; j++)\r
{\r
int offset = j - 1;\r
int start = offset * limit;\r
\r
- if(logger.isInfoEnabled()) { logger.info("Saving taxa: " + start + " - " + (start + limit - 1)); }\r
+ if(logger.isInfoEnabled()) { \r
+ logger.info("Saving taxa: " + start + " - " + (start + limit - 1)); \r
+ }\r
\r
if(logger.isInfoEnabled()) { \r
logger.info("index = " + j \r
\r
if (j == n + 1) {\r
limit = nbrOfTaxa - n * limit;\r
- if(logger.isInfoEnabled()) { logger.info("n = " + n + ", limit = " + limit); }\r
+ if(logger.isInfoEnabled()) { \r
+ logger.info("n = " + n + ", limit = " + limit); \r
+ }\r
}\r
\r
+ TransactionStatus txStatus = startTransaction();\r
+ \r
Collection<TaxonBase> taxonMapPart = taxonStore.objects(start, limit);\r
getTaxonService().saveTaxonAll(taxonMapPart);\r
taxonMapPart = null;\r
- //taxonStore.removeObjects(start, limit);\r
+ taxonStore.removeObjects(start, limit);\r
+ \r
+ commitTransaction(txStatus);\r
+\r
}\r
\r
return success;\r