Release 4.3.2 - 2015-11-12

  Backward compatible changes:

    BUGFIXES:
      bookkeeper-server:

        BOOKKEEPER-695: Some entry logs are not removed from the bookie storage (Matteo Merli via sijie)

    IMPROVEMENTS:
      bookkeeper-client:

        BOOKKEEPER-438: Move ledger id generation out of LedgerManager (sijie via mmerli)

Release 4.3.1 - 2015-05-19

  Backward compatible changes:

    BUGFIXES:

      BOOKKEEPER-815: Ledger fence state is lost when the ledger file is evicted (Charles Xie via ivank)

      BOOKKEEPER-799: Distribution schedule coverage sets don't take gaps in response lists into account when writequorum > ackquorum (ivank)

      BOOKKEEPER-805: NullPointException in bookie server when using twitter-ostrich-provider (Youngjoon Kim via sijie)

      BOOKKEEPER-809: Wrong metric on LedgerDeleteOp and LedgerOpenOp (Charles Xie via sijie)

      BOOKKEEPER-804: Client program is not terminated when using openLedgerNoRecovery (ivank via sijie)

      BOOKKEEPER-795: Race condition causes writes to hang if ledger is fenced (sijie via ivank)

      BOOKKEEPER-814: clean up temp files that generated by test cases. (zhaijia via ivank)

      BOOKKEEPER-838: ForceWriteThread::run() leaks “logFile.close()” when interrupt comes (zhaijia via sijie)

      BOOKKEEPER-839: AuditorPeriodicCheckTest timeout (rakeshr via sijie)

      BOOKKEEPER-840: Deadlock on flushLock on compaction (sijie)

      BOOKKEEPER-834: test case error in test class TestDiskChecker (zhaijia via sijie)

      BOOKKEEPER-846: TestLedgerChecker times out (rakeshr via sijie)

      BOOKKEEPER-854: NPE on InterleavedLedgerStorage.onRotateEntryLog (sijie)

    IMPROVEMENTS:

      BOOKKEEPER-800: Expose whether a ledger is closed or not (ivank)

      BOOKKEEPER-820: print out fi.isFenced() in BookieShell (zhaijia via sijie)

      BOOKKEEPER-813: BookieShell doesn't find index directory (Charles Xie via sijie)

      BOOKKEEPER-811: Recovery tool doesn't remove cookie after recovering one bookie (Charles Xie via sijie)

      BOOKKEEPER-634: Provide admin tool to rename bookie identifier in ledger metadata (rakeshr via ivank)

      BOOKKEEPER-837: UpdateLedgerOp - Replace AbstractFuture with SettableFuture (rakeshr via sijie)

      BOOKKEEPER-835: Update copyright for 2015 on all active branches (sijie)

      bookkeeper-client:

        BOOKKEEPER-810: Allow to configure TCP connect timeout (Charles Xie via sijie)

      bookkeeper-server:

        BOOKKEEPER-833: EntryLogId and EntryLogLimit should not be larger than Integer.MAX_VALUE (sijie)


