31 Star 198 Fork 44

rtdb / pinusdb

 / 详情

使用松果数据库1.4版本故障后连接不上数据库

待办的
创建于  
2021-02-20 16:50

您好,我们在使用松果数据库1.4版本是时,发现以下日志:
[2021-02-04 05:03:56.145] [pdb] [info] create connection, remote:(192.168.102.2:41678)
[2021-02-04 05:03:56.145] [pdb] [info] login successed, client:(192.168.102.2:41678), user:(sa), role:(4)
[2021-02-04 05:03:56.186] [pdb] [info] disconnect (192.168.102.2:41678)
[2021-02-04 05:03:58.890] [pdb] [warning] failed to GetQueuedCompletionStatus, err: 64
[2021-02-04 05:23:47.515] [pdb] [info] timeout to sync all page cache to datafile
[2021-02-04 05:23:50.333] [pdb] [info] sync all page cache to datafile finished
[2021-02-04 05:53:50.718] [pdb] [info] timeout to sync all page cache to datafile
[2021-02-04 05:53:50.718] [pdb] [info] sync all page cache to datafile finished

之后就连不上数据库了,麻烦问问您这是什么原因。
另外,我们看一下使用最新版的3.0是否原来的历史数据可以保留,需要做什么样的更新配置?

评论 (1)

ccc99 创建了任务
ccc99 关联仓库设置为pinusdb/pinusdb
展开全部操作日志

这里我再详细给你说明您的两个问题:
首先:关于您日志中的warning日志
打印这条日志的原因是客户端的socket连接未正常关闭。
正常情况下,socket由客户端主动关闭,但是由于某些原因,如:客户端程序异常退出,网络中断等原因。
客户端没有正常关闭socket,此时由服务器监测到socket异常,于是打印此日志,并回收socket连接资源。
所以:服务在运行一段时间后,输出部分failed to GetQueuedCompletionStatus, err: 64
日志属于正常现象,不会影响数据库的正常服务。
另外:若有疑问您也可以查询windows相关的api文档。

测试
环境:我们运行一个数据库服务(用3版本测试,网络部分未做修改)

  1. 启动一个写入程序,开始向数据库写入数据,此时使用的是长连接。
  2. 在任务管理器中,结束写入程序。此时,写入程序被强制停止,连接未正常关闭,
    日志中输出和您一样的warning信息。
    输入图片说明

最后启动管理器,连接数据库,查询数据,运行正常。
所以:从您发的日志来看是正常的。

那么对于为什么会连接不上数据库,最可能的原因是连接太多了,目前我们的版本只能连接指定1024个连接,
若某个程序由于bug(有可能是您的程序也有可能是我们的sdk有bug) 一直创建连接不关闭,
当连接个数达到1024个之后就无法再创建数据库的连接了。

对于您的第二个问题:1.4版本 到 3.0版本 升级的问题。
在 3.0 中为了对查询性能进一步的优化(3.0在查询性能在某些情况比1.4快几十倍),
我们调整了数据文件格式,并且,3.0不兼容1.4的数据文件,所以目前是没办法直接升级的。
但是您有如下的方式来升级:
同时运行1.4的数据库和3.0的数据库,写一个程序从1.4数据库中读取数据并写入到3.0的数据库服务中。
我们数据库的插入性能挺高,一般情况下用不了太多的时间。只是在实施过程中
需要正确配置3.0版本数据库服务的有效写入天(insertValidDay)该参数具体的含义请参考用户手册。

希望可以帮到您!

登录 后才可以发表评论

状态
负责人
里程碑
Pull Requests
关联的 Pull Requests 被合并后可能会关闭此 issue
分支
开始日期   -   截止日期
-
置顶选项
优先级
参与者(2)
C++
1
https://gitee.com/pinusdb/pinusdb.git
git@gitee.com:pinusdb/pinusdb.git
pinusdb
pinusdb
pinusdb

搜索帮助