[GitHub] bookkeeper pull request #179: BOOKKEEPER-1090: Use LOG.isDebugEnabled() to a...

2017-06-01 Thread merlimat
GitHub user merlimat opened a pull request: https://github.com/apache/bookkeeper/pull/179 BOOKKEEPER-1090: Use LOG.isDebugEnabled() to avoid unexpected allocations Using `LOG.debug(...)` can lead to multiple unexpected memory allocation, even when the logger it's turne

[GitHub] bookkeeper pull request #175: BOOKKEEPER-1056: Removed PacketHeader serializ...

2017-06-01 Thread merlimat
GitHub user merlimat opened a pull request: https://github.com/apache/bookkeeper/pull/175 BOOKKEEPER-1056: Removed PacketHeader serialization/deserialization allocation When parsing the request packet header, use static methods to avoid creating a `PacketHeader` instance. You

[GitHub] bookkeeper issue #170: BOOKKEEPER-1071: Use per connection instances of requ...

2017-05-31 Thread merlimat
Github user merlimat commented on the issue: https://github.com/apache/bookkeeper/pull/170 There seems to be some problem in Jenkins since the build is immediately failing: ``` ... Setting MAVEN_3_3_3_HOME=/home/jenkins/tools/maven/apache-maven-3.3.3 [bookkeeper

[GitHub] bookkeeper pull request #170: BOOKKEEPER-1071: Use per connection instances ...

2017-05-31 Thread merlimat
GitHub user merlimat opened a pull request: https://github.com/apache/bookkeeper/pull/170 BOOKKEEPER-1071: Use per connection instances of request encoder/decoder You can merge this pull request into a Git repository by running: $ git pull https://github.com/merlimat

[GitHub] bookkeeper issue #161: BOOKKEEPER-1074: Remove JMX Bean

2017-05-25 Thread merlimat
Github user merlimat commented on the issue: https://github.com/apache/bookkeeper/pull/161 This was an obsoleted sets of stats that was superseded by the stats loggers. All the info should be accessible from there already. --- If your project is set up for it, you can reply to this

[GitHub] bookkeeper issue #156: BOOKKEEPER-1055: Optimize handling of masterKey in ca...

2017-05-16 Thread merlimat
Github user merlimat commented on the issue: https://github.com/apache/bookkeeper/pull/156 @eolivelli Sure, I'll fix that. Thanks for checking it out ! --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project

[GitHub] bookkeeper issue #153: BOOKKEEPER-1066: Introduce GrowableArrayBlockingQueue

2017-05-15 Thread merlimat
Github user merlimat commented on the issue: https://github.com/apache/bookkeeper/pull/153 @jvrao I don't have a benchmark for this specific change, though I agree it might make sense to add one. The points here are: * In some places we are using `LinkedBlocking

[GitHub] bookkeeper pull request #157: BOOKKEEPER-1069: If client uses V2 proto, set ...

2017-05-15 Thread merlimat
GitHub user merlimat opened a pull request: https://github.com/apache/bookkeeper/pull/157 BOOKKEEPER-1069: If client uses V2 proto, set the connection to always decode V2 messages Avoid handling parsing exception for each request and instead adapt to what the client is sending

[GitHub] bookkeeper pull request #156: BOOKKEEPER-1055: Optimize handling of masterKe...

2017-05-15 Thread merlimat
GitHub user merlimat opened a pull request: https://github.com/apache/bookkeeper/pull/156 BOOKKEEPER-1055: Optimize handling of masterKey in case it is empty On each request client and bookies are exchanging the ledger masterKey, which is a 20 bytes MAC digest of the ledger

[GitHub] bookkeeper pull request #155: Expose ByteBuf in LedgerEntry to avoid data co...

2017-05-15 Thread merlimat
GitHub user merlimat opened a pull request: https://github.com/apache/bookkeeper/pull/155 Expose ByteBuf in LedgerEntry to avoid data copy To avoid copying the entries payloads when writing/reading on a ledger and having to allocate a lot of `byte[]` on the JVM heap, we need to

