ambition119 commented on issue #4063: [pulsar-common] MaxMessageSize to user configuration URL: https://github.com/apache/pulsar/pull/4063#issuecomment-487500860 > @ambition119 HTAL > I tried to modify the configuration of bk_server to nettyMaxFrameSizeBytes=52428800(50M). Sending 5M data addEntry can be successful, but the following exception occurred when readEntries: > > ``` > 2019-04-29 15:10:37,498 - ERROR - [bookie-io-1-2:BookieRequestHandler@70] - Unhandled exception occurred in I/O thread or handler > java.io.IOException: Connection reset by peer > at sun.nio.ch.FileDispatcherImpl.read0(Native Method) > at sun.nio.ch.SocketDispatcher.read(SocketDispatcher.java:39) > at sun.nio.ch.IOUtil.readIntoNativeBuffer(IOUtil.java:223) > at sun.nio.ch.IOUtil.read(IOUtil.java:192) > at sun.nio.ch.SocketChannelImpl.read(SocketChannelImpl.java:380) > at io.netty.buffer.PooledUnsafeDirectByteBuf.setBytes(PooledUnsafeDirectByteBuf.java:288) > at io.netty.buffer.AbstractByteBuf.writeBytes(AbstractByteBuf.java:1132) > at io.netty.channel.socket.nio.NioSocketChannel.doReadBytes(NioSocketChannel.java:347) > at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:148) > at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:648) > at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:583) > at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:500) > at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:462) > at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:897) > at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) > at java.lang.Thread.run(Thread.java:748) > ``` > test source code: > > ``` > bkc = new BookKeeper(conf); > ledger = bkc.createLedger(3, 2, DigestType.CRC32, "foobar".getBytes()); > ... > long ledgerId = ledger.getId(); > log.info("Writing to ledger: {}", ledgerId); > for (int i = 0; i < 10; i++) { > String content = "entry-" + i; > // ledger.addEntry(new byte[5 * 1024 * 1024 + 1]); > ledger.addEntry(new byte[5 * 1024 * 1024 ]); > } > ledger.close(); > LedgerHandle lh2 = bkc.openLedger(ledger.getId(), DigestType.CRC32, "foobar".getBytes()); > Enumeration<LedgerEntry> entries = lh2.readEntries(0, 9); > ``` > Then try to modify to less than 5M to get the information. pulsar config's bookkeeper.conf set nettyMaxFrameSizeBytes value is it effective?
---------------------------------------------------------------- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: [email protected] With regards, Apache Git Services
