NVP-vProxy. Сбой монтирования при восстановлении виртуальной машины SQL «HTTP 409 (Conflict)»

Summary: Решение NetWorker VMware Protection (NVP) настроено для резервного копирования виртуальных машин (ВМ) Microsoft SQL с помощью MSVMAPPAGENT. Во время операции восстановления происходит сбой операции монтирования SQL с ошибкой HTTP 409 (конфликт) ...

This article applies to This article does not apply to This article is not tied to any specific product. Not all product versions are identified in this article.

Symptoms

Восстановление виртуальной машины SQL выполняется из клиента Data Protection Restore Client (DPRC). 
Процесс монтирования завершается сбоем с сообщением HTTP 409 (конфликт):

Конфликт HTTP 409  

Сервер NetWorker flr-server.log сообщает о той же ошибке HTTP:

Linx: /nsr/authc/logs/flr-server.log
Windows (по умолчанию): C:\Program Files\EMC NetWorker\nsr\authc-server\tomcat\logs\flr-server.log

YYYY-MM-DD HH:mm:SS [https-jsse-nio-9090-exec-5] INFO  c.e.n.c.v.i.VProxyRestClient.getVProxyUrl 104 - Call vProxy: POST https://NETWORKER-SERVER-ADDRESS:9090/api/v1/FlrBrowseSessions
YYYY-MM-DD HH:mm:SS [https-jsse-nio-9090-exec-5] INFO  c.e.n.c.v.i.VProxyRestClient.createVProxyHttpRequest 126 - Using already cached NW routable IP: NETWORKER-SERVER-ADDRESS/NETWORKER-SERVER-IP
YYYY-MM-DD HH:mm:SS [https-jsse-nio-9090-exec-5] INFO  c.e.n.c.v.i.VProxyRestClient._vProxyPOST 265 - Payload = {"Config":{"AcceptedLanguage":"en","acceptedLanguage":"en","SessionId":null,"LogTag":"FLR_Browse_FLR-SESSION-ID","IdleTimeout":0,"LogLevel":"DEBUG","FlrMountSessionId":"FLR-SESSION-ID","CacheRetentionSeconds":60,"CurrentWorkingDirectory":"","BrowseDestination":false,"ParentPath":null,"ApplicationData":null,"AppName":null,"Vcenter":null,"VmGuestLogin":null}}
YYYY-MM-DD HH:mm:SS [https-jsse-nio-9090-exec-5] INFO  c.e.n.c.v.i.VProxyRestClient._vProxyPOST 270 - Requesting vProxyPOST for https://NETWORKER-SERVER-ADDRESS:9090/api/v1/FlrBrowseSessions, FlrBrowseSessions...
YYYY-MM-DD HH:mm:SS [https-jsse-nio-9090-exec-5] INFO  c.e.n.c.v.i.VProxyRestClient._vProxyPOST 272 - Got vProxyPOST response.
YYYY-MM-DD HH:mm:SS [https-jsse-nio-9090-exec-5] INFO  c.e.n.c.v.i.VProxyRestClient.checkResponse 390 - Response Status Code = 409
YYYY-MM-DD HH:mm:SS [https-jsse-nio-9090-exec-5] INFO  c.e.n.c.v.i.VProxyRestClient.checkResponse 391 - Response Reason Phrase = Conflict
YYYY-MM-DD HH:mm:SS [https-jsse-nio-9090-exec-5] ERROR c.e.n.c.v.i.VProxyRestClient.checkResponse 396 - Could not connect to vproxy. Http Response status code: 409 Conflict
YYYY-MM-DD HH:mm:SS [https-jsse-nio-9090-exec-5] ERROR c.e.n.c.v.i.VProxyMount.postBrowseSession 378 - Error browsing  
com.emc.nw.common.exception.BrowseException: Could not connect to vproxy. Http Response status code: 409 Conflict
    at com.emc.nw.common.vproxyapi.impl.VProxyRestClient.checkResponse(VProxyRestClient.java:399)
    at com.emc.nw.common.vproxyapi.impl.VProxyRestClient._vProxyPOST(VProxyRestClient.java:275)
    at com.emc.nw.common.vproxyapi.impl.VProxyRestClient.vProxyPOST(VProxyRestClient.java:238)
    at com.emc.nw.common.vproxyapi.impl.VProxyMount.postBrowseSession(VProxyMount.java:363)
    at com.emc.flr.services.impl.FsObjectServiceImpl.createVProxyBrowse(FsObjectServiceImpl.java:808)
    at com.emc.flr.services.impl.FsObjectServiceImpl.mountBackupOnTarget(FsObjectServiceImpl.java:1068)
    at com.emc.flr.services.impl.FsObjectServiceImpl.getFSObjects(FsObjectServiceImpl.java:135)
    at com.emc.flr.rest.FsObjectsRest.getFSObjects(FsObjectsRest.java:60)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at com.sun.jersey.spi.container.JavaMethodInvokerFactory$1.invoke(JavaMethodInvokerFactory.java:60)
    at com.sun.jersey.server.impl.model.method.dispatch.AbstractResourceMethodDispatchProvider$TypeOutInvoker._dispatch(AbstractResourceMethodDispatchProvider.java:185)
    at com.sun.jersey.server.impl.model.method.dispatch.ResourceJavaMethodDispatcher.dispatch(ResourceJavaMethodDispatcher.java:75)
    at com.sun.jersey.server.impl.uri.rules.HttpMethodRule.accept(HttpMethodRule.java:302)
    at com.sun.jersey.server.impl.uri.rules.ResourceClassRule.accept(ResourceClassRule.java:108)
    at com.sun.jersey.server.impl.uri.rules.RightHandPathRule.accept(RightHandPathRule.java:147)
    at com.sun.jersey.server.impl.uri.rules.RootResourceClassesRule.accept(RootResourceClassesRule.java:84)
    at com.sun.jersey.server.impl.application.WebApplicationImpl._handleRequest(WebApplicationImpl.java:1542)
    at com.sun.jersey.server.impl.application.WebApplicationImpl._handleRequest(WebApplicationImpl.java:1473)
    at com.sun.jersey.server.impl.application.WebApplicationImpl.handleRequest(WebApplicationImpl.java:1419)
    at com.sun.jersey.server.impl.application.WebApplicationImpl.handleRequest(WebApplicationImpl.java:1409)
    at com.sun.jersey.spi.container.servlet.WebComponent.service(WebComponent.java:409)
    at com.sun.jersey.spi.container.servlet.ServletContainer.service(ServletContainer.java:558)
    at com.sun.jersey.spi.container.servlet.ServletContainer.service(ServletContainer.java:733)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:623)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:209)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)
    at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)
    at org.apache.catalina.filters.HttpHeaderSecurityFilter.doFilter(HttpHeaderSecurityFilter.java:129)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)
    at com.emc.flr.filters.AuthenticationFilter.doFilter(AuthenticationFilter.java:86)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:168)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90)
    at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:596)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:130)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93)
    at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:670)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:342)
    at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:390)
    at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63)
    at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:928)
    at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1794)
    at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52)
    at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191)
    at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659)
    at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
    at java.lang.Thread.run(Thread.java:750)
