起步软件技术论坛
搜索
 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 2703|回复: 8

[结贴] 文件丢失及文档服务器错误

[复制链接]

10

主题

36

帖子

185

积分

初级会员

Rank: 2

积分
185
QQ
发表于 2015-1-27 15:59:41 | 显示全部楼层 |阅读模式
本帖最后由 nuaayub 于 2015-1-28 10:35 编辑

1、部署环境:
版本:X5.2.7小版本号:
数据库:oracle服务器操作系统:windows server 2008应用服务器:windows server 2008
客户端操作系统:xp sp3
浏览器: IE8 ,Chrome
2、问题描述:
通过发帖:http://bbs.justep.com/thread-67493-1-1.html
实现在同一个服务器部署了1个企业版业务服务器及2个文档服务器(第二个文档服务器直接复制的第一个文档服务器)。部署好后出现问题:
1)、2个文档服务器定时报“结果集已耗尽”的错误;是否是索引问题?
2)、发现有附件上传不成功的现象。经发现,文件已上传到服务器,但是文档中心无该文件记录,表单中该文件为灰色,是否在文件关联时出了问题?
3)、同时发现文档服务器会报“必须是事务处理的第一个语句”的错误和“违反唯一约束条件”的错误,是否在有人同时上传附件时,系统执行语句时,业务锁死和主键重复赋值?

3、说明:
1)、2个文档服务器和业务服务器的日志及控制台截图请看一下附件。

截图.rar

630.98 KB, 下载次数: 278

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36064
发表于 2015-1-27 17:09:19 | 显示全部楼层
1.结果集耗尽,把tomcat中配置doc数据源的连接数该大点看看
2.控制台是否报错
3.主键是随机生成的,不会生成相同的,确认一下具体什么情况下会报这错误
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

10

主题

36

帖子

185

积分

初级会员

Rank: 2

积分
185
QQ
 楼主| 发表于 2015-1-28 10:59:52 | 显示全部楼层
jishuang 发表于 2015-1-27 17:09
1.结果集耗尽,把tomcat中配置doc数据源的连接数该大点看看
2.控制台是否报错
3.主键是随机生成的,不会生 ...

1、1)中两个文档服务器的连接数都改大了,依然有报错,而且定时会刷控制台。
2015-01-27 12:16:18 [Daisy event dispatcher] [org.outerj.daisy.event.EventDispatcherImpl] ERROR: Exception in event dispatcher.
java.sql.SQLException: 结果集已耗尽
        at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112)
        at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:146)
        at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:208)
        at oracle.jdbc.driver.OracleResultSetImpl.getString(OracleResultSetImpl.java:382)
        at org.apache.tomcat.dbcp.dbcp.DelegatingResultSet.getString(DelegatingResultSet.java:213)
        at org.apache.tomcat.dbcp.dbcp.DelegatingResultSet.getString(DelegatingResultSet.java:213)
        at org.outerj.daisy.event.EventDispatcherImpl$EventDispatchThread.run(Unknown Source)

2、2)中报错是文件不存在时报的错,处理时是否报错无法跟踪,也不可能使用正式运行环境测试。错误的截图都在附件里了。
可能是以下错误
       2015-01-27 11:35:47 [ActiveMQ Session Task] [org.outerj.daisy.ftindex.FullTextIndexUpdater] DEBUG: Before calling textextractor for document 32641-DOC, branch 1, language 1, part type 1
2015-01-27 11:35:47 [ActiveMQ Session Task] [org.outerj.daisy.ftindex.FullTextIndexUpdater] DEBUG: Error extracting text from part data (document: 32641-DOC, branch ID: 1, language ID: 1, part ID: 1)
org.outerj.daisy.repository.RepositoryException: Problem retrieving blob data.
        at org.outerj.daisy.repository.serverimpl.LocalDocumentStrategy.getBlob(Unknown Source)
        at org.outerj.daisy.repository.commonimpl.PartImpl.getDataStream(Unknown Source)
        at org.outerj.daisy.ftindex.FullTextIndexUpdater$FullTextQueueListener.onMessage(Unknown Source)
        at org.outerj.daisy.jms.impl.JmsClientImpl$MyJmsMessageListener.onMessage(Unknown Source)
        at org.apache.activemq.ActiveMQMessageConsumer.dispatch(ActiveMQMessageConsumer.java:854)
        at org.apache.activemq.ActiveMQSessionExecutor.dispatch(ActiveMQSessionExecutor.java:104)
        at org.apache.activemq.ActiveMQSessionExecutor.iterate(ActiveMQSessionExecutor.java:171)
        at org.apache.activemq.thread.PooledTaskRunner.runTask(PooledTaskRunner.java:120)
        at org.apache.activemq.thread.PooledTaskRunner.access$100(PooledTaskRunner.java:26)
        at org.apache.activemq.thread.PooledTaskRunner$1.run(PooledTaskRunner.java:47)
        at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
        at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
        at java.lang.Thread.run(Thread.java:662)
