参考网址:

https://www.cnblogs.com/Uglthinx/p/9630779.html

原因:我的是事务没有完全关闭

解决办法:

创建一个混合索引:

// 在graph中有事务执行时绝不能创建索引(否则可能导致死锁)
mgmt = graph.openManagement()
vlabel = mgmt.getPropertyKey('vlabel')
// 构建索引
mgmt.buildIndex('mixedvlabel',Vertex.class).addKey(vlabel).buildMixedIndex("search")
mgmt.commit()
//等待索引生效
mgmt.awaitGraphIndexStatus(graph,'mixedvlabel').call()
//对已有数据重新索引
mgmt = graph.openManagement()
mgmt.updateIndex(mgmt.getGraphIndex("mixedvlabel"),SchemaAction.REINDEX).get()
mgmt.commit()

在执行(索引生效的时候出现如下错误)

mgmt.awaitGraphIndexStatus(graph,'mixedvlabel').call()

错误

GraphIndexStatusReport[success=false, indexName='mixedvlabel', targetStatus=[REGISTERED], notConverged={vlabel=INSTALLED}, converged={}, elapsed=PT1M0.07S]

事务没有完全关闭

解决办法

1. 执行关闭事务命令 : graph.tx().rollback()

但是无法完全关闭事务

2. 查看事务 :graph.getOpenTransactions()

3.使用关闭事务命令

for(i=;i<size;i++) {graph.getOpenTransactions().getAt().rollback()}  //size替换为事务的数量

4.执行 REGISTER_INDEX ACTION,使索引状态INSTALLED 转为 REGISTERED

非常关键的一步

mgmt = graph.openManagement()
mgmt.updateIndex(mgmt.getGraphIndex('mixedvlabel'),SchemaAction.REGISTER_INDEX).get()
mgmt.commit()

5.查看索引新的转态

vlabel = mgmt.getPropertyKey('vlabel')
mixedvlabel=mgmt.getGraphIndex('mixedvlabel')
status=mixedvlabel.getIndexStatus(vlabel)

结果为

GraphIndexStatusReport[success=true, indexName='mixedvlabel', targetStatus=[REGISTERED], notConverged={}, converged={vlabel=REGISTERED}, elapsed=PT0S]

6.执行REINDEX与ENABLE_INDEX,完成索引

m = graph.openManagement()
m.updateIndex(m.getGraphIndex('mixedvlabel'), SchemaAction.ENABLE_INDEX).get()
m.commit() ManagementSystem.awaitGraphIndexStatus(graph, 'mixedvlabel').status(SchemaStatus.ENABLED).call()

7.返回结果

GraphIndexStatusReport[success=true, indexName='mixedvlabel', targetStatus=[ENABLED], notConverged={}, converged={vlabel=ENABLED}, elapsed=PT0.006S]

8.更新已有数据的索引

mgmt.updateIndex(mgmt.getGraphIndex("mixedvlabel"),SchemaAction.REINDEX).get()

注:如果数据量很大的话,需要时间长

