Могу ли я определить транзакцию только для чтения, используя JDO GAE? - PullRequest
1 голос
/ 02 февраля 2010

Я использую последние версии стека GWT GAE с JDO.У меня есть очередь задач обновления постоянных объектов с хранилищем данных.У меня также есть пользовательский интерфейс gwt, отображающий объекты сохранения (без изменений).

С учетом четко определенных границ транзакции (запуск / принятие).Могу ли я определить транзакцию только для чтения для графического интерфейса, которая не конфликтует с задачей обновления объектов?

Я считаю, что они конфликтуют и выдают эти исключения (сокращенно)

javax.jdo.JDODataStoreException: Transaction rolled back due to failure during commit

по адресу org.datanucleus.jdo.NucleusJDOHelper.getJDOExceptionForNucleusException (NucleusJDOHelper.java:402) по адресу org.datanucleus.jdo.JDOTransaction.commit (JDOTransaction.java:132able.Qta:Параллельная модификация в org.datanucleus.store.appengine.DatastoreTransaction.commit (DatastoreTransaction.java:70)

1 Ответ

0 голосов
/ 27 января 2011

хранилище данных обработчика приложений на самом деле использует оптимистичный параллелизм ( more ), без блокировки.это означает, что транзакция, выполняющая только чтение, не будет вмешиваться или вызывать конфликт с другими записями или транзакциями, которые включают записи.

...