harmony-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Nathan Beyer" <ndbe...@apache.org>
Subject Re: [general] icu or apr-iconv, which coding library is better?
Date Thu, 17 Apr 2008 02:59:18 GMT
On Tue, Apr 15, 2008 at 11:45 PM, Alexey Varlamov <
alexey.v.varlamov@gmail.com> wrote:

> 2008/4/16, Nathan Beyer <nbeyer@gmail.com<https://mail.google.com/mail?view=cm&tf=0&to=nbeyer@gmail.com>
> >:
> > I think we need more consensus on this. Is everyone in agreement about
> > dumping log4cxx? Is this patch the appropriate replacement?
>
> Well, the suggestion has positive responses from me, Xiao-Feng and
> Ilya Berezhniuk, and no specifc opposing arguments. Let's wait last
> 24h, tomorrow I'll commit if no objections.


Someone has to be the bad guy. I don't really care to honest, but I do know
that big changes generally have big side-effects, so I think it's better to
have more consensus and discussion up front. As the size and effect of the
change increases, so should the discussion and number of people involved
increase.

-Nathan



>
> --
> Alexey
>
> >
> > -Nathan
> >
> > On Tue, Apr 15, 2008 at 5:40 AM, Alexei Fedotov
> > <alexei.fedotov@gmail.com<https://mail.google.com/mail?view=cm&tf=0&to=alexei.fedotov@gmail.com>>
> wrote:
> > > Nathan,
> > >  Could you please tell if you still have concerns about HARMONY-5692?
> > >
> > >  Thanks, Alexei
> > >
> > >  On Mon, Apr 14, 2008 at 8:26 AM, Alexei Fedotov
> > >
> > >
> > > <alexei.fedotov@gmail.com<https://mail.google.com/mail?view=cm&tf=0&to=alexei.fedotov@gmail.com>>
> wrote:
> > >  > Hello Nathan,
> > >  >  Thanks for your tough questions.
> > >  >  1.
> > >  >  I'm sorry for using "red herring". I honestly believe that having
> two
> > >  >  charset coding libraries is overkill and a good reason to throw
> one of
> > >  >  them away.
> > >  >
> > >  >  2.
> > >  >  Here is a JNI specification [1]. Please, check a table below
> > >  >  JNI_CreateJavaVM description. It describes how VM logging is
> > >  >  initialized. This was not implemented in DRLVM, and is implemented
> in
> > >  >  [2].
> > >  >
> > >  >  3.
> > >  >  A big chunk of removed functionality is logging into separate
> files.
> > >  >  To my perception, this is not a frequent use case. The original
> reason
> > >  >  why original DRLVM engineers attached log4cxx to my original C/C++
> > >  >  DRLVM logger was our attempt to achieve "Apache synergy".
> > >  >
> > >  >  4.
> > >  >  You asked for an anecdotal proof of the fact why smaller
> executables
> > >  >  may run faster. I have just invented one: smaller executables
> better
> > >  >  fit into a processor cache, produce less cache misses and hence
> > >  >  decrease a bus load. For a particular case this should be
> measured,
> > >  >  and I don't have solid data yet.
> > >  >
> > >  >  5.
> > >  >  There is one more argument which actually forced me to start
> thinking
> > >  >  into this direction: my shmmap component (a hybrid of shm and
> mmap)
> > >  >  was originally developed as a part of aprutil (because it is based
> on
> > >  >  apr_shm and apr_mmap). We already have four porting libraries:
> port,
> > >  >  portlib, apr and aprutil in Harmony. Removing one which is not
> tightly
> > >  >  coupled with other parts make it easier for people like me to
> decide
> > >  >  where it is natural to place our hand-made components.
> > >  >
> > >  >  More questions? Suggestions?
> > >  >
> > >  >  [1]
> http://java.sun.com/j2se/1.5.0/docs/guide/jni/spec/invocation.html
> > >  >  [2] https://issues.apache.org/jira/browse/HARMONY-5692
> > >  >
> > >  >
> > >  >
> > >  >
> > >  >  On Mon, Apr 14, 2008 at 6:39 AM, Nathan Beyer <nbeyer@gmail.com<https://mail.google.com/mail?view=cm&tf=0&to=nbeyer@gmail.com>>
> wrote:
> > >  >  > On Sun, Apr 13, 2008 at 4:17 AM, Alexei Fedotov
> > >  >  >
> > >  >  > <alexei.fedotov@gmail.com<https://mail.google.com/mail?view=cm&tf=0&to=alexei.fedotov@gmail.com>>
> wrote:
> > >  >  >
> > >  >  > > Hello Nathan,
> > >  >  >  >  Thanks for questions.
> > >  >  >  >
> > >  >  >  >  There are many other places where charset (en/de)coders
are
> used, but
> > >  >  >  >  we use icu4c there.
> > >  >  >
> > >  >  >  I know, but your original post made it sound like this was the
> big
> > >  >  >  reason for accepting this patch, but charset codec usage was a
> red
> > >  >  >  herring - I really don't like it when people use such tactics.
> Focus
> > >  >  >  on the real issue, please.
> > >  >  >
> > >  >  >
> > >  >  >
> > >  >  >  > HARMONY-5692 is a replacement of log4cxx with
> > >  >  >  >  custom logger and removing dependent aprutil and apr-iconv
> which are
> > >  >  >  >  not used any longer after this replacement.
> > >  >  >  >    * The replacement decreases
> > >  >  >  >
>  windows_x86_msvc_debug/deploy/jdk/jre/bin/default/harmonyvm.dll size
> > >  >  >  >  from 4079616 to 2961408. This would probably improve a
> startup time.
> > >  >  >
> > >  >  >  Any proof, even anecdotal to this claim?
> > >  >  >
> > >  >  >
> > >  >  >  >    * The custom logger requires less lines of code than a
> log4cxx
> > >  >  >  >  wrapper, hence, is easier to maintain.
> > >  >  >  >    * By specification VM logging should be done using
> provided
> > >  >  >  >  vfprintf. C++ logger adds two layers of conversion. vfprintf
> layer wan
> > >  >  >  >  not implemented, and implementing it would increase a number
> of
> > >  >  >  >  wrappers for log4cxx.
> > >  >  >
> > >  >  >  Can you point to this bit of the specification? I don't
> understand the
> > >  >  >  last bit of what you're claiming. There's a wrapper that
> doesn't
> > >  >  >  exist, but needs to?
> > >  >  >
> > >  >  >
> > >  >  >  >
> > >  >  >  >  Please, let me know if these arguments are enough for
> log4cxx being removed.
> > >  >  >
> > >  >  >  No, they aren't for me. The original DRLVM engineers used
> log4xx for a
> > >  >  >  reason, what functionality are we giving up?
> > >  >  >
> > >  >  >
> > >  >  >
> > >  >  >  >
> > >  >  >  >  Note, apr itself remains, and it is pretty good piece of
> code to my
> > >  >  >  >  perception. I do not intend to invent pools or OS call
> wrappers. We
> > >  >  >  >  throw away the staff guys from apr does not allow to put
> into their
> > >  >  >  >  main module. :-)
> > >  >  >  >  Thanks.
> > >  >  >  >
> > >  >  >  >
> > >  >  >  >
> > >  >  >  >
> > >  >  >  >  On Sun, Apr 13, 2008 at 12:30 AM, Nathan Beyer <
> nbeyer@gmail.com<https://mail.google.com/mail?view=cm&tf=0&to=nbeyer@gmail.com>>
> wrote:
> > >  >  >  >  > Huh? This post doesn't sound like anything in
> HARMONY-5692. We need
> > >  >  >  >  >  clear somethings up first.
> > >  >  >  >  >
> > >  >  >  >  >  1. apr-iconv is in the build as a dependency of log4cxx
> > >  >  >  >  >  2. there is no use of apr-iconv for charset
> encoding/decoding
> > >  >  >  >  >  3. HARMONY-5692, AFAIU is replacement of log4cxx with
> custom logger
> > >  >  >  >  >  implementation to reduce the build time
> > >  >  >  >  >
> > >  >  >  >  >  What's the value of replacing log4cxx with a custom
> logger? Reducing
> > >  >  >  >  >  the build time isn't enough for me - there have to
be
> other ways to
> > >  >  >  >  >  accomplish that without sub-system replacement.
> > >  >  >  >  >
> > >  >  >  >  >  -Nathan
> > >  >  >  >  >
> > >  >  >  >  >
> > >  >  >  >  >
> > >  >  >  >  >  On Fri, Apr 11, 2008 at 10:37 PM, Alexei Fedotov
> > >  >  >  >  >  <alexei.fedotov@gmail.com<https://mail.google.com/mail?view=cm&tf=0&to=alexei.fedotov@gmail.com>>
> wrote:
> > >  >  >  >  >  > Hello,
> > >  >  >  >  >  >
> > >  >  >  >  >  >  One may notice that both icu and apr-iconv are
> currently used to build
> > >  >  >  >  >  >  Harmony HDK. Both libraries address charset
encoding
> and decoding.
> > >  >  >  >  >  >  Should we keep both of them or try to use the
only
> one?
> > >  >  >  >  >  >
> > >  >  >  >  >  >  HARMONY-5692 [1] contains one possible "compilable"
> answer to this
> > >  >  >  >  >  >  question and related reasoning. Alexey Varlamov
and
> Tim suggested
> > >  >  >  >  >  >  discussing the matters on dev@ list, so I created
this
> thread on the
> > >  >  >  >  >  >  subject. You are welcome to share your opinion
about
> the libraries
> > >  >  >  >  >  >  Harmony depends on, the patch from [2], my arguments
> defending the
> > >  >  >  >  >  >  patch, and further directions here.
> > >  >  >  >  >  >
> > >  >  >  >  >  >  --
> > >  >  >  >  >  >  With best regards,
> > >  >  >  >  >  >  Alexei
> > >  >  >  >  >  >
> > >  >  >  >  >  >  [1] https://issues.apache.org/jira/browse/HARMONY-5692
> > >  >  >  >  >  >
> > >  >  >  >  >
> > >  >  >  >
> > >  >  >  >
> > >  >  >  >
> > >  >  >  >  --
> > >  >  >  >  With best regards,
> > >  >  >  >  Alexei
> > >  >  >  >
> > >  >  >
> > >  >
> > >  >
> > >  >
> > >  >  --
> > >  >  With best regards,
> > >  >  Alexei
> > >  >
> > >
> > >
> > >
> > >  --
> > >  With best regards,
> > >  Alexei
> > >
> >
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message