update server logic