multi-threading solution for initial commit