Linux Host "Abort command issued"

本文记录了一次存储连接问题的详细排查过程,包括更换存储端口、交换机端口等操作,但问题仍未解决。通过分析日志发现大量登录与注销记录,并对FC交换机日志进行了对比分析。

I still investigate this issue, and it now narrowed down after we hard working.

Thanks my team mate.


Action done:

1)  Change the storage ports, that host can access the storage by different storage port. And most important IOPS pressure can be low down.

---- but, host still report the errors.

2)  Change the switch port.  --Failed.

3)  Replace the host HBA port. --Failed.

4)  Replace the OPTICAL FIBER ---Failed.

After we do these actions, the host still report the errors.


Analysis Process:

HOST:

[sfstorage@*********** ~]$ sudo cat /var/log/messages*|grep 2002
Sep 14 02:51:21 cnsz02pl0306 kernel: qla2xxx 0000:42:00.0: scsi(3:2:23): Abort command issued -- 1 50f052 2002.
Sep 14 02:51:21 cnsz02pl0306 kernel: qla2xxx 0000:42:00.0: scsi(3:2:15): Abort command issued -- 1 514d9a 2002.
Sep 14 02:59:26 cnsz02pl0306 kernel: qla2xxx 0000:42:00.0: scsi(3:2:6): Abort command issued -- 1 56bdb2 2002.
Sep 14 04:13:07 cnsz02pl0306 kernel: qla2xxx 0000:42:00.0: scsi(3:2:23): Abort command issued -- 1 927343 2002.
Sep 14 04:37:32 cnsz02pl0306 kernel: qla2xxx 0000:42:00.0: scsi(3:2:16): Abort command issued -- 1 ab3ff0 2002.


open the debug mode:(Another host debug information, but the same issue.)