[GitHub] bookkeeper pull request #154: BOOKKEEPER-1067: Add Prometheus stats provider

2017-05-15 Thread merlimat
GitHub user merlimat opened a pull request: https://github.com/apache/bookkeeper/pull/154 BOOKKEEPER-1067: Add Prometheus stats provider Prometheus (https://prometheus.io) is a metrics collection system, similar but much more flexible than graphite. It would be good to

[GitHub] bookkeeper issue #152: BOOKKEEPER-1065: OrderedSafeExecutor should only have...

2017-05-11 Thread merlimat
Github user merlimat commented on the issue: https://github.com/apache/bookkeeper/pull/152 I got a bit scared when I saw `ScheduledThreadPoolExecutor` is pass `MAX_INT` as the max thread pool size.. but I think the current code is correct. I just did a quick verification

[GitHub] bookkeeper pull request #152: BOOKKEEPER-1065: OrderedSafeExecutor should on...

2017-05-11 Thread merlimat
Github user merlimat closed the pull request at: https://github.com/apache/bookkeeper/pull/152 --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature

[GitHub] bookkeeper issue #152: BOOKKEEPER-1065: OrderedSafeExecutor should only have...

2017-05-11 Thread merlimat
Github user merlimat commented on the issue: https://github.com/apache/bookkeeper/pull/152 Ok, this is the error that findbugs gives: ``` [INFO] --- findbugs-maven-plugin:3.0.4:check (default-cli) @ bookkeeper-server --- [INFO] BugInstance size is 1 [INFO] Error

[GitHub] bookkeeper pull request #153: BOOKKEEPER-1066: Introduce GrowableArrayBlocki...

2017-05-11 Thread merlimat
GitHub user merlimat opened a pull request: https://github.com/apache/bookkeeper/pull/153 BOOKKEEPER-1066: Introduce GrowableArrayBlockingQueue In multiple places, (eg: journal, ordered executor, etc..), we are using `LinkedBlockingQueue` instances to pass objects between threads

[GitHub] bookkeeper pull request #152: BOOKKEEPER-1065: OrderedSafeExecutor should on...

2017-05-11 Thread merlimat
GitHub user merlimat opened a pull request: https://github.com/apache/bookkeeper/pull/152 BOOKKEEPER-1065: OrderedSafeExecutor should only have 1 thread per bucket You can merge this pull request into a Git repository by running: $ git pull https://github.com/merlimat

[GitHub] bookkeeper pull request #151: BOOKKEEPER-1064: ConcurrentModificationExcepti...

2017-05-11 Thread merlimat
GitHub user merlimat opened a pull request: https://github.com/apache/bookkeeper/pull/151 BOOKKEEPER-1064: ConcurrentModificationException in AuditorLedgerCheckerTest As seen in: https://builds.apache.org/job/bookkeeper-master-git-pullrequest/371/ The test is iterating

[GitHub] bookkeeper issue #145: BOOKKEEPER-1057: Do not log error message after read ...

2017-05-11 Thread merlimat
Github user merlimat commented on the issue: https://github.com/apache/bookkeeper/pull/145 > That's exactly my point. Can we use this opportunity to do the right fix instead of masking real errorcases? I was agreeing with you :) Let me think a bi

[GitHub] bookkeeper issue #141: BOOKKEEPER-1051: Fast shutdown for GarbageCollectorTh...

2017-05-11 Thread merlimat
Github user merlimat commented on the issue: https://github.com/apache/bookkeeper/pull/141 @jvrao sorry for merging this quickly, should have waited for more feedback. The change here is to interrupt the Bookie GC thread immediately when shutting down. The interruption only

[GitHub] bookkeeper issue #145: BOOKKEEPER-1057: Do not log error message after read ...

