Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/heroku/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
插入后未找到AEROSPIKE_ERR_RECORD__Aerospike - Fatal编程技术网

插入后未找到AEROSPIKE_ERR_RECORD_

插入后未找到AEROSPIKE_ERR_RECORD_,aerospike,Aerospike,我在向aerospike集群写入数据时遇到了一个奇怪的问题 aql> insert into storebig.Chunks (PK,Data) values ('5cb138284d431abd6a053a56625ec088bfb88912', '1234567890') OK, 1 record affected. aql> select * from stor

我在向aerospike集群写入数据时遇到了一个奇怪的问题

aql> insert into storebig.Chunks (PK,Data) values ('5cb138284d431abd6a053a56625ec088bfb88912', '1234567890')                                                          
OK, 1 record affected.

aql> select * from storebig.Chunks where PK = '5cb138284d431abd6a053a56625ec088bfb88912'
Error: (2) AEROSPIKE_ERR_RECORD_NOT_FOUND

aql> insert into storebig.Chunks (PK,Data) values ('5cb138284d431abd6a053a56625ec088bfb88912', '1234567890')
Error: (1) AEROSPIKE_ERR_SERVER
与golang客户库的情况相同(当然)

很可能群集不健康-服务器日志中出现一些奇怪的消息:

我的问题是:我能做些什么来调查情况、调试和恢复?去哪里看,尝试什么

多谢各位

致以最良好的祝愿, 丹尼尔·波多尔斯基

更新

配置模板(docker容器启动时从此模板生成的实际配置)

服务{
用户根
群根
paxos单副本限制1
pidfile/var/run/aerospike/asd.pid
服务线程4
事务队列4
每个队列4的事务线程
proto fd最大值15000
}
伐木{
文件/存储/日志/aerospike.log{
上下文信息
}
控制台{
上下文信息
}
}
网络{
服务{
地址
端口3000
}
织物{
地址
端口3001
}
心跳{
模式多播
地址:239.1.99.2
端口9918
接口地址间隔150
超时10
}
信息{
地址
端口3003
}
}
名称空间存储大{
复制因子3
内存大小K
默认TTL0
高水盘pct 98
高水存储PCT98
停止写入pct 95
存储引擎设备{
文件/存储/数据/big.dat
文件大小3T
内存中的数据错误
}
}
命名空间存储库{
复制因子3
内存大小K
默认TTL0
高水盘pct 98
高水存储PCT98
停止写入pct 95
存储引擎设备{
文件/storage/data/fast.dat
文件大小K
内存中的数据为真
}
}
名称空间存储测试{
复制因子3
内存大小K
默认TTL0
高水盘pct 98
高水存储PCT98
停止写入pct 95
存储引擎设备{
文件/storage/data/test.dat
文件大小3T
内存中的数据错误
}
}

在阅读了您的配置之后,我相信我已经发现了您的问题。Aerospike中的单个设备和文件不能大于2TB,您的设备和文件配置为3TB。遗憾的是,目前还没有针对这个限制的签入配置解析器,我无法在我们的文档中找到引用——这两个问题都得到了解决


您可以改为使用多个文件来存储每个命名空间的数据(每个文件限制为2TB)。对于给定的名称空间,使用多个文件或设备可能会获得更好的性能。

阅读Aerospike手册时,设备大小没有限制。仅适用于文件大小(最大2TB)

手册:

SSD存储引擎的配方 SSD命名空间的最低配置要求将storage engine设置为device,并为此命名空间使用的每个SSD添加设备参数。此外,内存大小可能需要从默认的4GB更改为适合预期主索引大小的大小。有关调整主索引大小的帮助,请参阅大小调整指南。为了提高性能,我们建议将SSD支持的名称空间上的写入块大小从默认的1MB减少到128 Kb

内存中有数据的HDD存储引擎的配方
对于具有Data in Memory namespace的HDD,最简单的配置包括将storage engine设置为device,将Data in Memory设置为true,最后提供一个文件参数列表,以指示数据将在何处持久化。此外,文件大小需要足够大,以支持磁盘上数据的大小(允许的最大值为2 TiB)。最后,可能需要将内存大小从默认的4GB调整为适合处理预期主索引大小和内存中数据的预期大小的大小。有关调整文件大小或内存大小的帮助,请参阅我们的调整指南。

您是否可以共享您的aerospike.conf。您的群集不正常。根据此处的警告,您可能已将多个名称空间配置为使用同一原始设备或文件。我已使用配置模板更新帖子。不,所有的名称空间都使用单独的文件。它也是2个TiB,但是我们没有在这里声明它(doh!)。这里提到:。
May 06 2015 12:17:49 GMT: WARNING (drv_ssd): (drv_ssd.c::1236) read: read wrong key: expecting de6f0bc93bfdf560 got 8ad3dd7fce1ac7ec
May 06 2015 12:17:49 GMT: WARNING (drv_ssd): (drv_ssd.c::1236) read: read wrong key: expecting de6f0bc93bfdf560 got 8ad3dd7fce1ac7ec
May 06 2015 12:17:50 GMT: WARNING (drv_ssd): (drv_ssd.c::1230) read: bad block magic offset 29843600384
May 06 2015 12:17:50 GMT: WARNING (drv_ssd): (drv_ssd.c::1230) read: bad block magic offset 29843600384
service {
  user root
  group root
  paxos-single-replica-limit 1
  pidfile /var/run/aerospike/asd.pid
  service-threads 4
  transaction-queues 4
  transaction-threads-per-queue 4
  proto-fd-max 15000
}

logging {
  file /storage/logs/aerospike.log {
    context any info
  }
  console {
    context any info
  }
}
network {
  service {
    address <%=os.getenv("NODE_EXT_ADDR")%>
    port 3000
  }
  fabric {
    address <%=os.getenv("NODE_INT_ADDR")%>
    port 3001
  }
  heartbeat {
    mode multicast
    address 239.1.99.2
    port 9918
    interface-address <%=os.getenv("NODE_INT_ADDR")%> interval 150
    timeout 10
  }
  info {
    address <%=os.getenv("NODE_INT_ADDR")%>
    port 3003
  }
}
namespace storebig {
  replication-factor 3
  memory-size <%=os.getenv("MEM_USE_BIG")%>K
  default-ttl 0
  high-water-disk-pct   98
  high-water-memory-pct 98
  stop-writes-pct       95
  storage-engine device {
    file /storage/data/big.dat
    filesize 3T
    data-in-memory false
  }
}
namespace storefast {
  replication-factor 3
  memory-size <%=os.getenv("MEM_USE_FAST")%>K
  default-ttl 0
  high-water-disk-pct   98
  high-water-memory-pct 98
  stop-writes-pct       95
  storage-engine device {
    file /storage/data/fast.dat
    filesize <%=os.getenv("MEM_USE_FAST")%>K
    data-in-memory true
  }
}
namespace storetest {
  replication-factor 3
  memory-size <%=os.getenv("MEM_USE_FAST")%>K
  default-ttl 0
  high-water-disk-pct   98
  high-water-memory-pct 98
  stop-writes-pct       95
  storage-engine device {
    file /storage/data/test.dat
    filesize 3T
    data-in-memory false
  }
}