I am processing a warehouse stock move for a sales order that has about 500 lines. After creating the delivery order and forcing availability, when I go to transfer the stock it runs for over an hour. Is this normal? Where should I look to troubleshoot this.
Our product catalog is currently about 20,000 listings.
We are currently hosted on a vps with 4 cores, 8gb ram, and running with multiple workers and longpolling.
...and still running after 2 hours...
it then throws this error "one of the documents you are trying to access has been deleted, please try again after refreshing"
traceback in log... 2015-05-26 19:48:34,829 53226 ERROR toysonfire openerp.sql_db: bad query: INSERT INTO "stock_move_operation_link" ("id", "reserved_quant_id", "qty", "move_id", "operation_id", "create_uid", "write_uid", "create_date", "write_date") VALUES(nextval('stock_move_operation_link_id_seq'), 15800, 9.0, 5503, 2380, 9, 9, (now() at time zone 'UTC'), (now() at time zone 'UTC')) RETURNING id Traceback (most recent call last): File "/opt/odoo/odoo-server/openerp/sql_db.py", line 234, in execute res = self._obj.execute(query, params) TransactionRollbackError: could not serialize access due to concurrent update CONTEXT: SQL statement "SELECT 1 FROM ONLY "public"."res_users" x WHERE "id" OPERATOR(pg_catalog.=) $1 FOR KEY SHARE OF x" 2015-05-26 19:48:34,829 53226 INFO toysonfire openerp.service.model: SERIALIZATION_FAILURE, retry 1/5 in 0.5144 sec... 2015-05-26 19:48:35,357 53226 ERROR toysonfire openerp.http: Exception during JSON request handling. Traceback (most recent call last): File "/opt/odoo/odoo-server/openerp/http.py", line 530, in _handle_exception return super(JsonRequest, self)._handle_exception(exception) File "/opt/odoo/odoo-server/openerp/http.py", line 567, in dispatch result = self._call_function(**self.params) File "/opt/odoo/odoo-server/openerp/http.py", line 303, in _call_function return checked_call(self.db, *args, **kwargs) File "/opt/odoo/odoo-server/openerp/service/model.py", line 113, in wrapper return f(dbname, *args, **kwargs) File "/opt/odoo/odoo-server/openerp/http.py", line 300, in checked_call return self.endpoint(*a, **kw) File "/opt/odoo/odoo-server/openerp/http.py", line 796, in __call__ return self.method(*args, **kw) File "/opt/odoo/odoo-server/openerp/http.py", line 396, in response_wrap response = f(*args, **kw) File "/opt/odoo/odoo-server/addons/web/controllers/main.py", line 940, in call_button action = self._call_kw(model, method, args, {}) File "/opt/odoo/odoo-server/addons/web/controllers/main.py", line 928, in _call_kw return getattr(request.registry.get(model), method)(request.cr, request.uid, *args, **kwargs) File "/opt/odoo/odoo-server/openerp/api.py", line 241, in wrapper return old_api(self, *args, **kwargs) File "/opt/odoo/odoo-server/openerp/api.py", line 393, in old_api result = new_api(recs, *args, **kwargs) File "/opt/odoo/odoo-server/openerp/api.py", line 397, in new_api result = [method(rec, *args, **kwargs) for rec in self] File "/opt/odoo/odoo-server/addons/stock/wizard/stock_transfer_details.py", line 79, in do_detailed_transfer for lstits in [self.item_ids, self.packop_ids]: File "/opt/odoo/odoo-server/openerp/fields.py", line 823, in __get__ return record._cache[self] File "/opt/odoo/odoo-server/openerp/models.py", line 5913, in __getitem__ return value.get() if isinstance(value, SpecialValue) else value File "/opt/odoo/odoo-server/openerp/fields.py", line 55, in get raise self.exception MissingError: ('MissingError', u'One of the documents you are trying to access has been deleted, please try again after refreshing.')
I have now disabled real-time costing to improve performance but am still unable to complete this stock move.