ZooKeeper_branch34_solaris - Build # 576 - Still Failing

2013-07-02 Thread Apache Jenkins Server
See https://builds.apache.org/job/ZooKeeper_branch34_solaris/576/

###
## LAST 60 LINES OF THE CONSOLE 
###
[...truncated 1171 lines...]
[junit] 2013-07-02 07:36:04,371 [myid:] - INFO  
[main:JUnit4ZKTestRunner$LoggedInvokeMethod@57] - FINISHED TEST METHOD 
testSingleSerialize
[junit] 2013-07-02 07:36:04,371 [myid:] - INFO  [main:ZKTestCase$1@60] - 
SUCCEEDED testSingleSerialize
[junit] 2013-07-02 07:36:04,371 [myid:] - INFO  [main:ZKTestCase$1@55] - 
FINISHED testSingleSerialize
[junit] 2013-07-02 07:36:04,375 [myid:] - INFO  [main:ZKTestCase$1@50] - 
STARTING testWideSerialize
[junit] 2013-07-02 07:36:04,375 [myid:] - INFO  
[main:JUnit4ZKTestRunner$LoggedInvokeMethod@50] - RUNNING TEST METHOD 
testWideSerialize
[junit] 2013-07-02 07:36:04,987 [myid:] - INFO  
[main:SerializationPerfTest@73] - Serialized 10005 nodes in 156 ms (15us/node), 
depth=2 width=1 datalen=20
[junit] 2013-07-02 07:36:04,988 [myid:] - INFO  
[main:JUnit4ZKTestRunner$LoggedInvokeMethod@57] - FINISHED TEST METHOD 
testWideSerialize
[junit] 2013-07-02 07:36:04,988 [myid:] - INFO  [main:ZKTestCase$1@60] - 
SUCCEEDED testWideSerialize
[junit] 2013-07-02 07:36:04,988 [myid:] - INFO  [main:ZKTestCase$1@55] - 
FINISHED testWideSerialize
[junit] 2013-07-02 07:36:04,989 [myid:] - INFO  [main:ZKTestCase$1@50] - 
STARTING testDeepSerialize
[junit] 2013-07-02 07:36:04,989 [myid:] - INFO  
[main:JUnit4ZKTestRunner$LoggedInvokeMethod@50] - RUNNING TEST METHOD 
testDeepSerialize
[junit] 2013-07-02 07:36:05,183 [myid:] - INFO  
[main:SerializationPerfTest@73] - Serialized 404 nodes in 9 ms (22us/node), 
depth=400 width=1 datalen=20
[junit] 2013-07-02 07:36:05,183 [myid:] - INFO  
[main:JUnit4ZKTestRunner$LoggedInvokeMethod@57] - FINISHED TEST METHOD 
testDeepSerialize
[junit] 2013-07-02 07:36:05,185 [myid:] - INFO  [main:ZKTestCase$1@60] - 
SUCCEEDED testDeepSerialize
[junit] 2013-07-02 07:36:05,185 [myid:] - INFO  [main:ZKTestCase$1@55] - 
FINISHED testDeepSerialize
[junit] 2013-07-02 07:36:05,186 [myid:] - INFO  [main:ZKTestCase$1@50] - 
STARTING test10Wide5DeepSerialize
[junit] 2013-07-02 07:36:05,186 [myid:] - INFO  
[main:JUnit4ZKTestRunner$LoggedInvokeMethod@50] - RUNNING TEST METHOD 
test10Wide5DeepSerialize
[junit] 2013-07-02 07:36:05,420 [myid:] - INFO  
[main:SerializationPerfTest@73] - Serialized 5 nodes in 55 ms (5us/node), 
depth=5 width=10 datalen=20
[junit] 2013-07-02 07:36:05,420 [myid:] - INFO  
[main:JUnit4ZKTestRunner$LoggedInvokeMethod@57] - FINISHED TEST METHOD 
test10Wide5DeepSerialize
[junit] 2013-07-02 07:36:05,420 [myid:] - INFO  [main:ZKTestCase$1@60] - 
SUCCEEDED test10Wide5DeepSerialize
[junit] 2013-07-02 07:36:05,420 [myid:] - INFO  [main:ZKTestCase$1@55] - 
FINISHED test10Wide5DeepSerialize
[junit] 2013-07-02 07:36:05,421 [myid:] - INFO  [main:ZKTestCase$1@50] - 
STARTING test15Wide5DeepSerialize
[junit] 2013-07-02 07:36:05,421 [myid:] - INFO  
[main:JUnit4ZKTestRunner$LoggedInvokeMethod@50] - RUNNING TEST METHOD 
test15Wide5DeepSerialize
[junit] 2013-07-02 07:36:06,469 [myid:] - INFO  
[main:SerializationPerfTest@73] - Serialized 54245 nodes in 118 ms (2us/node), 
depth=5 width=15 datalen=20
[junit] 2013-07-02 07:36:06,469 [myid:] - INFO  
[main:JUnit4ZKTestRunner$LoggedInvokeMethod@57] - FINISHED TEST METHOD 
test15Wide5DeepSerialize
[junit] 2013-07-02 07:36:06,469 [myid:] - INFO  [main:ZKTestCase$1@60] - 
SUCCEEDED test15Wide5DeepSerialize
[junit] 2013-07-02 07:36:06,469 [myid:] - INFO  [main:ZKTestCase$1@55] - 
FINISHED test15Wide5DeepSerialize
[junit] 2013-07-02 07:36:06,470 [myid:] - INFO  [main:ZKTestCase$1@50] - 
STARTING test25Wide4DeepSerialize
[junit] 2013-07-02 07:36:06,470 [myid:] - INFO  
[main:JUnit4ZKTestRunner$LoggedInvokeMethod@50] - RUNNING TEST METHOD 
test25Wide4DeepSerialize
[junit] 2013-07-02 07:36:06,709 [myid:] - INFO  
[main:SerializationPerfTest@73] - Serialized 16280 nodes in 16 ms (1us/node), 
depth=4 width=25 datalen=20
[junit] 2013-07-02 07:36:06,709 [myid:] - INFO  
[main:JUnit4ZKTestRunner$LoggedInvokeMethod@57] - FINISHED TEST METHOD 
test25Wide4DeepSerialize
[junit] 2013-07-02 07:36:06,710 [myid:] - INFO  [main:ZKTestCase$1@60] - 
SUCCEEDED test25Wide4DeepSerialize
[junit] 2013-07-02 07:36:06,710 [myid:] - INFO  [main:ZKTestCase$1@55] - 
FINISHED test25Wide4DeepSerialize
[junit] 2013-07-02 07:36:06,710 [myid:] - INFO  [main:ZKTestCase$1@50] - 
STARTING test40Wide4DeepSerialize
[junit] 2013-07-02 07:36:06,710 [myid:] - INFO  
[main:JUnit4ZKTestRunner$LoggedInvokeMethod@50] - RUNNING TEST METHOD 
test40Wide4DeepSerialize
[junit] 2013-07-02 07:36:07,460 [myid:] - INFO  
[main:SerializationPerfTest@73] - Serialized 65645 nodes in 78 ms (1us/node), 
depth=4 width=40 datalen=20
[junit] 2013-07-02 07:36:07,460 

ZooKeeper-trunk-WinVS2008 - Build # 914 - Still Failing

2013-07-02 Thread Apache Jenkins Server
See https://builds.apache.org/job/ZooKeeper-trunk-WinVS2008/914/

