Sym 上的评论同步到 Solo 时 ID 重复的问题

本贴最后更新于 2897 天前,其中的信息可能已经斗转星移

Sym 上的评论同步到 Solo 时,可能会报下面的错误,看着像是主键重复的错误,但是评论也是同步过去了的,这就奇怪了。评论的 ID 也是同步过来的吗?如果是的话这样很容易重复,个人觉得同步过来的时候应该重新生成 ID 。

[ERROR]-[2017-04-23 23:27:16]-[org.b3log.latke.repository.jdbc.JdbcRepository:149]: add:Unique index or primary key violation: "PRIMARY_KEY_5 ON PUBLIC.B3_SOLO_COMMENT(OID) VALUES ('1492961195666', 96)"; SQL statement: insert into b3_solo_comment(commentSharpURL,commentName,commentThumbnailURL,commentOnId,commentEmail,commentURL,commentDate,commentOriginalCommentId,commentOnType,oId,commentContent,commentOriginalCommentName) values (?,?,?,?,?,?,?,?,?,?,?,?) [23505-190] org.h2.jdbc.JdbcSQLException: Unique index or primary key violation: "PRIMARY_KEY_5 ON PUBLIC.B3_SOLO_COMMENT(OID) VALUES ('1492961195666', 96)"; SQL statement: insert into b3_solo_comment(commentSharpURL,commentName,commentThumbnailURL,commentOnId,commentEmail,commentURL,commentDate,commentOriginalCommentId,commentOnType,oId,commentContent,commentOriginalCommentName) values (?,?,?,?,?,?,?,?,?,?,?,?) [23505-190] at org.h2.message.DbException.getJdbcSQLException(DbException.java:345) at org.h2.message.DbException.get(DbException.java:179) at org.h2.message.DbException.get(DbException.java:155) at org.h2.index.BaseIndex.getDuplicateKeyException(BaseIndex.java:102) at org.h2.mvstore.db.MVSecondaryIndex.checkUnique(MVSecondaryIndex.java:231) at org.h2.mvstore.db.MVSecondaryIndex.add(MVSecondaryIndex.java:190) at org.h2.mvstore.db.MVTable.addRow(MVTable.java:704) at org.h2.command.dml.Insert.insertRows(Insert.java:156) at org.h2.command.dml.Insert.update(Insert.java:114) at org.h2.command.CommandContainer.update(CommandContainer.java:78) at org.h2.command.Command.executeUpdate(Command.java:253) at org.h2.jdbc.JdbcPreparedStatement.execute(JdbcPreparedStatement.java:198) at org.b3log.latke.repository.jdbc.util.JdbcUtil.executeSql(JdbcUtil.java:89) at org.b3log.latke.repository.jdbc.JdbcRepository.add(JdbcRepository.java:147) at org.b3log.latke.repository.AbstractRepository.add(AbstractRepository.java:117) at org.b3log.solo.repository.impl.CommentRepositoryImpl_$$_jvst889_37._d0add(CommentRepositoryImpl_$$_jvst889_37.java) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.b3log.latke.ioc.bean.JavassistMethodHandler.invoke(JavassistMethodHandler.java:101) at org.b3log.solo.repository.impl.CommentRepositoryImpl_$$_jvst889_37.add(CommentRepositoryImpl_$$_jvst889_37.java) at org.b3log.solo.api.symphony.CommentReceiver.addComment(CommentReceiver.java:250) at org.b3log.solo.api.symphony.CommentReceiver_$$_jvst889_48._d0addComment(CommentReceiver_$$_jvst889_48.java) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.b3log.latke.ioc.bean.JavassistMethodHandler.invoke(JavassistMethodHandler.java:101) at org.b3log.solo.api.symphony.CommentReceiver_$$_jvst889_48.addComment(CommentReceiver_$$_jvst889_48.java) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.b3log.latke.servlet.handler.MethodInvokeHandler.handle(MethodInvokeHandler.java:58) at org.b3log.latke.servlet.HttpControl.nextHandler(HttpControl.java:99) at org.b3log.latke.servlet.handler.AdviceHandler.handle(AdviceHandler.java:108) at org.b3log.latke.servlet.HttpControl.nextHandler(HttpControl.java:99) at org.b3log.latke.servlet.handler.ArgsHandler.handle(ArgsHandler.java:60) at org.b3log.latke.servlet.HttpControl.nextHandler(HttpControl.java:99) at org.b3log.latke.servlet.handler.RequestDispatchHandler.handle(RequestDispatchHandler.java:92) at org.b3log.latke.servlet.HttpControl.nextHandler(HttpControl.java:99) at org.b3log.latke.servlet.handler.RequestPrepareHandler.handle(RequestPrepareHandler.java:45) at org.b3log.latke.servlet.HttpControl.nextHandler(HttpControl.java:99) at org.b3log.latke.servlet.handler.StaticResourceHandler.handle(StaticResourceHandler.java:119) at org.b3log.latke.servlet.HttpControl.nextHandler(HttpControl.java:99) at org.b3log.latke.servlet.DispatcherServlet.service(DispatcherServlet.java:84) at javax.servlet.http.HttpServlet.service(HttpServlet.java:790) at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:800) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1669) at org.b3log.solo.filter.InitCheckFilter.doFilter(InitCheckFilter.java:87) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652) at org.b3log.solo.filter.PermalinkFilter.doFilter(PermalinkFilter.java:92) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652) at org.b3log.latke.servlet.filter.EncodingFilter.doFilter(EncodingFilter.java:71) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652) at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:585) at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143) at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:577) at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:223) at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1127) at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:515) at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185) at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1061) at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141) at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97) at org.eclipse.jetty.server.Server.handle(Server.java:497) at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:310) at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:245) at org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:540) at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635) at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555) at java.lang.Thread.run(Unknown Source) [ERROR]-[2017-04-23 23:27:16]-[org.b3log.latke.servlet.HttpControl:104]: Request [ method=PUT, URL=http://zixizixi.cn/apis/symphony/comment, contentType=null, characterEncoding=UTF-8, local=[ addr=0:0:0:0:0:0:0:1, port=****, name=0:0:0:0:0:0:0:1], remote=[ addr=121.40.142.200, port=61755, host=0:0:0:0:0:0:0:1], headers=[ Cache-Control=no-cache Accept=text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2 Connection=close User-Agent=Java/1.8.0_121 X-Forwarded-For=121.40.142.200 Host=zixizixi.cn REMOTE-HOST=121.40.142.200 Pragma=no-cache Content-Length=374 X-Real-IP=121.40.142.200 ] ] processing failed java.lang.reflect.InvocationTargetException at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.b3log.latke.servlet.handler.MethodInvokeHandler.handle(MethodInvokeHandler.java:58) at org.b3log.latke.servlet.HttpControl.nextHandler(HttpControl.java:99) at org.b3log.latke.servlet.handler.AdviceHandler.handle(AdviceHandler.java:108) at org.b3log.latke.servlet.HttpControl.nextHandler(HttpControl.java:99) at org.b3log.latke.servlet.handler.ArgsHandler.handle(ArgsHandler.java:60) at org.b3log.latke.servlet.HttpControl.nextHandler(HttpControl.java:99) at org.b3log.latke.servlet.handler.RequestDispatchHandler.handle(RequestDispatchHandler.java:92) at org.b3log.latke.servlet.HttpControl.nextHandler(HttpControl.java:99) at org.b3log.latke.servlet.handler.RequestPrepareHandler.handle(RequestPrepareHandler.java:45) at org.b3log.latke.servlet.HttpControl.nextHandler(HttpControl.java:99) at org.b3log.latke.servlet.handler.StaticResourceHandler.handle(StaticResourceHandler.java:119) at org.b3log.latke.servlet.HttpControl.nextHandler(HttpControl.java:99) at org.b3log.latke.servlet.DispatcherServlet.service(DispatcherServlet.java:84) at javax.servlet.http.HttpServlet.service(HttpServlet.java:790) at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:800) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1669) at org.b3log.solo.filter.InitCheckFilter.doFilter(InitCheckFilter.java:87) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652) at org.b3log.solo.filter.PermalinkFilter.doFilter(PermalinkFilter.java:92) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652) at org.b3log.latke.servlet.filter.EncodingFilter.doFilter(EncodingFilter.java:71) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652) at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:585) at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143) at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:577) at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:223) at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1127) at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:515) at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185) at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1061) at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141) at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97) at org.eclipse.jetty.server.Server.handle(Server.java:497) at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:310) at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:245) at org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:540) at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635) at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555) at java.lang.Thread.run(Unknown Source) Caused by: org.b3log.latke.repository.jdbc.JDBCRepositoryException: org.h2.jdbc.JdbcSQLException: Unique index or primary key violation: "PRIMARY_KEY_5 ON PUBLIC.B3_SOLO_COMMENT(OID) VALUES ('1492961195666', 96)"; SQL statement: insert into b3_solo_comment(commentSharpURL,commentName,commentThumbnailURL,commentOnId,commentEmail,commentURL,commentDate,commentOriginalCommentId,commentOnType,oId,commentContent,commentOriginalCommentName) values (?,?,?,?,?,?,?,?,?,?,?,?) [23505-190] at org.b3log.latke.repository.jdbc.JdbcRepository.add(JdbcRepository.java:150) at org.b3log.latke.repository.AbstractRepository.add(AbstractRepository.java:117) at org.b3log.solo.repository.impl.CommentRepositoryImpl_$$_jvst889_37._d0add(CommentRepositoryImpl_$$_jvst889_37.java) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.b3log.latke.ioc.bean.JavassistMethodHandler.invoke(JavassistMethodHandler.java:101) at org.b3log.solo.repository.impl.CommentRepositoryImpl_$$_jvst889_37.add(CommentRepositoryImpl_$$_jvst889_37.java) at org.b3log.solo.api.symphony.CommentReceiver.addComment(CommentReceiver.java:250) at org.b3log.solo.api.symphony.CommentReceiver_$$_jvst889_48._d0addComment(CommentReceiver_$$_jvst889_48.java) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.b3log.latke.ioc.bean.JavassistMethodHandler.invoke(JavassistMethodHandler.java:101) at org.b3log.solo.api.symphony.CommentReceiver_$$_jvst889_48.addComment(CommentReceiver_$$_jvst889_48.java) ... 43 more Caused by: org.h2.jdbc.JdbcSQLException: Unique index or primary key violation: "PRIMARY_KEY_5 ON PUBLIC.B3_SOLO_COMMENT(OID) VALUES ('1492961195666', 96)"; SQL statement: insert into b3_solo_comment(commentSharpURL,commentName,commentThumbnailURL,commentOnId,commentEmail,commentURL,commentDate,commentOriginalCommentId,commentOnType,oId,commentContent,commentOriginalCommentName) values (?,?,?,?,?,?,?,?,?,?,?,?) [23505-190] at org.h2.message.DbException.getJdbcSQLException(DbException.java:345) at org.h2.message.DbException.get(DbException.java:179) at org.h2.message.DbException.get(DbException.java:155) at org.h2.index.BaseIndex.getDuplicateKeyException(BaseIndex.java:102) at org.h2.mvstore.db.MVSecondaryIndex.checkUnique(MVSecondaryIndex.java:231) at org.h2.mvstore.db.MVSecondaryIndex.add(MVSecondaryIndex.java:190) at org.h2.mvstore.db.MVTable.addRow(MVTable.java:704) at org.h2.command.dml.Insert.insertRows(Insert.java:156) at org.h2.command.dml.Insert.update(Insert.java:114) at org.h2.command.CommandContainer.update(CommandContainer.java:78) at org.h2.command.Command.executeUpdate(Command.java:253) at org.h2.jdbc.JdbcPreparedStatement.execute(JdbcPreparedStatement.java:198) at org.b3log.latke.repository.jdbc.util.JdbcUtil.executeSql(JdbcUtil.java:89) at org.b3log.latke.repository.jdbc.JdbcRepository.add(JdbcRepository.java:147) ... 59 more
  • Sandbox

    如果帖子标签含有 Sandbox ,则该帖子会被视为“测试帖”,主要用于测试社区功能,排查 bug 等,该标签下内容不定期进行清理。

    428 引用 • 1250 回帖 • 596 关注

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...
iTanken
飘风不终朝,骤雨不终日。 成都

推荐标签 标签

  • WordPress

    WordPress 是一个使用 PHP 语言开发的博客平台,用户可以在支持 PHP 和 MySQL 数据库的服务器上架设自己的博客。也可以把 WordPress 当作一个内容管理系统(CMS)来使用。WordPress 是一个免费的开源项目,在 GNU 通用公共许可证(GPLv2)下授权发布。

    66 引用 • 114 回帖 • 200 关注
  • Access
    1 引用 • 3 回帖 • 4 关注
  • GitLab

    GitLab 是利用 Ruby 一个开源的版本管理系统,实现一个自托管的 Git 项目仓库,可通过 Web 界面操作公开或私有项目。

    46 引用 • 72 回帖 • 3 关注
  • PostgreSQL

    PostgreSQL 是一款功能强大的企业级数据库系统,在 BSD 开源许可证下发布。

    22 引用 • 22 回帖 • 1 关注
  • 创业

    你比 99% 的人都优秀么?

    82 引用 • 1395 回帖 • 3 关注
  • jQuery

    jQuery 是一套跨浏览器的 JavaScript 库,强化 HTML 与 JavaScript 之间的操作。由 John Resig 在 2006 年 1 月的 BarCamp NYC 上释出第一个版本。全球约有 28% 的网站使用 jQuery,是非常受欢迎的 JavaScript 库。

    63 引用 • 134 回帖 • 733 关注
  • Log4j

    Log4j 是 Apache 开源的一款使用广泛的 Java 日志组件。

    20 引用 • 18 回帖 • 32 关注
  • 深度学习

    深度学习(Deep Learning)是机器学习的分支,是一种试图使用包含复杂结构或由多重非线性变换构成的多个处理层对数据进行高层抽象的算法。

    53 引用 • 40 回帖
  • JavaScript

    JavaScript 一种动态类型、弱类型、基于原型的直译式脚本语言,内置支持类型。它的解释器被称为 JavaScript 引擎,为浏览器的一部分,广泛用于客户端的脚本语言,最早是在 HTML 网页上使用,用来给 HTML 网页增加动态功能。

    729 引用 • 1278 回帖
  • Follow
    4 引用 • 12 回帖 • 8 关注
  • 小薇

    小薇是一个用 Java 写的 QQ 聊天机器人 Web 服务,可以用于社群互动。

    由于 Smart QQ 从 2019 年 1 月 1 日起停止服务,所以该项目也已经停止维护了!

    34 引用 • 467 回帖 • 759 关注
  • 电影

    这是一个不能说的秘密。

    122 引用 • 608 回帖
  • Ant-Design

    Ant Design 是服务于企业级产品的设计体系,基于确定和自然的设计价值观上的模块化解决方案,让设计者和开发者专注于更好的用户体验。

    17 引用 • 23 回帖
  • Swift

    Swift 是苹果于 2014 年 WWDC(苹果开发者大会)发布的开发语言,可与 Objective-C 共同运行于 Mac OS 和 iOS 平台,用于搭建基于苹果平台的应用程序。

    36 引用 • 37 回帖 • 545 关注
  • 思源笔记

    思源笔记是一款隐私优先的个人知识管理系统,支持完全离线使用,同时也支持端到端加密同步。

    融合块、大纲和双向链接,重构你的思维。

    24824 引用 • 102112 回帖
  • Markdown

    Markdown 是一种轻量级标记语言,用户可使用纯文本编辑器来排版文档,最终通过 Markdown 引擎将文档转换为所需格式(比如 HTML、PDF 等)。

    169 引用 • 1527 回帖
  • Oracle

    Oracle(甲骨文)公司,全称甲骨文股份有限公司(甲骨文软件系统有限公司),是全球最大的企业级软件公司,总部位于美国加利福尼亚州的红木滩。1989 年正式进入中国市场。2013 年,甲骨文已超越 IBM,成为继 Microsoft 后全球第二大软件公司。

    107 引用 • 127 回帖 • 355 关注
  • NGINX

    NGINX 是一个高性能的 HTTP 和反向代理服务器,也是一个 IMAP/POP3/SMTP 代理服务器。 NGINX 是由 Igor Sysoev 为俄罗斯访问量第二的 Rambler.ru 站点开发的,第一个公开版本 0.1.0 发布于 2004 年 10 月 4 日。

    315 引用 • 547 回帖
  • Kotlin

    Kotlin 是一种在 Java 虚拟机上运行的静态类型编程语言,由 JetBrains 设计开发并开源。Kotlin 可以编译成 Java 字节码,也可以编译成 JavaScript,方便在没有 JVM 的设备上运行。在 Google I/O 2017 中,Google 宣布 Kotlin 成为 Android 官方开发语言。

    19 引用 • 33 回帖 • 76 关注
  • JSON

    JSON (JavaScript Object Notation)是一种轻量级的数据交换格式。易于人类阅读和编写。同时也易于机器解析和生成。

    52 引用 • 190 回帖
  • Mobi.css

    Mobi.css is a lightweight, flexible CSS framework that focus on mobile.

    1 引用 • 6 回帖 • 753 关注
  • CAP

    CAP 指的是在一个分布式系统中, Consistency(一致性)、 Availability(可用性)、Partition tolerance(分区容错性),三者不可兼得。

    12 引用 • 5 回帖 • 637 关注
  • React

    React 是 Facebook 开源的一个用于构建 UI 的 JavaScript 库。

    192 引用 • 291 回帖 • 384 关注
  • ngrok

    ngrok 是一个反向代理,通过在公共的端点和本地运行的 Web 服务器之间建立一个安全的通道。

    7 引用 • 63 回帖 • 644 关注
  • RYMCU

    RYMCU 致力于打造一个即严谨又活泼、专业又不失有趣,为数百万人服务的开源嵌入式知识学习交流平台。

    4 引用 • 6 回帖 • 53 关注
  • 生活

    生活是指人类生存过程中的各项活动的总和,范畴较广,一般指为幸福的意义而存在。生活实际上是对人生的一种诠释。生活包括人类在社会中与自己息息相关的日常活动和心理影射。

    230 引用 • 1454 回帖 • 2 关注
  • webpack

    webpack 是一个用于前端开发的模块加载器和打包工具,它能把各种资源,例如 JS、CSS(less/sass)、图片等都作为模块来使用和处理。

    41 引用 • 130 回帖 • 249 关注