Sep  3 08:47:58 cnsz02pl0306 kernel: qla2xxx 0000:42:00.0: scsi(3:7:23): Abort command issued -- 1 28649dab 2002.
Sep  3 08:48:38 cnsz02pl0306 kernel: scsi(3): Asynchronous PORT UPDATE ignored 0083/0007/1100.
Sep  3 08:48:38 cnsz02pl0306 kernel: qla2xxx 0000:42:00.0: scsi(3:7:9) Port down status: port-state=0x4
Sep  3 08:48:38 cnsz02pl0306 kernel: scsi(3): Port login retry: 24530002ac008e8d, id = 0x0083 retry cnt=30
Sep  3 08:48:38 cnsz02pl0306 kernel: scsi(3): qla2x00_port_login()
Sep  3 08:48:38 cnsz02pl0306 kernel: scsi(3): Trying Fabric Login w/loop id 0x0083 for port 039a00.
Sep  3 08:48:38 cnsz02pl0306 kernel: qla2xxx 0000:42:00.0: scsi(3:7:9) FCP command status: 0x29-0x0 (0xe0000) portid=039a00 oxid=0xffff ser=0x286b640f cdb=280014 len=0x2000 rsp_info=0x0 resid=0x0 fw_resid=0x0
Sep  3 08:48:38 cnsz02pl0306 kernel: scsi(3): port login OK: logged in ID 0x83
Sep  3 08:48:38 cnsz02pl0306 kernel: scsi(3): qla2x00_port_login - end
Sep  3 09:09:21 cnsz02pl0306 kernel: qla2xxx_eh_abort(3): aborting sp ffff8174518a97c0 from RISC. pid=684212605.
Sep  3 09:09:21 cnsz02pl0306 kernel: qla2xxx 0000:42:00.0: scsi(3:7:17) FCP command status: 0x5-0x0 (0x80000) portid=039a00 oxid=0x6cb ser=0x28c8417d cdb=2a003d len=0x2000 rsp_info=0x0 resid=0x0 fw_resid=0x0
Sep  3 09:09:21 cnsz02pl0306 kernel: qla2xxx 0000:42:00.0: scsi(3:7:17): Abort command issued -- 1 28c8417d 2002.
Sep  3 09:10:02 cnsz02pl0306 kernel: qla2xxx 0000:42:00.0: scsi(3:7:13) Port down status: port-state=0x4
Sep  3 09:10:02 cnsz02pl0306 kernel: scsi(3): Port login retry: 24530002ac008e8d, id = 0x0083 retry cnt=30
Sep  3 09:10:02 cnsz02pl0306 kernel: scsi(3): qla2x00_port_login()
Sep  3 09:10:02 cnsz02pl0306 kernel: scsi(3): Trying Fabric Login w/loop id 0x0083 for port 039a00.
Sep  3 09:10:02 cnsz02pl0306 kernel: qla2xxx 0000:42:00.0: scsi(3:7:13) FCP command status: 0x29-0x0 (0xe0000) portid=039a00 oxid=0x0 ser=0x28ccd092 cdb=28008b len=0x2000 rsp_info=0x0 resid=0x0 fw_resid=0x0
Sep  3 09:10:02 cnsz02pl0306 kernel: qla2xxx 0000:42:00.0: scsi(3:7:7) Port down status: port-state=0x3
Sep  3 09:10:02 cnsz02pl0306 kernel: qla2xxx 0000:42:00.0: scsi(3:7:7) FCP command status: 0x29-0x0 (0xe0000) portid=039a00 oxid=0x0 ser=0x28ccd095 cdb=280002 len=0x4000 rsp_info=0x0 resid=0x0 fw_resid=0x0
Sep  3 09:10:02 cnsz02pl0306 kernel: scsi(3): Asynchronous PORT UPDATE ignored 0083/0007/1100.
Sep  3 09:10:02 cnsz02pl0306 kernel: scsi(3): port login OK: logged in ID 0x83
Sep  3 09:10:02 cnsz02pl0306 kernel: scsi(3): qla2x00_port_login - end
Sep  3 09:18:40 cnsz02pl0306 kernel: qla2xxx_eh_abort(3): aborting sp ffff813352b14dc0 from RISC. pid=687125221.
Sep  3 09:18:40 cnsz02pl0306 kernel: qla2xxx 0000:42:00.0: scsi(3:7:12) FCP command status: 0x5-0x0 (0x80000) portid=039a00 oxid=0x86d ser=0x28f4b2e5 cdb=280017 len=0x2000 rsp_info=0x0 resid=0x0 fw_resid=0x0
Sep  3 09:18:40 cnsz02pl0306 kernel: qla2xxx 0000:42:00.0: scsi(3:7:12): Abort command issued -- 1 28f4b2e5 2002.
Sep  3 09:18:40 cnsz02pl0306 kernel: qla2xxx_eh_abort(3): aborting sp ffff8174594a61c0 from RISC. pid=687222175.
Sep  3 09:18:40 cnsz02pl0306 kernel: qla2xxx 0000:42:00.0: scsi(3:7:21) FCP command status: 0x5-0x0 (0x80000) portid=039a00 oxid=0x51 ser=0x28f62d9f cdb=280065 len=0x2000 rsp_info=0x0 resid=0x0 fw_resid=0x0
Sep  3 09:18:40 cnsz02pl0306 kernel: qla2xxx 0000:42:00.0: scsi(3:7:21): Abort command issued -- 1 28f62d9f 2002.
Sep  3 09:52:47 cnsz02pl0306 kernel: qla2xxx_eh_abort(3): aborting sp ffff8133b0351240 from RISC. pid=700097385.
Sep  3 09:52:47 cnsz02pl0306 kernel: qla2xxx 0000:42:00.0: scsi(3:7:25) FCP command status: 0x5-0x0 (0x80000) portid=039a00 oxid=0x37e ser=0x29baa369 cdb=2a002e len=0x2000 rsp_info=0x0 resid=0x0 fw_resid=0x0
Sep  3 09:52:47 cnsz02pl0306 kernel: qla2xxx 0000:42:00.0: scsi(3:7:25): Abort command issued -- 1 29baa369 2002.
Sep  3 09:53:27 cnsz02pl0306 kernel: scsi(3): Asynchronous PORT UPDATE ignored 0083/0007/1100.
Sep  3 09:53:27 cnsz02pl0306 kernel: qla2xxx 0000:42:00.0: scsi(3:7:32) Port down status: port-state=0x4
Sep  3 09:53:27 cnsz02pl0306 kernel: scsi(3): Port login retry: 24530002ac008e8d, id = 0x0083 retry cnt=30


