set backend automatically if it's empty.