Hi, When I run tool hammer_skiplist to test new version of cyrusdb_skiplist.c I got root@xxxxxxxxxxx# ./hammer_skiplist -C /etc/imapd_p.conf -n /home/tsc/dhenryk/hammer.out fatal error: Internal error: assertion failed: cyrusdb_skiplist.c: 739: db->current_txn == NULL In code I see 724 static int lock_or_refresh(struct db *db, struct txn **tidptr) 725 { 726 int r; 727 728 assert(db != NULL && tidptr != NULL); 729 730 if (*tidptr) { 731 /* check that the DB agrees that we're in this transaction */ 732 assert(db->current_txn == *tidptr); 733 734 /* just update the active transaction */ 735 update_lock(db, *tidptr); 736 737 } else { 738 /* check that the DB isn't in a transaction */ 739 assert(db->current_txn == NULL); 740 741 /* grab a r/w lock */ 742 if ((r = write_lock(db, NULL)) < 0) { 743 return r; 744 } 745 746 /* start the transaction */ 747 if (r = newtxn(db, tidptr)) { 748 return r; 749 } 750 } 751 752 return 0; 753 } Is it OK. that I get such error? Kind Regards, Henryk ---- Cyrus Home Page: http://cyrusimap.web.cmu.edu/ Cyrus Wiki/FAQ: http://cyrusimap.web.cmu.edu/twiki List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html