janusgraph-创建索引出现GraphIndexStatusReport[success=false, indexName='mixedvlabel', targetStatus=[REGISTERED], notConverged={vlabel=INSTALLED}, converged={}, elapsed=PT1M0.07S]的更多相关文章

  1. JanusGraph 创建索引步骤(composite index)踩坑总结

    前言 JanusGraph是一个图数据库引擎,安装及入门可以参考 JanusGraph 图数据库安装小记.为了提高查询速度,在使用过程中一般要为某些属性创建索引.这篇随笔主要是记录创建索引过程中踩过的 ...

  2. 创建es索引{"acknowledged"=>true, "shards_acknowledged"=>false}

    创建es索引{"acknowledged"=>true, "shards_acknowledged"=>false} [2018-05-19T13: ...

  3. Elasticsearch5.x创建索引(Java)

    索引创建代码使用官方给的示例代码,我把它在java项目里实现了一遍. 官方示例 1.创建索引 /** * Java创建Index */ public void CreateIndex() { int ...

  4. hive创建索引

    索引是hive0.7之后才有的功能,创建索引需要评估其合理性,因为创建索引也是要磁盘空间,维护起来也是需要代价的 创建索引 hive> create index [index_studentid ...

  5. MongoDB性能篇之创建索引,组合索引,唯一索引,删除索引和explain执行计划

    这篇文章主要介绍了MongoDB性能篇之创建索引,组合索引,唯一索引,删除索引和explain执行计划的相关资料,需要的朋友可以参考下 一.索引 MongoDB 提供了多样性的索引支持,索引信息被保存 ...

  6. MySQL创建索引语法

    1.介绍: 所有mysql索引列类型都可以被索引,对来相关类使用索引可以提高select查询性能,根据mysql索引数,可以是最大索引与最小索引,每种存储引擎对每个表的至少支持16的索引.总索引长度为 ...

  7. lucene简介 创建索引和搜索初步

    lucene简介 创建索引和搜索初步 一.什么是Lucene? Lucene最初是由Doug Cutting开发的,2000年3月,发布第一个版本,是一个全文检索引擎的架构,提供了完整的查询引擎和索引 ...

  8. lucene全文搜索之四:创建索引搜索器、6种文档搜索器实现以及搜索结果分析(结合IKAnalyzer分词器的搜索器)基于lucene5.5.3

    前言: 前面几章已经很详细的讲解了如何创建索引器对索引进行增删查(没有更新操作).如何管理索引目录以及如何使用分词器,上一章讲解了如何生成索引字段和创建索引文档,并把创建的索引文档保存到索引目录,到这 ...

  9. lucene全文搜索之三:生成索引字段,创建索引文档(给索引字段加权)基于lucene5.5.3

    前言:上一章中我们已经实现了索引器的创建,但是我们没有索引文档,本章将会讲解如何生成字段.创建索引文档,给字段加权以及保存文档到索引器目录 luncene5.5.3集合jar包下载地址:http:// ...

随机推荐

  1. Ubuntu16.04 安装PHP7 的 imagick 扩展

    转自:https://blog.csdn.net/qq_16885135/article/details/78130281 1.从 https://pecl.php.net/package/imagi ...

  2. 001 SringBoot基础知识及SpringBoot整合Mybatis

    1.原有Spring优缺点分析 (1)优点 Spring是Java企业版(Java Enterprise Edition,JEE,也称J2EE)的轻量级代替品.无需开发重量级的Enterprise J ...

  3. 纪一次线上cms调优

    过去也有对JAVA性能调优的分析,有过以下case: 1. JVM outOfMemory, 主要是使用jmap dump 出来 hprof,使用MAT进行分析 2. JVM outOfMemory, ...

  4. nginx访问认证+目目录浏览

    概述 在实际工作中,企业中有些网站,要求使用账号和密码才能访问,如网站后台.phpMyAdmin .Wiki 平台 等模块ngx_http_auth_basic_module 允许使用“HTTP基本认 ...

  5. pytest_skip跳过用例

    前言 pytest.mark.skip可以标记无法在某些平台上运行的测试功能,或者您希望失败的测试功能 skip意味着只有在满足某些条件时才希望测试通过,否则pytest应该跳过运行测试. 常见示例是 ...

  6. pytest_06_fixture之yield实现teardown

    上一篇讲到fixture通过scope参数控制setup级别,既然有setup作为用例之前前的操作,用例执行完之后那肯定也有teardown操作. 这里用到fixture的teardown操作并不是独 ...

  7. pytest_04_测试用例setup和teardown

    学过unittest的都知道里面用前置和后置setup和teardown非常好用,在每次用例开始前和结束后都去执行一次. 当然还有更高级一点的setupClass和teardownClass,需配合@ ...

  8. 令人兴奋的TOP Server OPC Server v6.5 五大功能(下)

    接上文. 2.MQTT客户端驱动程序自动标记生成(ATG) 使用过TOP Server OPC Server的大家可能还记得,在TOP Server OPC Server V6.4版本中,我们为MQT ...

  9. SpringBoot上传文件报错,临时路径不存在

    异常信息 报错日志: The temporary upload location [/tmp/tomcat.7957874575370093230.8088/work/Tomcat/localhost ...

  10. 介绍一种在ABAP内核态进行内表高效拷贝的方法,和对应的Java和JavaScript版本的伪实现

    内表操作是ABAP开发人员几乎在每个ABAP程序里都会遇到的. 看一个例子:有两个行结构不一样的内表,每个内表的行结构有三列,除了name这一列名字一致外,其他两列的名称都不同,下图用红色和蓝色标注出 ...