Bug #18808 "Rowid already allocated" Error duing update and not during node recovery
Submitted: 5 Apr 2006 14:25 Modified: 21 Apr 2006 13:16
Reporter: Jonathan Miller Email Updates:
Status: Duplicate Impact on me:
None 
Category:MySQL Cluster: Cluster (NDB) storage engine Severity:S3 (Non-critical)
Version:5.1.9 OS:Linux (Linux 32 Bit OS)
Assigned to: Assigned Account CPU Architecture:Any

[5 Apr 2006 14:25] Jonathan Miller
Description:
Tue Apr  4 22:17:39 2006
tid:-1208771664 mysql/dbc_common.c:120
PAYMENT_4: UPDATE district
SET d_ytd = d_ytd + 4782.790039
WHERE d_id = 4
  AND d_w_id = 1
mysql reports: 1205 Lock wait timeout exceeded; try restarting transaction Tue Apr  4 22:17:39 2006
tid:-1208771664 nonsp/dbc_payment.c:161
PAYMENT_4 query: UPDATE district
SET d_ytd = d_ytd + 4782.790039
WHERE d_id = 4
  AND d_w_id = 1
Tue Apr  4 22:17:39 2006
tid:-1208771664 nonsp/dbc_payment.c:24
PAYMENT FINISHED WITH ERRORS

Tue Apr  4 22:17:39 2006
tid:-1208771664 mysql/dbc_common.c:97
ROLLBACK INITIATED

Tue Apr  4 22:17:39 2006
tid:-1213297744 mysql/dbc_common.c:120
PAYMENT_4: UPDATE district
SET d_ytd = d_ytd + 1028.260010
WHERE d_id = 9
  AND d_w_id = 4
mysql reports: 1205 Lock wait timeout exceeded; try restarting transaction Tue Apr  4 22:17:39 2006
tid:-1213297744 nonsp/dbc_payment.c:161
PAYMENT_4 query: UPDATE district
SET d_ytd = d_ytd + 1028.260010
WHERE d_id = 9
  AND d_w_id = 4
Tue Apr  4 22:17:39 2006
tid:-1213297744 nonsp/dbc_payment.c:24
PAYMENT FINISHED WITH ERRORS

Tue Apr  4 22:17:39 2006
tid:-1213297744 mysql/dbc_common.c:97
ROLLBACK INITIATED

Tue Apr  4 22:17:40 2006
tid:-1213031504 mysql/dbc_common.c:120
NEW_ORDER_9: UPDATE stock
SET s_quantity = s_quantity - 7
WHERE s_i_id = 40528
  AND s_w_id = 3
mysql reports: 1297 Got temporary error 899 'Rowid already allocated' from NDBCLUSTER Tue Apr  4 22:17:40 2006
tid:-1213031504 nonsp/dbc_new_order.c:256
NEW_ORDER_9 query: UPDATE stock
SET s_quantity = s_quantity - 7
WHERE s_i_id = 40528
  AND s_w_id = 3
Tue Apr  4 22:17:40 2006
tid:-1213031504 nonsp/dbc_new_order.c:29 NEW_ORDER FINISHED WITH RC 17

Tue Apr  4 22:17:40 2006
tid:-1213031504 mysql/dbc_common.c:97
ROLLBACK INITIATED

Tue Apr  4 22:17:40 2006
tid:-1208771664 mysql/dbc_common.c:120
NEW_ORDER_9: UPDATE stock
SET s_quantity = s_quantity - 3
WHERE s_i_id = 64990
  AND s_w_id = 3
mysql reports: 1297 Got temporary error 899 'Rowid already allocated' from NDBCLUSTER Tue Apr  4 22:17:40 2006
tid:-1208771664 nonsp/dbc_new_order.c:256
NEW_ORDER_9 query: UPDATE stock
SET s_quantity = s_quantity - 3
WHERE s_i_id = 64990
  AND s_w_id = 3
Tue Apr  4 22:17:40 2006
tid:-1208771664 nonsp/dbc_new_order.c:29 NEW_ORDER FINISHED WITH RC 17

Tue Apr  4 22:17:40 2006
tid:-1208771664 mysql/dbc_common.c:97
ROLLBACK INITIATED

Tue Apr  4 22:17:40 2006
tid:-1213297744 mysql/dbc_common.c:120
NEW_ORDER_9: UPDATE stock
SET s_quantity = s_quantity - 5
WHERE s_i_id = 57328
  AND s_w_id = 3
mysql reports: 1297 Got temporary error 899 'Rowid already allocated' from NDBCLUSTER Tue Apr  4 22:17:40 2006
tid:-1213297744 nonsp/dbc_new_order.c:256
NEW_ORDER_9 query: UPDATE stock
SET s_quantity = s_quantity - 5
WHERE s_i_id = 57328
  AND s_w_id = 3
Tue Apr  4 22:17:40 2006
tid:-1213297744 nonsp/dbc_new_order.c:29 NEW_ORDER FINISHED WITH RC 17

Tue Apr  4 22:17:40 2006
tid:-1213297744 mysql/dbc_common.c:97
ROLLBACK INITIATED

Tue Apr  4 22:17:40 2006
tid:-1212232784 mysql/dbc_common.c:120
NEW_ORDER_9: UPDATE stock
SET s_quantity = s_quantity - 8
WHERE s_i_id = 43008
  AND s_w_id = 1
mysql reports: 1297 Got temporary error 899 'Rowid already allocated' from NDBCLUSTER Tue Apr  4 22:17:40 2006
tid:-1212232784 nonsp/dbc_new_order.c:256
NEW_ORDER_9 query: UPDATE stock
SET s_quantity = s_quantity - 8
WHERE s_i_id = 43008
  AND s_w_id = 1
Tue Apr  4 22:17:40 2006
tid:-1212232784 nonsp/dbc_new_order.c:29 NEW_ORDER FINISHED WITH RC 17

Tue Apr  4 22:17:40 2006
tid:-1212232784 mysql/dbc_common.c:97
ROLLBACK INITIATED

Tue Apr  4 22:17:40 2006
tid:-1213563984 mysql/dbc_common.c:120
DELIVERY_2: DELETE FROM new_order
WHERE no_o_id = 2308
  AND no_w_id = 2
  AND no_d_id = 1
mysql reports: 1205 Lock wait timeout exceeded; try restarting transaction Tue Apr  4 22:17:40 2006
tid:-1213563984 nonsp/dbc_delivery.c:25
DELIVERY FINISHED WITH ERRORS

Tue Apr  4 22:17:40 2006
tid:-1213563984 mysql/dbc_common.c:97
ROLLBACK INITIATED

Tue Apr  4 22:17:40 2006
tid:-1211167824 mysql/dbc_common.c:120
PAYMENT_4: UPDATE district
SET d_ytd = d_ytd + 3849.500000
WHERE d_id = 2
  AND d_w_id = 3
mysql reports: 1205 Lock wait timeout exceeded; try restarting transaction Tue Apr  4 22:17:40 2006
tid:-1211167824 nonsp/dbc_payment.c:161
PAYMENT_4 query: UPDATE district
SET d_ytd = d_ytd + 3849.500000
WHERE d_id = 2
  AND d_w_id = 3
Tue Apr  4 22:17:40 2006
tid:-1211167824 nonsp/dbc_payment.c:24
PAYMENT FINISHED WITH ERRORS

How to repeat:
Run dbt2 using mixed mode.
[21 Apr 2006 13:16] Tomas Ulin
we believe this is explained and fixed by

BUG#19245 Insert+Insert+rollback+rollback causes node failure