BizTalk Server Applications Integration - FTP Transactionality

This is Interesting: Free IT Magazines  
Home > Archive > BizTalk Server Applications Integration > May 2004 > FTP Transactionality





You are viewing an archived Text-only version of the thread. To view this thread in it's original format and/or if you want to reply to this thread please [click here]

Author FTP Transactionality
MDBeckner

2004-05-13, 3:01 pm

If I drop a 25MEG file on an FTP site, and the FTP Adapter happens to poll for files while this file is being written, the adapter will grab whatever amount of the file is out there (for example, it will retrieve 12 MEGS of the partially written file).

Is there any way to force the adapter to wait until a file has been completely written before grabbing it?
Christof

2004-05-16, 7:35 am

This cannot happen. Please elaborate on your scenario? which FTP server
are you using?
As long as somebody is writing to that file, a handle will be open to it,
causing the file to be locked. A locked file can't be deleted. If the file
can't be deleted, the FTP adapter should not submit it into biztalk
server...

(Just double checking: you are using bts2004?)

Kind regards,
Christof

"MDBeckner" <mdbeckner@hotmail.com> wrote in message
news:A265D36B-47B5-4D5F-BBA8-40C074BF49C9@microsoft.com...
> If I drop a 25MEG file on an FTP site, and the FTP Adapter happens to poll

for files while this file is being written, the adapter will grab whatever
amount of the file is out there (for example, it will retrieve 12 MEGS of
the partially written file).
>
> Is there any way to force the adapter to wait until a file has been

completely written before grabbing it?


MDBeckner

2004-05-17, 4:38 pm

It does happen. And I am using BTS2004 - the FTP receive adapter.

You can try it out. Set it up to grab a large XML file from any FTP site. While it is transferring, kill your connection (pull out the network cable - whatever it takes). Now look at what you have on your local file drop (assuming you set up a send por
t directly to the ftp receive ) - a file that is as big as the amount of data that transferred prior to the connection failing.

This is the same thing that would happen if you were using ftp from a command prompt - it is waiting to get the connection back, to recover. But there are all sorts of things you can do from the command prompt that it does not appear you can do from the
configuration menu of the FTP adapter.

Basically, the FTP adapter is not something that can be used in a production enviornment - there is absolutly NO WAY of guaranteeing that your file made it and is complete.

While we're at it - do you have any examples of the types of commands that can be put into the "Before Get" and "After Get" properties? The documentation simply says to enter whatever you want to have executed before or after the Get - it doesn't give an
y clues as to what those commands might look like.

- MDBeckner
Adam Tompkins

2004-05-21, 5:55 pm

Yes, it does happen. I've seen exactly the same behaviour. There's no
locking in FTP.

I stopped using the FTP adapter for this reason.

- Adam




"MDBeckner" <anonymous@discussions.microsoft.com> wrote in message
news:3904491C-323F-443D-9D44-299AAD7DCB8F@microsoft.com...
> It does happen. And I am using BTS2004 - the FTP receive adapter.
>
> You can try it out. Set it up to grab a large XML file from any FTP site.

While it is transferring, kill your connection (pull out the network cable -
whatever it takes). Now look at what you have on your local file drop
(assuming you set up a send port directly to the ftp receive ) - a file that
is as big as the amount of data that transferred prior to the connection
failing.
>
> This is the same thing that would happen if you were using ftp from a

command prompt - it is waiting to get the connection back, to recover. But
there are all sorts of things you can do from the command prompt that it
does not appear you can do from the configuration menu of the FTP adapter.
>
> Basically, the FTP adapter is not something that can be used in a

production enviornment - there is absolutly NO WAY of guaranteeing that your
file made it and is complete.
>
> While we're at it - do you have any examples of the types of commands that

can be put into the "Before Get" and "After Get" properties? The
documentation simply says to enter whatever you want to have executed before
or after the Get - it doesn't give any clues as to what those commands might
look like.
>
> - MDBeckner



Christof

2004-05-22, 5:53 pm

Interesting...