Release 4.3.0 - 2014-10-03

  Non-backward compatible changes:

    BUGFIXES:

    IMPROVEMENTS:

  Backward compatible changes:

    BUGFIXES:

      BOOKKEEPER-564: Better checkpoint mechanism (sijie & ivank)

      BOOKKEEPER-596: Ledgers are gc'ed by mistake in MSLedgerManagerFactory. (sijie & ivank)

      BOOKKEEPER-595: Crash of inprocess autorecovery daemon should not take down the bookie (ivank)

      BOOKKEEPER-597: Add flag to output test logs to stdout (ivank)

      BOOKKEEPER-579: TestSubAfterCloseSub was put in a wrong package (sijie via ivank)

      BOOKKEEPER-586: Remove recursive call in delivery manager (sijie via ivank)

      BOOKKEEPER-506: Provide better topic release algorithm (sijie via ivank)

      BOOKKEEPER-581: Ledger recovery doesn't work correctly when recovery adds force changing ensembles. (sijie via ivank)

      BOOKKEEPER-584: Data loss when ledger metadata is overwritten (sijie via ivank)

      BOOKKEEPER-617: BOOKKEEPER-544 breaks hedwig-server/bin/hedwig script (ivank)

      BOOKKEEPER-619: Bookie should not create local cookie files if zookeeper is uninitialized (ivank)

      BOOKKEEPER-313: Bookkeeper shutdown call from Bookie thread is not shutting down server (vinay via ivank)

      BOOKKEEPER-620: PerChannelBookieClient race during channel disconnect (ivank)

      BOOKKEEPER-637: NoSuchEntry exception when reading an entry from a bookie should not print ERROR level message (mmerli via ivank)

      BOOKKEEPER-641: DeathWatcher thread is unnecessarily running even after bookie shutdown (rakeshr via ivank)

      BOOKKEEPER-636: Latest txn logs might be deleted in a race condition which is not recoverable if BK goes down before next txn log created. (vinay via ivank)

      BOOKKEEPER-635: jenkins build should highlight which lines of the patch cause raw analysis errors (ivank via sijie)

      BOOKKEEPER-653: Timeout option is missing in few testcases (Rakesh via ivank)

      BOOKKEEPER-686: Bookie startup will fail if one of the configured ledgerDir is full and the same is used for replaying the journal (Rakesh via sijie)

      BOOKKEEPER-605: Use static Logger objects everywhere for bookkeeper (sijie via ivank)

      BOOKKEEPER-614: Generic stats interface, which multiple providers can be plugged into (sijie & ivank via ivank)

      BOOKKEEPER-615: Twitter stats implementation of stats interface (sijie via ivank)

      BOOKKEEPER-719: Inconsistent synchronization of org.apache.bookkeeper.stats.CodahaleMetricsProvider.metrics (sijie via ivank)

      BOOKKEEPER-644: Provide a bookie address wrapper (sijie via fpj)

      BOOKKEEPER-763: findbugs fails to run on jenkins (ivank)

      BOOKKEEPER-766: Update notice.txt files to include 2014 (ivank via fpj)
      
      BOOKKEEPER-767: Allow loopback in tests (ivank via fpj)

      BOOKKEEPER-765: bookkeeper script should fall back to java in path if JAVA_HOME is not set (ivank)

      BOOKKEEPER-776: Flaky test BookieRecoveryTest (ivank via fpj)

      BOOKKEEPER-790: Add JNA license in NOTICE files (sijie)

      BOOKKEEPER-789: Update README to reflect bookkeeper modules (sijie)

      bookkeeper-server:

        BOOKKEEPER-567: ReadOnlyBookieTest hangs on shutdown (sijie via ivank)

        BOOKKEEPER-549: Documentation missed for readOnlyMode support (ivank)

        BOOKKEEPER-548: Document about periodic ledger checker configuration (ivank)

        BOOKKEEPER-561: Findbugs report errors with openjdk (ivank via umamahesh)

        BOOKKEEPER-554: fd leaking when move ledger index file (sijie, ivank via sijie)

        BOOKKEEPER-568: NPE during GC with HierarchicalLedgerManager (Matteo via sijie)

        BOOKKEEPER-569: Critical performance bug in InterleavedLedgerStorage (ivank via fpj)

        BOOKKEEPER-559: Fix occasional failure in AuditorBookieTest (ivank via umamahesh)

        BOOKKEEPER-599: NPE in PerChannelBookieClient (jiannan via sijie)

	BOOKKEEPER-577: BookieFailureTest uses sync/wait()/notify() incorrectly (ivank via fpj) 
	
	BOOKKEEPER-626: BOOKIE_EXTRA_OPTS are added twice (vinay via fpj)

        BOOKKEEPER-623: LedgerChecker should avoid segments of closed ledger with higher start entryId than closed entry. (vinay via sijie)

        BOOKKEEPER-633: ConcurrentModificationException in RackawareEnsemblePlacementPolicy when a bookie is removed from available list (vinay via sijie)

        BOOKKEEPER-563: Avoid Journal polluting page cache (Robin Dhamankar via sijie)

        BOOKKEEPER-646: BookieShell readjournal command is throwing BufferUnderflowException (Rakesh via sijie)

        BOOKKEEPER-652: Logger class name is wrong in LedgerCacheImpl.java (Rakesh via sijie)

        BOOKKEEPER-642: Bookie returns incorrect exitcode, ExitCode.ZK_REG_FAIL is getting overridden (Rakesh via ivank)

        BOOKKEEPER-663: HierarchicalLedgerManager iterator is missing some ranges and the last ledger in the range (mmerli via ivank)

        BOOKKEEPER-604: Ledger storage can log an exception if GC happens concurrently. (sijie & ivank via ivank)

        BOOKKEEPER-667: Client write will fail with BadMetadataVersion in case of multiple Bookie failures with AutoRecovery enabled (sijie via ivank)

        BOOKKEEPER-668: Race between PerChannelBookieClient#channelDisconnected() and disconnect() calls can make clients hang while add/reading entries in case of multiple bookie failures (sijie & ivank via ivank)

        BOOKKEEPER-624: Reduce logs generated by ReplicationWorker (vinay via ivank)

        BOOKKEEPER-632: AutoRecovery should consider read only bookies (vinay via ivank)

        BOOKKEEPER-649: Race condition in sync ZKUtils.createFullPathOptimistic() (ivank)

        BOOKKEEPER-580: improve close logic (sijie & ivank via ivank)

        BOOKKEEPER-446: BookKeeper.createLedger(..) should not mask the error with ZKException (sijie via ivank)

        BOOKKEEPER-675: Log noise fixup before cutting 4.2.2 (ivank)

        BOOKKEEPER-638: Two bookies could start at the same time to access bookie data. (sijie via ivank)

        BOOKKEEPER-676: Make add asynchrounous in ledger recovery (aniruddha via ivank)

        BOOKKEEPER-673: Ledger length can be inaccurate in failure case (sijie via ivank)

        BOOKKEEPER-688: NPE exception in PerChannelBookieClient (ivank via sijie)

        BOOKKEEPER-659: LRU page management in ledger cache. (Aniruddha, Robin Dhamankar & sijie via ivank)

        BOOKKEEPER-700: GarbageCollectorThread exsiting with ArrayIndexOutOfBoundsException (rakeshr via ivank)

        BOOKKEEPER-678: BookieServer shutdown hangs indefinitely at NioServerSocketChannelFactory.releaseExternalResources (rakeshr via ivank)

        BOOKKEEPER-565: Make an option to separate storing entry log files from index files. (sijie via ivank)

        BOOKKEEPER-711: bookkeeper-daemon.sh will not remove the pid file one successful stop (vinay via sijie)

        BOOKKEEPER-712: bookkeeper script should use 'java' from JAVA_HOME (vinay via sijie)

	BOOKKEEPER-709: SlowBookieTest#testSlowBookie fails intermittently (Rakesh R via fpj)

        BOOKKEEPER-714: Logging channel exceptions in PerChannelBookieClient (sijie)

        BOOKKEEPER-662: Major GC should kick in immediately if remaining space reaches a warning threshold (sijie via ivank)

        BOOKKEEPER-710: OpenLedgerNoRecovery should watch ensemble change. (sijie via ivank)

        BOOKKEEPER-429: Provide separate read and write threads in the bookkeeper server (Aniruddha via sijie)

        BOOKKEEPER-696: stats collection on bookkeeper client (Aniruddha, ivank via sijie)

        BOOKKEEPER-661: Turn readonly back to writable if spaces are reclaimed. (sijie via ivank)

        BOOKKEEPER-720: CheckpointSource.MIN#compareTo does exactly the opposite of what it should (ivank via sijie)

        BOOKKEEPER-643: Improve concurrency of entry logger (sijie & Aniruddha via ivank)

        BOOKKEEPER-703: Document all the settings added in BOOKKEEPER-656 (sijie)

        BOOKKEEPER-727: Names of bookie write/read threads are backwards (ivank via fpj)

        BOOKKEEPER-728: Bookkeeper#Builder is not public, so can't be used outside of client package (ivank via fpj)

        BOOKKEEPER-729: Bookie shouldn't exit with 0, if exiting from deathwatcher and thread death was caused by OOM (ivank via fpj)

        BOOKKEEPER-725: AutoRecoveryMain should exit with error code if deathwatcher finds dead thread (ivank via sijie)

        BOOKKEEPER-726: PerChannelBookieClient should print address that it failed to connect to when it fails to correct (ivank via sijie)

        BOOKKEEPER-724: Shade introduces RAT error (sijie via fpj)

        BOOKKEEPER-654: Bookkeeper client operations are allowed even after its closure, bk#close() (sijie via ivank)

        BOOKKEEPER-717: journal should look forward to group time-out entries (sijie via ivank)

        BOOKKEEPER-715: bookie: delay dropping journal cached pages (sijie via ivank)

        BOOKKEEPER-730: Shade pom file missing apache license header (ivank)

        BOOKKEEPER-740: AutoRecoveryMainTest#testAutoRecoverySessionLoss is failing (Rakesh via sijie)

        BOOKKEEPER-432: Improve performance of entry log range read per ledger entries (yixue, sijie via ivank)

        BOOKKEEPER-742: Fix for empty ledgers losing quorum. (ivank)

        BOOKKEEPER-743: Periodic ledger check running too often as doc doesn't match implementation. (ivank)

        BOOKKEEPER-716: padding writes for bookie journal (sijie via ivank)

        BOOKKEEPER-744: Run the auditor bookie check periodically (ivank)

        BOOKKEEPER-629: Support hostname based ledger metadata to help users to change IP with existing installation (rakeshr via ivank)

	BOOKKEEPER-755: Incorrect number of seconds specified in a day (Joseph Redfern via fpj)
	
	BOOKKEEPER-750: Flake in BookieAutoRecoveryTest#testEmptyLedgerLosesQuorumEventually (ivank via fpj)

        BOOKKEEPER-756: Use HashedwheelTimer for request timeouts for PCBC (sijie via ivank)

        BOOKKEEPER-758: Add TryReadLastAddConfirmed API (sijie via ivank)

        BOOKKEEPER-751: Ensure all the bookkeeper callbacks not run under ledger handle lock (sijie via ivank)

        BOOKKEEPER-745: Fix for false reports of ledger unreplication during rolling restarts. (ivank)

        BOOKKEEPER-746: 5 new shell commands. List ledgers, list metadata, list underreplicated, show auditor and simpletest (ivank)

        BOOKKEEPER-774: Flaky test org.apache.bookkeeper.test.ReadOnlyBookieTest.testBookieShouldTurnWritableFromReadOnly (sijie)

        BOOKKEEPER-704: reconnectable zookeeper client wrapper (sijie via ivank)

        BOOKKEEPER-630: Add tag to o.a.b.net.* to indict which release of hadoop they came from, move DNS to o.a.b.net.* and indent (sijie via ivank)

	BOOKKEEPER-780: Findbug issue in trunk (ivank via fpj)

        BOOKKEEPER-777: Flake in LedgerCloseTest (ivank via fpj)

        BOOKKEEPER-718: AuditorLedgerCheckerTest is flakey (ivank via sijie)

        BOOKKEEPER-736: Stats for AutoRecovery (sijie)

	BOOKKEEPER-775: Improve MultipleThreadReadTest to reduce flakiness (sijie via fpj)

        BOOKKEEPER-783: Avoid running out of fds in MutlipleThreadReadTest (sijie via ivank)

        BOOKKEEPER-785: Fix javadoc warnings in trunk (ivank via sijie)

        BOOKKEEPER-784: BookKeeperCloseTest#testLedgerCheck is failing intermittently (ivank via sijie)

        BOOKKEEPER-782: Use builder pattern for Cookie (rakeshr via sijie)

        BOOKKEEPER-787: Modify Cookie by removing 'znodeVersion' state/field (rakeshr via ivank)

        BOOKKEEPER-773: Provide admin tool to rename bookie identifier in Cookies (rakeshr via ivank)

      bookkeeper-benchmark:

        BOOKKEEPER-768: fix typo 'seconds' to milliseconds in benchmark output (jialin via sijie)

        BOOKKEEPER-778: Flake in TestTryReadLastConfirmed (ivank via sijie)

      bookkeeper-stats-providers:

        BOOKKEEPER-779: jmx reporter for codahale metrics provider (ivank via sijie)

	BOOKKEEPER-786: Fix Findbugs Error In Codahale Stats Provider (sijie via fpj)

      hedwig-server:

        BOOKKEEPER-601: readahead cache size isn't updated correctly (sijie via fpj)

        BOOKKEEPER-607: Filtered Messages Require ACK from Client Causes User Being Throttled Incorrectly Forever (sijie via ivank)

        BOOKKEEPER-683: TestSubAfterCloseSub fails on 4.2 (jiannan via ivank)

        BOOKKEEPER-363: Re-distributing topics among newly added hubs. (aniruddha via ivank)

      hedwig-client:

        BOOKKEEPER-598: Fails to compile - RESUBSCRIBE_EXCEPTION conflict (Matthew Farrellee via sijie)

	BOOKKEEPER-600: shouldClaim flag isn't cleared for hedwig multiplex java client (sijie via fpj)

    IMPROVEMENTS:

      BOOKKEEPER-608: Make SyncThread a reusable component (ivank)

      BOOKKEEPER-555: Make BookieServer use Netty rather than a custom IO server (ivank)

      BOOKKEEPER-526: multiple threads for delivery manager (sijie via ivank)

      BOOKKEEPER-544: Modify hedwig server tests to allow client testcases to start/stop them as part of their tests (mridul via ivank)

      BOOKKEEPER-312: Implementation of JMS provider (mridul via ivank)

      BOOKKEEPER-556: BookieServerMXBean#getServerState makes no sense (ivank via sijie)

      BOOKKEEPER-574: Extend the bookkeeper shell to get a list of available bookies (ivank via umamahesh)

      BOOKKEEPER-576: Bookie client should use netty Decoder/Encoder (ivank via sijie)

      BOOKKEEPER-585: Auditor logs noisily when a ledger has been deleted (ivank via sijie)

      BOOKKEEPER-573: Script to start a bookkeeper cluster (ivank via sijie)

      BOOKKEEPER-557: Compiler error showing up badly with jdk 7 (ivank via sijie)

      BOOKKEEPER-583: Read from a ReadOnlyBookie fails if index fileinfo is not in ledger cache (vinay via sijie)

      BOOKKEEPER-611: Speed up bookkeeper tests (ivank via fpj)

      BOOKKEEPER-603: Support Boost 1.53 for Hedwig Cpp Client (jiannan via ivank)

      BOOKKEEPER-592: allow application to recommend ledger data locality (sijie via ivank)

      BOOKKEEPER-627: LedgerDirsMonitor is missing thread name (rakesh via fpj)

      BOOKKEEPER-618: Better resolution of bookie address (ivank via fpj)

      BOOKKEEPER-610: Make SyncThread use an executor (ivank via sijie)

      BOOKKEEPER-640: Log improvement - add shutdown/exit log message for the bookie services (rakesh via sijie)

      BOOKKEEPER-666: Naming threads of ExecutorService (rakesh via sijie)

      BOOKKEEPER-645: Bookkeeper shell command to get a list of readonly bookies (rakesh via sijie)

      BOOKKEEPER-658: ledger cache refactor (Robin Dhamankar via sijie)

      BOOKKEEPER-657: Journal Improvement (Robin Dhamankar via sijie)

      BOOKKEEPER-664: Compaction increases latency on journal writes (ivank via sijie)

      BOOKKEEPER-602: we should have request timeouts rather than channel timeout in PerChannelBookieClient (Aniruddha, ivank via sijie)

      BOOKKEEPER-698: Bookie client closure is not considering timeoutExecutor (rakesh via sijie)

      BOOKKEEPER-699: Codahale metrics implementation of stats API (ivank via sijie)

      BOOKKEEPER-701: Improve exception handling of Bookkeeper threads (rakesh via sijie)

      BOOKKEEPER-708: Shade protobuf library to avoid incompatible versions (rakesh, ivank via sijie)

      BOOKKEEPER-732: Add env variable ENTRY_FORMATTER_CLASS to the bkenv.sh (rakesh via sijie)

      BOOKKEEPER-731: Missing BOOKIE_PID_DIR and BOOKIE_STOP_TIMEOUT in env variables list (rakesh via sijie)

      BOOKKEEPER-747: Implement register/unregister LedgerMetadataListener in MSLedgerManagerFactory (fpj via sijie)

      BOOKKEEPER-739: Test timeouts mostly ignored (sijie via fpj)

      BOOKKEEPER-697: stats collection on bookkeeper server (sijie via fpj)

      BOOKKEEPER-781: Fix OOM on Hedwig Tests (sijie via fpj)

    NEW FEATURE:

      BOOKKEEPER-562: Ability to tell if a ledger is closed or not (fpj)

      BOOKKEEPER-257: Ability to list all ledgers (fpj via ivank)
  
      BOOKKEEPER-582: Make bookie and client use protobuf for requests (non-wire part)
      (sijie via fpj)