###
## LAST 60 LINES OF THE CONSOLE 
###
[...truncated 515 lines...]
  .\src\cli.c(402): error C2065: 'p' : undeclared identifier
  .\src\cli.c(403): error C2065: 'p' : undeclared identifier
  .\src\cli.c(404): error C2065: 'p' : undeclared identifier
  .\src\cli.c(405): error C2065: 'mode' : undeclared identifier
  .\src\cli.c(405): error C2065: 'p' : undeclared identifier
  .\src\cli.c(406): error C2065: 'syntaxError' : undeclared identifier
  .\src\cli.c(409): error C2065: 'mode' : undeclared identifier
  .\src\cli.c(410): error C2275: 'FILE' : illegal use of this type as an 
expression
  .\src\cli.c(410): error C2065: 'fp' : undeclared identifier
  .\src\cli.c(410): error C2065: 'p' : undeclared identifier
  .\src\cli.c(411): error C2065: 'fp' : undeclared identifier
  .\src\cli.c(412): error C2065: 'p' : undeclared identifier
  .\src\cli.c(413): error C2065: 'syntaxError' : undeclared identifier
  .\src\cli.c(416): error C2065: 'fp' : undeclared identifier
  .\src\cli.c(417): error C2065: 'members_size' : undeclared identifier
  .\src\cli.c(417): error C2065: 'fp' : undeclared identifier
  .\src\cli.c(418): error C2065: 'fp' : undeclared identifier
  .\src\cli.c(419): error C2065: 'members' : undeclared identifier
  .\src\cli.c(419): error C2065: 'members_size' : undeclared identifier
  .\src\cli.c(420): error C2065: 'members' : undeclared identifier
  .\src\cli.c(422): error C2065: 'p' : undeclared identifier
  .\src\cli.c(423): error C2065: 'syntaxError' : undeclared identifier
  .\src\cli.c(424): error C2065: 'fp' : undeclared identifier
  .\src\cli.c(434): error C2065: 'members' : undeclared identifier
  .\src\cli.c(434): error C2065: 'members_size' : undeclared identifier
  .\src\cli.c(434): error C2065: 'fp' : undeclared identifier
  .\src\cli.c(435): error C2065: 'p' : undeclared identifier
  .\src\cli.c(436): error C2065: 'syntaxError' : undeclared identifier
  .\src\cli.c(437): error C2065: 'fp' : undeclared identifier
  .\src\cli.c(440): error C2065: 'fp' : undeclared identifier
  .\src\cli.c(441): error C2065: 'p' : undeclared identifier
  .\src\cli.c(442): error C2065: 'p' : undeclared identifier
  .\src\cli.c(443): error C2065: 'version' : undeclared identifier
  .\src\cli.c(443): error C2065: 'p' : undeclared identifier
  .\src\cli.c(444): error C2065: 'syntaxError' : undeclared identifier
  .\src\cli.c(447): error C2065: 'version' : undeclared identifier
  .\src\cli.c(447): error C2065: 'p' : undeclared identifier
  .\src\cli.c(448): error C2065: 'version' : undeclared identifier
  .\src\cli.c(449): error C2065: 'syntaxError' : undeclared identifier
  .\src\cli.c(453): error C2065: 'syntaxError' : undeclared identifier
  .\src\cli.c(456): error C2065: 'p' : undeclared identifier
  .\src\cli.c(458): error C2065: 'syntaxError' : undeclared identifier
  .\src\cli.c(460): error C2065: 'joining' : undeclared identifier
  .\src\cli.c(460): error C2065: 'leaving' : undeclared identifier
  .\src\cli.c(460): error C2065: 'members' : undeclared identifier
  .\src\cli.c(460): error C2065: 'version' : undeclared identifier
  .\src\cli.c(461): error C2065: 'joining' : undeclared identifier
  .\src\cli.c(462): error C2065: 'leaving' : undeclared identifier
  .\src\cli.c(463): error C2065: 'members' : undeclared identifier

104 Warning(s)
102 Error(s)

Time Elapsed 00:00:15.99

f:\hudson\hudson-slave\workspace\ZooKeeper-trunk-WinVS2008exit 1 
Build step 'Execute Windows batch command' marked build as failure
Email was triggered for: Failure
Sending email for trigger: Failure



###
## FAILED TESTS (if any) 
##
No tests ran.

ZooKeeper-trunk-solaris - Build # 599 - Still Failing

2013-07-02 Thread Apache Jenkins Server
See https://builds.apache.org/job/ZooKeeper-trunk-solaris/599/

###
## LAST 60 LINES OF THE CONSOLE 
###
[...truncated 142542 lines...]
[junit] at 
org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222)
[junit] at org.junit.runners.ParentRunner.run(ParentRunner.java:292)
[junit] at 
junit.framework.JUnit4TestAdapter.run(JUnit4TestAdapter.java:39)
[junit] at 
org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.run(JUnitTestRunner.java:518)
[junit] at 
org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.launch(JUnitTestRunner.java:1052)
[junit] at 
org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.main(JUnitTestRunner.java:906)
[junit] 2013-07-02 09:18:41,762 [myid:] - INFO  [main:ZooKeeperServer@422] 
- shutting down
[junit] 2013-07-02 09:18:41,763 [myid:] - INFO  
[main:SessionTrackerImpl@180] - Shutting down
[junit] 2013-07-02 09:18:41,763 [myid:] - INFO  
[main:PrepRequestProcessor@929] - Shutting down
[junit] 2013-07-02 09:18:41,762 [myid:] - INFO  
[LearnerCnxAcceptor-0.0.0.0/0.0.0.0:12472:Leader$LearnerCnxAcceptor@398] - 
exception while shutting down acceptor: java.net.SocketException: Socket closed
[junit] 2013-07-02 09:18:41,763 [myid:] - INFO  
[main:ProposalRequestProcessor@88] - Shutting down
[junit] 2013-07-02 09:18:41,764 [myid:] - INFO  [main:CommitProcessor@333] 
- Shutting down
[junit] 2013-07-02 09:18:41,763 [myid:] - INFO  [ProcessThread(sid:5 
cport:-1)::PrepRequestProcessor@156] - PrepRequestProcessor exited loop!
[junit] 2013-07-02 09:18:41,765 [myid:] - INFO  
[CommitProcessor:5:CommitProcessor@218] - CommitProcessor exited loop!
[junit] 2013-07-02 09:18:41,765 [myid:] - INFO  
[main:Leader$ToBeAppliedRequestProcessor@886] - Shutting down
[junit] 2013-07-02 09:18:41,766 [myid:] - INFO  
[main:FinalRequestProcessor@427] - shutdown of request processor complete
[junit] 2013-07-02 09:18:41,766 [myid:] - INFO  
[main:SyncRequestProcessor@175] - Shutting down
[junit] 2013-07-02 09:18:41,766 [myid:] - INFO  
[SyncThread:5:SyncRequestProcessor@155] - SyncRequestProcessor exited!
[junit] 2013-07-02 09:18:41,766 [myid:] - INFO  
[NIOServerCxnFactory.SelectorThread-1:NIOServerCnxnFactory$SelectorThread@420] 
- selector thread exitted run method
[junit] 2013-07-02 09:18:41,766 [myid:] - INFO  
[NIOServerCxnFactory.AcceptThread:0.0.0.0/0.0.0.0:11482:NIOServerCnxnFactory$AcceptThread@219]
 - accept thread exitted run method
