added data structure to pass into user_data so that we can have pointer to rtdb and efrag