It show lots of port login and logout information, then I want to check the FC switch and see whether log the login logs?


The FC swtich:

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Switch 0; Sun Sep 14 00:24:51 2014 GMT (GMT+0:00)
00:24:51.528276 SCN Port Offline;g=0x53e                    D0,P0  D0,P0  209   NA    
00:24:51.528283 *Removing all nodes from port               D0,P0  D0,P0  209   NA    
00:40:24.178797 SCN LR_PORT(0);g=0x53e                      D0,P0  D0,P0  209   NA    
00:40:24.178810 SCN Port Online; g=0x53e,isolated=0         D0,P0  D0,P1  209   NA    
00:40:24.178860 Port Elp engaged                            D0,P1  D0,P0  209   NA    
00:40:24.178877 *Removing all nodes from port               D0,P0  D0,P0  209   NA    
00:40:24.179245 SCN Port F_PORT                             D0,P1  D0,P0  209   NA    

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Please be careful the time stamp, it do NOT match the host's. why?

So, I check the port login the swtich process, there are three steps:

Fabric login

Port login

Process login

Fabric login
After the fabric capable Fibre Channel device is attached to a fabric switch, it will carry out a fabric login (FLOGI). Similar to port login, FLOGI is an extended link service command that sets up a session between two participants. With FLOGI a session is created between an N_Port or NL_Port and the switch. An N_Port will send a FLOGI frame that contains its Node Name, its N_Port Name, and service parameters to a well-known address of 0xFFFFFE.
A public loop NL_Port first opens the destination AL_PA 0x00 before issuing the FLOGI request. In both cases the switch accepts the login and returns an accept (ACC) frame to the sender. If some of the service parameters requested by the N_Port or NL_Port are not supported, the switch will set the appropriate bits in the ACC frame to indicate this.
When the N_Port logs in it uses a 24-bit port address of 0x000000. Because of this the fabric is allowed to assign the appropriate port address to that device, based on the Domain-Area-Port address format. The newly assigned address is contained in the ACC response frame.
When the NL_Port logs in a similar process starts, except that the least significant byte is used to assign AL_PA and the upper two bytes constitute a fabric loop identifier. Before an NL_Port logs in it will go through the LIP on the loop, which is started by the FL_Port, and from this process it has already derived an AL_PA. The switch then decides if it will accept this AL_PA for this device or not. If not a new AL_PA is assigned to the NL_Port, which then causes the start of another LIP. This ensures that the switch assigned AL_PA does not conflict with any previously selected AL_PAs on the loop.
After the N_Port or public NL_Port gets its fabric address from FLOGI, it needs to register with the SNS. This is done with port login (PLOGI) at the address 0xFFFFFC. The device may register values for all or just some database objects, but the most useful are its 24-bit port address, 64-bit Port Name (WWPN), 64-bit Node Name (WWN), class of service parameters, FC-4 protocols supported, and port type, such as N_Port or NL_Port.

Port login
Port login is also known as PLOGI. Port login is used to establish a session between two N_Ports (devices) and is necessary before any upper level commands or operations can be performed. During the port login, two N_Ports (devices) swap service parameters and make themselves known to each other.

Process login
Process login is also known as PRLI. Process login is used to set up the environment between related processes on an originating N_Port and a responding N_Port. A group of related processes is collectively known as an image pair. The processes involved can be system processes, system images, such as mainframe logical partitions, control unit images, and FC-4 processes. Use of process login is optional from the perspective of Fibre Channel FC-2 layer, but may be required by a specific upper-level protocol as in the case of SCSI-FCP mapping.