Caused by: org.outerj.daisy.blobstore.NonExistingBlobException: Non existing blob name: DOC_____________________________attachment2015012725880d5e72451717066a52110b28687e015a354f
        at org.outerj.daisy.blobstore.impl.FSBlobStore.retrieve(Unknown Source)
        ... 13 more
3、3)该错误也无法完全明确什么时候报,附件里也有报错的截图。
4、2)和3)问题在开发版没发现,可能是企业版多并发时发生的。附件上传模式为flash。
5、顺便再问一下,两个文档服务器,第二个启动后\X5.2.7\data\doc\conf \activemq-conf.xml中<transportConnector uri="tcp://localhost:61616" /> 的端口占用,是否可以修改成其他端口?
谢谢。
回复 支持 反对

使用道具 举报

10

主题

36

帖子

185

积分

初级会员

Rank: 2

积分
185
QQ
 楼主| 发表于 2015-1-28 11:27:55 来自手机 | 显示全部楼层
本帖最后由 nuaayub 于 2015-1-28 11:32 编辑

补充:问题3,发现一个文档服务器报必须是第一事务错误时,另一个报违反唯一性约束的错误。          上述问题在单文档服务器时,仅问题2在大文件上传时发生。
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36064
发表于 2015-1-28 13:57:15 | 显示全部楼层
nuaayub 发表于 2015-1-28 10:59
1、1)中两个文档服务器的连接数都改大了,依然有报错,而且定时会刷控制台。
2015-01-27 12:16:18 [Dais ...

1.结果集已耗尽,网上查的就是连接的问题,确认数据库中是否有设置最大链接数的,这个错误是数据库抛出的异常
2.就是文档服务器中没有找到这个文件,确认是不是两个文档服务交叉了,两个文档服务两个是同一个data目录吗?
3.ORA-01453: SET TRANSACTION 必须是事务处理的第一个语句

造成原因:之前的事务没有结束。
比如insert或update后,没有commit!

再上传大文件的,doc数据源会执行insert操作,没有上传完这个时候还没有commit,如果再上传应该就会有这问题

4.修改端口可以参考http://bbs.justep.com/forum.php? ... 0&pid=164945346
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

10

主题

36

帖子

185

积分

初级会员

Rank: 2

积分
185
QQ
 楼主| 发表于 2015-2-5 16:02:41 | 显示全部楼层
本帖最后由 nuaayub 于 2015-2-5 16:03 编辑
jishuang 发表于 2015-1-28 13:57
1.结果集已耗尽,网上查的就是连接的问题,确认数据库中是否有设置最大链接数的,这个错误是数据库抛出的 ...


1.结果集已耗尽:  tomcat监测工具显示数据库连接数不大,离最大连接数还很远。且此问题是分文档服务器后才发生的,感觉和dispacher有关。
2.两个文档服务器不是同一个data目录,应该是在其他文件上传过程中事务冲突后,没有有效的将文档进行关联。
3.目前文档服务器的错误主要是:ORA-01453: SET TRANSACTION 必须是事务处理的第一个语句、
java.sql.SQLException: 结果集已耗尽,违反唯一约束条件。
业务服务器是访问数据库失败,java.lang.IllegalStateException: getOutputStream() has already been called for this response;
java.net.SocketException: Connection reset by peer: socket write error 等。

回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36064
发表于 2015-2-5 17:11:45 | 显示全部楼层
nuaayub 发表于 2015-2-5 16:02
1.结果集已耗尽:  tomcat监测工具显示数据库连接数不大,离最大连接数还很远。且此问题是分文档服务器后 ...

1.结果集已耗尽,tomcat中配置的大,要看数据库本身是否有限制
3.再上传大文件的,doc数据源会执行insert操作,没有上传完这个时候还没有commit,如果再上传应该就会有这问题
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

10

主题

36

帖子

185

积分

初级会员

Rank: 2

积分
185
QQ
 楼主| 发表于 2015-2-6 10:27:16 | 显示全部楼层
本帖最后由 nuaayub 于 2015-2-6 10:28 编辑
jishuang 发表于 2015-2-5 17:11
1.结果集已耗尽,tomcat中配置的大,要看数据库本身是否有限制
3.再上传大文件的,doc数据源会执行insert ...

1、结果集已耗尽:数据库本身连接数已设大,可能还是要继续增加tomcat中的配置吧。暂时未发现对功能有影响,只是后台不停的刷此错误。
2、大文件上传时传其他文件报错会不会影响两个文件正常上传?
3、如果不影响两个文件上传,此贴先结吧,后面再看看,有问题再发新贴,谢谢。
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36064
发表于 2015-2-6 11:40:54 | 显示全部楼层
nuaayub 发表于 2015-2-6 10:27
1、结果集已耗尽:数据库本身连接数已设大,可能还是要继续增加tomcat中的配置吧。暂时未发现对功能有影响 ...

应该不会文件的上传
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|X3技术论坛|Justep Inc.    

GMT+8, 2024-11-22 13:11 , Processed in 0.058121 second(s), 26 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表