× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.



Thanks Joe

I think what is happening, is that when retrieveRecordFormat() method is
executed, behind the scenes it calls DSPFD and DSPFFD and puts the results
into a file in QTEMP. If two threads call this method "at the same time"
they will both put their results into the same temp file in QTEMP and the
record format returned might be erroneous.

AS400FileRecordDescription recordDescription =
new AS400FileRecordDescription(system, filePathName.getPath());

RecordFormat[] format = recordDescription.retrieveRecordFormat();

I think I'm going to look at JDBC.

Thanks

Neill

-----Original Message-----
From: java400-l-bounces@xxxxxxxxxxxx [mailto:java400-l-bounces@xxxxxxxxxxxx]
On Behalf Of Joe Sam Shirah
Sent: 01 November 2008 16:58
To: Java Programming on and around the iSeries / AS400
Subject: Re: RecordFormat threadsafety


Hi Neill,

There are always threading issues, and I personally have never used RLA.

But I wouldn't worry about complaints for DSP* commands. The worst thing I
could think of someone is changing the file, so the display is not up to
date. But I would say, "Bad programmer" if the file is being changed in the

middle of a production run. This sounds to me much more like a warning to
which I woudl just say "OK". If it were updates or other changes, that's an

entirely different matter.

If anyone can think of issues I'm missing, please inform.


Joe Sam

Joe Sam Shirah - http://www.conceptgo.com
conceptGO - Consulting/Development/Outsourcing
Java Filter Forum: http://www.ibm.com/developerworks/java/
Just the JDBC FAQs: http://www.jguru.com/faq/JDBC
Going International? http://www.jguru.com/faq/I18N
Que Java400? http://www.jguru.com/faq/Java400

----- Original Message -----
From: "Neill Harper" <neill.harper@xxxxxxxx>
To: <java400-l@xxxxxxxxxxxx>
Sent: Saturday, November 01, 2008 12:23 PM
Subject: RecordFormat threadsafety


Hi



For some time now I have been working on a multi threaded Java server that
will sit on the i5 (Power etc) and respond to requests from RPG via a data
queue.



Whenever the "Server" has to write back to files on the AS400, it uses
record level access, and each thread has its own AS400 connection object
for
use with the KeyedFile object.



Everything seems to work ok, but I am a bit worried about messages that
are
appearing in the Job log to say that the commands DSPFD and DSPFFD are not
thread safe.



I think that these commands are being called when the RecordFormat is
being
created, does anybody have any tips for getting round this, or do I just
have to accept the fact that I cannot use threads in my server.



I am tempted to bin off record level access, and just use JDBC and SQL..
But
before I do that are there any threading issue's I have to contend with in
JDBC?



Thanks, any help as always is very appreciated. Neill

--
This is the Java Programming on and around the iSeries / AS400 (JAVA400-L)

mailing list
To post a message email: JAVA400-L@xxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/java400-l
or email: JAVA400-L-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives
at http://archive.midrange.com/java400-l.



As an Amazon Associate we earn from qualifying purchases.

This thread ...

Replies:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

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.