Release 4.2.0 - 2013-01-14

  Non-backward compatible changes:

    BUGFIXES:

    IMPROVEMENTS:

      bookkeeper-server:

        BOOKKEEPER-203: improve ledger manager interface to remove zookeeper dependency on metadata operations. (sijie via ivank)

        BOOKKEEPER-303: LedgerMetadata should serialized using protobufs (ivank)

      hedwig-client:

        BOOKKEEPER-339: Let hedwig cpp client support returning message seq id for publish requests. (sijie via ivank)

  Backward compatible changes:

    BUGFIXES:

      BOOKKEEPER-289: mvn clean doesn't remove test output files (sijie via ivank)

      BOOKKEEPER-298: We run with preferIPv4Stack in the scripts but not in the tests (ivank)

      BOOKKEEPER-292: Test backward compatibility automatically between versions. (ivank)

      BOOKKEEPER-352: Should not use static ServerStats/BKStats instance in TestServerStats/TestBKStats (sijie via fpj)

      BOOKKEEPER-338: Create Version.NEW and Version.ANY static instances of Version so that were not passing around nulls (sijie via ivank)

      BOOKKEEPER-32: Clean up LOG.debug statements (Stu Hood via sijie)

      BOOKKEEPER-484: Misc fixes for test scripts (ivank via fpj)

      BOOKKEEPER-483: precommit tests only check toplevel rat file, not the one for submodules. (ivank via fpj)

      BOOKKEEPER-533: TestSubAfterCloseSub fails strangely in tests (ivank via fpj)

      BOOKKEEPER-480: Fix javac warnings (ivank via sijie)

      BOOKKEEPER-481: Fix javadoc warnings (ivank via sijie)

      bookkeeper-server:

        BOOKKEEPER-183: Provide tools to read/check data files in bookie server (sijie via ivank)

        BOOKKEEPER-307: BookieShell introduces 4 findbugs warnings (ivank via sijie)

        BOOKKEEPER-322: New protobufs generates findbugs errors (ivank)

        BOOKKEEPER-280: LedgerHandle.addEntry() should return an entryId (mmerli via ivank)

        BOOKKEEPER-324: Flakeyness in LedgerCreateDeleteTest (ivank)

        BOOKKEEPER-318: Spelling mistake in MultiCallback log message. (surendra via sijie)

        BOOKKEEPER-296: It's better provide stop script for bookie (nijel via sijie)

        BOOKKEEPER-294: Not able to start the bookkeeper before the ZK session timeout. (rakeshr via ivank)

        BOOKKEEPER-327: System.currentTimeMillis usage in BookKeeper (uma via fpj)

        BOOKKEEPER-349: Entry logger should close all the chennels which are there in Map, instead of closing only current channel. (umamaheswararao via sijie)

        BOOKKEEPER-326: DeadLock during ledger recovery (rakeshr via ivank)

        BOOKKEEPER-372: Check service name in bookie start/stop script. (nijel via ivank)

        BOOKKEEPER-354: [BOOKKEEPER-296] [Documentation] Modify the bookkeeper start script and document the bookkeeper stop command in bookkeeperConfig.xml (Kiran BC via ivank)
 
        BOOKKEEPER-378: ReplicationWorker may not get ZK watcher notification on UnderReplication ledger lock deletion. (umamaheswararao & ivank via ivank)

        BOOKKEEPER-380: ZkLedgerUnderreplicationManager.markLedgerUnderreplicated() is adding duplicate missingReplicas while multiple bk failed for the same ledger (rakeshr via ivank)

        BOOKKEEPER-381: ReadLastConfirmedOp's Logger class name is wrong (surendra via sijie)

        BOOKKEEPER-382: space missed at concatenations in GarbageCollectorThread logging (Brahma via sijie)

        BOOKKEEPER-337: Add entry fails with MetadataVersionException when last ensemble has morethan one bookie failures (rakeshr via ivank)

        BOOKKEEPER-376: LedgerManagers should consider 'underreplication' node as a special Znode (Uma via sijie)

        BOOKKEEPER-384: Clean up LedgerManagerFactory and LedgerManager usage in tests (rakeshr via ivank)

        BOOKKEEPER-385: replicateLedgerFragment should throw Exceptions in error conditions (umamahesh via ivank)

        BOOKKEEPER-386: It should not be possible to replicate a ledger fragment which is at the end of an open ledger (ivank & umamahesh via ivank)

        BOOKKEEPER-395: HDFS dep transitively depends on a busted pom (Stu Hood via sijie)

        BOOKKEEPER-387: BookKeeper Upgrade is not working. (surendra via sijie)

        BOOKKEEPER-383: NPE in BookieJournalTest  (sijie via ivank)

        BOOKKEEPER-396: Compilation issue in TestClient.java of BenchMark ( showing this in eclipse) (umamahesh via sijie)

        BOOKKEEPER-403: ReReadMetadataCb is not executed in the thread responsible for that ledger (ivank)

        BOOKKEEPER-405: Let's add Thread name for ReplicationWorker thread. (umamahesh via ivank)

        BOOKKEEPER-418: Store hostname of locker in replication lock (ivank)

        BOOKKEEPER-417: Hierarchical zk underreplication manager should clean up its hierarchy when done to allow for fast acquisition of underreplicated entries (ivank)

        BOOKKEEPER-436: Journal#rollLog may leak file handler (umamahesh via ivank)

        BOOKKEEPER-424: Bookie start is failing intermittently when zkclient connection delays (rakeshr via ivank)

        BOOKKEEPER-416: LedgerChecker returns underreplicated fragments for an closed ledger with no entries (ivank)

        BOOKKEEPER-425: Cleanup Bookie id generation (ivank via fpj)

        BOOKKEEPER-430: Remove manual bookie registration from overview (fpj via ivank)

        BOOKKEEPER-466: ZooKeeper test utility sets the port number as the tickTime (ivank)

        BOOKKEEPER-460: LedgerDeleteTest checks wrong place for log file (Fangmin Lv via ivank)

        BOOKKEEPER-477: In ReadOnlyBookieTest, we should wait for the bookie to die before asserting on it (ivank via fpj)

        BOOKKEEPER-485: TestFencing hung (ivank via fpj)

        BOOKKEEPER-351: asyncAddEntry should not throw an exception (Matteo Merli via sijie)

        BOOKKEEPER-291: BKMBeanRegistry uses log4j directly (fpj via ivank)

        BOOKKEEPER-459: Rename metastore mock implementation to InMemory implementation (jiannan via ivank)

        BOOKKEEPER-347: Provide mechanism to detect r-o bookie by the bookie clients (Vinay via ivank)

        BOOKKEEPER-475: BookieRecoveryTest#testSyncBookieRecoveryToRandomBookiesCheckForDupes() iterates too much (ivank via fpj)

        BOOKKEEPER-431: Duplicate definition of COOKIES_NODE (uma via fpj)

        BOOKKEEPER-474:  BookieReadWriteTest#testShutdown doesn't make sense (ivank via fpj)

        BOOKKEEPER-465: CreateNewLog may overwrite lastLogId with smaller value (yixue, fpj via fpj)

        BOOKKEEPER-498: BookieRecoveryTest.tearDown NPE (fpj)

        BOOKKEEPER-497: GcLedgersTest has a potential race (ivank via sijie)

        BOOKKEEPER-493: moveLedgerIndexFile might have chance pickup same directory (sijie via ivank)

        BOOKKEEPER-365: Ledger will never recover if one of the quorum bookie is down forever and others dont have entry (sijie via ivank)

        BOOKKEEPER-336: bookie readEntries is taking more time if the ensemble has failed bookie(s) (ivank)

        BOOKKEEPER-512: BookieZkExpireTest fails periodically (ivank via sijie)

        BOOKKEEPER-509: TestBookKeeperPersistenceManager failed on latest trunk (sijie via ivank)

        BOOKKEEPER-496: Ensure that the auditor and replication worker will shutdown if they lose their ZK session (ivank)

        BOOKKEEPER-500: Fencing doesn't work when restarting bookies. (sijie via ivank)

        BOOKKEEPER-520: BookieFailureTest hangs on precommit build (ivank via sijie)

        BOOKKEEPER-447: Bookie can fail to recover if index pages flushed before ledger flush acknowledged (ivank via sijie)

        BOOKKEEPER-520: BookieFailureTest hangs on precommit build (sijie via fpj, jira reopened)

        BOOKKEEPER-514: TestDeadLock hanging sometimes (ivank, sijie via fpj)

        BOOKKEEPER-524: Bookie journal filesystem gets full after SyncThread is terminated with exception (Matteo, fpj via sijie)

        BOOKKEEPER-355: Ledger recovery will mark ledger as closed with -1, in case of slow bookie is added to ensemble during recovery add (ivank)

        BOOKKEEPER-534: Flakeyness in AuditorBookieTest (umamahesh via ivank)

        BOOKKEEPER-542: Remove trailing spaces in IndexCorruptionTest (fpj via ivank)

        BOOKKEEPER-530: data might be lost during compaction. (ivank)

        BOOKKEEPER-538: Race condition in BookKeeper#close (ivank via fpj)

        BOOKKEEPER-408: BookieReadWriteTest will enter the endless loop and will not leave out (ivank)

        BOOKKEEPER-504: Fix findbugs warning in PendingReadOp (fpj via ivank)

      hedwig-protocol:

        BOOKKEEPER-394: CompositeException message is not useful (Stu Hood via sijie)

        BOOKKEEPER-468: Remove <echo> from protobuf generation in hedwig (ivank)

      hedwig-client:

        BOOKKEEPER-274: Hedwig cpp client library should not link to cppunit which is just used for test. (sijie via ivank)

        BOOKKEEPER-320: Let hedwig cpp client could publish messages using Message object instead of string. (jiannan via ivank)

        BOOKKEEPER-371: NPE in hedwig hub client causes hedwig hub to shut down. (Aniruddha via sijie)

        BOOKKEEPER-392: Racey ConcurrentMap usage in java hedwig-client (Stu Hood via sijie)

        BOOKKEEPER-427: TestConcurrentTopicAcquisition hangs every so often (ivank)

        BOOKKEEPER-434: [Hedwig CPP Client] Delay resolving default host until necessary. (sijie via ivank)

        BOOKKEEPER-452: Rename ClientConfiguration multiplexing_enabled to subscription_connection_sharing_enabled (sijie via ivank)

        BOOKKEEPER-454: hedwig c++ tester script assumes sh is bash (ivank)

        BOOKKEEPER-470: Possible infinite loop in simple.SubscribeReconnectCallback (sijie via ivank)

        BOOKKEEPER-55: SubscribeReconnectRetryTask might retry subscription endlessly when another subscription is already successfully created previously (sijie via ivank)

        BOOKKEEPER-513: TestMessageFilter fails periodically (ivank)

      hedwig-server:

        BOOKKEEPER-302: No more messages delivered when hub server scans messages over two ledgers. (sijie via ivank)

        BOOKKEEPER-330: System.currentTimeMillis usage in Hedwig (uma via sijie)

        BOOKKEEPER-343: Failed to register hedwig JMX beans in test cases (sijie via ivank)

        BOOKKEEPER-259: Create a topic manager using versioned write for leader election (sijie via ivank)

        BOOKKEEPER-191: Hub server should change ledger to write, so consumed messages have chance to be garbage collected. (sijie via ivank)

        BOOKKEEPER-439: No more messages delivered after deleted consumed ledgers. (sijie via ivank)

        BOOKKEEPER-440: Make Write/Delete SubscriptionData Restricted to Version (Fangmin Lv via ivank)

        BOOKKEEPER-482: Precommit is reporting findbugs errors in trunk (ivank via sijie)

        BOOKKEEPER-442: Failed to deliver messages due to inconsistency between SubscriptionState and LedgerRanges. (jiannan via ivank)

        BOOKKEEPER-461: Delivery throughput degrades when there are lots of publishers w/ high traffic. (sijie via ivank)

	BOOKKEEPER-458:  Annoy BKReadException error when changing ledger. (jiannan via fpj)

        BOOKKEEPER-507: Race condition happens if closeSubscription and subscribe happened at the same time (in multiplexed client). (sijie via ivank)

	BOOKKEEPER-532: AbstractSubscriptionManager#AcquireOp read subscriptions every time even it already owned the topic. (sijie via fpj)

        BOOKKEEPER-531: Cache thread should wait until old entries are collected (sijie via ivank)

        BOOKKEEPER-529: stopServingSubscriber in delivery manager should remove stub callbacks in ReadAheadCache (sijie via ivank)

        BOOKKEEPER-543: Read zk host list in a wrong way in hedwig server (Fangmin via sijie)

        BOOKKEEPER-540: #stopServingSubscriber when channel is disconnected. (Fangmin via sijie)

        BOOKKEEPER-539: ClientNotSubscribedException & doesn't receive enough messages in TestThrottlingDelivery#testServerSideThrottle (sijie)

        BOOKKEEPER-503: The test case of TestThrottlingDelivery#testServerSideThrottle failed sometimes (jiannan & sijie via ivank)

    IMPROVEMENTS:

      BOOKKEEPER-467: Allocate ports for testing dynamically (ivank)

      BOOKKEEPER-471: Add scripts for preCommit testing (ivank)

      BOOKKEEPER-476: Log to file during tests (ivank via fpj)

      BOOKKEEPER-491: Hedwig doc for configuration (fpj, sijie via fpj)

      BOOKKEEPER-495: Revise BK config doc (fpj, ivank via fpj)

      BOOKKEEPER-523: Every test should have a timeout (ivank, sijie via fpj)

      BOOKKEEPER-541: Add guava to notice file (ivank via fpj)

      bookkeeper-server:

        BOOKKEEPER-328: Bookie DeathWatcher is missing thread name (Rakesh via sijie)

        BOOKKEEPER-2: bookkeeper does not put enough meta-data in to do recovery properly (ivank via sijie)

        BOOKKEEPER-317: Exceptions for replication (ivank via sijie)

        BOOKKEEPER-246: Recording of underreplication of ledger entries (ivank)

        BOOKKEEPER-247: Detection of under replication (ivank)

        BOOKKEEPER-299: Provide LedgerFragmentReplicator which should replicate the fragments found from LedgerChecker (umamahesh via ivank)

        BOOKKEEPER-248: Rereplicating of under replicated data (umamahesh via ivank)

        BOOKKEEPER-304: Prepare bookie vs ledgers cache and will be used by the Auditor (rakeshr via ivank)

        BOOKKEEPER-272: Provide automatic mechanism to know bookie failures (rakeshr via ivank)

        BOOKKEEPER-300: Create Bookie format command (Vinay via sijie)

        BOOKKEEPER-208: Separate write quorum from ack quorum (ivank)

        BOOKKEEPER-325: Delay the replication of a ledger if RW found that its last fragment is in underReplication. (umamahesh via ivank)

        BOOKKEEPER-388: Document bookie format command (kiran_bc via ivank)

        BOOKKEEPER-278: Ability to disable auto recovery temporarily (rakeshr via ivank)

        BOOKKEEPER-319: Manage auditing and replication processes (Vinay via ivank)

        BOOKKEEPER-315: Ledger entries should be replicated sequentially instead of parallel. (umamahesh via ivank)

        BOOKKEEPER-345: Detect IOExceptions on entrylogger and bookie should consider next ledger dir(if any) (Vinay via ivank)

        BOOKKEEPER-346: Detect IOExceptions in LedgerCache and bookie should look at next ledger dir(if any) (Vinay via ivank)

        BOOKKEEPER-444: Refactor pending read op to make speculative reads possible (ivank)

        BOOKKEEPER-204: Provide a MetaStore interface, and a mock implementation. (Jiannan Wang via ivank)

	BOOKKEEPER-469: Remove System.out.println from TestLedgerManager (ivank via fpj)

        BOOKKEEPER-205: implement a MetaStore based ledger manager for bookkeeper client. (jiannan via ivank)

        BOOKKEEPER-426: Make auditor Vote znode store a protobuf containing the host that voted (ivank)

	BOOKKEEPER-428: Expose command options in bookie scripts to disable/enable auto recovery temporarily (rakesh,ivank via fpj)

        BOOKKEEPER-511: BookieShell is very noisy (ivank via sijie)

        BOOKKEEPER-375: Document about Auto replication service in BK (umamahesh via ivank)

        BOOKKEEPER-490: add documentation for MetaStore interface (sijie, ivank via sijie)

        BOOKKEEPER-463: Refactor garbage collection code for ease to plugin different GC algorithm. (Fangmin, ivank, fpj via sijie)

        BOOKKEEPER-409: Integration Test - Perform bookie rereplication cycle by Auditor-RW processes (rakeshr via ivank)

        BOOKKEEPER-293: Periodic checking of ledger replication status (ivank)

        BOOKKEEPER-472: Provide an option to start Autorecovery along with Bookie Servers (umamahesh via ivank)

        BOOKKEEPER-341: add documentation for bookkeeper ledger manager interface. (sijie via ivank)

      hedwig-server:

        BOOKKEEPER-250: Need a ledger manager like interface to manage metadata operations in Hedwig (sijie via ivank)

        BOOKKEEPER-329: provide stop scripts for hub server (sijie via ivank)

        BOOKKEEPER-331: Let hedwig support returning message seq id for publish requests. (Mridul via sijie)

        BOOKKEEPER-340: Test backward compatibility for hedwig between different versions. (sijie via ivank)

        BOOKKEEPER-283: Improve Hedwig Console to use Hedwig Metadata Manager. (sijie via ivank)

        BOOKKEEPER-332: Add SubscriptionPreferences to record all preferences for a subscription (sijie via ivank)

        BOOKKEEPER-333: server-side message filter (sijie via ivank)

        BOOKKEEPER-252: Hedwig: provide a subscription mode to kill other subscription channel when hedwig client is used as a proxy-style server. (sijie via ivank)

        BOOKKEEPER-397: Make the hedwig client in RegionManager configurable. (Aniruddha via sijie)

        BOOKKEEPER-367: Server-Side Message Delivery Flow Control (sijie via ivank)

        BOOKKEEPER-415: Rename DeliveryThrottle to MessageWindowSize (ivank via sijie)

	BOOKKEEPER-422: Simplify AbstractSubscriptionManager (stu via fpj)

        BOOKKEEPER-435: Create SubscriptionChannelManager to manage all subscription channel (sijie via ivank)

        BOOKKEEPER-411: Add CloseSubscription Request for multiplexing support (sijie via ivank)

        BOOKKEEPER-441: InMemorySubscriptionManager should back up top2sub2seq before change it (Yixue via ivank)

	BOOKKEEPER-479: Fix apache-rat issues in tree (ivank via fpj)

        BOOKKEEPER-457: Create a format command for Hedwig to cleanup its metadata. (sijie via ivank)

        BOOKKEEPER-487: Add existed hub server settings to configuration template file (sijie via ivank)

        BOOKKEEPER-389: add documentation for message filter. (sijie via ivank)

	BOOKKEEPER-399: Let hub server configure write quorum from ack quorum. (sijie via fpj)

        BOOKKEEPER-342: add documentation for hedwig metadata manager interface. (sijie, ivank via sijie)

        BOOKKEEPER-522: TestHedwigHub is failing silently on Jenkins (ivank via sijie)

        BOOKKEEPER-262: Implement a meta store based hedwig metadata manager. (jiannan via ivank)

        BOOKKEEPER-310: Changes in hedwig server to support JMS spec (ivank via sijie)

      hedwig-client:

        BOOKKEEPER-306: Change C++ client to use gtest for testing (ivank via sijie)

        BOOKKEEPER-334: client-side message filter for java client. (sijie via ivank)

        BOOKKEEPER-335: client-side message filter for cpp client. (sijie via ivank)

        BOOKKEEPER-364: re-factor hedwig java client to support both one-subscription-per-channel and multiplex-subscriptions-per-channel. (sijie via ivank)

        BOOKKEEPER-143: Add SSL support for hedwig cpp client (sijie via ivank)

        BOOKKEEPER-413: Hedwig C++ client: Rename RUN_AS_SSL_MODE to SSL_ENABLED (ivank via sijie)

        BOOKKEEPER-369: re-factor hedwig cpp client to provide better interface to support both one-subscription-per-channel and multiple-subscriptions-per-channel. (sijie via ivank)

        BOOKKEEPER-368: Implementing multiplexing java client. (sijie via ivank)

        BOOKKEEPER-370: implement multiplexing cpp client. (sijie via ivank)

        BOOKKEEPER-453: Extract commonality from MultiplexSubscribeResponseHandler and SimpleSubscribeResponseHandler and put into an abstract class  (sijie via ivank)

        BOOKKEEPER-404: Deprecate non-SubscriptionOptions Subscriber Apis (ivank via sijie)