2017-05-11 Thread merlimat
Github user merlimat commented on the issue: https://github.com/apache/bookkeeper/pull/145 @jvrao I agree with the point of separating the recovery vs non-recovery. At yahoo we were using log sniffer to get alerts from all error messages. If an error message is not symptom

[GitHub] bookkeeper issue #138: BOOKKEEPER-1008: Netty 4.1

2017-05-11 Thread merlimat
Github user merlimat commented on the issue: https://github.com/apache/bookkeeper/pull/138 @eolivelli Thanks, it should fix the error you were seing --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does

[GitHub] bookkeeper pull request #150: BOOKKEEPER-1063: Use executure.execute() inste...

2017-05-10 Thread merlimat
GitHub user merlimat opened a pull request: https://github.com/apache/bookkeeper/pull/150 BOOKKEEPER-1063: Use executure.execute() instead of submit() to avoid… … creation of unused FutureTask When submitting tasks to an executor, if the `FutureTask` object is not

[GitHub] bookkeeper pull request #149: BOOKKEEPER-1061: BookieWatcher should not do Z...

2017-05-10 Thread merlimat
GitHub user merlimat opened a pull request: https://github.com/apache/bookkeeper/pull/149 BOOKKEEPER-1061: BookieWatcher should not do ZK blocking operations from ZK async callback thread In some cases, the BookieWatcher can get the ZK event thread stuck. This happens when a ZK

[GitHub] bookkeeper pull request #148: BOOKKEEPER-1060: Add utility to use SafeRunnab...

2017-05-10 Thread merlimat
GitHub user merlimat opened a pull request: https://github.com/apache/bookkeeper/pull/148 BOOKKEEPER-1060: Add utility to use SafeRunnable from Java8 Lambda Since BK-4.5.0 is already switched to Java8, we should have a simple and concise way to pass lambdas where a `SafeRunnable

[GitHub] bookkeeper pull request #147: BOOKKEEPER-1059: Upgrade to SLF4J-1.7.25

2017-05-10 Thread merlimat
GitHub user merlimat opened a pull request: https://github.com/apache/bookkeeper/pull/147 BOOKKEEPER-1059: Upgrade to SLF4J-1.7.25 You can merge this pull request into a Git repository by running: $ git pull https://github.com/merlimat/bookkeeper slf4j-1.7 Alternatively you

[GitHub] bookkeeper pull request #146: BOOKKEEPER-1058: Ignore already deleted ledger...

2017-05-10 Thread merlimat
GitHub user merlimat opened a pull request: https://github.com/apache/bookkeeper/pull/146 BOOKKEEPER-1058: Ignore already deleted ledger on replication audit Replication auditor should skip ledgers that were deleted since the auditing was started. You can merge this pull request

[GitHub] bookkeeper pull request #145: BOOKKEEPER-1057: Do not log error message afte...

2017-05-10 Thread merlimat
GitHub user merlimat opened a pull request: https://github.com/apache/bookkeeper/pull/145 BOOKKEEPER-1057: Do not log error message after read failure in PendingReadOp In PendingReadOp, there is an error message that is printed each time a read on a specific bookie is failing

[GitHub] bookkeeper issue #138: BOOKKEEPER-1008: Netty 4.1

2017-05-10 Thread merlimat
Github user merlimat commented on the issue: https://github.com/apache/bookkeeper/pull/138 @kishorekasi @jvrao @revans2 @sijie @eolivelli All the tests are passing properly with epoll event loop on linux. I have already applied most of the ref-count fixes from yahoo branch

[GitHub] bookkeeper issue #144: BOOKKEEPER-1054: Add gitignore file

2017-05-10 Thread merlimat
Github user merlimat commented on the issue: https://github.com/apache/bookkeeper/pull/144 @eolivelli the pr # is 144 and not 114 as in your snippet above. I will also add the netbeans files --- If your project is set up for it, you can reply to this email and have your reply