I was told otherwise previously... :-(

However, few remarks here:
- if the tranfer for some reason failed, the file on the FTP won't be
deleted and will be pulled in again next time it polls right?
- what FTP server are you using please? Can I simulate using an NT4 or
Win2K machine?

Kind regards,
Christof

"MDBeckner" <anonymous@discussions.microsoft.com> wrote in message
news:3904491C-323F-443D-9D44-299AAD7DCB8F@microsoft.com...
> It does happen. And I am using BTS2004 - the FTP receive adapter.
>
> You can try it out. Set it up to grab a large XML file from any FTP site.

While it is transferring, kill your connection (pull out the network cable -
whatever it takes). Now look at what you have on your local file drop
(assuming you set up a send port directly to the ftp receive ) - a file that
is as big as the amount of data that transferred prior to the connection
failing.
>
> This is the same thing that would happen if you were using ftp from a

command prompt - it is waiting to get the connection back, to recover. But
there are all sorts of things you can do from the command prompt that it
does not appear you can do from the configuration menu of the FTP adapter.
>
> Basically, the FTP adapter is not something that can be used in a

production enviornment - there is absolutly NO WAY of guaranteeing that your
file made it and is complete.
>
> While we're at it - do you have any examples of the types of commands that

can be put into the "Before Get" and "After Get" properties? The
documentation simply says to enter whatever you want to have executed before
or after the Get - it doesn't give any clues as to what those commands might
look like.
>
> - MDBeckner



MDBeckner

2004-05-30, 10:46 am

You should be able to replicate this on any FTP Server. I have seen this when writing FTP files to Windows 2003 Server, Windows XP, and UNIX machines. Test it out, try a few things - in the end, the FTP adapter is not something that can be used in produ
ction.
Christof

2004-05-30, 10:46 am

Did you already raise a case on this issue with PSS please?
I'd like to take this one for confirmation by MS... I'm worried since we
wíll be using this in production scenario!
MS any comments?

Kind regards,
Christof

"MDBeckner" <anonymous@discussions.microsoft.com> wrote in message
news:DD299110-4BFA-42E7-831F-C8B3740CFC4D@microsoft.com...
> You should be able to replicate this on any FTP Server. I have seen this

when writing FTP files to Windows 2003 Server, Windows XP, and UNIX
machines. Test it out, try a few things - in the end, the FTP adapter is
not something that can be used in production.


Christof

2004-05-30, 10:46 am

I read a post earlier today. See copy of it below:

========================
again helping myself... any anybody else with a similar, albeit a beginners
problem:

Use the temp directory on the server. (last property) The file gets
transferred into temp and only moved/renamed onto the proper location after
the transfer has been completed successfully.
========================

What about that particular property?
Kind regards,
Christof

"MDBeckner" <anonymous@discussions.microsoft.com> wrote in message
news:DD299110-4BFA-42E7-831F-C8B3740CFC4D@microsoft.com...
> You should be able to replicate this on any FTP Server. I have seen this

when writing FTP files to Windows 2003 Server, Windows XP, and UNIX
machines. Test it out, try a few things - in the end, the FTP adapter is
not something that can be used in production.


Ziga Jakhel

2004-05-30, 10:46 am

That was my post, after banging my head against the proverbial wall for a
day or so...

As far as I could understand it, BTS enables you to use a temporary folder
for FTP on the target location (when transferring files to server, the temp
is on the server; when transferring from the server, it is on the local
machine). The explanation is that it is best used for solving transmission
glitches.

When transmitting files onto the server the file gets constructed in the
temp folder and is named as the message ID.
When the file has been completely uploaded, it gets renamed and moved into
the appropriate target folder.

Works like a charm

Regards,

Sigmund

PS:
Feature Request to MICROSOFT:
How about enabling BTS Macros also in Before/After ftp commands?!? (they
don't work currently)
How the heck am I to instruct the server to do something with the file after
I've uploaded it to the server, if I don't know it's name?


"Christof" <bts2004communityfeedback (at) hotmail (dot) com> wrote in
message news:ej3UmEAREHA.2408@tk2msftngp13.phx.gbl...
> I read a post earlier today. See copy of it below:
>
> ========================
> again helping myself... any anybody else with a similar, albeit a

beginners
> problem:
>
> Use the temp directory on the server. (last property) The file gets
> transferred into temp and only moved/renamed onto the proper location

after
> the transfer has been completed successfully.
> ========================
>
> What about that particular property?
> Kind regards,
> Christof
>
> "MDBeckner" <anonymous@discussions.microsoft.com> wrote in message
> news:DD299110-4BFA-42E7-831F-C8B3740CFC4D@microsoft.com...
this[vbcol=seagreen]
> when writing FTP files to Windows 2003 Server, Windows XP, and UNIX
> machines. Test it out, try a few things - in the end, the FTP adapter is
> not something that can be used in production.
>
>



Sponsored Links






Free braindumps | Software forum | Database administration forum

Copyright 2003 - 2008 webservertalk.com