Release 4.1.0 - 2012-06-07

  Non-backward compatible changes:

    BUGFIXES:

    IMPROVEMENTS:

  Backward compatible changes:

    BUGFIXES:

      BOOKKEEPER-145: Put notice and license file for distributed binaries in SVN (ivank)

      BOOKKEEPER-254: Bump zookeeper version in poms (ivank)

      BOOKKEEPER-72: Fix warnings issued by FindBugs (ivank)

      BOOKKEEPER-238: Add log4j.properties in conf/ for bin packages (ivank)

      bookkeeper-server/

        BOOKKEEPER-142: Parsing last log id is wrong, which may make entry log files overwritten (Sijie Gou via ivank)

        BOOKKEEPER-141: Run extracting ledger id from entry log files in GC thread to speed up bookie restart (Sijie Gou via ivank)

        BOOKKEEPER-148: Jenkins build is failing (ivank via fpj)

        BOOKKEEPER-40: BookieClientTest fails intermittantly (fpj via ivank)

	BOOKKEEPER-150: Entry is lost when recovering a ledger with not enough bookies. (Sijie Guo via ivank)

        BOOKKEEPER-153: Ledger can't be opened or closed due to zero-length metadata (Sijie Guo via ivank)

        BOOKKEEPER-23: Timeout requests (ivank)

        BOOKKEEPER-161: PerChannelBookieClient tries to reuse HashedWheelTimer, throws Exception (ivank)

        BOOKKEEPER-167: PerChannelBookieClient doesn't use ClientConfiguration (Sijie Guo via ivank)

        BOOKKEEPER-156: BookieJournalRollingTest failing (Sijie Guo via ivank)

	BOOKKEEPER-162: LedgerHandle.readLastConfirmed does not work (fpj)

        BOOKKEEPER-152: Can't recover a ledger whose current ensemble contain failed bookie. (ivank)

        BOOKKEEPER-171: ServerConfiguration can't use more than one directory for ledgers. (ivank via sijie)
	
	BOOKKEEPER-170: Bookie constructor starts a number of threads. (ivank via fpj)

        BOOKKEEPER-169: bookie hangs on reading header when encountering partial header index file (sijie via ivank)

        BOOKKEEPER-174: Bookie can't start when replaying entries whose ledger were deleted and garbage collected. (sijie via ivank)

        BOOKKEEPER-177: Index file is lost or some index pages aren't flushed. (sijie via ivank)

        BOOKKEEPER-113: NPE In BookKeeper test (fpj via ivank)

	BOOKKEEPER-176: HierarchicalBookieFailureTest Hung (ivank via fpj)

        BOOKKEEPER-180: bookie server doesn't quit when running out of disk space (sijie via ivank)

        BOOKKEEPER-185: Remove bookkeeper-server dependency on hadoop-common (ivank)

        BOOKKEEPER-184: CompactionTest failing on Jenkins (sijie via ivank)

        BOOKKEEPER-182: Entry log file is overwritten when fail to read lastLogId. (sijie via ivank)

        BOOKKEEPER-186: Bookkeeper throttling - permits is not released when read has failed from all replicas (Rakesh R via sijie)

        BOOKKEEPER-189: AbstractZkLedgerManager doesn't disregard cookies (ivank via sijie)

        BOOKKEEPER-195: HierarchicalLedgerManager doesn't consider idgen as a "specialNode" (ivank)

        BOOKKEEPER-190: Add entries would fail when number of open ledgers reaches more than openFileLimit. (sijie via ivank)

        BOOKKEEPER-194: Get correct latency for addEntry operations for JMX. (sijie via ivank)

        BOOKKEEPER-166: Bookie will not recover its journal if the length prefix of an entry is truncated (ivank)

        BOOKKEEPER-193: Ledger is garbage collected by mistake. (sijie, ivank via sijie)

        BOOKKEEPER-198: replaying entries of deleted ledgers would exhaust ledger cache. (sijie)

        BOOKKEEPER-112: Bookie Recovery on an open ledger will cause LedgerHandle#close on that ledger to fail (sijie)

        BOOKKEEPER-135: Fencing does not check the ledger masterPasswd (ivank)

	BOOKKEEPER-212: Bookie stops responding when creating and deleting many ledgers (sijie via fpj)

        BOOKKEEPER-211: Bookie fails to to start (sijie)

	BOOKKEEPER-200: Fix format and comments (fpj)

        BOOKKEEPER-216: Bookie doesn't exit with right exit code (sijie via ivank)

        BOOKKEEPER-196: Define interface between bookie and ledger storage (ivank)

        BOOKKEEPER-213: PerChannelBookieClient calls the wrong errorOut function when encountering an exception (Aniruddha via sijie)

        BOOKKEEPER-231: ZKUtil.killServer not closing the FileTxnSnapLog from ZK. (Uma Maheswara Rao G via sijie)

        BOOKKEEPER-232: AsyncBK tests failing (umamaheswararao via ivank)

	BOOKKEEPER-229: Deleted entry log files would be garbage collected again and again. (sijie via fpj)

        BOOKKEEPER-242: Bookkeeper not able to connect other zookeeper when shutdown the zookeeper server where the BK has connected. (sijie & rakeshr via ivank)

        BOOKKEEPER-234: EntryLogger will throw NPE, if any dir does not exist or IO Errors. (umamaheswararao via ivank)

	BOOKKEEPER-235: Bad syncing in entrylogger degrades performance for many concurrent ledgers (ivank via fpj)

        BOOKKEEPER-224: Fix findbugs in bookkeeper-server component (ivank)

        BOOKKEEPER-251: Noise error message printed when scanning entry log files those have been garbage collected. (sijie via ivank)

        BOOKKEEPER-266: Review versioning documentation (ivank)

        BOOKKEEPER-258: CompactionTest failed (ivank via sijie)

        BOOKKEEPER-273: LedgerHandle.deleteLedger() should be idempotent (Matteo Merli via ivank)

        BOOKKEEPER-281: BKClient is failing when zkclient connection delays (ivank via sijie)

        BOOKKEEPER-279: LocalBookKeeper is failing intermittently due to zkclient connection establishment delay (Rakesh R via sijie)

        BOOKKEEPER-286: Compilation warning (ivank via sijie)

        BOOKKEEPER-287: NoSuchElementException in LedgerCacheImpl (sijie)

        BOOKKEEPER-288: NOTICE files don't have the correct year (ivank via sijie)

      hedwig-client/

        BOOKKEEPER-217: NPE in hedwig client when enable DEBUG (sijie via ivank)

      hedwig-server/
      
        BOOKKEEPER-140: Hub server doesn't subscribe remote region correctly when a region is down. (Sijie Gou via ivank)

        BOOKKEEPER-133: Hub server should update subscription state to zookeeper when losing topic or shutting down (Sijie Gou via ivank)

        BOOKKEEPER-74: Bookkeeper Persistence Manager should give up topic on error (sijie via ivank)

        BOOKKEEPER-163: Prevent incorrect NoSuchLedgerException for readLastConfirmed. (ivank via sijie)

        BOOKKEEPER-197: HedwigConsole uses the same file to load bookkeeper client config and hub server config (sijie)

        BOOKKEEPER-56: Race condition of message handler in connection recovery in Hedwig client (sijie & Gavin Li via ivank)

        BOOKKEEPER-215: Deadlock occurs under high load (sijie via ivank)

        BOOKKEEPER-245: Intermittent failures in PersistanceManager tests (ivank)

        BOOKKEEPER-209: Typo in ServerConfiguration for READAHEAD_ENABLED (ivank)

        BOOKKEEPER-146: TestConcurrentTopicAcquisition sometimes hangs (ivank)

        BOOKKEEPER-285: TestZkSubscriptionManager quits due to NPE, so other tests are not run in hedwig server. (sijie)

      bookkeeper-benchmark/
	
	BOOKKEEPER-207: BenchBookie doesn't run correctly (ivank via fpj)

        BOOKKEEPER-228: Fix the bugs in BK benchmark (umamaheswararao via ivank)

    IMPROVEMENTS:

	BOOKKEEPER-265: Review JMX documentation (sijie via fpj)

      bookkeeper-server/

        BOOKKEEPER-95: extends zookeeper JMX to monitor and manage bookie server (Sijie Guo via ivank)

        BOOKKEEPER-98: collect add/read statistics on bookie server (Sijie Guo via ivank)

	BOOKKEEPER-157:	For small packets, increasing number of bookies actually degrades performance. (ivank via fpj)

        BOOKKEEPER-165: Add versioning support for journal files (ivank)

        BOOKKEEPER-137: Do not create Ledger index files until absolutely necessary. (ivank)

	BOOKKEEPER-172: Upgrade framework for filesystem layouts (ivank via fpj)

        BOOKKEEPER-178: Delay ledger directory creation until the ledger index file was created (sijie via ivank)

        BOOKKEEPER-160: bookie server needs to do compaction over entry log files to reclaim disk space (sijie via ivank)

        BOOKKEEPER-187: Create well defined interface for LedgerCache (ivank)

        BOOKKEEPER-175: Bookie code is very coupled (ivank)

        BOOKKEEPER-188: Garbage collection code is in the wrong place (ivank via sijie)

        BOOKKEEPER-218: Provide journal manager to manage journal related operations (sijie)

	BOOKKEEPER-173: Uncontrolled number of threads in bookkeeper (sijie via fpj)

	BOOKKEEPER-241: Add documentation for bookie entry log compaction (sijie via fpj)

	BOOKKEEPER-263: ZK ledgers root path is hard coded (Aniruddha via sijie)

	BOOKKEEPER-260: Define constant for -1 (invalid entry id) (ivank via fpj)

	BOOKKEEPER-270: Review documentation on bookie cookie (ivank via fpj)

      hedwig-server/

        BOOKKEEPER-77: Add a console client for hedwig (Sijie Guo via ivank)

        BOOKKEEPER-168: Message bounding on subscriptions (ivank)

        BOOKKEEPER-96: extends zookeeper JMX to monitor and manage hedwig server (sijie via ivank)

        BOOKKEEPER-97: collect pub/sub/consume statistics on hub server (sijie via ivank)

	BOOKKEEPER-269: Review documentation for hedwig console client (sijie via fpj)

      hedwig-client/

	BOOKKEEPER-271: Review documentation for message bounding (ivank via fpj)

      bookkeeper-benchmark/
	BOOKKEEPER-158: Move latest benchmarking code into trunk (ivank via fpj)

	BOOKKEEPER-236: Benchmarking improvements from latest round of benchmarking (ivank via fpj)