[junit] 2013-07-02 09:18:41,766 [myid:] - INFO  
[NIOServerCxnFactory.SelectorThread-0:NIOServerCnxnFactory$SelectorThread@420] 
- selector thread exitted run method
[junit] 2013-07-02 09:18:41,948 [myid:] - INFO  [main:QuorumBase@342] - 
Shutting down leader election QuorumPeer[myid=5]/0.0.0.0:11482
[junit] 2013-07-02 09:18:41,948 [myid:] - WARN  
[QuorumPeer[myid=5]/0.0.0.0:11482:QuorumPeer@952] - Unexpected exception
[junit] java.lang.InterruptedException: sleep interrupted
[junit] at java.lang.Thread.sleep(Native Method)
[junit] at 
org.apache.zookeeper.server.quorum.Leader.lead(Leader.java:545)
[junit] at 
org.apache.zookeeper.server.quorum.QuorumPeer.run(QuorumPeer.java:949)
[junit] 2013-07-02 09:18:41,949 [myid:] - INFO  
[QuorumPeer[myid=5]/0.0.0.0:11482:Leader@585] - Shutting down
[junit] 2013-07-02 09:18:41,949 [myid:] - WARN  
[QuorumPeer[myid=5]/0.0.0.0:11482:QuorumPeer@979] - PeerState set to LOOKING
[junit] 2013-07-02 09:18:41,949 [myid:] - WARN  
[QuorumPeer[myid=5]/0.0.0.0:11482:QuorumPeer@965] - QuorumPeer main thread 
exited
[junit] 2013-07-02 09:18:41,948 [myid:] - INFO  
[/127.0.0.1:12477:QuorumCnxManager$Listener@565] - Leaving listener
[junit] 2013-07-02 09:18:41,949 [myid:] - INFO  [main:QuorumBase@347] - 
Waiting for QuorumPeer[myid=5]/0.0.0.0:11482 to exit thread
[junit] 2013-07-02 09:18:41,950 [myid:] - INFO  
[main:FourLetterWordMain@43] - connecting to 127.0.0.1 11478
[junit] 2013-07-02 09:18:41,950 [myid:] - INFO  [main:QuorumBase@323] - 
127.0.0.1:11478 is no longer accepting client connections
[junit] 2013-07-02 09:18:41,951 [myid:] - INFO  
[main:FourLetterWordMain@43] - connecting to 127.0.0.1 11479
[junit] 2013-07-02 09:18:41,951 [myid:] - INFO  [main:QuorumBase@323] - 
127.0.0.1:11479 is no longer accepting client connections
[junit] 2013-07-02 09:18:41,951 [myid:] - INFO  
[main:FourLetterWordMain@43] - connecting to 127.0.0.1 11480
[junit] 2013-07-02 09:18:41,952 [myid:] - INFO  [main:QuorumBase@323] - 
127.0.0.1:11480 is no longer accepting client connections
[junit] 2013-07-02 09:18:41,952 [myid:] - INFO  
[main:FourLetterWordMain@43] - connecting to 127.0.0.1 11481
[junit] 2013-07-02 09:18:41,952 [myid:] - INFO  [main:QuorumBase@323] - 
127.0.0.1:11481 is no longer accepting client 

[jira] [Commented] (ZOOKEEPER-1702) ZooKeeper client may write operation packets before receiving successful response to connection request, can cause TCP RST

2013-07-02 Thread Hudson (JIRA)

[ 
https://issues.apache.org/jira/browse/ZOOKEEPER-1702?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13697689#comment-13697689
 ] 

Hudson commented on ZOOKEEPER-1702:
---