YYYY-MM-DD HH:mm:SS [https-jsse-nio-9090-exec-5] ERROR c.e.f.s.i.FsObjectServiceImpl.createVProxyBrowse 812 - Browse backup sessions were not created correctly - possibly a bad mount for sessionid: FLR-SESSION-ID
YYYY-MM-DD HH:mm:SS [https-jsse-nio-9090-exec-5] ERROR c.e.f.s.i.FsObjectServiceImpl.createVProxyBrowse 813 - mount session error message reads: Mount job failure message: Create vProxy browse requests failed. 

Cause

DPRC не ожидает завершения операции монтирования достаточно долго. DPRC отправляет вызов интерфейса прикладного программирования (API) для закрытия сеанса монтирования, когда vProxy все еще монтирует диски, что приводит к конфликту HTTP 409.

Этот вопрос был поднят перед инженерами NetWorker.

Resolution

Исправление кода ожидается в NetWorker 19.13.0.1 (ориентировочно 27 августа 2025 г.)

Additional Information

Эта проблема наблюдалась в среде, где одна ВМ SQL содержала 10 дисков (VMDK) и множество баз данных. С этим признаком произошел сбой всех операций монтирования MSVMAPPAGENT, в то время как другие серверы SQL меньшего размера смонтированы без проблем. 

Affected Products

NetWorker

Products

NetWorker Family
Article Properties
Article Number: 000342040
Article Type: Solution
Last Modified: 04 Sept 2025
Version:  4
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.