[GitHub] sijie commented on issue #1281: Issue #570: Introducing EntryLogManager.

2018-04-17 Thread GitBox
sijie commented on issue #1281: Issue #570: Introducing EntryLogManager.
URL: https://github.com/apache/bookkeeper/pull/1281#issuecomment-381868889
 
 
   retest this please


This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services


[GitHub] sijie commented on issue #1281: Issue #570: Introducing EntryLogManager.

2018-03-29 Thread GitBox
sijie commented on issue #1281: Issue #570: Introducing EntryLogManager.
URL: https://github.com/apache/bookkeeper/pull/1281#issuecomment-377391260
 
 
   > @sijie if you are ok with my comment regarding currentLogId, I can send 
next iteration change.
   
   go for it now. I will think of how to clean it up later.


This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services


[GitHub] sijie commented on issue #1281: Issue #570: Introducing EntryLogManager.

2018-03-27 Thread GitBox
sijie commented on issue #1281: Issue #570: Introducing EntryLogManager.
URL: https://github.com/apache/bookkeeper/pull/1281#issuecomment-376631793
 
 
   @ivankelly : 
   
   appreciate you are working on this change. Here are my thought below:
   
   > If there are circular dependencies, then the abstraction is broken from 
the very start. I've commented on how to fix it, and pushed a sketched patch to 
master...ivankelly:entrylogmanager which deals with a lot of the issues.
   
   if `EntryLogManager` is an inner class (as what Charan) proposed, the 
abstraction is not *broken*. It is just need refactor later. I am saying 
"circular dependencies" is for what you said moving `EntryLogManager` out of 
the EntryLogger class. You need to move a lot of common code around to break 
the circular depenency, which I think that is too much for this PR or not worth 
at this moment. Because that is taking this PR into a whole "refactor" story, 
which I don't think we should take, because  1) we are losing the focus 2) it 
moves code around, make things a bit hard to review 3) the movement can be 
tricky, you don't really know if that works for multiple entry log.
   
   The approach what I am suggesting is focusing on the interface - what is the 
right methods that EntryLogManager need for both single entry log and multiple 
entry logs. Get the interface done, Get the multiple entry log implementation, 
and do the refactor to move entry log manager out.  That is the most practical 
approach than the reverse. Otherwise we might end up moving code around and 
eventually found that this movement doesn't work for multiple entry log 
approach.
   
   There is no real sense talking about inner class vs outer class before we 
get an interface abstraction that can work for both single entry log and 
multiple entry logs. That is my thought. but if you really feel strong about 
it, go for it.

   
   


This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services


[GitHub] sijie commented on issue #1281: Issue #570: Introducing EntryLogManager.

2018-03-26 Thread GitBox
sijie commented on issue #1281: Issue #570: Introducing EntryLogManager.
URL: https://github.com/apache/bookkeeper/pull/1281#issuecomment-376311538
 
 
   @ivankelly : 
   
   > Move into its own java file. EntryLogger is already huge.
   > Move into it's own file.
   
   
   I see you left a few comments around moving entry log manager out side of 
the entry logger class. It is a bit difficult in this patch, because entry log 
manager is sharing common stuffs (such as buffered log channels) between 
implementations. 
   
   I would suggest not doing this large refactor (by moving stuffs out of entry 
logger). Let this PR focus on the interface abstraction and make EntryLogger 
responsible for managing EntryLogManager. Once we agree on the interface, we 
can do the cleanup by moving the interface out and have some common abstract 
implementation in subsequent changes.
   
   Let's focus on abstracting interface at this PR, not to complicate stuffs.


This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services