|
I have program FTP_ASN_1 sending EDI 856 ASN documents to a remote server.
If an FTP connection can't be made to the remote, the ASN document is
copied to a member file WAIT_Q, and the ASN program continues with the
next ASN as our warehouse completes the next shipment.
We may not be able to connect to the remote FTP server for a few minutes
or some hours, possibly a day.
I have program FTP_ASN_2 pulling ASN documents that have not yet been sent
from members in a file I call SEND_Q. A separate file is used to avoid
contention
with FTP_ASN_1.
When FTP_ASN_2 finds no member in SEND_Q, it stops its FTP process and
looks
to copy any members from WAIT_Q to SEND_Q and then remove all _copied_
members from SEND_Q.
My question is how to avoid 'collisions' between FTP_ASN_1 and FTP_ASN_2
during
the time members are being 'moved' from WAIT_Q to SEND_Q ?
My ideas have so far included:
Use a single data area and require both FTP_ASN_1 and FTP_ASN_2 to lock
the data
area before adding new or copying/deleting WAIT_Q members.
Have both FTP_ASN_1 and FTP_ASN_2 get exclusive control of WAIT_Q with
ALCOBJ.
Looking for any advice or comments about design pitfalls . . .
--
This is the Midrange Systems Technical Discussion (MIDRANGE-L) mailing list
To post a message email: MIDRANGE-L@xxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/midrange-l
or email: MIDRANGE-L-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives
at http://archive.midrange.com/midrange-l.
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.