FLOGI
          N_Port requests a unique 24-bit address from the Fabric Login Server (accessible via an F_port on a Fabric switch).

PLOGI
          N_Port informs the Fabric Name Server of its personality and capabilities. For example:
          WWNN, WWPN
          Buffer credits for flow control
          clock frequency ('speed capability')
          Upper layer protocol support (eg. SCSI-3, IP)
PRLI
           Upper layer protocol communication. Well, ever since SCSI was designed and engineered (1970s, or so, previously SASI...), SCSI initiators need todiscover SCSI                    targets. So, during PRLI, N_Port SCSI initiators discover N_Port SCSI targets (which is an opportunity for the host (maybe a UNIXhost) to assign a target ID to the                    device path).
           Depending on the OS, you may be able to investigate further with commands like:
           egrep -i 'flogi|plogi|prli' /var/adm/messages  


Please pay attention that only "Process login" won't log by switch. Fabric login and Port login all will be loged by switch.

So, next action, we need do deeply investigate the storage device, and find out why the host login and logout actions do not loged in the storage log file?

and we need upgrade the Storage Firmware too.


Thanks.


05-Aug-2025 17:30:40.083 警告 [main] org.apache.tomcat.util.digester.SetPropertiesRule.begin Match[Server/Service/Engine/Host/Context]无法将属性[debug]设置为[0] 05-Aug-2025 17:30:40.096 警告 [main] org.apache.tomcat.util.digester.SetPropertiesRule.begin Match[Server/Service/Engine/Host/Valve]无法将属性[resolveHosts]设置为[false] 05-Aug-2025 17:30:40.097 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log Server.服务器版本: Apache Tomcat/9.0.90 05-Aug-2025 17:30:40.099 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 服务器构建: Jun 14 2024 14:45:13 UTC 05-Aug-2025 17:30:40.107 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 服务器版本号: 9.0.90.0 05-Aug-2025 17:30:40.107 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 操作系统名称: Windows 10 05-Aug-2025 17:30:40.107 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log OS.版本: 10.0 05-Aug-2025 17:30:40.107 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 架构: amd64 05-Aug-2025 17:30:40.107 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log Java 环境变量: D:\dzwl\dzwlaz\java\jdk1.8\jre 05-Aug-2025 17:30:40.107 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log Java虚拟机版本: 1.8.0_101-b13 05-Aug-2025 17:30:40.107 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log JVM.供应商: Oracle Corporation 05-Aug-2025 17:30:40.107 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_BASE: D:\dzwl\dzwlaz\tomcat\tomcat1 05-Aug-2025 17:30:40.107 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_HOME: D:\dzwl\dzwlaz\tomcat\tomcat1 05-Aug-2025 17:30:40.107 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 命令行参数: -Dcatalina.home=D:\dzwl\dzwlaz\tomcat\tomcat1 05-Aug-2025 17:30:40.107 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 命令行参数: -Dcatalina.base=D:\dzwl\dzwlaz\tomcat\tomcat1 05-Aug-2025 17:30:40.108 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 命令行参数: -Dignore.endorsed.dirs=D:\dzwl\dzwlaz\tomcat\tomcat1\endorsed 05-Aug-2025 17:30:40.108 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 命令行参数: -Djava.io.tmpdir=D:\dzwl\dzwlaz\tomcat\tomcat1\temp 05-Aug-2025 17:30:40.108 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 命令行参数: -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager 05-Aug-2025 17:30:40.108 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 命令行参数: -Dfile.encoding=utf-8 05-Aug-2025 17:30:40.108 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 命令行参数: -Djava.util.logging.config.file=D:\dzwl\dzwlaz\tomcat\tomcat1\conf\logging.properties 05-Aug-2025 17:30:40.108 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 命令行参数: exit 05-Aug-2025 17:30:40.108 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 命令行参数: abort 05-Aug-2025 17:30:40.108 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 命令行参数: -Xms4096m 05-Aug-2025 17:30:40.108 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log 命令行参数: -Xmx4096m 05-Aug-2025 17:30:40.113 信息 [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent 使用APR版本[1.7.4]加载了基于APR的Apache Tomcat本机库[1.3.0]。 05-Aug-2025 17:30:40.114 信息 [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent APR功能:IPv6[true]、sendfile[true]、accept filters[false]、random[true]、UDS [true]。 05-Aug-2025 17:30:40.114 信息 [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent APR/OpenSSL配置:useAprConnector[false],useOpenSSL[true] 05-Aug-2025 17:30:40.120 信息 [main] org.apache.catalina.core.AprLifecycleListener.initializeSSL OpenSSL成功初始化 [OpenSSL 3.0.13 30 Jan 2024] 05-Aug-2025 17:30:40.320 信息 [main] org.apache.coyote.AbstractProtocol.init 初始化协议处理器 ["http-nio-8003"] 05-Aug-2025 17:30:40.335 信息 [main] org.apache.catalina.startup.Catalina.load 服务器在[410]毫秒内初始化 05-Aug-2025 17:30:40.356 信息 [main] org.apache.catalina.core.StandardService.startInternal 正在启动服务[Catalina] 05-Aug-2025 17:30:40.357 信息 [main] org.apache.catalina.core.StandardEngine.startInternal 正在启动 Servlet 引擎:[Apache Tomcat/9.0.90] 05-Aug-2025 17:30:40.794 警告 [main] org.apache.catalina.util.SessionIdGeneratorBase.createSecureRandom 使用[SHA1PRNG]创建会话ID生成的SecureRandom实例花费了[287]毫秒。 05-Aug-2025 17:30:40.811 信息 [main] org.apache.catalina.startup.HostConfig.deployDirectory 把web 应用程序部署到目录 [D:\dzwl\dzwlaz\webapps\api1\api] 05-Aug-2025 17:30:57.753 信息 [main] org.apache.jasper.servlet.TldScanner.scanJars 至少有一个JAR被扫描用于TLD但尚未包含TLD。 为此记录器启用调试日志记录,以获取已扫描但未在其中找到TLD的完整JAR列表。 在扫描期间跳过不需要的JAR可以缩短启动时间和JSP编译时间。 05-Aug-2025 17:31:53.977 严重 [main] org.apache.catalina.startup.HostConfig.deployDirectory 无法部署应用目录 [D:\dzwl\dzwlaz\webapps\api1\api] java.lang.IllegalStateException: 启动子级时出错 at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:602) at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:571) at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:603) at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1175) at org.apache.catalina.startup.HostConfig$DeployDirectory.run(HostConfig.java:1888) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) at java.util.concurrent.FutureTask.run(FutureTask.java:266) at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75) at java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:112) at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:1086) at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:470) at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1584) at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:312) at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:109) at org.apache.catalina.util.LifecycleBase.setStateInternal(LifecycleBase.java:385) at org.apache.catalina.util.LifecycleBase.setState(LifecycleBase.java:332) at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:776) at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:721) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:164) at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1203) at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1193) at java.util.concurrent.FutureTask.run(FutureTask.java:266) at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75) at java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:134) at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:749) at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:211) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:164) at org.apache.catalina.core.StandardService.startInternal(StandardService.java:415) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:164) at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:878) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:164) at org.apache.catalina.startup.Catalina.start(Catalina.java:735) 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 org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:345) at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:473) Caused by: org.apache.catalina.LifecycleException: 无法启动组件[StandardEngine[Catalina].StandardHost[localhost].StandardContext[/api]] at org.apache.catalina.util.LifecycleBase.handleSubClassException(LifecycleBase.java:402) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:179) at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:599) ... 37 more Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name &#39;emPowerInfo&#39;: Invocation of init method failed; nested exception is org.springframework.jdbc.BadSqlGrammarException: ### Error querying database. Cause: com.microsoft.sqlserver.jdbc.SQLServerException: 对象名 &#39;sys_site_license&#39; 无效。 ### The error may exist in com/dzwl/core/mapper/SysSiteLicenseMapper.java (best guess) ### The error may involve defaultParameterMap ### The error occurred while setting parameters ### SQL: SELECT id, name, scode, etime, info FROM sys_site_license WITH (NOLOCK) ### Cause: com.microsoft.sqlserver.jdbc.SQLServerException: 对象名 &#39;sys_site_license&#39; 无效。 ; bad SQL grammar []; nested exception is com.microsoft.sqlserver.jdbc.SQLServerException: 对象名 &#39;sys_site_license&#39; 无效。 at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.postProcessBeforeInitialization(InitDestroyAnnotationBeanPostProcessor.java:160) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyBeanPostProcessorsBeforeInitialization(AbstractAutowireCapableBeanFactory.java:415) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1786) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:594) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:516) at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:324) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:322) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:202) at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:897) at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:879) at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:551) at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:143) at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:758) at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:750) at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:405) at org.springframework.boot.SpringApplication.run(SpringApplication.java:315) at org.springframework.boot.web.servlet.support.SpringBootServletInitializer.run(SpringBootServletInitializer.java:173) at org.springframework.boot.web.servlet.support.SpringBootServletInitializer.createRootApplicationContext(SpringBootServletInitializer.java:153) at org.springframework.boot.web.servlet.support.SpringBootServletInitializer.onStartup(SpringBootServletInitializer.java:95) at org.springframework.web.SpringServletContainerInitializer.onStartup(SpringServletContainerInitializer.java:172) at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:4438) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:164) ... 38 more Caused by: org.springframework.jdbc.BadSqlGrammarException: ### Error querying database. Cause: com.microsoft.sqlserver.jdbc.SQLServerException: 对象名 &#39;sys_site_license&#39; 无效。 ### The error may exist in com/dzwl/core/mapper/SysSiteLicenseMapper.java (best guess) ### The error may involve defaultParameterMap ### The error occurred while setting parameters ### SQL: SELECT id, name, scode, etime, info FROM sys_site_license WITH (NOLOCK) ### Cause: com.microsoft.sqlserver.jdbc.SQLServerException: 对象名 &#39;sys_site_license&#39; 无效。 ; bad SQL grammar []; nested exception is com.microsoft.sqlserver.jdbc.SQLServerException: 对象名 &#39;sys_site_license&#39; 无效。 at org.springframework.jdbc.support.SQLErrorCodeSQLExceptionTranslator.doTranslate(SQLErrorCodeSQLExceptionTranslator.java:239) at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:72) at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:88) at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:440) at com.sun.proxy.$Proxy162.selectList(Unknown Source) at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:223) at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.executeForMany(MybatisMapperMethod.java:173) at com.baomidou.mybatisplus.core.override.MybatisMapperMethod.execute(MybatisMapperMethod.java:78) at com.baomidou.mybatisplus.core.override.MybatisMapperProxy$PlainMethodInvoker.invoke(MybatisMapperProxy.java:148) at com.baomidou.mybatisplus.core.override.MybatisMapperProxy.invoke(MybatisMapperProxy.java:89) at com.sun.proxy.$Proxy634.selectList(Unknown Source) at com.baomidou.mybatisplus.extension.service.IService.list(IService.java:279) at com.baomidou.mybatisplus.extension.service.IService.list(IService.java:288) at com.baomidou.mybatisplus.extension.service.IService$$FastClassBySpringCGLIB$$f8525d18.invoke(<generated>) at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218) at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:771) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163) at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:749) at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:367) at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:118) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:175) at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:749) at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:95) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186) at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:749) at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:691) at com.dzwl.core.service.impl.SysSiteLicenseServiceImpl$$EnhancerBySpringCGLIB$$470fcf13.list(<generated>) at com.dzwl.core.config.EmPowerInfo.init(EmPowerInfo.java:96) 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 org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleElement.invoke(InitDestroyAnnotationBeanPostProcessor.java:389) at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleMetadata.invokeInitMethods(InitDestroyAnnotationBeanPostProcessor.java:333) at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.postProcessBeforeInitialization(InitDestroyAnnotationBeanPostProcessor.java:157) ... 60 more Caused by: com.microsoft.sqlserver.jdbc.SQLServerException: 对象名 &#39;sys_site_license&#39; 无效。 at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDatabaseError(SQLServerException.java:262) at com.microsoft.sqlserver.jdbc.SQLServerStatement.getNextResult(SQLServerStatement.java:1632) at com.microsoft.sqlserver.jdbc.SQLServerPreparedStatement.doExecutePreparedStatement(SQLServerPreparedStatement.java:602) at com.microsoft.sqlserver.jdbc.SQLServerPreparedStatement$PrepStmtExecCmd.doExecute(SQLServerPreparedStatement.java:524) at com.microsoft.sqlserver.jdbc.TDSCommand.execute(IOBuffer.java:7375) at com.microsoft.sqlserver.jdbc.SQLServerConnection.executeCommand(SQLServerConnection.java:3206) at com.microsoft.sqlserver.jdbc.SQLServerStatement.executeCommand(SQLServerStatement.java:247) at com.microsoft.sqlserver.jdbc.SQLServerStatement.executeStatement(SQLServerStatement.java:222) at com.microsoft.sqlserver.jdbc.SQLServerPreparedStatement.execute(SQLServerPreparedStatement.java:505) at com.alibaba.druid.filter.FilterChainImpl.preparedStatement_execute(FilterChainImpl.java:3461) at com.alibaba.druid.filter.FilterEventAdapter.preparedStatement_execute(FilterEventAdapter.java:440) at com.alibaba.druid.filter.FilterChainImpl.preparedStatement_execute(FilterChainImpl.java:3459) at com.alibaba.druid.proxy.jdbc.PreparedStatementProxyImpl.execute(PreparedStatementProxyImpl.java:167) at com.alibaba.druid.pool.DruidPooledPreparedStatement.execute(DruidPooledPreparedStatement.java:497) at org.apache.ibatis.executor.statement.PreparedStatementHandler.query(PreparedStatementHandler.java:64) at org.apache.ibatis.executor.statement.RoutingStatementHandler.query(RoutingStatementHandler.java:79) 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 org.apache.ibatis.plugin.Plugin.invoke(Plugin.java:63) at com.sun.proxy.$Proxy638.query(Unknown Source) at com.baomidou.mybatisplus.core.executor.MybatisSimpleExecutor.doQuery(MybatisSimpleExecutor.java:69) at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:325) at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156) at com.baomidou.mybatisplus.core.executor.MybatisCachingExecutor.query(MybatisCachingExecutor.java:165) at com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor.intercept(MybatisPlusInterceptor.java:65) at org.apache.ibatis.plugin.Plugin.invoke(Plugin.java:61) at com.sun.proxy.$Proxy637.query(Unknown Source) at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:147) at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:140) 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 org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:426) ... 91 more 05-Aug-2025 17:31:53.981 信息 [main] org.apache.catalina.startup.HostConfig.deployDirectory Web应用程序目录[D:\dzwl\dzwlaz\webapps\api1\api]的部署已在[73,171]毫秒内完成 05-Aug-2025 17:31:53.981 信息 [main] org.apache.catalina.startup.HostConfig.deployDirectory 把web 应用程序部署到目录 [D:\dzwl\dzwlaz\webapps\api1\dist] 05-Aug-2025 17:31:54.010 信息 [main] org.apache.catalina.startup.HostConfig.deployDirectory Web应用程序目录[D:\dzwl\dzwlaz\webapps\api1\dist]的部署已在[29]毫秒内完成 05-Aug-2025 17:31:54.011 信息 [main] org.apache.catalina.startup.HostConfig.deployDirectory 把web 应用程序部署到目录 [D:\dzwl\dzwlaz\webapps\api1\jzjk] 05-Aug-2025 17:31:54.036 信息 [main] org.apache.catalina.startup.HostConfig.deployDirectory Web应用程序目录[D:\dzwl\dzwlaz\webapps\api1\jzjk]的部署已在[25]毫秒内完成 05-Aug-2025 17:31:54.036 信息 [main] org.apache.catalina.startup.HostConfig.deployDirectory 把web 应用程序部署到目录 [D:\dzwl\dzwlaz\webapps\api1\jzjkApp] 05-Aug-2025 17:31:54.060 信息 [main] org.apache.catalina.startup.HostConfig.deployDirectory Web应用程序目录[D:\dzwl\dzwlaz\webapps\api1\jzjkApp]的部署已在[24]毫秒内完成 05-Aug-2025 17:31:54.060 信息 [main] org.apache.catalina.startup.HostConfig.deployDirectory 把web 应用程序部署到目录 [D:\dzwl\dzwlaz\webapps\api1\pdjk] 05-Aug-2025 17:31:54.085 信息 [main] org.apache.catalina.startup.HostConfig.deployDirectory Web应用程序目录[D:\dzwl\dzwlaz\webapps\api1\pdjk]的部署已在[25]毫秒内完成 05-Aug-2025 17:31:54.092 信息 [main] org.apache.coyote.AbstractProtocol.start 开始协议处理句柄["http-nio-8003"] 05-Aug-2025 17:31:54.102 信息 [main] org.apache.catalina.startup.Catalina.start [73767]毫秒后服务器启动 05-Aug-2025 17:35:41.014 信息 [Thread-6] org.apache.coyote.AbstractProtocol.pause 暂停ProtocolHandler["http-nio-8003"] 05-Aug-2025 17:35:41.386 信息 [Thread-6] org.apache.catalina.core.StandardService.stopInternal 正在停止服务[Catalina] 05-Aug-2025 17:35:41.424 信息 [Thread-6] org.apache.coyote.AbstractProtocol.stop 正在停止ProtocolHandler ["http-nio-8003"] 05-Aug-2025 17:35:41.432 信息 [Thread-6] org.apache.coyote.AbstractProtocol.destroy 正在摧毁协议处理器 ["http-nio-8003"] 05-Aug-2025 17:35:41.438 警告 [Thread-6] org.apache.catalina.loader.WebappClassLoaderBase.clearReferencesJdbc Web应用程序 [api] 注册了JDBC驱动程序 [com.alibaba.druid.proxy.DruidDriver],但在Web应用程序停止时无法注销它。 为防止内存泄漏,JDBC驱动程序已被强制取消注册。 05-Aug-2025 17:35:41.438 警告 [Thread-6] org.apache.catalina.loader.WebappClassLoaderBase.clearReferencesJdbc Web应用程序 [api] 注册了JDBC驱动程序 [com.microsoft.sqlserver.jdbc.SQLServerDriver],但在Web应用程序停止时无法注销它。 为防止内存泄漏,JDBC驱动程序已被强制取消注册。 05-Aug-2025 17:35:41.439 警告 [Thread-6] org.apache.catalina.loader.WebappClassLoaderBase.clearReferencesThreads Web应用程序[api]似乎启动了一个名为[JNA Cleaner]的线程,但未能停止它。这很可能会造成内存泄漏。线程的堆栈跟踪:[ java.lang.Object.wait(Native Method) java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:143) java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:164) com.sun.jna.internal.Cleaner$1.run(Cleaner.java:58)] 05-Aug-2025 17:35:41.439 警告 [Thread-6] org.apache.catalina.loader.WebappClassLoaderBase.clearReferencesThreads Web应用程序[api]似乎启动了一个名为[Thread-4]的线程,但未能停止它。这很可能会造成内存泄漏。线程的堆栈跟踪:[ sun.net.dns.ResolverConfigurationImpl.notifyAddrChange0(Native Method) sun.net.dns.ResolverConfigurationImpl$AddressChangeListener.run(ResolverConfigurationImpl.java:144)]
最新发布
08-06
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值