Release 4.0.0 - 2011-11-30

  Non-backward compatible changes:

    BUGFIXES:

      BOOKKEEPER-89: Bookkeeper API changes for initial Bookkeeper release (ivank)

      BOOKKEEPER-108: add configuration support for BK (Sijie via ivank)

      BOOKKEEPER-90: Hedwig API changes for initial Bookkeeper release (ivank via fpj)

  Backward compatible changes:

    BUGFIXES:

      BOOKKEEPER-124: build has RAT failures (ivank)

      BOOKKEEPER-121: Review Hedwig client documentation (breed via ivank)

      BOOKKEEPER-127: Make poms use official zookeeper 3.4.0 (ivank)

      BOOKKEEPER-120: Review BookKeeper client documentation (ivank)
 
      BOOKKEEPER-122: Review BookKeeper server documentation (fpj & ivank)
 
      BOOKKEEPER-66: use IPv4 for builds (mmorel via ivank)

      BOOKKEEPER-132: Sign artifacts before deploying to maven (ivank)

      BOOKKEEPER-131: Fix zookeeper test dependency (ivank)

      BOOKKEEPER-134: Delete superfluous lib directories (ivank)

      BOOKKEEPER-138: NOTICE.txt is invalid (ivank)

      BOOKKEEPER-139: Binary packages do not carry NOTICE.txt (ivank)

      bookkeeper-server/

        BOOKKEEPER-1: Static variable makes tests fail (fpj via ivank)

        BOOKKEEPER-19: BookKeeper doesn't support more than 2Gig of memory (ivan via fpj)

        BOOKEEPER-22: Exception in LedgerCache causes addEntry request to fail (fpj via fpj)

        BOOKEEPER-5: Issue with Netty in BookKeeper (fpj and ivank via fpj)

        BOOKKEEPER-30: Test are too noisy (ivank via fpj)

        BOOKKEEPER-11: Read from open ledger (fpj via ivank)

        BOOKKEEPER-27: mvn site failed with unresolved dependencies (ivank via fpj)
  
        BOOKKEEPER-29: BookieRecoveryTest fails intermittently (fpj via ivank)

        BOOKKEEPER-33: Add length and offset parameter to addEntry (ivank via fpj)

        BOOKKEEPER-29: BookieRecoveryTest fails intermittently (ivank, fpj via fpj)

        BOOKKEEPER-38: Bookie Server doesn't exit when its zookeeper session is expired. So the process is hang there. (Sijie Guo via breed)

        BOOKKEEPER-58: Changes introduced in BK-38 cause BookieClientTest to hang indefinitely. (ivank)

        BOOKKEEPER-18: maven build is unstable (mmorel, ivank via ivank)

        BOOKKEEPER-57: NullPointException at bookie.zk@EntryLogger (xulei via ivank)

        BOOKKEEPER-59: Race condition in netty code allocates and orphans resources (BK-5 revisited) (ivank via fpj)
  
        BOOKKEEPER-68: Conditional setData (fpj via ivank)

        BOOKKEEPER-86: bookkeeper-benchmark fails to compile after BOOKKEEPER-68 (ivank via breed)

        BOOKKEEPER-61: BufferedChannel read endless when the remaining bytes of file is less than the capacity of read buffer (Sijie Guo via breed)

        BOOKKEEPER-84: Add versioning for ZK metadata (ivank via breed)

        BOOKKEEPER-92: using wrong context object in readLastConfirmedComplete callback (Sijie Guo via ivank)
 
        BOOKKEEPER-94: Double callbacks in readLastConfirmedOp which fails readLastConfirmed operation even received enough valid responses. (Sijie Guo via ivank)

        BOOKKEEPER-83: Added versioning and flags to the bookie protocol (ivank)

        BOOKKEEPER-93: bookkeeper doesn't work correctly on OpenLedgerNoRecovery (Sijie Guo via ivank)

        BOOKKEEPER-103: ledgerId and entryId is parsed wrong when addEntry (Sijie Guo via ivank)

        BOOKKEEPER-50: NullPointException at LedgerDescriptor#cmpMasterKey (Sijie Guo via ivank)

        BOOKKEEPER-82: support journal rolling (Sijie Guo via fpj)

        BOOKKEEPER-106: recoveryBookieData can select a recovery bookie which is already in the ledgers ensemble (ivank via fpj)

        BOOKKEEPER-101: Add Fencing to Bookkeeper (ivank)

        BOOKKEEPER-104: Add versioning between bookie and its filesystem layout (ivank)

        BOOKKEEPER-81: disk space of garbage collected entry logger files isn't reclaimed util process quit (Sijie Guo via fpj)

        BOOKKEEPER-91: Bookkeeper and hedwig clients should not use log4j directly (ivank via fpj)

        BOOKKEEPER-115: LocalBookKeeper fails after BOOKKEEPER-108 (ivank)

        BOOKKEEPER-114: add a shutdown hook to shut down bookie server safely. (Sijie via ivank)

        BOOKKEEPER-39: Bookie server failed to restart because of too many ledgers (more than ~50,000 ledgers) (Sijie via ivank)

        BOOKKEEPER-125: log4j still used in some places (ivank)

        BOOKKEEPER-62: Bookie can not start when encountering corrupted records (breed via ivank)

        BOOKKEEPER-111: Document bookie recovery feature (ivank)

        BOOKKEEPER-129: ZK_TIMEOUT typo in client/server configuration (Sijie via ivank)

        BOOKKEEPER-22: Exception in LedgerCache causes addEntry request to fail (fpj via fpj)

        BOOKKEEPER-5: Issue with Netty in BookKeeper (fpj and ivank via fpj)

      hedwig-server/

        BOOKKEEPER-43: NullPointException when releasing topic (Sijie Guo via breed)
  
        BOOKKEEPER-51: NullPointException at FIFODeliveryManager#deliveryPtrs (xulei via ivank)

        BOOKKEEPER-63: Hedwig PubSubServer must wait for its Zookeeper client to be connected upon startup (mmorel via ivank)

        BOOKKEEPER-100: Some hedwig tests have build errors (dferro via ivank)

        BOOKKEEPER-69: ServerRedirectLoopException when a machine (hosts bookie server & hub server) reboot, which is caused by race condition of topic manager (Sijie, ivank via ivank)

      hedwig-client/
 
        BOOKKEEPER-52: Message sequence confuse due to the subscribeMsgQueue@SubscribeResponseHandler (xulei via ivank)

        BOOKKEEPER-88: derby doesn't like - in the topic names (breed via ivank)

        BOOKKEEPER-71: hedwig c++ client does not build . (ivank)

        BOOKKEEPER-107: memory leak in HostAddress of hedwig c++ client (Sijie Guo via ivank)
 
        BOOKKEEPER-80: subscription msg queue race condition in hedwig c++ client (Sijie Guo via ivank)

        BOOKKEEPER-87: TestHedwigHub exhausts direct buffer memory with netty 3.2.4.Final (ivank via fpj)  

        BOOKKEEPER-79: randomly startDelivery/stopDelivery will core dump in c++ hedwig client (Sijie Guo via ivank)

        BOOKKEEPER-118: Hedwig client doesn't kill and remove old subscription channel after redirection. (Sijie Guo via ivank)

        BOOKKEEPER-117: Support multi threads in hedwig cpp client to leverage multi-core hardware (Sijie Guo via ivank)

        BOOKKEEPER-53: race condition of outstandingMsgSet@SubscribeResponseHandler (fpj via breed)

    IMPROVEMENTS:

      BOOKKEEPER-28: Create useful startup scripts for bookkeeper and hedwig (ivank)

      BOOKKEEPER-26: Indentation is all messed up in the BookKeeper code (ivank via fpj)

      BOOKKEEPER-41: Generation of packages for distribution (ivank via fpj)

      BOOKKEEPER-65: fix dependencies on incompatible versions of netty (mmorel via ivank)

      BOOKKEEPER-102: Make bookkeeper use ZK from temporary repo (ivank)

      BOOKKEEPER-128: pom and script modifications required for generating release packages (ivank)

      hedwig-client/

        BOOKKEEPER-44: Reuse publish channel to default server to avoid too many connect requests to default server when lots of producers came in same time (Sijie Guo via breed)

        BOOKKEEPER-109: Add documentation to describe how bookies flushes data (Sijie Guo via fpj)

        BOOKKEEPER-119: Keys in configuration have inconsistent style (ivank via fpj)