[GitHub] bookkeeper pull request #144: BOOKKEEPER-1054: Add gitignore file

2017-05-09 Thread merlimat
GitHub user merlimat opened a pull request: https://github.com/apache/bookkeeper/pull/144 BOOKKEEPER-1054: Add gitignore file We should have a .gitignore file to hide all build generated files. You can merge this pull request into a Git repository by running: $ git pull https

[GitHub] bookkeeper pull request #143: BOOKKEEPER-1053: Upgrade RAT maven version to ...

2017-05-09 Thread merlimat
GitHub user merlimat opened a pull request: https://github.com/apache/bookkeeper/pull/143 BOOKKEEPER-1053: Upgrade RAT maven version to 0.12 and ignore Eclipse project files You can merge this pull request into a Git repository by running: $ git pull https://github.com

[GitHub] bookkeeper issue #141: BOOKKEEPER-1051: Fast shutdown for GarbageCollectorTh...

2017-05-09 Thread merlimat
Github user merlimat commented on the issue: https://github.com/apache/bookkeeper/pull/141 Build time reduces from 2h to 30min! --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature

[GitHub] bookkeeper pull request #142: BOOKKEEPER-1052: Print autorecovery enabled or...

2017-05-09 Thread merlimat
GitHub user merlimat opened a pull request: https://github.com/apache/bookkeeper/pull/142 BOOKKEEPER-1052: Print autorecovery enabled or not in bookie shell Print the current status of auto-recovery, whether it's enabled or disabled. You can merge this pull request into

[GitHub] bookkeeper issue #140: BOOKKEEPER-1050: Cache journalFormatVersionToWrite wh...

2017-05-09 Thread merlimat
Github user merlimat commented on the issue: https://github.com/apache/bookkeeper/pull/140 @eolivelli Good point. This is a merge from a very old commit.. probably the alignment size was not there at the point. I'll fix that. --- If your project is set up for it, you can rep

[GitHub] bookkeeper pull request #141: BOOKKEEPER-1051: Fast shutdown for GarbageColl...

2017-05-09 Thread merlimat
GitHub user merlimat opened a pull request: https://github.com/apache/bookkeeper/pull/141 BOOKKEEPER-1051: Fast shutdown for GarbageCollectorThread Several unit tests are taking very long time to complete (eg: `BookieLedgerIndexTest` taking ~10 minutes). The reason is that

[GitHub] bookkeeper pull request #140: BOOKKEEPER-1050: Cache journalFormatVersionToW...

2017-05-09 Thread merlimat
GitHub user merlimat opened a pull request: https://github.com/apache/bookkeeper/pull/140 BOOKKEEPER-1050: Cache journalFormatVersionToWrite when starting Journal Reading the journal version format from `ServiceConfiguration` each time is inefficient. `ServiceConfiguration` is

[GitHub] bookkeeper pull request #139: BOOKKEEPER-1048: Use ByteBuf in LedgerStorage ...

2017-05-05 Thread merlimat
GitHub user merlimat opened a pull request: https://github.com/apache/bookkeeper/pull/139 BOOKKEEPER-1048: Use ByteBuf in LedgerStorage interface To pass ref-counted buffer from Netty directly to the storage and the Journal, we need to have LedgerStorage to accept ByteBuf instead

[GitHub] bookkeeper issue #116: BOOKKEEPER-1008 Move to Netty4.1

2017-05-05 Thread merlimat
Github user merlimat commented on the issue: https://github.com/apache/bookkeeper/pull/116 @kishorekasi I think I fixed the epoll test issues. Added a couple of small commits on my branch. All tests are now passing on local linux. --- If your project is set up for it, you can reply

[GitHub] bookkeeper issue #116: BOOKKEEPER-1008 Move to Netty4.1

2017-05-05 Thread merlimat
Github user merlimat commented on the issue: https://github.com/apache/bookkeeper/pull/116 @kishorekasi I get a clean build on mac from my branch. I'm looking at the reasons it's failing with netty-all dependency on linux. I think we shouldn't be forcing the nio tra

