Hi,
I have been getting contention errors when uploading data into the
datastore (note I have tuned the defaults which have worked for other
Kinds):
Note: I am using app engine release 1.3.6 for Mac OS X.
---
Uploading data records.
[INFO ] Logging to bulkloader-log-20100819.113509
[INFO ] Throttling transfers:
[INFO ] Bandwidth: 2500000 bytes/second
[INFO ] HTTP connections: 8/second
[INFO ] Entities inserted/fetched/modified: 80/second
[INFO ] Batch Size: 80
[INFO ] Opening database: bulkloader-progress-20100819.113509.sql3
[INFO ] Connecting to XXX.com/remote_api
[INFO ] Starting import; maximum 80 entities per post
..............................................................................................................................................................................................................................................................
[ERROR ] Retrying on non-fatal datastore error: too much contention
on these datastore entities. please try again.
Traceback (most recent call last):
File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/
GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/
google/appengine/tools/bulkloader.py", line 691, in PerformWork
transfer_time = self._TransferItem(thread_pool)
File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/
GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/
google/appengine/tools/bulkloader.py", line 848, in _TransferItem
self.request_manager.PostEntities(self.content)
File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/
GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/
google/appengine/tools/bulkloader.py", line 1292, in PostEntities
datastore.Put(entities)
File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/
GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/
google/appengine/api/datastore.py", line 293, in Put
raise _ToDatastoreError(err)
TransactionFailedError: too much contention on these datastore
entities. please try again.
.........................................................................................................................................................................................................................................................................................................
[ERROR ] Retrying on non-fatal datastore error: too much contention
on these datastore entities. please try again.
---
I've read Google's documentation with regard to contention, and the
only relationship I am using with these entities are
referenceproperties that I define in bulkloader.yaml:
---
transformers:
- kind: ServiceRef
connector: csv
connector_options:
columns: from_header
property_map:
- property: __key__
external_name: key
export_transform: transform.key_id_or_name_as_string
- property: pseudokey
external_name: pseudokey
- property: serviceRecord
external_name: serviceRecord
import_transform: transform.create_foreign_key('ServiceRecord')
export_transform: transform.key_id_or_name_as_string
---
Here's the problem:
1 - There are only unique entities in the entities I am uploading (so
there should be no contention for the same entity)
2 - There should be no entity groups that would generate contention
(since I am using referenceproperty as indicated in the docs)
Any idea what's happening here?
Thank you.
--
You received this message because you are subscribed to the Google Groups
"Google App Engine" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/google-appengine?hl=en.