I am certainly not a CVS expert.  It appears that cvs diff compares your
current code to the last version you grabbed unless you specify -r with
another version specified.  So, if you check what version is the latest
in CVS, you can diff against it using -r.  Personally, I do something
similar to what you describe: whenever a change is checked in, I delete
my local copy and use cvs update to get a new copy.  That's also what I
do to back out changes I've made.

There's probably a better way, but I stick with what works.  You should
see me use vi.  I know about 10 commands, so I do some things very
awkwardly, but I can get the job done.

Scott Nichol

----- Original Message -----
From: "Pavel Ausianik" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Wednesday, November 20, 2002 11:47 AM
Subject: RE: Using mime parts - huge drawbacks


> Scott,
>
> sorry, what is correct algorithm for working with CVS?  I made some
changes,
> collect patch, send it to cvs. Than I run cvs checkout again, but my
files
> not updates. Only known solution I know is to move old src tree, get
> completely new on, compare changes, put updated files, send collect
patch
> again. Most probably I'm doing something wrong...
>
> Please find also old patch for using pooled DocumentBuilder.
>
> Thanks,
> Pavel
>
>
> > -----Original Message-----
> > From: Scott Nichol [mailto:[EMAIL PROTECTED]]
> > Sent: Wednesday, November 20, 2002 4:23 PM
> > To: [EMAIL PROTECTED]
> > Subject: Re: Using mime parts - huge drawbacks
> >
> >
> > Pavel,
> >
> > I could not use patch on these patches, apparently because
> > they are done
> > against older CVS versions.  I need the diffs against the current
CVS
> > sources.  Also, please send diffs for all 5 files (SOAPContext,
Call,
> > TransportMessage, RPCJavaProvider, RPCRouterServlet).
> >
> > Thanks.
> >
> > Scott Nichol
> >
> > ----- Original Message -----
> > From: "Pavel Ausianik" <[EMAIL PROTECTED]>
> > To: <[EMAIL PROTECTED]>
> > Sent: Wednesday, November 20, 2002 6:09 AM
> > Subject: RE: Using mime parts - huge drawbacks
> >
> >
> > > Scott,
> > >
> > > It seems like two bugs fixed.
> > >
> > > One is related to missed fillRootPart() in SOAPContext.writeTo()
> > > Second is relates on how content type identified in case
> > envelope is
> > set
> > > Attaching a patch against current cvs
> > >
> > > During mime test execution I had one error related to SOAP
registry
> > >
> > > Generated fault: [Attributes={}] [faultCode=SOAP-ENV:Server]
> > > [faultString=java.l
> > > ang.IllegalArgumentException: No mapping found for
> > 'java.lang.Object'
> > using
> > > enco
> > > ding style 'http://schemas.xmlsoap.org/soap/encoding/'.]
> > > [faultActorURI=/soap/se
> > > rvlet/rpcrouter] [DetailEntries=] [FaultEntries=]
> > >
> > > This should not be related to Mime Part, and I'll look at
> > this Friday
> > (sorry
> > > busy today-tomorrow)
> > >
> > > Best regards,
> > > Pavel
> > >
> > >
> > >
> > > > -----Original Message-----
> > > > From: Scott Nichol [mailto:[EMAIL PROTECTED]]
> > > > Sent: Wednesday, November 20, 2002 8:26 AM
> > > > To: [EMAIL PROTECTED]
> > > > Subject: Re: Using mime parts - huge drawbacks
> > > >
> > > >
> > > > Pavel,
> > > >
> > > > I applied these patches, but the mime sample does not work.
> > > > Please get
> > > > this sample working and submit a new patch.
> > > >
> > > > Thanks.
> > > >
> > > > Scott Nichol
> > > >
> > > > ----- Original Message -----
> > > > From: "Pavel Ausianik" <[EMAIL PROTECTED]>
> > > > To: <[EMAIL PROTECTED]>
> > > > Sent: Friday, November 15, 2002 9:59 AM
> > > > Subject: RE: Using mime parts - huge drawbacks
> > > >
> > > >
> > > > >
> > > > >
> > > > > Hi,
> > > > >
> > > > > I think I managed make it compatible to existing code and yet
> > still
> > > > mush
> > > > > faster (8-10 sec of 60 I had in the morning ). The Mime
> > part will
> > be
> > > > creates
> > > > > as soon as it requested, otherwise plain Envelope used
> > > > > Also I set up initial buffer in couple of classes...
> > > > >
> > > > > Please take a look
> > > > >
> > > > > Also, if comparing to yesterday's picture timeload, we have
> > > > 4 big time
> > > > > consumers, which I suppose quite logical
> > > > >
> > > > > 1. DocumentBulder.parse
> > > > > 2. RPCMessage.extractFromEnvelope
> > > > > 3. EnvelopeMaprshall
> > > > > 4. InputStream.read
> > > > >
> > > > > Pavel
> > > > >
> > > > > > -----Original Message-----
> > > > > > From: Scott Nichol [mailto:[EMAIL PROTECTED]]
> > > > > > Sent: Thursday, November 14, 2002 6:54 PM
> > > > > > To: [EMAIL PROTECTED]
> > > > > > Subject: Re: Using mime parts - huge drawbacks
> > > > > >
> > > > > >
> > > > > > Thanks for yet another valuable contribution!  I've
committed
> > this
> > > > > > patch.  Your others will have to wait a little while
> > > > since I have to
> > > > > > earn some money today (instead of working on Apache SOAP).
> > > > > >
> > > > > > I have some questions.
> > > > > >
> > > > > > 1. What do you use to do this profile?  I have very little
> > > > experience
> > > > > > with profilers, mainly with JInsight, but that was over a
> > > > year ago.
> > > > > >
> > > > > > 2. What is "ComplexRequest"?
> > > > > >
> > > > > > 3. Do you know what version of JavaMail you are using?
> > > > > >
> > > > > > Something very interesting that I had not noticed
> > before is that
> > > > > > provider.invoke gets on the request and response contexts,
so
> > > > > > that even
> > > > > > "plain" RPCs have their SOAP envelope put into SOAPContext
and
> > > > > > subsequently extracted.  I am thinking that the SOAPContext
> > > > > > should gain
> > > > > > the ability to hold a SOAP envelope other than simply as the
> > root
> > > > part
> > > > > > to avoid the expense of extracting it.  In fact,
> > > > SOAPContext should
> > > > be
> > > > > > able to keep track of whether there are any attachments
> > > > versus just
> > > > an
> > > > > > evelope to optimize the situation where there is only an
> > envelope.
> > > > We
> > > > > > would use lazy evaluation to stuff it into the root part
> > > > if the root
> > > > > > part is requested, but otherwise provide shortcuts to just
> > access
> > > > the
> > > > > > envelope.
> > > > > >
> > > > > > Scott Nichol
> > > > > >
> > > > > > ----- Original Message -----
> > > > > > From: "Pavel Ausianik" <[EMAIL PROTECTED]>
> > > > > > To: <[EMAIL PROTECTED]>
> > > > > > Sent: Thursday, November 14, 2002 9:04 AM
> > > > > > Subject: RE: Using mime parts - huge drawbacks
> > > > > >
> > > > > >
> > > > > > > Scott,
> > > > > > >
> > > > > > > Here is server time picture taken on the Tomcat server ,
> > > > processing
> > > > > > > ComplexRequest.
> > > > > > > The red ellipses show that MimePart  initialization takes
> > 10-15%
> > > > of
> > > > > > CPU
> > > > > > > load.
> > > > > > > The blue ellipses show that ContentType is also quite
> > expensive
> > > > for
> > > > > > benefits
> > > > > > > it provide. I prepared patch for caching ContentType...
> > > > > > >
> > > > > > > Pavel
> > > > > > >
> > > > > > > > -----Original Message-----
> > > > > > > > From: Scott Nichol [mailto:[EMAIL PROTECTED]]
> > > > > > > > Sent: Wednesday, November 13, 2002 5:48 PM
> > > > > > > > To: [EMAIL PROTECTED]
> > > > > > > > Subject: Re: Using mime parts - huge drawbacks
> > > > > > > >
> > > > > > > >
> > > > > > > > Pavel,
> > > > > > > >
> > > > > > > > Yes, this is a good observation.  In the case where
> > > > there are no
> > > > > > > > attachments, the process could be streamlined by
> > serializing
> > > > > > directly.
> > > > > > > > I am still actively working on this part of the code
> > > > > > > > (TransportMessage,
> > > > > > > > SOAPContext, Call) and will look at sidestepping
> > some of the
> > > > > > activity
> > > > > > > > where there are no attachments, just a SOAP
> > envelope, which
> > > > > > > > as you point
> > > > > > > > out is the typical scenario.
> > > > > > > >
> > > > > > > > Scott Nichol
> > > > > > > >
> > > > > > > > ----- Original Message -----
> > > > > > > > From: "Pavel Ausianik" <[EMAIL PROTECTED]>
> > > > > > > > To: <[EMAIL PROTECTED]>
> > > > > > > > Sent: Wednesday, November 13, 2002 9:04 AM
> > > > > > > > Subject: Using mime parts - huge drawbacks
> > > > > > > >
> > > > > > > >
> > > > > > > > > Hello,
> > > > > > > > >
> > > > > > > > > thinking more on the current code I have found
> > interesting
> > > > > > > > thing. Most
> > > > > > > > > requests we have a simple, straight SOAP envelopes,
> > without
> > > > any
> > > > > > > > attachments.
> > > > > > > > > Looking how it is processed I have found
> > following (traced
> > > > from
> > > > > > > > > httpconnection):
> > > > > > > > >
> > > > > > > > > In SOAPHTTPConnection.send() we call
> > > > TransportMessage.save().
> > > > > > > > > Let's look into it (see my comment how I understand
it:
> > > > > > > > >
> > > > > > > > >         String rootContentType = null;
> > > > > > > > >
> > > > > > > > > // Root Part is Not set for Simple Envelope !
> > > > > > > > >
> > > > > > > > >         if (ctx.isRootPartSet()) {
> > > > > > > > > //... Not in use for simple case
> > > > > > > > >         }
> > > > > > > > >
> > > > > > > > >         if (rootContentType == null)
> > > > > > > > >             rootContentType =
> > > > > > Constants.HEADERVAL_CONTENT_TYPE_UTF8;
> > > > > > > > >         if (getEnvelope() != null) {
> > > > > > > > >
> > > > > > > > > // Now really create root part - how important
> > it is if we
> > > > > > > > now how to
> > > > > > > > write
> > > > > > > > > this Envelope without involving Mime !!!
> > > > > > > > >
> > > > > > > > >             ctx.setRootPart(envelope,
rootContentType);
> > > > > > > > >         } else {
> > > > > > > > > //... Not in use for simple case
> > > > > > > > >         }
> > > > > > > > >
> > > > > > > > >         // Print the whole response to a byte array.
> > > > > > > > > // Tracing into this code we'll found that all
> > it will do
> > it
> > > > add
> > > > > > > > > unnecessary header to envelope
> > > > > > > > > // The headers include Content-Type - we know which
is,
> > > > > > > > > // Content-id  - do we need it? Even if yes we can
> > > > create any
> > > > id
> > > > > > > > > // Content-Transfer-Encoding - not for HTTp, anyway we
> > > > > > force it to
> > > > > > 8
> > > > > > > > bit
> > > > > > > > > // Content-Lenght - easy to calculate
> > > > > > > > >
> > > > > > > > >         ByteArrayOutputStream payload =
> > > > > > > > >             new ByteArrayOutputStream(1024);
> > > > > > > > >         ctx.writeTo(payload);
> > > > > > > > >         bytes = payload.toByteArray();
> > > > > > > > >
> > > > > > > > >         // Now strip off the headers. (Grmbl, get rid
> > > > > > of JavaMail
> > > > > > > > >         // for MIME support). Just intercept the
> > > > Content-Type
> > > > > > > > > // Remove headers which created right now....
> > > > > > > > >
> > > > > > > > > ....
> > > > > > > > >
> > > > > > > > >         // TODO: should not send for HTTP response
> > > > > > > > >         headers.put("Accept-Encoding", "x-gzip");
> > > > > > > > >         if (Boolean.TRUE.equals(ctx.getGzip())) {
> > > > > > > > >             // Deflate
> > > > > > > > >             ByteArrayOutputStream baos =
> > > > > > > > >                                new
> > > > > > > > ByteArrayOutputStream(bytes.length
> > > > > > > > * 2);
> > > > > > > > >             GZIPOutputStream gzos = new
> > > > GZIPOutputStream(baos);
> > > > > > > > >             gzos.write(bytes, offset, bytes.length
> > > > - offset);
> > > > > > > > >             gzos.close();
> > > > > > > > >             baos.close();
> > > > > > > > >             bytes = baos.toByteArray();
> > > > > > > > >             offset = 0;
> > > > > > > > >
> > > > > > > > >             headers.put("Content-Encoding", "x-gzip");
> > > > > > > > >         }
> > > > > > > > >
> > > > > > > > > Seems like we are doing wonderful job of running a lot
> > > > > > unnecessary
> > > > > > > > > operations,  involving a lot of memory allocations...
It
> > > > > > > > could be most
> > > > > > > > > advanced improvement we ever done!
> > > > > > > > >
> > > > > > > > > Best regards,
> > > > > > > > > Pavel
> > > > > > > > >
> > > > > > > > >
> > > > > > > > >
> > > > > > > > > --
> > > > > > > > > To unsubscribe, e-mail:
> > > > > > > <mailto:[EMAIL PROTECTED]>
> > > > > > > > For additional commands, e-mail:
> > > > > > <mailto:[EMAIL PROTECTED]>
> > > > > > > >
> > > > > > > >
> > > > > > >
> > > > > > >
> > > > > > > --
> > > > > > > To unsubscribe, e-mail:
> > > > > > <mailto:[EMAIL PROTECTED]>
> > > > > > > For additional commands, e-mail:
> > > > > > <mailto:[EMAIL PROTECTED]>
> > > > > > >
> > > > > > >
> > > > > >
> > > > > >
> > > > >
> --------------------------------------------------------------
> > > > > > ----------
> > > > > > --------
> > > > > >
> > > > > >
> > > > > > > --
> > > > > > > To unsubscribe, e-mail:
> > > > > > <mailto:[EMAIL PROTECTED]>
> > > > > > > For additional commands, e-mail:
> > > > > > <mailto:[EMAIL PROTECTED]>
> > > > > >
> > > > > >
> > > > > > --
> > > > > > To unsubscribe, e-mail:
> > > > <mailto:[EMAIL PROTECTED]>
> > > > > > For additional commands, e-mail:
> > > > <mailto:[EMAIL PROTECTED]>
> > > > > >
> > > > >
> > > > >
> > > >
> > > >
> > > > --------------------------------------------------------------
> > > > ----------
> > > > --------
> > > >
> > > >
> > > > > --
> > > > > To unsubscribe, e-mail:
> > > > <mailto:[EMAIL PROTECTED]>
> > > > > For additional commands, e-mail:
> > > > <mailto:[EMAIL PROTECTED]>
> > > >
> > > >
> > > > --
> > > > To unsubscribe, e-mail:
> > <mailto:[EMAIL PROTECTED]>
> > > > For additional commands, e-mail:
> > <mailto:[EMAIL PROTECTED]>
> > > >
> > >
> > >
> >
> >
> > --------------------------------------------------------------
> > ----------
> > --------
> >
> >
> > > --
> > > To unsubscribe, e-mail:
> > <mailto:[EMAIL PROTECTED]>
> > > For additional commands, e-mail:
> > <mailto:[EMAIL PROTECTED]>
> >
> >
> > --
> > To unsubscribe, e-mail:
<mailto:[EMAIL PROTECTED]>
> > For additional commands, e-mail:
<mailto:[EMAIL PROTECTED]>
> >
>
>


------------------------------------------------------------------------
--------


> --
> To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>


--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to