[GitHub] bookkeeper pull request #138: BOOKKEEPER-1008: Netty 4.1

2017-05-04 Thread merlimat
GitHub user merlimat opened a pull request: https://github.com/apache/bookkeeper/pull/138 BOOKKEEPER-1008: Netty 4.1 Added more ref-count fixes from yahoo-4.3 branch on top of #116 You can merge this pull request into a Git repository by running: $ git pull https://github.com

[GitHub] bookkeeper issue #116: BOOKKEEPER-1008 Move to Netty4.1

2017-05-04 Thread merlimat
Github user merlimat commented on the issue: https://github.com/apache/bookkeeper/pull/116 @kishorekasi I'll push my branch in a new PR to trigger Jenkins with my changes as well --- If your project is set up for it, you can reply to this email and have your reply appear on G

[GitHub] bookkeeper issue #116: BOOKKEEPER-1008 Move to Netty4.1

2017-05-04 Thread merlimat
Github user merlimat commented on the issue: https://github.com/apache/bookkeeper/pull/116 @kishorekasi I have fixed the issues with the `BookieFailureTest`. I have applied multiple ref-count fixes as well from the yahoo branch.. pushed to https://github.com/merlimat/bookkeeper

[GitHub] bookkeeper issue #116: BOOKKEEPER-1008 Move to Netty4.1

2017-05-04 Thread merlimat
Github user merlimat commented on the issue: https://github.com/apache/bookkeeper/pull/116 @kishorekasi can you also rebase on top of last master? This should reduce the count of tests failing --- If your project is set up for it, you can reply to this email and have your reply

[GitHub] bookkeeper pull request #137: BOOKKEEPER-1047: Add missing error code in ZK ...

2017-05-04 Thread merlimat
GitHub user merlimat opened a pull request: https://github.com/apache/bookkeeper/pull/137 BOOKKEEPER-1047: Add missing error code in ZK setData return path The log warning is not printing the error code returned by ZooKeeper You can merge this pull request into a Git repository by

[GitHub] bookkeeper issue #136: BOOKKEEPER-1046: Avoid long to Long conversion in Ord...

2017-05-04 Thread merlimat
Github user merlimat commented on the issue: https://github.com/apache/bookkeeper/pull/136 > can you drop the old method as it is no more used ? @eolivelli We still use it in Pulsar/ManagedLedger to have tasks in the executor executed in order by topic name --- If y

[GitHub] bookkeeper pull request #136: BOOKKEEPER-1046: Avoid long to Long conversion...

2017-05-03 Thread merlimat
GitHub user merlimat opened a pull request: https://github.com/apache/bookkeeper/pull/136 BOOKKEEPER-1046: Avoid long to Long conversion in OrderedSafeExecutor task submit When submitting tasks to an OrderedSafeExecutor, most of the time a ledger id is being passed. Given that the

[GitHub] bookkeeper issue #135: BOOKKEEPER-1045: Execute tests in different JVM proce...

2017-05-03 Thread merlimat
Github user merlimat commented on the issue: https://github.com/apache/bookkeeper/pull/135 @eolivelli we can try with `1C` to spawn 1 process per core and run the tests in parallel. I didn't do that at this point since I don't want to chase after any new test issues :)

[GitHub] bookkeeper pull request #135: BOOKKEEPER-1045: Execute tests in different JV...

2017-05-03 Thread merlimat
GitHub user merlimat opened a pull request: https://github.com/apache/bookkeeper/pull/135 BOOKKEEPER-1045: Execute tests in different JVM processes The current Maven Surefire configuration is using: ```xml always ``` This is a deprecated config and apparently

[GitHub] bookkeeper issue #116: BOOKKEEPER-1008 Move to Netty4.1

