manifoldcf-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Karl Wright <daddy...@gmail.com>
Subject Re: [Windows Shares Connector] Un-expected removal of all documents
Date Wed, 08 Apr 2015 12:44:25 GMT
Hi Alessandro,

activities.noDocument() only means that the current document should no
longer be considered part of the crawl.
In both cases it is reasonable to check the SmbAuthException text and throw
ManifoldCFException if it seems to be bad credentials.  You should not call
activities.noDocument() in that case.  In fact, you could make a single
method that gets called from both places that decides whether the exception
reason is that the credentials are bad.

Karl



On Wed, Apr 8, 2015 at 7:40 AM, Alessandro Benedetti <
benedetti.alex85@gmail.com> wrote:

> Karl,
>  taking a look to Trunk code I see a little bit of difference from the
> environment ( 1.8) where I was working ( getDocumentVersions is not there
> anymore), applied to the current trunk I can see 2 points where to put the
> modification :
>
>
> org.apache.manifoldcf.crawler.connectors.sharedrive.SharedDriveConnector#processDocuments
>
> org/apache/manifoldcf/crawler/connectors/sharedrive/SharedDriveConnector.java:692
>
> catch (jcifs.smb.SmbAuthException e)
> {
>   Logging.connectors.warn("JCIFS: Authorization exception reading
> version information for "+documentIdentifier+" - skipping");
>     if(e.getMessage().equals("Logon failure: unknown user name or bad
> password."))
>         throw new ManifoldCFException( "SmbAuthException thrown: " +
> e.getMessage(), e );
>     else {
>           activities.deleteDocument(documentIdentifier);
>           continue;}
> }
>
> and :
>
> catch (jcifs.smb.SmbAuthException e)
> {
>   Logging.connectors.warn("JCIFS: Authorization exception reading
> document/directory "+documentIdentifier+" - skipping");
>   errorCode = e.getClass().getSimpleName().toUpperCase(Locale.ROOT);
>   errorDesc = "Authorization: "+e.getMessage();
>   // We call the delete even if it's a directory; this is harmless.
>   activities.noDocument(documentIdentifier, versionString);
>   continue;
> }
>
> If I am pretty sure of the first, I have no idea what is doing the
> "activities.noDocument" .
>
> Should we apply the change in there as well?
>
> If you confirm this I will proceed with the commit.
>
>
> Cheers
>
>
>
> 2015-04-07 16:36 GMT+01:00 Karl Wright <daddywri@gmail.com>:
>
> > Hi Richard,
> >
> > Windows SMB error messages seem to be mostly in English.  We look for a
> > number of these in the JCIFS connector.  And, in any case, we don't have
> a
> > lot of choice, since there are no specific error codes we could use
> > instead.
> >
> > Karl
> >
> >
> > On Tue, Apr 7, 2015 at 10:43 AM, Nichols, Richard <
> > Richard.Nichols@coriant.com> wrote:
> >
> > > Will checking for "Logon failure: unknown user name or bad password."
> > work
> > > for non-English Windows installations?
> > >
> > > Regards,
> > > Rick
> > >
> > > -----Original Message-----
> > > From: Karl Wright [mailto:daddywri@gmail.com]
> > > Sent: Tuesday, April 07, 2015 8:52 AM
> > > To: dev
> > > Subject: Re: [Windows Shares Connector] Un-expected removal of all
> > > documents
> > >
> > > Yes, this is exactly what I was thinking of.  You can go ahead and
> commit
> > > this to trunk, and pull up the change to the dev_1x branch also.
> > >
> > > Thanks!
> > > Karl
> > >
> > >
> > > On Tue, Apr 7, 2015 at 8:42 AM, Alessandro Benedetti <
> > > benedetti.alex85@gmail.com> wrote:
> > >
> > > > Hi Karl,
> > > > just back to the issue, I think I solved it in a quick way ( not so
> > much
> > > > intrusive) :
> > > >
> > > >
> > > >
> > >
> >
> org.apache.manifoldcf.crawler.connectors.sharedrive.SharedDriveConnector#getDocumentVersions
> > > >
> > > >
> > >
> >
> org/apache/manifoldcf/crawler/connectors/sharedrive/SharedDriveConnector.java:706
> > > >
> > > > ...
> > > >
> > > > catch ( jcifs.smb.SmbAuthException e )
> > > > {
> > > >     Logging.connectors.warn(
> > > >         "JCIFS: Authorization exception reading version information
> > > > for " + documentIdentifier
> > > >             + " - skipping" );
> > > >     if(e.getMessage().equals("Logon failure: unknown user name or bad
> > > > password."))
> > > >         throw new ManifoldCFException( "SmbAuthException thrown: " +
> > > > e.getMessage(), e );
> > > >     else
> > > >         rval[i] = null;
> > > > }
> > > >
> > > > ...
> > > >
> > > > In this way the message is checked, and if it is a Login failure we
> > > > throw the manifoldCFException breaking the iteration ( because login
> > > > failure means no documents will be accessible but we don't have to
> > > > erase them) .
> > > >
> > > > If it is another Authorization exception ( like permissions changed
> > > > for the folder/file) the behaviour is the same than before.
> > > >
> > > > I think should be enough to be safe, what do you think ?
> > > >
> > > > Is any other method affected by this problem ?
> > > >
> > > > I think should be limited to the versions check.
> > > >
> > > >
> > > > Cheers
> > > >
> > > >
> > > > 2015-04-02 16:32 GMT+01:00 Alessandro Benedetti <
> > > > benedetti.alex85@gmail.com>
> > > > :
> > > >
> > > > >
> > > > >
> > > > > 2015-04-02 15:58 GMT+01:00 Karl Wright <daddywri@gmail.com>:
> > > > >
> > > > >> Hi Alessandro,
> > > > >>
> > > > >> Yes, you interpreted my reply correctly.
> > > > >>
> > > > >> I think we therefore have to perform any checking operations
on
> the
> > > > actual
> > > > >> file being accessed.  This is actually pretty easy to do without
> > > > >> sacrificing performance.  All you need to do is the following:
> > > > >>
> > > > >> try {
> > > > >>   ... do the file access operation ...
> > > > >> } catch (SmbException e) {
> > > > >>   ... figure out from the exception whether to throw a
> > > > ManifoldCFException
> > > > >> or a ServiceInterruption ...
> > > > >>   ... If the exception does not include enough to distinguish
> > between
> > > > bad
> > > > >> credentials and insufficient privs, then do a check RIGHT HERE
for
> > bad
> > > > >> credentials ...
> > > > >> }
> > > > >>
> > > > >> What do you think?  The new code would only ever be called if
the
> > > > document
> > > > >> cannot be read.
> > > > >>
> > > > >
> > > > > I think we can proceed like you said, I am investigating right now
> > the
> > > > > details returned for the exception ( to understand if there is any
> > > > > difference between wrong credentials or access denied)
> > > > > In the case we find the "wrong credential" we have to throw the
> > > exception
> > > > > and stop the iteration ( this will happen the very first time
> > assuming
> > > > none
> > > > > is playing server side) .
> > > > > In this way we save the time of checking all the files ( in the
> case
> > of
> > > > > wrong credentials no one will be accessible) .
> > > > >
> > > > > Another way can be to do this credential check at the beginning and
> > > stop
> > > > > only if we have wrong credential ( leaving the permission check
> file
> > by
> > > > > file) .
> > > > >
> > > > > Quite a confused scenario, but we can sort this out with little
> > changes
> > > > :)
> > > > >
> > > > >
> > > > >
> > > > >>
> > > > >> Karl
> > > > >>
> > > > >>
> > > > >> On Thu, Apr 2, 2015 at 10:42 AM, Alessandro Benedetti <
> > > > >> benedetti.alex85@gmail.com> wrote:
> > > > >>
> > > > >> > OkI am currently working on that, and I will work on that
next
> > > tuesday
> > > > >> as
> > > > >> > well .
> > > > >> > But what about point 2 :
> > > > >> > " (2) the check itself is
> > > > >> > specific to the ROOT of the tree, which the user may not
have
> > access
> > > > >> to."
> > > > >> >
> > > > >> > I think I got your problem, you mean that a possible scenario
> can
> > > > happen
> > > > >> > when you configure the repository connector with a user
that  is
> > not
> > > > >> able
> > > > >> > to access the root but is able to access the directories
we want
> > to
> > > > >> crawl.
> > > > >> > In such a case the repository connector will appear to be
not
> able
> > > to
> > > > >> > connect, while the crawling will be still possible if you
> > configure
> > > > the
> > > > >> > accessible directories in the job.
> > > > >> > If this is correct , the situation is more complicated ...
> > > > >> >
> > > > >> > Cheers
> > > > >> >
> > > > >> >
> > > > >> > 2015-03-31 16:44 GMT+01:00 Karl Wright <daddywri@gmail.com>:
> > > > >> >
> > > > >> > > Hi Alessandro,
> > > > >> > >
> > > > >> > > Your code snippet has two problems: (1) it doesn't
distinguish
> > > > between
> > > > >> > > service interruptions and bad credentials,
> > > > >> >
> > > > >> >
> > > > >> > Should not be the difference between the IOException and
the Smb
> > > one ?
> > > > >> >
> > > > >> >
> > > > >> > > and (2) the check itself is
> > > > >> > > specific to the ROOT of the tree, which the user may
not have
> > > access
> > > > >> to.
> > > > >> > >
> > > > >> >
> > > > >> >
> > > > >> >
> > > > >> > > In check() we can get away with this but if you wire
up the
> > > check()
> > > > >> logic
> > > > >> > > into the crawl processing it will break some people.
> > > > >> > >
> > > > >> > > The first problem, (1), is exactly what we need to
figure out
> > > > anyway.
> > > > >> > >
> > > > >> > > Karl
> > > > >> > >
> > > > >> > >
> > > > >> > > On Tue, Mar 31, 2015 at 11:30 AM, Alessandro Benedetti
<
> > > > >> > > benedetti.alex85@gmail.com> wrote:
> > > > >> > >
> > > > >> > > > Hi karl comments follow :
> > > > >> > > >
> > > > >> > > > 2015-03-31 16:18 GMT+01:00 Karl Wright <daddywri@gmail.com
> >:
> > > > >> > > >
> > > > >> > > > > Hi Alessandro,
> > > > >> > > > >
> > > > >> > > > > There are situations where the check() method
does not
> > succeed
> > > > but
> > > > >> > you
> > > > >> > > > can
> > > > >> > > > > still crawl.  So I would not do it that way,
since it
> > > > >> fundamentally
> > > > >> > > > changes
> > > > >> > > > > the contract.
> > > > >> > > > >
> > > > >> > > >
> > > > >> > > > Am I wrong or we should assume the "check()" method
to work
> as
> > > > it's
> > > > >> > built
> > > > >> > > > for.
> > > > >> > > > I mean if in some case, this method is wrongly
implemented ,
> > > this
> > > > >> can
> > > > >> > not
> > > > >> > > > break another assumption.
> > > > >> > > >
> > > > >> > > > >
> > > > >> > > > > My proposal is to have processDocuments ABORT
the job when
> > it
> > > > >> finds
> > > > >> > bad
> > > > >> > > > > credentials.  That's very fast and will not
permit a job
> to
> > > run
> > > > >> for a
> > > > >> > > > long
> > > > >> > > > > time.
> > > > >> > > > >
> > > > >> > > > > The trick is to determine if there are bad
credentials
> > WITHOUT
> > > > >> doing
> > > > >> > > any
> > > > >> > > > > more work in the processDocuments pathway
than we
> currently
> > > are.
> > > > >> An
> > > > >> > > > > exception will be thrown either way, but
we need to figure
> > out
> > > > >> > whether
> > > > >> > > > > there is any information in the exception
that we can use
> to
> > > > >> decide
> > > > >> > > > between
> > > > >> > > > > bad credentials and no access permissions.
> > > > >> > > > >
> > > > >> > > > > You can help provide that by doing a simple
experiment on
> > your
> > > > >> > client's
> > > > >> > > > > hardware (or yours, if you have such hardware
in house).
> > > Change
> > > > >> the
> > > > >> > > > > credential to an invalid one and see what
the exception
> > > details
> > > > >> are.
> > > > >> > > > Then
> > > > >> > > > > change to valid credentials and try to crawl
a directory
> > that
> > > is
> > > > >> not
> > > > >> > > > > visible to the credentialed user you supplied,
and make a
> > note
> > > > of
> > > > >> the
> > > > >> > > > > exception details in that case too.
> > > > >> > > > >
> > > > >> > > >
> > > > >> > > > I was thinking to slightly modifying the getSession()
method
> > > > adding
> > > > >> the
> > > > >> > > > file exist check , something like this :
> > > > >> > > >
> > > > >> > > > ...
> > > > >> > > >
> > > > >> > > > try
> > > > >> > > > {
> > > > >> > > >     // use NtlmPasswordAuthentication so that
we can reuse
> > > > >> credential
> > > > >> > > > for DFS support
> > > > >> > > >     pa = new NtlmPasswordAuthentication( domain,
username,
> > > > password
> > > > >> );
> > > > >> > > >     SmbFile smbconnection = new SmbFile( "smb://"
+ server +
> > > "/",
> > > > >> pa );
> > > > >> > > >     smbconnectionPath = getFileCanonicalPath(
smbconnection
> );
> > > > >> > > >     smbconnection.exists();
> > > > >> > > > }
> > > > >> > > > catch ( MalformedURLException e )
> > > > >> > > > {
> > > > >> > > >     Logging.connectors.error(
> > > > >> > > >         "Unable to access SMB/CIFS share: " +
"smb://" + ( (
> > > > domain
> > > > >> ==
> > > > >> > > > null ) ? "" : domain ) + ";"
> > > > >> > > >             + username + ":<password>@"
+ server + "/\n" + e
> > );
> > > > >> > > >     throw new ManifoldCFException( "Unable to
access
> SMB/CIFS
> > > > >> share: "
> > > > >> > > > + server, e,
> > > > >> > > >
> > > > >> > > > ManifoldCFException.REPOSITORY_CONNECTION_ERROR
);
> > > > >> > > > } catch (SmbException e) {
> > > > >> > > >     Logging.connectors.error(
> > > > >> > > >             "Unable to access SMB/CIFS share:
Credential not
> > > valid
> > > > >> - "
> > > > >> > > > + "smb://" + ((domain == null) ? "" : domain)
+ ";"
> > > > >> > > >                     + username + ":<password>@"
+ server +
> > > "/\n" +
> > > > >> e);
> > > > >> > > >     throw new ManifoldCFException( "Unable to
access
> SMB/CIFS
> > > > share:
> > > > >> > > > Credential not valid - " + server, e,
> > > > >> > > >             ManifoldCFException.REPOSITORY_CONNECTION_ERROR
> );
> > > > >> > > > }
> > > > >> > > >
> > > > >> > > > Catching the smbException should make the trick.
> > > > >> > > > Anyway I will go more in details.
> > > > >> > > >
> > > > >> > > > Cheers
> > > > >> > > >
> > > > >> > > >
> > > > >> > > > > Karl
> > > > >> > > > >
> > > > >> > > > >
> > > > >> > > > > On Tue, Mar 31, 2015 at 10:50 AM, Alessandro
Benedetti <
> > > > >> > > > > benedetti.alex85@gmail.com> wrote:
> > > > >> > > > >
> > > > >> > > > > > Currently we are checking each of the
String[]
> > oldVersions ,
> > > > >> trying
> > > > >> > > to
> > > > >> > > > > > access it ...
> > > > >> > > > > > So in the scenario I described the current
performances
> > are
> > > > >> quite
> > > > >> > > > bad...
> > > > >> > > > > > We would need to avoid at all the scan
of the oldDocs if
> > we
> > > > know
> > > > >> > the
> > > > >> > > > > > provided credential are not valid anymore
.
> > > > >> > > > > >
> > > > >> > > > > > Let me be extreme, but what about not
allowing the job
> to
> > > > start
> > > > >> at
> > > > >> > > all
> > > > >> > > > if
> > > > >> > > > > > the Repository Connector is currently
broken ( i.e. the
> > > > >> connection
> > > > >> > is
> > > > >> > > > not
> > > > >> > > > > > working, and we know that because of
the check method) .
> > > > >> > > > > > In this way we avoid to destroy already
existent indexes
> > and
> > > > we
> > > > >> > > simply
> > > > >> > > > > > communicate a message in the job giving
advice the job
> can
> > > not
> > > > >> > start
> > > > >> > > > > > because Repository connector is currently
offline ( and
> > > > showing
> > > > >> the
> > > > >> > > > > > explanation) .
> > > > >> > > > > >
> > > > >> > > > > > Does this make sense ?
> > > > >> > > > > >
> > > > >> > > > > > 2015-03-31 15:30 GMT+01:00 Karl Wright
<
> > daddywri@gmail.com
> > > >:
> > > > >> > > > > >
> > > > >> > > > > > > Hi Alessandro,
> > > > >> > > > > > >
> > > > >> > > > > > > If you put a check in the processDocuments
method, it
> > will
> > > > be
> > > > >> > > called
> > > > >> > > > > for
> > > > >> > > > > > > every group of documents.  That's
fine, but if you
> > > structure
> > > > >> it
> > > > >> > as
> > > > >> > > a
> > > > >> > > > > > > separate call it would impact performance.
 That is
> why
> > I
> > > > >> suggest
> > > > >> > > > just
> > > > >> > > > > > > doing a better job of interpreting
the existing
> > > exceptions.
> > > > >> > > > > > >
> > > > >> > > > > > > Karl
> > > > >> > > > > > >
> > > > >> > > > > > >
> > > > >> > > > > > > On Tue, Mar 31, 2015 at 10:27 AM,
Alessandro
> Benedetti <
> > > > >> > > > > > > benedetti.alex85@gmail.com>
wrote:
> > > > >> > > > > > >
> > > > >> > > > > > > > As an addition, this should
be quite simple, not
> > > > proceeding
> > > > >> > with
> > > > >> > > > the
> > > > >> > > > > > > > processDocuments method, if
the RepositoryConnector
> is
> > > not
> > > > >> able
> > > > >> > > to
> > > > >> > > > > > > connect(
> > > > >> > > > > > > > check method return not a
proper message).
> > > > >> > > > > > > >
> > > > >> > > > > > > > Right ?
> > > > >> > > > > > > > Wondering where is the proper
point to enter the
> > action
> > > :)
> > > > >> > > > > > > >
> > > > >> > > > > > > > Cheers
> > > > >> > > > > > > >
> > > > >> > > > > > > > 2015-03-31 14:59 GMT+01:00
Alessandro Benedetti <
> > > > >> > > > > > > > benedetti.alex85@gmail.com>
> > > > >> > > > > > > > :
> > > > >> > > > > > > >
> > > > >> > > > > > > > > Yes Karl,
> > > > >> > > > > > > > >  I was thinking exactly
that, to first check if
> the
> > > > >> > credentials
> > > > >> > > > are
> > > > >> > > > > > > > valid,
> > > > >> > > > > > > > > before scanning all the
documents.
> > > > >> > > > > > > > > This because permissions
per files depend on
> > > > users/groups,
> > > > >> > but
> > > > >> > > > the
> > > > >> > > > > > > > current
> > > > >> > > > > > > > > scenario is not in-validating
the user, but
> > > invalidating
> > > > >> the
> > > > >> > > > access
> > > > >> > > > > > of
> > > > >> > > > > > > > that
> > > > >> > > > > > > > > user.
> > > > >> > > > > > > > >
> > > > >> > > > > > > > > An error must be thrown,
but the docs not deleted
> (
> > > not
> > > > >> even
> > > > >> > > > > > scanned) .
> > > > >> > > > > > > > >
> > > > >> > > > > > > > > Furthermore, what will
happen, in the case the
> > server
> > > is
> > > > >> > down ?
> > > > >> > > > > > > > > Are we safe in that scenario
?
> > > > >> > > > > > > > >
> > > > >> > > > > > > > > Cheers
> > > > >> > > > > > > > >
> > > > >> > > > > > > > > 2015-03-31 14:42 GMT+01:00
Karl Wright <
> > > > >> daddywri@gmail.com>:
> > > > >> > > > > > > > >
> > > > >> > > > > > > > >> This is actually
pretty standard behavior across
> > our
> > > > >> > connector
> > > > >> > > > > > family,
> > > > >> > > > > > > > and
> > > > >> > > > > > > > >> has been true since
Day One.  The behavior comes
> > from
> > > > the
> > > > >> > > basic
> > > > >> > > > > > broad
> > > > >> > > > > > > > >> requirement that
the crawler should keep going
> and
> > > skip
> > > > >> the
> > > > >> > > > > document
> > > > >> > > > > > > > when
> > > > >> > > > > > > > >> the permissions do
not allow it to be fetched.
> > With
> > > > the
> > > > >> > > Windows
> > > > >> > > > > > Share
> > > > >> > > > > > > > >> connector, it's sometimes
the case (when DFS is
> > used
> > > a
> > > > >> lot)
> > > > >> > > that
> > > > >> > > > > > whole
> > > > >> > > > > > > > >> subtrees of documents
are not fetchable using the
> > > > >> > credentials
> > > > >> > > > > > > supplied.
> > > > >> > > > > > > > >> So
> > > > >> > > > > > > > >> it is not so easy
to just check for valid
> > credentials
> > > > at
> > > > >> the
> > > > >> > > > > > > beginning.
> > > > >> > > > > > > > >>
> > > > >> > > > > > > > >> For a solution, I'd
be inclined to look for a way
> > to
> > > > >> figure
> > > > >> > > out
> > > > >> > > > if
> > > > >> > > > > > the
> > > > >> > > > > > > > >> credentials are actually
*invalid*, and abort the
> > job
> > > > if
> > > > >> so.
> > > > >> > > > This
> > > > >> > > > > > is
> > > > >> > > > > > > > >> distinct from the
case where the credentials are
> > > valid
> > > > >> but
> > > > >> > the
> > > > >> > > > > > > connector
> > > > >> > > > > > > > >> doesn't have permissions
to read the document.
> It
> > > will
> > > > >> take
> > > > >> > > > some
> > > > >> > > > > > > > >> experimentation to
see if we get back different
> > > > exception
> > > > >> > text
> > > > >> > > > in
> > > > >> > > > > > the
> > > > >> > > > > > > > two
> > > > >> > > > > > > > >> situations.
> > > > >> > > > > > > > >>
> > > > >> > > > > > > > >> Karl
> > > > >> > > > > > > > >>
> > > > >> > > > > > > > >>
> > > > >> > > > > > > > >> On Tue, Mar 31, 2015
at 9:30 AM, Alessandro
> > > Benedetti <
> > > > >> > > > > > > > >> abenedetti@apache.org
> > > > >> > > > > > > > >> > wrote:
> > > > >> > > > > > > > >>
> > > > >> > > > > > > > >> > Hi guys,
> > > > >> > > > > > > > >> > playing with
the Windows Shares Connector in
> > > > ManifoldCF
> > > > >> > 1.8
> > > > >> > > I
> > > > >> > > > > > > > >> encountered
> > > > >> > > > > > > > >> > this problem
:
> > > > >> > > > > > > > >> >
> > > > >> > > > > > > > >> > *Scenario*
> > > > >> > > > > > > > >> > *1)* Indexing
windows Shares server
> > > > >> > > > > > > > >> > *2)* Indexing
successfully finished with N docs
> > > > indexed
> > > > >> > > > > > > > >> > *3)* Offline
,while no indexing is happening,
> > > Shares
> > > > >> > server
> > > > >> > > > > side,
> > > > >> > > > > > > the
> > > > >> > > > > > > > >> > Administrator
password changes
> > > > >> > > > > > > > >> > *4) *Repository
Connector is not able to
> connect
> > > > >> > anymore(of
> > > > >> > > > > course
> > > > >> > > > > > > > >> because
> > > > >> > > > > > > > >> > the password
has changed)
> > > > >> > > > > > > > >> > *5)* Next indexing
cycle, ALL docs are removed
> > from
> > > > the
> > > > >> > > index
> > > > >> > > > .
> > > > >> > > > > > > > >> >
> > > > >> > > > > > > > >> > *Expected Behaviour*
> > > > >> > > > > > > > >> > As I user I
would like to see an error message,
> > > that
> > > > >> will
> > > > >> > > let
> > > > >> > > > me
> > > > >> > > > > > > > >> understand
> > > > >> > > > > > > > >> > the issue, not
losing all my N indexed docs .
> > > > >> > > > > > > > >> >
> > > > >> > > > > > > > >> > *Reason*
> > > > >> > > > > > > > >> > Taking a look
into the code, the problems seems
> > to
> > > be
> > > > >> in
> > > > >> > > the :
> > > > >> > > > > > > > >> >
> > > > >> > > > > > > > >> >
> > > > >> > > > > > > > >>
> > > > >> > > > > > > >
> > > > >> > > > > > >
> > > > >> > > > > >
> > > > >> > > > >
> > > > >> > > >
> > > > >> > >
> > > > >> >
> > > > >>
> > > >
> > >
> >
> org.apache.manifoldcf.crawler.connectors.sharedrive.SharedDriveConnector#getDocumentVersions
> > > > >> > > > > > > > >> > where it tries
to access each document
> singularly
> > > > >> through
> > > > >> > > > Samba,
> > > > >> > > > > > and
> > > > >> > > > > > > > >> > removing them
one by one if not reachable
> > anymore.
> > > > >> > > > > > > > >> >
> > > > >> > > > > > > > >> > *Solution*
> > > > >> > > > > > > > >> > Before scanning
each document, we have to be
> sure
> > > the
> > > > >> > > > connection
> > > > >> > > > > > is
> > > > >> > > > > > > > >> > working.
> > > > >> > > > > > > > >> > If not this
is only armful.
> > > > >> > > > > > > > >> >
> > > > >> > > > > > > > >> > I will continue
investigating, but I would like
> > > your
> > > > >> > opinion
> > > > >> > > > as
> > > > >> > > > > > well
> > > > >> > > > > > > > >> >
> > > > >> > > > > > > > >> > Cheers
> > > > >> > > > > > > > >> >
> > > > >> > > > > > > > >> >
> > > > >> > > > > > > > >> >
> > > > >> > > > > > > > >> >
> > > > >> > > > > > > > >> >
> > > > >> > > > > > > > >> >
> > > > >> > > > > > > > >> > --
> > > > >> > > > > > > > >> > --------------------------
> > > > >> > > > > > > > >> >
> > > > >> > > > > > > > >> > Benedetti Alessandro
> > > > >> > > > > > > > >> > Visiting card
:
> > > http://about.me/alessandro_benedetti
> > > > >> > > > > > > > >> >
> > > > >> > > > > > > > >> > "Tyger, tyger
burning bright
> > > > >> > > > > > > > >> > In the forests
of the night,
> > > > >> > > > > > > > >> > What immortal
hand or eye
> > > > >> > > > > > > > >> > Could frame
thy fearful symmetry?"
> > > > >> > > > > > > > >> >
> > > > >> > > > > > > > >> > William Blake
- Songs of Experience -1794
> England
> > > > >> > > > > > > > >> >
> > > > >> > > > > > > > >>
> > > > >> > > > > > > > >
> > > > >> > > > > > > > >
> > > > >> > > > > > > > >
> > > > >> > > > > > > > > --
> > > > >> > > > > > > > > --------------------------
> > > > >> > > > > > > > >
> > > > >> > > > > > > > > Benedetti Alessandro
> > > > >> > > > > > > > > Visiting card :
> > http://about.me/alessandro_benedetti
> > > > >> > > > > > > > >
> > > > >> > > > > > > > > "Tyger, tyger burning
bright
> > > > >> > > > > > > > > In the forests of the
night,
> > > > >> > > > > > > > > What immortal hand or
eye
> > > > >> > > > > > > > > Could frame thy fearful
symmetry?"
> > > > >> > > > > > > > >
> > > > >> > > > > > > > > William Blake - Songs
of Experience -1794 England
> > > > >> > > > > > > > >
> > > > >> > > > > > > >
> > > > >> > > > > > > >
> > > > >> > > > > > > >
> > > > >> > > > > > > > --
> > > > >> > > > > > > > --------------------------
> > > > >> > > > > > > >
> > > > >> > > > > > > > Benedetti Alessandro
> > > > >> > > > > > > > Visiting card :
> http://about.me/alessandro_benedetti
> > > > >> > > > > > > >
> > > > >> > > > > > > > "Tyger, tyger burning bright
> > > > >> > > > > > > > In the forests of the night,
> > > > >> > > > > > > > What immortal hand or eye
> > > > >> > > > > > > > Could frame thy fearful symmetry?"
> > > > >> > > > > > > >
> > > > >> > > > > > > > William Blake - Songs of Experience
-1794 England
> > > > >> > > > > > > >
> > > > >> > > > > > >
> > > > >> > > > > >
> > > > >> > > > > >
> > > > >> > > > > >
> > > > >> > > > > > --
> > > > >> > > > > > --------------------------
> > > > >> > > > > >
> > > > >> > > > > > Benedetti Alessandro
> > > > >> > > > > > Visiting card : http://about.me/alessandro_benedetti
> > > > >> > > > > >
> > > > >> > > > > > "Tyger, tyger burning bright
> > > > >> > > > > > In the forests of the night,
> > > > >> > > > > > What immortal hand or eye
> > > > >> > > > > > Could frame thy fearful symmetry?"
> > > > >> > > > > >
> > > > >> > > > > > William Blake - Songs of Experience
-1794 England
> > > > >> > > > > >
> > > > >> > > > >
> > > > >> > > >
> > > > >> > > >
> > > > >> > > >
> > > > >> > > > --
> > > > >> > > > --------------------------
> > > > >> > > >
> > > > >> > > > Benedetti Alessandro
> > > > >> > > > Visiting card : http://about.me/alessandro_benedetti
> > > > >> > > >
> > > > >> > > > "Tyger, tyger burning bright
> > > > >> > > > In the forests of the night,
> > > > >> > > > What immortal hand or eye
> > > > >> > > > Could frame thy fearful symmetry?"
> > > > >> > > >
> > > > >> > > > William Blake - Songs of Experience -1794 England
> > > > >> > > >
> > > > >> > >
> > > > >> >
> > > > >> >
> > > > >> >
> > > > >> > --
> > > > >> > --------------------------
> > > > >> >
> > > > >> > Benedetti Alessandro
> > > > >> > Visiting card : http://about.me/alessandro_benedetti
> > > > >> >
> > > > >> > "Tyger, tyger burning bright
> > > > >> > In the forests of the night,
> > > > >> > What immortal hand or eye
> > > > >> > Could frame thy fearful symmetry?"
> > > > >> >
> > > > >> > William Blake - Songs of Experience -1794 England
> > > > >> >
> > > > >>
> > > > >
> > > > >
> > > > >
> > > > > --
> > > > > --------------------------
> > > > >
> > > > > Benedetti Alessandro
> > > > > Visiting card : http://about.me/alessandro_benedetti
> > > > >
> > > > > "Tyger, tyger burning bright
> > > > > In the forests of the night,
> > > > > What immortal hand or eye
> > > > > Could frame thy fearful symmetry?"
> > > > >
> > > > > William Blake - Songs of Experience -1794 England
> > > > >
> > > >
> > > >
> > > >
> > > > --
> > > > --------------------------
> > > >
> > > > Benedetti Alessandro
> > > > Visiting card : http://about.me/alessandro_benedetti
> > > >
> > > > "Tyger, tyger burning bright
> > > > In the forests of the night,
> > > > What immortal hand or eye
> > > > Could frame thy fearful symmetry?"
> > > >
> > > > William Blake - Songs of Experience -1794 England
> > > >
> > >
> > > ============================================================
> > > The information contained in this message may be privileged
> > > and confidential and protected from disclosure. If the reader
> > > of this message is not the intended recipient, or an employee
> > > or agent responsible for delivering this message to the
> > > intended recipient, you are hereby notified that any reproduction,
> > > dissemination or distribution of this communication is strictly
> > > prohibited. If you have received this communication in error,
> > > please notify us immediately by replying to the message and
> > > deleting it from your computer. Thank you. Coriant-Tellabs
> > > ============================================================
> > >
> >
>
>
>
> --
> --------------------------
>
> Benedetti Alessandro
> Visiting card : http://about.me/alessandro_benedetti
>
> "Tyger, tyger burning bright
> In the forests of the night,
> What immortal hand or eye
> Could frame thy fearful symmetry?"
>
> William Blake - Songs of Experience -1794 England
>

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