Microstream one.microstream.storage.exceptions.StorageException: Problem in channel #0

huangapple go评论89阅读模式
英文:

Microstream one.microstream.storage.exceptions.StorageException: Problem in channel #0

问题

Microstream 在 Mac 上正常工作,但在 Linux 上出现问题。最初可能考虑权限问题,但已使用 root 执行 Java 代码。是否有人知道 Microstream 在 Mac 和 Linux 上的行为差异原因?

Microstream 在不同操作系统上出现问题可能是由于多种因素引起的,包括操作系统的不同配置和依赖项。要解决此问题,您可以尝试以下步骤:

  1. 确保 Linux 系统上的 Java 版本与 Mac 上的相同,并且已正确配置。

  2. 检查 Linux 系统上的文件系统权限,确保您有足够的权限来执行所需的文件操作。

  3. 确保 Linux 系统上已正确安装 Microstream 和相关依赖项。您可以尝试重新安装或更新 Microstream。

  4. 检查您的代码,确保它与 Linux 上的特定配置兼容。某些文件路径或系统调用可能需要根据不同的操作系统进行调整。

  5. 查看 Microstream 的文档和社区,看是否有人遇到类似的问题并找到了解决方法。

请注意,问题的根本原因可能需要更深入的调查,可能需要检查具体的 Microstream 和 Linux 配置以找到解决方案。如果问题仍然存在,您可以考虑联系 Microstream 社区或支持团队以获取更多帮助。

英文:

I have following code:

  1. return vertx.fileSystem().exists(storeFile).onSuccess(isExists -> {
  2. try {
  3. if (isExists) {
  4. this.storageManager = EmbeddedStorage.start(NioFileSystem.New().ensureDirectoryPath(this.filePath));
  5. this.model = tClass.cast(this.storageManager.root());
  6. log.atDebug().log("[PROVIDER] DB {} Model load successfully!", this.storageManager.databaseName());
  7. } else {
  8. this.model = tClass.getDeclaredConstructor().newInstance();
  9. this.storageManager = EmbeddedStorage.start(this.model, NioFileSystem.New().ensureDirectoryPath(this.filePath));
  10. log.atDebug().log("[PROVIDER] DB {} Create new model!", this.storageManager.databaseName());
  11. }
  12. } catch (InvocationTargetException | InstantiationException | IllegalAccessException |
  13. NoSuchMethodException e) {
  14. log.atError().withThrowable(e).log("Store file {} cannot be created", storeFile);
  15. }
  16. });

on Mac the code is working, but on Raspberry Pi Linux, I receive the message

  1. one.microstream.storage.exceptions.StorageException: Problem in channel #1
  2. at one.microstream.storage.types.StorageChannelTask$Abstract.checkForProblems(StorageChannelTask.java:114) ~[alpha-ressource-1.0-SNAPSHOT-jar-with-dependencies.jar:?]
  3. at one.microstream.storage.types.StorageChannelTask$Abstract.waitOnCompletion(StorageChannelTask.java:173) ~[alpha-ressource-1.0-SNAPSHOT-jar-with-dependencies.jar:?]
  4. at one.microstream.storage.types.StorageSystem$Default.startThreads(StorageSystem.java:336) ~[alpha-ressource-1.0-SNAPSHOT-jar-with-dependencies.jar:?]
  5. at one.microstream.storage.types.StorageSystem$Default.internalStartUp(StorageSystem.java:516) ~[alpha-ressource-1.0-SNAPSHOT-jar-with-dependencies.jar:?]
  6. at one.microstream.storage.types.StorageSystem$Default.start(StorageSystem.java:600) ~[alpha-ressource-1.0-SNAPSHOT-jar-with-dependencies.jar:?]
  7. at one.microstream.storage.types.StorageSystem$Default.start(StorageSystem.java:78) ~[alpha-ressource-1.0-SNAPSHOT-jar-with-dependencies.jar:?]
  8. at one.microstream.storage.embedded.types.EmbeddedStorageManager$Default.start(EmbeddedStorageManager.java:245) ~[alpha-ressource-1.0-SNAPSHOT-jar-with-dependencies.jar:?]
  9. at one.microstream.storage.embedded.types.EmbeddedStorageManager$Default.start(EmbeddedStorageManager.java:97) ~[alpha-ressource-1.0-SNAPSHOT-jar-with-dependencies.jar:?]
  10. at one.microstream.storage.embedded.types.EmbeddedStorage.createAndStartStorageManager(EmbeddedStorage.java:615) ~[alpha-ressource-1.0-SNAPSHOT-jar-with-dependencies.jar:?]
  11. at one.microstream.storage.embedded.types.EmbeddedStorage.start(EmbeddedStorage.java:559) ~[alpha-ressource-1.0-SNAPSHOT-jar-with-dependencies.jar:?]
  12. at one.microstream.storage.embedded.types.EmbeddedStorage.start(EmbeddedStorage.java:392) ~[alpha-ressource-1.0-SNAPSHOT-jar-with-dependencies.jar:?]
  13. at tools.vlab.alpha.core.DataProviderAsync.start(DataProviderAsync.java:33) ~[alpha-ressource-1.0-SNAPSHOT-jar-with-dependencies.jar:?]
  14. at io.vertx.core.AbstractVerticle.start(AbstractVerticle.java:106) ~[alpha-ressource-1.0-SNAPSHOT-jar-with-dependencies.jar:?]
  15. at io.vertx.core.impl.DeploymentManager.lambda$doDeploy$5(DeploymentManager.java:196) ~[alpha-ressource-1.0-SNAPSHOT-jar-with-dependencies.jar:?]
  16. at io.vertx.core.impl.ContextInternal.dispatch(ContextInternal.java:264) ~[alpha-ressource-1.0-SNAPSHOT-jar-with-dependencies.jar:?]
  17. at io.vertx.core.impl.ContextInternal.dispatch(ContextInternal.java:246) ~[alpha-ressource-1.0-SNAPSHOT-jar-with-dependencies.jar:?]
  18. at io.vertx.core.impl.EventLoopContext.lambda$runOnContext$0(EventLoopContext.java:43) ~[alpha-ressource-1.0-SNAPSHOT-jar-with-dependencies.jar:?]
  19. at io.netty.util.concurrent.AbstractEventExecutor.runTask(AbstractEventExecutor.java:174) ~[alpha-ressource-1.0-SNAPSHOT-jar-with-dependencies.jar:?]
  20. at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:167) ~[alpha-ressource-1.0-SNAPSHOT-jar-with-dependencies.jar:?]
  21. at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:470) ~[alpha-ressource-1.0-SNAPSHOT-jar-with-dependencies.jar:?]
  22. at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:569) ~[alpha-ressource-1.0-SNAPSHOT-jar-with-dependencies.jar:?]
  23. at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:997) ~[alpha-ressource-1.0-SNAPSHOT-jar-with-dependencies.jar:?]
  24. at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) ~[alpha-ressource-1.0-SNAPSHOT-jar-with-dependencies.jar:?]
  25. at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) ~[alpha-ressource-1.0-SNAPSHOT-jar-with-dependencies.jar:?]
  26. at java.lang.Thread.run(Thread.java:833) ~[?:?]
  27. Caused by: java.lang.InternalError: a fault occurred in a recent unsafe memory access operation in compiled Java code
  28. at one.microstream.storage.types.StorageTransactionsAnalysis$Logic.setEntryCommon(StorageTransactionsAnalysis.java:189) ~[alpha-ressource-1.0-SNAPSHOT-jar-with-dependencies.jar:?]
  29. at one.microstream.storage.types.StorageTransactionsAnalysis$Logic.setEntryFileCreation(StorageTransactionsAnalysis.java:199) ~[alpha-ressource-1.0-SNAPSHOT-jar-with-dependencies.jar:?]
  30. at one.microstream.storage.types.StorageFileManager$Default.writeTransactionsEntryFileCreation(StorageFileManager.java:1133) ~[alpha-ressource-1.0-SNAPSHOT-jar-with-dependencies.jar:?]
  31. at one.microstream.storage.types.StorageFileManager$Default.createNewStorageFile(StorageFileManager.java:513) ~[alpha-ressource-1.0-SNAPSHOT-jar-with-dependencies.jar:?]
  32. at one.microstream.storage.types.StorageFileManager$Default.addFirstFile(StorageFileManager.java:312) ~[alpha-ressource-1.0-SNAPSHOT-jar-with-dependencies.jar:?]
  33. at one.microstream.storage.types.StorageFileManager$Default.initializeForNoFiles(StorageFileManager.java:1040) ~[alpha-ressource-1.0-SNAPSHOT-jar-with-dependencies.jar:?]
  34. at one.microstream.storage.types.StorageFileManager$Default.initializeStorage(StorageFileManager.java:866) ~[alpha-ressource-1.0-SNAPSHOT-jar-with-dependencies.jar:?]
  35. at one.microstream.storage.types.StorageChannel$Default.initializeStorage(StorageChannel.java:738) ~[alpha-ressource-1.0-SNAPSHOT-jar-with-dependencies.jar:?]
  36. at one.microstream.storage.types.StorageChannelTaskInitialize$Default.succeed(StorageChannelTaskInitialize.java:201) ~[alpha-ressource-1.0-SNAPSHOT-jar-with-dependencies.jar:?]
  37. at one.microstream.storage.types.StorageChannelTaskInitialize$Default.succeed(StorageChannelTaskInitialize.java:36) ~[alpha-ressource-1.0-SNAPSHOT-jar-with-dependencies.jar:?]
  38. at one.microstream.storage.types.StorageChannelSynchronizingTask$AbstractCompletingTask.synchronizedComplete(StorageChannelSynchronizingTask.java:84) ~[alpha-ressource-1.0-SNAPSHOT-jar-with-dependencies.jar:?]
  39. at one.microstream.storage.types.StorageChannelSynchronizingTask$AbstractCompletingTask.complete(StorageChannelSynchronizingTask.java:132) ~[alpha-ressource-1.0-SNAPSHOT-jar-with-dependencies.jar:?]
  40. at one.microstream.storage.types.StorageChannelTask$Abstract.processBy(StorageChannelTask.java:268) ~[alpha-ressource-1.0-SNAPSHOT-jar-with-dependencies.jar:?]
  41. at one.microstream.storage.types.StorageChannel$Default.work(StorageChannel.java:409) ~[alpha-ressource-1.0-SNAPSHOT-jar-with-dependencies.jar:?]
  42. at one.microstream.storage.types.StorageChannel$Default.run(StorageChannel.java:492) ~[alpha-ressource-1.0-SNAPSHOT-jar-with-dependencies.jar:?]
  43. ... 1 more

So Microstream just work on Mac not on Linux. At first I thought because of the permission, but i execute the Java code with root. Do some knows why the behavior of Microstream on Mac is different than on Linux?

答案1

得分: 0

请检查您是否在树莓派上使用的是64位系统。默认是32位,在32位系统上Microstream不可用。

英文:

Please check, that you are using 64 bit system on Rasberry. Default is 32 bit and under 32 bit Microstream does not work.

huangapple
  • 本文由 发表于 2023年6月22日 00:32:50
  • 转载请务必保留本文链接:https://go.coder-hub.com/76525426.html
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定