2017-05-03 Thread merlimat
Github user merlimat commented on the issue: https://github.com/apache/bookkeeper/pull/116 I have been testing quite a while with the leak detector and across all the leaked files I haven't seen any since netty 4 created socket. What I mostly saw with the file leak det

[GitHub] bookkeeper issue #116: BOOKKEEPER-1008 Move to Netty4.1

2017-05-03 Thread merlimat
Github user merlimat commented on the issue: https://github.com/apache/bookkeeper/pull/116 It seems entry log file descriptors are being leaked: https://gist.github.com/merlimat/18ecfc83b7312625755610d4d59bac9b Investigating on why --- If your project is set up for it, you

[GitHub] bookkeeper issue #116: BOOKKEEPER-1008 Move to Netty4.1

2017-05-03 Thread merlimat
Github user merlimat commented on the issue: https://github.com/apache/bookkeeper/pull/116 I didn't see the problem locally either. I'm trying now with a file leak detector agent: http://file-leak-detector.kohsuke.org/ to see if it gives any clue. --- If your project is

[GitHub] bookkeeper issue #116: BOOKKEEPER-1008 Move to Netty4.1

2017-05-02 Thread merlimat
Github user merlimat commented on the issue: https://github.com/apache/bookkeeper/pull/116 @kishorekasi @eolivelli @revans2 Addressed Bobby comments in a new commit on top of this PR. https://github.com/merlimat/bookkeeper/commits/netty-4.1 --- If your project is set up

[GitHub] bookkeeper issue #116: BOOKKEEPER-1008 Move to Netty4.1

2017-05-02 Thread merlimat
Github user merlimat commented on the issue: https://github.com/apache/bookkeeper/pull/116 I think there was a socket leak in the original commit. The leak was fixed in a subsequent commit in the `yahoo-4.3` branch: yahoo/bookkeeper@f19c1d8c67caec2006962574adcf483d40fe6dc7 I

[GitHub] bookkeeper issue #116: BOOKKEEPER-1008 Move to Netty4.1

2017-04-21 Thread merlimat
Github user merlimat commented on the issue: https://github.com/apache/bookkeeper/pull/116 Let me take a look --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes

[GitHub] bookkeeper issue #116: BOOKKEEPER-1008 Move to Netty4.1

2017-04-21 Thread merlimat
Github user merlimat commented on the issue: https://github.com/apache/bookkeeper/pull/116 Ok, I see only ~5 tests are failing there, not the 100s I understood yesterday :) https://builds.apache.org/job/bookkeeper-master-git-pullrequest/309/ --- If your project is set up

[GitHub] bookkeeper issue #116: BOOKKEEPER-1008 Move to Netty4.1

2017-04-21 Thread merlimat
Github user merlimat commented on the issue: https://github.com/apache/bookkeeper/pull/116 Hi @kishorekasi, is this the latest version of the patch you were mentioning yesterday? --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub

[GitHub] bookkeeper issue #126: BOOKKEEPER-1018: Allow client to select older V2 prot...

2017-04-05 Thread merlimat
Github user merlimat commented on the issue: https://github.com/apache/bookkeeper/pull/126 @eolivelli > So that in the future we will not forget about this "legacy" option, as actual is not "legacy" at all if Yahoo/Pulsar is using it in production

[GitHub] bookkeeper pull request: BOOKKEEPER-855: handle session expire eve...

2015-12-02 Thread merlimat
Github user merlimat commented on the pull request: https://github.com/apache/bookkeeper/pull/1#issuecomment-161300318 Looks good to me, just the executor shutdown thing --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If

[GitHub] bookkeeper pull request: BOOKKEEPER-855: handle session expire eve...

2015-12-02 Thread merlimat
Github user merlimat commented on a diff in the pull request: https://github.com/apache/bookkeeper/pull/1#discussion_r46415317 --- Diff: bookkeeper-server/src/main/java/org/apache/bookkeeper/bookie/Bookie.java --- @@ -142,7 +145,11 @@ final protected String