`
pavel
  • 浏览: 927847 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

创建索引的时候出现的错误

阅读更多

<OFMsg>251658517"1"1190570570894"603984231"0"1563268982" col_7451" col_7451.JDBC_62119" zjw-se1" BaseException.java"-1"3 com.microsoft.sqlserver.jdbc.SQLServerException: 系统内存不足。请对大型 ResultSet 使用服务器端游标: 。ResultSet 大小:266,708,558。JVM 总内存大小:1,074,133,504。"3 com.microsoft.sqlserver.jdbc.SQLServerException: 系统内存不足。请对大型 ResultSet 使用服务器端游标: 。ResultSet 大小:266,708,558。JVM 总内存大小:1,074,133,504。

   at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDriverError(Unknown Source)

   at com.microsoft.sqlserver.jdbc.DBComms.receive(Unknown Source)

   at com.microsoft.sqlserver.jdbc.SQLServerPreparedStatement.doExecutePreparedStatement(Unknown Source)

   at com.microsoft.sqlserver.jdbc.SQLServerPreparedStatement$PreparedStatementExecutionRequest.executeStatement(Unknown Source)

   at com.microsoft.sqlserver.jdbc.CancelableRequest.execute(Unknown Source)

   at com.microsoft.sqlserver.jdbc.SQLServerConnection.executeRequest(Unknown Source)

   at com.microsoft.sqlserver.jdbc.SQLServerPreparedStatement.executeQuery(Unknown Source)

   at com.ibm.es.crawler.db2.jdbc.DB2AbstractCursor.open(Unknown Source)

   at com.ibm.es.crawler.db2.DB2AbstractFetcher.connect(Unknown Source)

   at com.ibm.es.crawler.FetcherAdapter.connect(Unknown Source)

   at com.ibm.es.crawler.archive.ArchiveFileFetcher.connect(Unknown Source)

   at com.ibm.es.crawler.DSThread.doJob(Unknown Source)

   at com.ibm.es.crawler.DSActiveThread.doMainTask(Unknown Source)

   at com.ibm.es.crawler.DSActiveThread.analyzeTask(Unknown Source)

   at com.ibm.es.crawler.DSActiveThread.handleRequest(Unknown Source)

   at com.ibm.es.crawler.DSThread.run(Unknown Source)

   at java.lang.Thread.run(Thread.java:570)

""</OFMsg>

<OFMsg>67113083"1"1190570570894"603984231"0"1563268982" col_7451" col_7451.JDBC_62119" zjw-se1" BaseException.java"-1"3 jdbc:sqlserver://192.168.1.225:1433;DatabaseName=testdb"0 0"3 ""</OFMsg>

<OFMsg>251658517"1"1190570570894"603984231"0"1563268982" col_7451" col_7451.JDBC_62119" zjw-se1" BaseException.java"-3"3 com.microsoft.sqlserver.jdbc.SQLServerException: 系统内存不足。请对大型 ResultSet 使用服务器端游标: 。ResultSet 大小:266,708,558。JVM 总内存大小:1,074,133,504。"3 com.microsoft.sqlserver.jdbc.SQLServerException: 系统内存不足。请对大型 ResultSet 使用服务器端游标: 。ResultSet 大小:266,708,558。JVM 总内存大小:1,074,133,504。

   at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDriverError(Unknown Source)

   at com.microsoft.sqlserver.jdbc.DBComms.receive(Unknown Source)

   at com.microsoft.sqlserver.jdbc.SQLServerPreparedStatement.doExecutePreparedStatement(Unknown Source)

   at com.microsoft.sqlserver.jdbc.SQLServerPreparedStatement$PreparedStatementExecutionRequest.executeStatement(Unknown Source)

   at com.microsoft.sqlserver.jdbc.CancelableRequest.execute(Unknown Source)

   at com.microsoft.sqlserver.jdbc.SQLServerConnection.executeRequest(Unknown Source)

   at com.microsoft.sqlserver.jdbc.SQLServerPreparedStatement.executeQuery(Unknown Source)

   at com.ibm.es.crawler.db2.jdbc.DB2AbstractCursor.open(Unknown Source)

   at com.ibm.es.crawler.db2.DB2AbstractFetcher.connect(Unknown Source)

   at com.ibm.es.crawler.FetcherAdapter.connect(Unknown Source)

   at com.ibm.es.crawler.archive.ArchiveFileFetcher.connect(Unknown Source)

   at com.ibm.es.crawler.DSThread.doJob(Unknown Source)

   at com.ibm.es.crawler.DSActiveThread.doMainTask(Unknown Source)

   at com.ibm.es.crawler.DSActiveThread.analyzeTask(Unknown Source)

   at com.ibm.es.crawler.DSActiveThread.handleRequest(Unknown Source)

   at com.ibm.es.crawler.DSThread.run(Unknown Source)

   at java.lang.Thread.run(Thread.java:570)

""</OFMsg>

<OFMsg>67113083"1"1190570570894"603984231"0"1563268982" col_7451" col_7451.JDBC_62119" zjw-se1" BaseException.java"-3"3 jdbc:sqlserver://192.168.1.225:1433;DatabaseName=testdb"0 0"3 ""</OFMsg>

<OFMsg>67111889"1"1190570570894"603981768"0"1563268982" col_7451" col_7451.JDBC_62119" zjw-se1" BaseException.java"-1""</OFMsg>

<OFMsg>67111875"1"1190570570894"603984415"0"1563268982" col_7451" col_7451.JDBC_62119" zjw-se1" com.ibm.es.crawler.DSThread.java"0"3 jdbc:sqlserver://192.168.1.225:1433;DatabaseName=testdb"3 dbo.yanjiushi""</OFMsg>

 

 

 

原因:

造成此错误的原因是由于SQLSERVER 提供的JDBC数据源驱动程序,在默认情况下,将结果集一次性全部取到内存中,所以当大结果集的时候,将会耗费大量JVM内存,导致JVM系统内存不足。

 

解决方法:

为了解决这个问题,我们可以采用服务器端游标的方式打开结果集,那么要如何来设置呢?

 

我们可以通过编辑数据源XML文件来实现

1.    找到数据源的XML文件,从日志里可以知道相应的数据源XML文件如

..\master_config\col_7451.JDBC_62119\jdbccrawler.xml

2.    备份文件后,用文本编辑器打开文件,找到如下字符串

<Server Name="jdbc:sqlserver://192.168.1.225:1433;DatabaseName=testdb" ID="s1190270547112" ><DBURL>jdbc:sqlserver://192.168.1.225:1433;DatabaseName=testdb</DBURL>

 

3.    在找到的数据库URL里添加用服务器端游标的方法选项

;selectMethod=cursor

添加选项后,上述字符串变为

<Server Name="jdbc:sqlserver://192.168.1.225:1433;DatabaseName=testdb;selectMethod=cursor" ID="s1190270547112" ><DBURL>jdbc:sqlserver://192.168.1.225:1433;DatabaseName=testdb;selectMethod=cursor</DBURL>

4.    保存文件,停止Crawler,重新启动后,再次爬寻数据源。FFQD4219E错误就不再出现

 

 

注意:此问题只存在于MS SQLSERVER,其它关系型数据库无此问题

分享到:
评论

相关推荐

    搜索出现意外错误解决方案

    在Windows XP系统中,用户可能会遇到“搜索出现意外错误”的问题。这通常指的是在尝试使用内置的文件搜索功能时,系统返回一个错误消息,阻碍了正常的搜索操作。这个错误可能是由于多种原因引起的,包括但不限于系统...

    MSSQL 大量数据时,建立索引或添加字段后保存更改提示超时的解决方法

    一般我们都喜欢用数据库管理器的UI来对数据表结构进行更改,然后自然而然地点”保存” 按钮进行保存,但数据量比较大的时候,用这招往往会出现”无法创建索引“IX_索引名”。 超时时间已到。在操作完成之前超时时间已过...

    sqlserver新建job时报c001f011错的解决

    - 再次尝试创建新的 Job,检查是否仍然出现同样的错误。 #### 额外注意事项 - **权限问题**:确保执行上述命令时具有足够的权限,最好是使用管理员账户。 - **环境兼容性**:如果 SQL Server 运行在非标准的环境中...

    hive2.1.1中orc格式读取报数组越界错误解决方法

    然而,有时候在使用ORC格式读取数据时,可能会遇到“数组越界”错误,这通常是由于软件bug或者不兼容性导致的。 “数组越界”错误是Java编程语言中常见的异常类型,表明程序试图访问数组的一个不存在的元素,即下标...

    MySQL 主键与索引的联系与区别分析

    关系数据库依赖于主键,它是数据库物理...因为主键可以唯一标识某一行记录,所以可以确保执行数据更新、删除的时候不会出现张冠李戴的错误。主键除了上述作用外,常常与外键构成参照完整性约束,防止出现数据不一致。数

    ASP错误信息大全!!!!!

    在开发过程中,遇到这些错误时,开发者应检查代码逻辑,确保参数正确,对象已正确初始化,并且在适当的时候关闭或释放资源,以防止出现上述错误。此外,使用try-catch语句进行错误处理也是避免程序崩溃的好方法。

    as3错误代码内容.doc

    - **描述**:此错误发生在试图使用非构造函数创建对象时。 - **解决方法**: - 使用正确的构造函数进行实例化。 - 确保使用的类是可实例化的。 #### 1008 指代不明确 - **描述**:当存在多个同名的绑定时,可能会...

    10.MySQL为什么有时候会选错索引?1

    然而,在另一个session B中,先删除了所有数据,再插入10万行新数据,这时优化器在选择索引时出现了偏差。原本应该使用`a`索引来加快查询的语句,实际执行时却走了全表扫描,扫描了10万行数据,耗时40毫秒。而当我们...

    数据主键和外键的错误总结

    - **解决方法**:为所有的外键创建适当的索引,特别是在涉及大量查询的情况下。 通过以上对主键和外键错误的总结,我们可以看到正确的使用主键和外键对于数据库设计的重要性。合理的主键和外键不仅可以提高数据...

    ElasticSearch学习笔记1

    3. 启动 slave1,如果出现错误信息,是直接拷贝的时候,把 data 文件夹一起给拷贝了,需要把 data 文件夹删除掉,因为里面包含了节点信息。 4. 配置 elasticsearch-6.2.4-slave2 的 config 目录下的 elasticsearch....

    win7“找不到该项目”错误解决方法.docx

    首先,当磁盘文件索引出现问题时,系统可能无法正确跟踪文件位置。此时,可以尝试进行磁盘碎片整理来修复可能的分区错误。磁盘碎片整理工具可以帮助重新组织硬盘上的数据,修复可能的索引问题。打开“磁盘碎片整理和...

    一个简单的java爬虫产品

     在创建索引的时候,需要将网页的URL和网页的内容传到相应的方法中,当然URL和内容是要对应的,也许是经验太少吧,我采取的是通过构建一个JavaBean的方式来传递的,不知道大家有没有更好的方法    2.关于要创建...

    SQL数据库自动备份设置

    自动备份机制能够显著提高数据保护效率,并减少人为错误导致的数据丢失风险。 #### 二、SQL Server自动备份流程 根据提供的描述信息,我们可以将整个自动备份过程分为以下几个步骤: ##### 1. 打开企业管理器 - ...

    IntelliJ IDEA中出现"PSI and index do not match"错误的解决办法

    这个错误表明IntelliJ IDEA的内部组件出现了不一致,具体来说,是编程结构信息( PSI,即Program Structure Interface)与索引数据不匹配。这可能导致代码高亮、代码完成、重构等功能出现问题,影响开发效率。以下是...

    执行Django数据迁移时报 1091错误及解决方法

    错误1091在Django数据迁移中出现,意味着在尝试移除某个字段时,数据库检测到该字段已被其他表或索引引用。在这种情况下,Django尝试执行的迁移文件包含了已不存在于数据库结构中的字段的删除操作。以下是这个问题的...

    matlab开发-RobustSparsedatatypes型

    这种数据类型的设计目标是应对可能出现的错误或异常情况,比如数值不一致、索引超出范围等问题,从而确保程序的稳定运行。 1. **什么是稀疏矩阵**: 稀疏矩阵是用于表示大量元素为零的大型矩阵的数据结构。在MATLAB...

    mysql处理添加外键时提示error 150 问题的解决方法

    如果你试图引用的其中一个外键没有建立索引,或者不是一个 primary key,那么你必须为它创建一个索引。否则,Error 150 将会出现。 3. 外键名字已经存在 外键的名字是一个已经存在的一个键值了,这个时候,你应该...

    微软数据库认证考试参考题

    通过确保视图绑定到具体的模式,并使用`WITH SCHEMABINDING`选项,可以有效地在视图上创建索引,并确保其稳定性不受底层表结构调整的影响。 #### 三、数据导入与触发器的应用 **知识点概述:** 在导入数据时,有时...

    mysql-connector-c

    首先,MySQL的1083错误并不常见,它可能出现在创建表或定义列时,通常与字段类型或长度设置不正确有关。在Python中,如果你的SQL语句构造有误,或者尝试创建的表结构与MySQL的语法规定不符,就可能出现这种错误。...

    android+lucene实现全文检索并高亮关键字

    Android应用开发者需要将Lucene库集成到项目中,创建索引以存储和检索数据。需要注意的是,由于Android内存和存储空间的限制,需要对Lucene进行优化,比如使用FSDirectory(文件系统目录)来存储索引,而不是内存中...

Global site tag (gtag.js) - Google Analytics