Integrated in ZooKeeper-trunk #1978 (See 
[https://builds.apache.org/job/ZooKeeper-trunk/1978/])
ZOOKEEPER-1702. ZooKeeper client may write operation packets before 
receiving successful response to connection request, can cause TCP RST (Chris 
Nauroth via phunt) (Revision 1498732)

 Result = SUCCESS
phunt : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVNview=revrev=1498732
Files : 
* /zookeeper/trunk/CHANGES.txt
* /zookeeper/trunk/src/java/main/org/apache/zookeeper/ClientCnxnSocketNIO.java


 ZooKeeper client may write operation packets before receiving successful 
 response to connection request, can cause TCP RST
 --

 Key: ZOOKEEPER-1702
 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-1702
 Project: ZooKeeper
  Issue Type: Bug
  Components: java client
Affects Versions: 3.4.2
Reporter: Chris Nauroth
Assignee: Chris Nauroth
 Fix For: 3.5.0, 3.4.6

 Attachments: ZOOKEEPER-1702.1.patch


 The problem occurs when a connection attempt is pending and there are 
 multiple outbound packets in the queue for other operations.  In 
 {{ClientCnxnSocketNIO#doIO}}, it is possible to receive notification that the 
 socket is writable for the next operation packet before receiving 
 notification that the socket is readable for the connection response from the 
 server.  If the server decides that the session is expired, then it responds 
 by immediately closing the socket on its side.  If the client has written 
 packets after the server has closed its end of the socket, then the TCP stack 
 may choose to abort the connection with an RST.  When this happens, the 
 client doesn't receive an orderly shutdown, and ultimately it fails to 
 deliver a session expired event to the application.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (ZOOKEEPER-1702) ZooKeeper client may write operation packets before receiving successful response to connection request, can cause TCP RST

2013-07-02 Thread Chris Nauroth (JIRA)

[ 
https://issues.apache.org/jira/browse/ZOOKEEPER-1702?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13697982#comment-13697982
 ] 

Chris Nauroth commented on ZOOKEEPER-1702:
--

Thanks very much for reviewing and committing this, Patrick!

 ZooKeeper client may write operation packets before receiving successful 
 response to connection request, can cause TCP RST
 --

 Key: ZOOKEEPER-1702
 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-1702
 Project: ZooKeeper
  Issue Type: Bug
  Components: java client
Affects Versions: 3.4.2
Reporter: Chris Nauroth
Assignee: Chris Nauroth
 Fix For: 3.5.0, 3.4.6

 Attachments: ZOOKEEPER-1702.1.patch


 The problem occurs when a connection attempt is pending and there are 
 multiple outbound packets in the queue for other operations.  In 
 {{ClientCnxnSocketNIO#doIO}}, it is possible to receive notification that the 
 socket is writable for the next operation packet before receiving 
 notification that the socket is readable for the connection response from the 
 server.  If the server decides that the session is expired, then it responds 
 by immediately closing the socket on its side.  If the client has written 
 packets after the server has closed its end of the socket, then the TCP stack 
 may choose to abort the connection with an RST.  When this happens, the 
 client doesn't receive an orderly shutdown, and ultimately it fails to 
 deliver a session expired event to the application.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Updated] (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.

2013-07-02 Thread Ivan Kelly (JIRA)

 [ 
https://issues.apache.org/jira/browse/BOOKKEEPER-636?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ivan Kelly updated BOOKKEEPER-636:
--

Attachment: 0001-BOOKKEEPER-636-Latest-txn-logs-might-be-deleted-in-a.patch

The createNewFile change is very small, and ensures two processes don't make a 
mess of each others journals. I'm not sure two processes could even get this 
far, but it's better to be safe than sorry. (i've attached a patch with 
includes this change)

 Latest txn logs might be deleted in a race condition which is not recoverable 
 if BK goes down before next txn log created.
 --

 Key: BOOKKEEPER-636
 URL: https://issues.apache.org/jira/browse/BOOKKEEPER-636
 Project: Bookkeeper
  Issue Type: Bug
  Components: bookkeeper-server
Affects Versions: 4.2.1, 4.3.0
Reporter: Vinay
Assignee: Vinay
Priority: Blocker
 Fix For: 4.2.2, 4.3.0

 Attachments: 
 0001-BOOKKEEPER-636-Latest-txn-logs-might-be-deleted-in-a.patch, 
 BOOKKEEPER-636.diff, BOOKKEEPER-636.diff, BOOKKEEPER-636.patch, 
 BOOKKEEPER-636.patch


 With the following scenario latest transaction log can be deleted.
 1. more than {{journalMaxBackups}} txn logs are there in journal dir.
 2. BK machine was up for long time and the latest txn log id is some what 
 huge number
 3. Now reboot the machine.
 4. after reboot BK restarted.
 5. Now, Immediately after startup, One entry is added, due to which Synthread 
 rolled the lastMark in ledger dirs before the lastLogId updated by Journal 
 thread. (this lastMark was having the old logId which was before reboot). 
 6. Now after roll, old journal txn logs were gc'ed. *Now latest created the 
 txn log was deleted.*
 7. After this Journal thread updated the lastLogMark, also some more rolls 
 happened.
 8. Now BK restarted again. But BK was not able to start because it was not 
 able to find the latest txn log file in journal directory.
 {noformat}java.io.IOException: Recovery log 264564 is missing
 at org.apache.bookkeeper.bookie.Journal.replay(Journal.java:424)
 at org.apache.bookkeeper.bookie.Bookie.readJournal(Bookie.java:547)
 at org.apache.bookkeeper.bookie.Bookie.start(Bookie.java:603)
 at 
 org.apache.bookkeeper.proto.BookieServer.start(BookieServer.java:111){noformat}

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (ZOOKEEPER-1147) Add support for local sessions

2013-07-02 Thread Raul Gutierrez Segales (JIRA)

[ 
https://issues.apache.org/jira/browse/ZOOKEEPER-1147?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13697996#comment-13697996
 ] 

Raul Gutierrez Segales commented on ZOOKEEPER-1147:
---

fwiw, we are using this patch in prod at Twitter so it would be awesome to have 
this merged. Besides what I mentioned in my previous comment (having a way to 
do rolling upgrades to enable local sessions) is there anything else that's 
left to get this merged?

 Add support for local sessions
 --

 Key: ZOOKEEPER-1147
 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-1147
 Project: ZooKeeper
  Issue Type: Improvement
  Components: server
Affects Versions: 3.3.3
Reporter: Vishal Kathuria
Assignee: Thawan Kooburat
  Labels: api-change, scaling
 Fix For: 3.5.0

 Attachments: ZOOKEEPER-1147.patch, ZOOKEEPER-1147.patch, 
 ZOOKEEPER-1147.patch, ZOOKEEPER-1147.patch, ZOOKEEPER-1147.patch, 
 ZOOKEEPER-1147.patch, ZOOKEEPER-1147.patch, ZOOKEEPER-1147.patch

   Original Estimate: 840h
  Remaining Estimate: 840h

 This improvement is in the bucket of making ZooKeeper work at a large scale. 
 We are planning on having about a 1 million clients connect to a ZooKeeper 
 ensemble through a set of 50-100 observers. Majority of these clients are 
 read only - ie they do not do any updates or create ephemeral nodes.
 In ZooKeeper today, the client creates a session and the session creation is 
 handled like any other update. In the above use case, the session create/drop 
 workload can easily overwhelm an ensemble. The following is a proposal for a 
 local session, to support a larger number of connections.
 1.   The idea is to introduce a new type of session - local session. A 
 local session doesn't have a full functionality of a normal session.
 2.   Local sessions cannot create ephemeral nodes.
 3.   Once a local session is lost, you cannot re-establish it using the 
 session-id/password. The session and its watches are gone for good.
 4.   When a local session connects, the session info is only maintained 
 on the zookeeper server (in this case, an observer) that it is connected to. 
 The leader is not aware of the creation of such a session and there is no 
 state written to disk.
 5.   The pings and expiration is handled by the server that the session 
 is connected to.
 With the above changes, we can make ZooKeeper scale to a much larger number 
 of clients without making the core ensemble a bottleneck.
 In terms of API, there are two options that are being considered
 1. Let the client specify at the connect time which kind of session do they 
 want.
 2. All sessions connect as local sessions and automatically get promoted to 
 global sessions when they do an operation that requires a global session 
 (e.g. creating an ephemeral node)
 Chubby took the approach of lazily promoting all sessions to global, but I 
 don't think that would work in our case, where we want to keep sessions which 
 never create ephemeral nodes as always local. Option 2 would make it more 
 broadly usable but option 1 would be easier to implement.
 We are thinking of implementing option 1 as the first cut. There would be a 
 client flag, IsLocalSession (much like the current readOnly flag) that would 
 be used to determine whether to create a local session or a global session.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (BOOKKEEPER-625) On OutOfMemoryError in NIOServerFactory thread bookie should shutdown

2013-07-02 Thread Ivan Kelly (JIRA)

[ 
https://issues.apache.org/jira/browse/BOOKKEEPER-625?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13697999#comment-13697999
 ] 

Ivan Kelly commented on BOOKKEEPER-625:
---

With this patch the process will just exit silently, no?

Couldn't we also change the catch on line 158 to take a Throwable rather than 
an Exception. This way, it will at least attempt to inform the user of the 
problem.

 On OutOfMemoryError in NIOServerFactory thread bookie should shutdown
 -

 Key: BOOKKEEPER-625
 URL: https://issues.apache.org/jira/browse/BOOKKEEPER-625
 Project: Bookkeeper
  Issue Type: Bug
  Components: bookkeeper-server
Affects Versions: 4.2.1
Reporter: Vinay
Assignee: Vinay
 Fix For: 4.2.2

 Attachments: BOOKKEEPER-625-branch-4.2.patch


 Observed OutOfMemoryError in NIOServerFactory, but it didnt bring down the 
 bookie and it continued to run without serving. 
 On OOME in any thread, bookie should shutdown.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Updated] (ZOOKEEPER-1718) Support JLine 2

2013-07-02 Thread Shiju K babu (JIRA)

 [ 
https://issues.apache.org/jira/browse/ZOOKEEPER-1718?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Shiju K babu updated ZOOKEEPER-1718:


Description: not fixed

 Support JLine 2
 ---

 Key: ZOOKEEPER-1718
 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-1718
 Project: ZooKeeper
  Issue Type: Test
Reporter: Christopher Tubbs
Priority: Critical

 not fixed

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (BOOKKEEPER-629) Support hostname based ledger metadata to help users to change IP with exitsting installation

2013-07-02 Thread Rakesh R (JIRA)

[ 
https://issues.apache.org/jira/browse/BOOKKEEPER-629?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13697565#comment-13697565
 ] 

Rakesh R commented on BOOKKEEPER-629:
-

There are some cases where users would like to ship pre-installed clusters. 
One use case which I come across is, after installing and testing, user wants 
to ship the nodes and update /etc/hosts by reconfigure the IP addresses. 
Very rarely changing the server ports and hostname. IMHO, we can discuss all 
the possibilities and choose better approach.

Thanks Sijie for the detailed analysis.

bq.information, you don't need to change 'hostname:port' identifier format. 
during first start time, you could generate the identifier based on 
'hostname:port'. so the identifier is still backward compatible with old 
version clients. After that, the bookie keeps using this identifier, you could 
let new bookie inject 

So if I understand correctly, here the idea is to keep the identifier as 
'hostname:port' format. For example, 'HOST-10-18-40-30:8020' later when user 
change the hostname to 'HOST-10-18-40-35', still this bookie will publish 
'HOST-10-18-40-12:8020' and content as the actual 'HOST-10-18-40-35:8020'. Here 
I could see one conflicts, say when a new bookie joins with actual hostname as 
'HOST-10-18-40-12' and port 8020.

 Support hostname based ledger metadata to help users to change IP with 
 exitsting installation
 -

 Key: BOOKKEEPER-629
 URL: https://issues.apache.org/jira/browse/BOOKKEEPER-629
 Project: Bookkeeper
  Issue Type: Sub-task
  Components: bookkeeper-auto-recovery, bookkeeper-client, 
 bookkeeper-server
Affects Versions: 4.2.1, 4.3.0
Reporter: Vinay
Assignee: Rakesh R
 Fix For: 4.3.0

 Attachments: 1-BOOKKEEPER-629.patch, 2-BOOKKEEPER-629.patch, 
 3-BOOKKEEPER-629.patch, 4-BOOKKEEPER-629.patch, 5-BOOKKEEPER-629.patch, 
 6-BOOKKEEPER-629.patch


 Register the bookie with *hostname:port* and also store the bookie addresses 
 as *hostname:port* in ledger metadata files instead of *ip:port*
 This will help users to change the machine IP if they want without loosing 
 their data.
 Supporting hostname based installation/functionality is one of the important 
 requirement of users.
 Any thoughts?

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Updated] (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

2013-07-02 Thread Ivan Kelly (JIRA)

 [ 
https://issues.apache.org/jira/browse/BOOKKEEPER-630?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ivan Kelly updated BOOKKEEPER-630:
--

Fix Version/s: 4.2.2

 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
 ---

 Key: BOOKKEEPER-630
 URL: https://issues.apache.org/jira/browse/BOOKKEEPER-630
 Project: Bookkeeper
  Issue Type: Improvement
Reporter: Flavio Junqueira
Assignee: Ivan Kelly
Priority: Trivial
 Fix For: 4.2.2, 4.3.0


 We didn't reformat the code before bringing it in from hadoop commons in the 
 patch of BOOKKEEPER-618.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (BOOKKEEPER-629) Support hostname based ledger metadata to help users to change IP with exitsting installation

2013-07-02 Thread Rakesh R (JIRA)

[ 
https://issues.apache.org/jira/browse/BOOKKEEPER-629?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13697640#comment-13697640
 ] 

Rakesh R commented on BOOKKEEPER-629:
-

Sorry, please ignore the above example, its not correct.

So if I understand correctly, here the idea is to keep the identifier as 
'hostname:port' format. For example, one bookie starts with the id 
'HOST-10-18-40-30:8020', when user change the hostname to 'HOST-10-18-40-35', 
this bookie will publish 'HOST-10-18-40-30:8020' and content as the actual 
'HOST-10-18-40-35:8020'. Here I could see one conflicts, say when a new bookie 
wants to joins with its actual hostname as 'HOST-10-18-40-30' and port 8020, he 
will get ZNodeExistsException.


 Support hostname based ledger metadata to help users to change IP with 
 exitsting installation
 -

 Key: BOOKKEEPER-629
 URL: https://issues.apache.org/jira/browse/BOOKKEEPER-629
 Project: Bookkeeper
  Issue Type: Sub-task
  Components: bookkeeper-auto-recovery, bookkeeper-client, 
 bookkeeper-server
Affects Versions: 4.2.1, 4.3.0
Reporter: Vinay
Assignee: Rakesh R
 Fix For: 4.3.0

 Attachments: 1-BOOKKEEPER-629.patch, 2-BOOKKEEPER-629.patch, 
 3-BOOKKEEPER-629.patch, 4-BOOKKEEPER-629.patch, 5-BOOKKEEPER-629.patch, 
 6-BOOKKEEPER-629.patch


 Register the bookie with *hostname:port* and also store the bookie addresses 
 as *hostname:port* in ledger metadata files instead of *ip:port*
 This will help users to change the machine IP if they want without loosing 
 their data.
 Supporting hostname based installation/functionality is one of the important 
 requirement of users.
 Any thoughts?

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (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

2013-07-02 Thread Ivan Kelly (JIRA)

[ 
https://issues.apache.org/jira/browse/BOOKKEEPER-630?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13697656#comment-13697656
 ] 

Ivan Kelly commented on BOOKKEEPER-630:
---

my release, i mean the hadoop-commons release btw.

 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
 ---

 Key: BOOKKEEPER-630
 URL: https://issues.apache.org/jira/browse/BOOKKEEPER-630
 Project: Bookkeeper
  Issue Type: Improvement
Reporter: Flavio Junqueira
Assignee: Ivan Kelly
Priority: Trivial
 Fix For: 4.2.2, 4.3.0


 We didn't reformat the code before bringing it in from hadoop commons in the 
 patch of BOOKKEEPER-618.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (BOOKKEEPER-588) SSL support

2013-07-02 Thread Ivan Kelly (JIRA)

[ 
https://issues.apache.org/jira/browse/BOOKKEEPER-588?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13697654#comment-13697654
 ] 

Ivan Kelly commented on BOOKKEEPER-588:
---

{quote}if you checked any existed services 
(https://en.wikipedia.org/wiki/List_of_TCP_and_UDP_port_numbers), they would 
support both secure and non-secure ports. for example, imap port is 143, while 
SSL/TLS encrypted IMAP used port 993.{quote}
imaps, pops and smtps are older implementations which simply tunnel over an ssl 
socket. starttls versions superceded them.

The TLS with IMAP and POP rfc gives the rationale for this: 
https://tools.ietf.org/html/rfc2595#section-7

Not all apply to us, but the url scheme issue is just another way to stating 
the ids problem.

{quote}I don't think mixing non-ssl port with ssl port together is a good 
practice, since it would make debugging and troubleshooting very 
complicated.{quote}
How is it harder to debug? We currently don't decode bk wire transmissions, and 
doing so with any form of SSL would be a pain anyhow. Once it hits the bookie, 
debugging is no more difficult. In fact, I would argue that is makes debugging 
and troubleshooting easier, as it halves the number of ports you need to check 
are working.

{quote}
But if separating non-ssl port from ssl port, it's straightforward for any 
clients to disable ssl port without paying any costs.
{quote}
The client will have a useSSL config option no matter which ssl option we go 
with.

{quote}
no, if a bookie has been non-ssl only in the past? it should start with 
previous installation since the cookie already has its previous identifier. so 
any bookie client connects to this bookie would only use its non-ssl port.

if a bookie wants to upgrade to enable ssl support, it needs to run an admin 
tool provided in BOOKKEEPER-634 to change its identifier. Changing the 
identifier is somehow needed by BOOKKEEPER-639, we could leverage the tasks in 
BOOKKEEPER-634 to achieve it. 
{quote}
I think this is a unnecessary complication when we have the starttls option 
available to us. I'm not saying we shouldn't have them for BOOKKEEPER-639, but 
their use should be minimized to avoid side effects.

 SSL support
 ---

 Key: BOOKKEEPER-588
 URL: https://issues.apache.org/jira/browse/BOOKKEEPER-588
 Project: Bookkeeper
  Issue Type: Sub-task
Reporter: Ivan Kelly
Assignee: Ivan Kelly
 Fix For: 4.3.0

 Attachments: 0004-BOOKKEEPER-588-SSL-support-for-bookkeeper.patch


 SSL support using startTLS

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (BOOKKEEPER-629) Support hostname based ledger metadata to help users to change IP with exitsting installation

2013-07-02 Thread Ivan Kelly (JIRA)

[ 
https://issues.apache.org/jira/browse/BOOKKEEPER-629?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13697671#comment-13697671
 ] 

Ivan Kelly commented on BOOKKEEPER-629:
---

Actually what we could do is register the bookie as 
/ledgers/active/uuid-host/ip-port. This removes the extra lookup. The 
uuid could then be used in the ledger metadata. uuid and port could be used in 
the cookie. The issues Sijie raised about BC is valid. However, fixing for this 
should be the same as fixing for hostname. However, in this case, the main 
usecase is VM appliances, so BC shouldn't be a huge issue (we should provide 
tools to change a existing ip/hostname in any case).


 Support hostname based ledger metadata to help users to change IP with 
 exitsting installation
 -

 Key: BOOKKEEPER-629
 URL: https://issues.apache.org/jira/browse/BOOKKEEPER-629
 Project: Bookkeeper
  Issue Type: Sub-task
  Components: bookkeeper-auto-recovery, bookkeeper-client, 
 bookkeeper-server
Affects Versions: 4.2.1, 4.3.0
Reporter: Vinay
Assignee: Rakesh R
 Fix For: 4.3.0

 Attachments: 1-BOOKKEEPER-629.patch, 2-BOOKKEEPER-629.patch, 
 3-BOOKKEEPER-629.patch, 4-BOOKKEEPER-629.patch, 5-BOOKKEEPER-629.patch, 
 6-BOOKKEEPER-629.patch


 Register the bookie with *hostname:port* and also store the bookie addresses 
 as *hostname:port* in ledger metadata files instead of *ip:port*
 This will help users to change the machine IP if they want without loosing 
 their data.
 Supporting hostname based installation/functionality is one of the important 
 requirement of users.
 Any thoughts?

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Updated] (BOOKKEEPER-637) NoSuchEntry exception when reading an entry from a bookie should not print ERROR level message

2013-07-02 Thread Ivan Kelly (JIRA)

 [ 
https://issues.apache.org/jira/browse/BOOKKEEPER-637?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ivan Kelly updated BOOKKEEPER-637:
--

Fix Version/s: 4.3.0
   4.2.2

 NoSuchEntry exception when reading an entry from a bookie should not print 
 ERROR level message
 --

 Key: BOOKKEEPER-637
 URL: https://issues.apache.org/jira/browse/BOOKKEEPER-637
 Project: Bookkeeper
  Issue Type: Improvement
Affects Versions: 4.2.1, 4.3.0
Reporter: Matteo Merli
Assignee: Matteo Merli
Priority: Trivial
 Fix For: 4.2.2, 4.3.0

 Attachments: BOOKKEEPER-637.diff


 The NoSuchEntry is an internal error that is recoverable within the BK client 
 library by issuing a read to a different bookie.
 I think that INFO level should be more appropriate.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (BOOKKEEPER-632) AutoRecovery should consider read only bookies

2013-07-02 Thread Ivan Kelly (JIRA)

[ 
https://issues.apache.org/jira/browse/BOOKKEEPER-632?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13698005#comment-13698005
 ] 

Ivan Kelly commented on BOOKKEEPER-632:
---

The whitespace is actually in the comment for 
BookKeeperAdmin#getReadOnlyBookie. I've actually added a tool to find this, 
BOOKKEEPER-635. It should make this easier to find in future.

The patch adds a new public api to read the readonly bookies, then manually 
reads them in Auditor#getAvailableBookies(). It would be much better if this 
method read the bookies through BookKeeperAdmin's apis, so that if we change 
the format in future, we have less places to update.

 AutoRecovery should consider read only bookies
 --

 Key: BOOKKEEPER-632
 URL: https://issues.apache.org/jira/browse/BOOKKEEPER-632
 Project: Bookkeeper
  Issue Type: Bug
  Components: bookkeeper-auto-recovery, bookkeeper-server
Affects Versions: 4.2.1, 4.3.0
Reporter: Vinay
Assignee: Vinay
 Fix For: 4.2.2, 4.3.0

 Attachments: BOOKKEEPER-632.patch, BOOKKEEPER-632.patch


 Autorecovery Auditor should consider the readonly bookies as Available 
 Bookies  while publishing the under-replicated ledgers.
 Also AutoRecoveryDaemon should shutdown if the local bookie is readonly

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (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.

2013-07-02 Thread Hadoop QA (JIRA)

[ 
https://issues.apache.org/jira/browse/BOOKKEEPER-636?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13698024#comment-13698024
 ] 

Hadoop QA commented on BOOKKEEPER-636:
--

Testing JIRA BOOKKEEPER-636


Patch 
[0001-BOOKKEEPER-636-Latest-txn-logs-might-be-deleted-in-a.patch|https://issues.apache.org/jira/secure/attachment/12590465/0001-BOOKKEEPER-636-Latest-txn-logs-might-be-deleted-in-a.patch]
 downloaded at Tue Jul  2 17:11:30 UTC 2013



{color:green}+1 PATCH_APPLIES{color}
{color:green}+1 CLEAN{color}
{color:red}-1 RAW_PATCH_ANALYSIS{color}
.{color:green}+1{color} the patch does not introduce any @author tags
.{color:green}+1{color} the patch does not introduce any tabs
.{color:green}+1{color} the patch does not introduce any trailing spaces
.{color:green}+1{color} the patch does not introduce any line longer than 
120
.{color:red}-1{color} the patch does not add/modify any testcase
{color:green}+1 RAT{color}
.{color:green}+1{color} the patch does not seem to introduce new RAT 
warnings
{color:green}+1 JAVADOC{color}
.{color:green}+1{color} the patch does not seem to introduce new Javadoc 
warnings
{color:green}+1 COMPILE{color}
.{color:green}+1{color} HEAD compiles
.{color:green}+1{color} patch compiles
.{color:green}+1{color} the patch does not seem to introduce new javac 
warnings
{color:green}+1 FINDBUGS{color}
.{color:green}+1{color} the patch does not seem to introduce new Findbugs 
warnings
{color:green}+1 TESTS{color}
.Tests run: 853
{color:green}+1 DISTRO{color}
.{color:green}+1{color} distro tarball builds with the patch 


{color:red}*-1 Overall result, please check the reported -1(s)*{color}


The full output of the test-patch run is available at

.   https://builds.apache.org/job/bookkeeper-trunk-precommit-build/401/

 Latest txn logs might be deleted in a race condition which is not recoverable 
 if BK goes down before next txn log created.
 --

 Key: BOOKKEEPER-636
 URL: https://issues.apache.org/jira/browse/BOOKKEEPER-636
 Project: Bookkeeper
  Issue Type: Bug
  Components: bookkeeper-server
Affects Versions: 4.2.1, 4.3.0
Reporter: Vinay
Assignee: Vinay
Priority: Blocker
 Fix For: 4.2.2, 4.3.0

 Attachments: 
 0001-BOOKKEEPER-636-Latest-txn-logs-might-be-deleted-in-a.patch, 
 BOOKKEEPER-636.diff, BOOKKEEPER-636.diff, BOOKKEEPER-636.patch, 
 BOOKKEEPER-636.patch


 With the following scenario latest transaction log can be deleted.
 1. more than {{journalMaxBackups}} txn logs are there in journal dir.
 2. BK machine was up for long time and the latest txn log id is some what 
 huge number
 3. Now reboot the machine.
 4. after reboot BK restarted.
 5. Now, Immediately after startup, One entry is added, due to which Synthread 
 rolled the lastMark in ledger dirs before the lastLogId updated by Journal 
 thread. (this lastMark was having the old logId which was before reboot). 
 6. Now after roll, old journal txn logs were gc'ed. *Now latest created the 
 txn log was deleted.*
 7. After this Journal thread updated the lastLogMark, also some more rolls 
 happened.
 8. Now BK restarted again. But BK was not able to start because it was not 
 able to find the latest txn log file in journal directory.
 {noformat}java.io.IOException: Recovery log 264564 is missing
 at org.apache.bookkeeper.bookie.Journal.replay(Journal.java:424)
 at org.apache.bookkeeper.bookie.Bookie.readJournal(Bookie.java:547)
 at org.apache.bookkeeper.bookie.Bookie.start(Bookie.java:603)
 at 
 org.apache.bookkeeper.proto.BookieServer.start(BookieServer.java:111){noformat}

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (BOOKKEEPER-618) Better resolution of bookie address

2013-07-02 Thread Hadoop QA (JIRA)

[ 
https://issues.apache.org/jira/browse/BOOKKEEPER-618?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13698049#comment-13698049
 ] 

Hadoop QA commented on BOOKKEEPER-618:
--

Testing JIRA BOOKKEEPER-618


Patch 
[BOOKKEEPER-618.branch4-2.diff|https://issues.apache.org/jira/secure/attachment/12590472/BOOKKEEPER-618.branch4-2.diff]
 downloaded at Tue Jul  2 18:01:22 UTC 2013



{color:red}-1{color} Patch failed to apply to head of branch



 Better resolution of bookie address
 ---

 Key: BOOKKEEPER-618
 URL: https://issues.apache.org/jira/browse/BOOKKEEPER-618
 Project: Bookkeeper
  Issue Type: Improvement
  Components: bookkeeper-server
Affects Versions: 4.2.1
Reporter: Bryan Beaudreault
Assignee: Ivan Kelly
Priority: Minor
 Fix For: 4.2.2, 4.3.0

 Attachments: 
 0001-BOOKKEEPER-618-Better-resolution-of-bookie-address.patch, 
 BOOKKEEPER-618.branch4-2.diff, BOOKKEEPER-618.branch4-2.diff


 Bookie#getBookieAddress uses the following code:
 {code:title=Bookie.java}
 /**
  * Return the configured address of the bookie.
  */
 public static InetSocketAddress getBookieAddress(ServerConfiguration conf)
 throws UnknownHostException {
 return new InetSocketAddress(InetAddress.getLocalHost()
 .getHostAddress(), conf.getBookiePort());
 }
 {code}
 This code is subject to the contents of one's /etc/hosts file, in that if 
 they have an entry like {{127.0.0.1 myhostname}}, this method will return the 
 same 127.0.0.1 address on all bookie servers.  This causes conflicts due to 
 the way bookies register in zookeeper.
 There should be an optional bk_server.conf setting to allow one to select 
 their preferred network interface to use for the bookie.  Then you could use 
 something like 
 {{NetworkInterface.getByName(PREFERRED_INTERFACE).getInetAddresses()}} 
 instead.  This method is not effected by the /etc/hosts.
 An alternative method of registering the bookie that does not rely on the 
 local address would be another possible solution, such as using the DNS like 
 other apache projects (hbase).

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Updated] (BOOKKEEPER-641) DeathWatcher thread is unnecessarily running even after bookie shutdown

2013-07-02 Thread Sijie Guo (JIRA)

 [ 
https://issues.apache.org/jira/browse/BOOKKEEPER-641?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Sijie Guo updated BOOKKEEPER-641:
-

Fix Version/s: 4.2.2

 DeathWatcher thread is unnecessarily running even after bookie shutdown
 ---

 Key: BOOKKEEPER-641
 URL: https://issues.apache.org/jira/browse/BOOKKEEPER-641
 Project: Bookkeeper
  Issue Type: Bug
  Components: bookkeeper-server
Affects Versions: 4.2.1
Reporter: Rakesh R
Assignee: Rakesh R
Priority: Minor
 Fix For: 4.2.2, 4.3.0

 Attachments: 001-BOOKKEEPER-641.patch


 I've seen in our testcases, DeathWatcher threads are continue running even 
 after bkServer#shutdown.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (BOOKKEEPER-631) RequestProcessor Proposal

2013-07-02 Thread Sijie Guo (JIRA)

[ 
https://issues.apache.org/jira/browse/BOOKKEEPER-631?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13698456#comment-13698456
 ] 

Sijie Guo commented on BOOKKEEPER-631:
--

{code}
To me, it looks like if you get an exception in a middleware, you won't get any 
response.

Also, are requests sent to all middlewares every time?
{code}

if there is any exception throwing in processing the request, it stopped 
propagate the requests and triggered exception callback and respond the 
response. 



 RequestProcessor Proposal
 -

 Key: BOOKKEEPER-631
 URL: https://issues.apache.org/jira/browse/BOOKKEEPER-631
 Project: Bookkeeper
  Issue Type: New Feature
  Components: bookkeeper-client, bookkeeper-server
Reporter: Sijie Guo

 This JIRA tries to propose a *Middleware* concept, which is a kind of 
 request/response handler to intercept bookie request/response flow for 
 different purposes.
 Different *middleware*s serve different purpose: 
 - *StatsMiddleware* is to collect stats of requests
 - *AuthMiddleware* is to authenticate requests
 - *ACLMiddleware* is to serve authorization.
 - any customized middleware could be added to serve their request 
 intercepting.
 the middlewares are loaded from configuration to process request/response in 
 order.
 request - (middleware 1) - (middleware 2) - (middleware N) - response 
 each middleware could decide: whether it could process the request or not? if 
 it can't process, it passes the request to its downstream middleware. if it 
 could, processes the request and decide whether to pass the request to 
 downstream or not.
 for example, an auth bookie could load two middlewares:
 request - AuthMiddleware - BookieMiddleware - response
 The *AuthMiddleware* could intercept *authenticate* requests or requests with 
 *authenticate* information (such as Token). if the request is authenticated, 
 pass it to BookieMiddleware to process the requests; otherwise, it stopped 
 and respond with EUA response.
 A non-auth bookie could just load BookieMiddleware without any authentication.
 prototype of this idea in github. the interface in the prototype is not 
 finalized, since the middleware concept is quite similar as netty channel 
 handler. I am thinking how to consolidate them.
 https://github.com/sijie/bookkeeper/commit/d23df97b209170852f2ce6676a49c97e72ecb2ee
 a token-based authentication middleware example:
 https://github.com/sijie/bookkeeper/tree/middlewares/bookkeeper-server/src/main/java/org/apache/bookkeeper/security/token
 or if you want to make authentication flow like this:
 - client instantiates a connection
 - client sends credential first
 - after client verified the credential, all the following requests are 
 authenticated.
 you could implement a middleware maintaining all incoming requests, if the 
 first message is not credential, respond EUA and close the channel, if the 
 first message is credential message and it is authenticated, mark this 
 channel as authenticated and bypass all its following requests.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Comment Edited] (BOOKKEEPER-629) Support hostname based ledger metadata to help users to change IP with exitsting installation

2013-07-02 Thread Sijie Guo (JIRA)

[ 
https://issues.apache.org/jira/browse/BOOKKEEPER-629?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13698459#comment-13698459
 ] 

Sijie Guo edited comment on BOOKKEEPER-629 at 7/3/13 12:48 AM:
---

{quote}
So if I understand correctly, here the idea is to keep the identifier as 
'hostname:port' format. For example, one bookie starts with the id 
'HOST-10-18-40-30:8020', when user change the hostname to 'HOST-10-18-40-35', 
this bookie will publish 'HOST-10-18-40-30:8020' and content as the actual 
'HOST-10-18-40-35:8020'. Here I could see one conflicts, say when a new bookie 
wants to joins with its actual hostname as 'HOST-10-18-40-30' and port 8020, he 
will get ZNodeExistsException.
{quote}

unless you had a global id assignment, you had resolved this issue in uuid case.

for me, this solution is making confused about the identifier, you had no idea 
about it is an old version bookie or a new version bookie. actually I don't 
like the proposal I raised.

so if there is no clear solution for backward compatibility, I would suggest 
keeping current identifier format and providing an admin tool to change 
identifier. Let's do the generic solution util there is a big requirement and 
have to do it. for now keep things simple. 






  was (Author: hustlmsp):
{quote}
So if I understand correctly, here the idea is to keep the identifier as 
'hostname:port' format. For example, one bookie starts with the id 
'HOST-10-18-40-30:8020', when user change the hostname to 'HOST-10-18-40-35', 
this bookie will publish 'HOST-10-18-40-30:8020' and content as the actual 
'HOST-10-18-40-35:8020'. Here I could see one conflicts, say when a new bookie 
wants to joins with its actual hostname as 'HOST-10-18-40-30' and port 8020, he 
will get ZNodeExistsException.
{quote}

unless you had a global id assignment, you had resolved this issue in uuid case.

for me, this solution is making confused about the identifier, you had no idea 
about it is an old version bookie or a new version bookie. actually I don't 
like the proposal I raised.

so if there is no clear solution for backward compatibility, I would suggest 
keeping current identifier format and providing an admin tool to change 
identifier. Let's do the generic solution util there is a big requirement and 
have to do it. keep things simple. 





  
 Support hostname based ledger metadata to help users to change IP with 
 exitsting installation
 -

 Key: BOOKKEEPER-629
 URL: https://issues.apache.org/jira/browse/BOOKKEEPER-629
 Project: Bookkeeper
  Issue Type: Sub-task
  Components: bookkeeper-auto-recovery, bookkeeper-client, 
 bookkeeper-server
Affects Versions: 4.2.1, 4.3.0
Reporter: Vinay
Assignee: Rakesh R
 Fix For: 4.3.0

 Attachments: 1-BOOKKEEPER-629.patch, 2-BOOKKEEPER-629.patch, 
 3-BOOKKEEPER-629.patch, 4-BOOKKEEPER-629.patch, 5-BOOKKEEPER-629.patch, 
 6-BOOKKEEPER-629.patch


 Register the bookie with *hostname:port* and also store the bookie addresses 
 as *hostname:port* in ledger metadata files instead of *ip:port*
 This will help users to change the machine IP if they want without loosing 
 their data.
 Supporting hostname based installation/functionality is one of the important 
 requirement of users.
 Any thoughts?

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (BOOKKEEPER-629) Support hostname based ledger metadata to help users to change IP with exitsting installation

2013-07-02 Thread Sijie Guo (JIRA)

[ 
https://issues.apache.org/jira/browse/BOOKKEEPER-629?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13698459#comment-13698459
 ] 

Sijie Guo commented on BOOKKEEPER-629:
--

{quote}
So if I understand correctly, here the idea is to keep the identifier as 
'hostname:port' format. For example, one bookie starts with the id 
'HOST-10-18-40-30:8020', when user change the hostname to 'HOST-10-18-40-35', 
this bookie will publish 'HOST-10-18-40-30:8020' and content as the actual 
'HOST-10-18-40-35:8020'. Here I could see one conflicts, say when a new bookie 
wants to joins with its actual hostname as 'HOST-10-18-40-30' and port 8020, he 
will get ZNodeExistsException.
{quote}

unless you had a global id assignment, you had resolved this issue in uuid case.

for me, this solution is making confused about the identifier, you had no idea 
about it is an old version bookie or a new version bookie. actually I don't 
like the proposal I raised.

so if there is no clear solution for backward compatibility, I would suggest 
keeping current identifier format and providing an admin tool to change 
identifier. Let's do the generic solution util there is a big requirement and 
have to do it. keep things simple. 






 Support hostname based ledger metadata to help users to change IP with 
 exitsting installation
 -

 Key: BOOKKEEPER-629
 URL: https://issues.apache.org/jira/browse/BOOKKEEPER-629
 Project: Bookkeeper
  Issue Type: Sub-task
  Components: bookkeeper-auto-recovery, bookkeeper-client, 
 bookkeeper-server
Affects Versions: 4.2.1, 4.3.0
Reporter: Vinay
Assignee: Rakesh R
 Fix For: 4.3.0

 Attachments: 1-BOOKKEEPER-629.patch, 2-BOOKKEEPER-629.patch, 
 3-BOOKKEEPER-629.patch, 4-BOOKKEEPER-629.patch, 5-BOOKKEEPER-629.patch, 
 6-BOOKKEEPER-629.patch


 Register the bookie with *hostname:port* and also store the bookie addresses 
 as *hostname:port* in ledger metadata files instead of *ip:port*
 This will help users to change the machine IP if they want without loosing 
 their data.
 Supporting hostname based installation/functionality is one of the important 
 requirement of users.
 Any thoughts?

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (BOOKKEEPER-588) SSL support

2013-07-02 Thread Sijie Guo (JIRA)

[ 
https://issues.apache.org/jira/browse/BOOKKEEPER-588?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13698470#comment-13698470
 ] 

Sijie Guo commented on BOOKKEEPER-588:
--

{code}
imaps, pops and smtps are older implementations which simply tunnel over an ssl 
socket. starttls versions superceded them.

The TLS with IMAP and POP rfc gives the rationale for this: 
https://tools.ietf.org/html/rfc2595#section-7
{code}

ok. sounds true for IMAP and POP.

{code}
How is it harder to debug? We currently don't decode bk wire transmissions, and 
doing so with any form of SSL would be a pain anyhow. Once it hits the bookie, 
debugging is no more difficult. In fact, I would argue that is makes debugging 
and troubleshooting easier, as it halves the number of ports you need to check 
are working.
{code}

1. it is hard to figure out what bookie is running ssl or what bookie is not 
running ssl, when you are looking into a ledger metadata or /ledger/available 
znode (if using different port, it is easy to know).
2. it isn't straightforward to dump ssl  non-ssl mixed stream. that's the part 
what I meant for troubleshooting.

as my view, an additional port might make things clear and manageable. but just 
my view. I don't have any strong preference.

 SSL support
 ---

 Key: BOOKKEEPER-588
 URL: https://issues.apache.org/jira/browse/BOOKKEEPER-588
 Project: Bookkeeper
  Issue Type: Sub-task
Reporter: Ivan Kelly
Assignee: Ivan Kelly
 Fix For: 4.3.0

 Attachments: 0004-BOOKKEEPER-588-SSL-support-for-bookkeeper.patch


 SSL support using startTLS

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira