小编bra*_*fel的帖子

Alternative to openjdk:8-alpine for Kafka Streams

I am using openjdk:8-alpine for deploying Kafka Streams application. I am using Windowing and it crashes with below error:

Exception in thread "app-4a382bdc55ae-StreamThread-1" java.lang.UnsatisfiedLinkError: /tmp/librocksdbjni94709417646402513.so: Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /tmp/librocksdbjni94709417646402513.so)
    at java.lang.ClassLoader$NativeLibrary.load(Native Method)
    at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1941)
    at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1824)
    at java.lang.Runtime.load0(Runtime.java:809)
    at java.lang.System.load(System.java:1086)
    at org.rocksdb.NativeLibraryLoader.loadLibraryFromJar(NativeLibraryLoader.java:78)
    at org.rocksdb.NativeLibraryLoader.loadLibrary(NativeLibraryLoader.java:56)
    at org.rocksdb.RocksDB.loadLibrary(RocksDB.java:64)
    at org.rocksdb.RocksDB.<clinit>(RocksDB.java:35)
    at org.rocksdb.Options.<clinit>(Options.java:22)
    at org.apache.kafka.streams.state.internals.RocksDBStore.openDB(RocksDBStore.java:116)
    at org.apache.kafka.streams.state.internals.Segment.openDB(Segment.java:43)
    at org.apache.kafka.streams.state.internals.Segments.getOrCreateSegment(Segments.java:91)
    at org.apache.kafka.streams.state.internals.RocksDBSegmentedBytesStore.put(RocksDBSegmentedBytesStore.java:100)
    at org.apache.kafka.streams.state.internals.RocksDBSessionStore.put(RocksDBSessionStore.java:122)
    at org.apache.kafka.streams.state.internals.ChangeLoggingSessionBytesStore.put(ChangeLoggingSessionBytesStore.java:78)
    at org.apache.kafka.streams.state.internals.ChangeLoggingSessionBytesStore.put(ChangeLoggingSessionBytesStore.java:33)
    at org.apache.kafka.streams.state.internals.CachingSessionStore.putAndMaybeForward(CachingSessionStore.java:177)
    at org.apache.kafka.streams.state.internals.CachingSessionStore.access$000(CachingSessionStore.java:38)
    at org.apache.kafka.streams.state.internals.CachingSessionStore$1.apply(CachingSessionStore.java:88)
    at …
Run Code Online (Sandbox Code Playgroud)

apache-kafka docker rocksdb alpine-linux apache-kafka-streams

7
推荐指数
1
解决办法
1216
查看次数

dbms_aq.dequeue_array,第一条消息返回两次

介绍

使用Oracle Advanced Queuing方法时,我在Oracle SQL Server上遇到了一个非常奇怪的行为(确切地说:Oracle Database 11g企业版11.2.0.4.0版 - 64位生产版).

问题

错误是我排队X消息,但dequeue_array返回X + 1消息,第一条消息重复(如MessageId所示).

复制:

我能够编写一些简单的PoC来重现错误.本代码非常简单,入队/出队的东西是标准的Oracle AQ.代码执行以下步骤两次(测试运行):

  • 清除队列表
  • 排队X消息
  • 使用dbms_aq.dequeue_array调用使所有消息出列
  • 检查已出列的消息数

在新连接上运行POC时,第一次运行成功而没有错误,但每次后续运行都失败.之后,当使用相同的连接时,每次执行脚本时,它都会在两次测试运行中失败.

到目前为止我尝试了什么:

  • 在"新"连接上运行此脚本:仅第一次运行失败
  • 在同一连接上执行脚本的任何其他操作:所有运行失败
  • 使用/创建新队列时:只有第一次运行失败
  • 使用"delete from <queue_table>"而不是dbms_aqadm.purge_queue_table():一切都很好
  • 当使用"正常"一个一个出列时:每次都很好

结论:

我既不能解释这种行为,也不能在我的代码中找到错误.请看一下它,它应该可以在你最喜欢的sql客户端中直接执行(用PL/SQL Developer测试).

如果您需要任何进一步的信息或在让PoC工作时遇到问题,请问,我会定期检查这个帖子.我试图使PoC尽可能可读,包括关于正在发生的事情的详细输出.

码:

declare
   C_QueueName        constant varchar2(32767) := 'TEST_QUEUE';
   C_QueueTable       constant varchar2(32767) := 'TEST_Q_TABLE';
   C_MsgCount         constant pls_integer := 1;
   C_TestRuns         constant pls_integer := 2;
   C_DequeueArraySize constant pls_integer := 10;

   /*
    * Create the queue and the queue table used for theses tests …
Run Code Online (Sandbox Code Playgroud)

oracle plsql oracle11g oracle-aq

5
推荐指数
1
解决办法
1135
查看次数

想用java找到两个文本文件之间的内容差异

我有两个文本文件,

  • A.TXT
  • b.txt

每个文本文件都包含一些文件路径.b.txt包含的文件路径比a.txt.我想确定添加哪些路径以及哪些路径被删除,a.txt以便它对应于路径b.txt.

例如,

abc.txt包含

E:\Users\Documents\hello\a.properties
E:\Users\Documents\hello\b.properties
E:\Users\Documents\hello\c.properties 
Run Code Online (Sandbox Code Playgroud)

和xyz.txt包含

E:\Users\Documents\hello\a.properties
E:\Users\Documents\hello\c.properties
E:\Users\Documents\hello\g.properties
E:\Users\Documents\hello\h.properties
Run Code Online (Sandbox Code Playgroud)

现在如何找到g.prop和h.prop被添加并删除b.prop?

任何人都可以解释它是如何完成的?我只能找到如何检查相同的内容.

java

1
推荐指数
1
解决办法
3万
查看次数